Repository navigation
AgentDock 0.1.38
Pre-release
Pre-release
AgentDock 0.1.38
中文
本版本新增基于 OpenTelemetry 数据模型的本地操作记录和异常诊断能力,让客户端安装、Skills 管理等关键流程更容易排查,并支持在明确配置或用户主动操作时上报诊断数据。
新增功能
- 为客户端检测与安装、Skills 安装、启用和卸载等关键工作流记录本地操作、跨度、状态、耗时、命令参数和原始输出。
- 重构诊断页面,支持按分类和状态筛选操作记录,查看追踪详情、合并日志、跨度以及分页命令输出。
- 捕获前端未处理错误、Promise 拒绝和 Rust panic,并以标准 OpenTelemetry 异常字段写入本地诊断数据库。
- 支持从诊断详情手动上报单条操作记录;只有构建时提供完整 OTLP 配置的发布包才会自动上报异常。
- 为 GitHub Actions 发布构建接入可选的 OTLP 端点、令牌和服务名配置,同时保持普通开发构建不携带上报配置。
Bug 修复
- 为重复前端异常增加时间窗口去重,并限制异常消息与堆栈大小,避免错误风暴和超大数据持续占用本地空间。
- 为异常与操作上报增加精确确认、失败重试和退避机制,应用重启后可恢复未完成的上报状态。
- 对上报失败信息进行脱敏,避免认证头、令牌或服务端响应正文写入本地错误记录。
- 数据库写入繁忙时,Rust panic 记录改为非阻塞处理,避免异常捕获路径引发二次卡死。
English
This release adds local operation records and exception diagnostics based on the OpenTelemetry data model, making key workflows such as client installation and Skills management easier to troubleshoot while supporting diagnostic uploads only when explicitly configured or initiated by the user.
New Features
- Added local operations, spans, status, duration, command arguments, and raw output for key workflows including client detection and installation plus Skill installation, enablement, and removal.
- Reworked Diagnostics with operation filtering, trace details, merged logs, spans, and paginated command output.
- Added capture of unhandled frontend errors, rejected promises, and Rust panics using standard OpenTelemetry exception fields in the local diagnostics database.
- Added manual reporting for an individual operation from its diagnostic details. Automatic exception reporting is enabled only in builds with a complete packaged OTLP configuration.
- Added optional OTLP endpoint, token, and service-name configuration to GitHub Actions release builds while keeping normal development builds free of reporting configuration.
Bug Fixes
- Deduplicated repeated frontend exceptions within a time window and bounded exception messages and stack traces to prevent error storms and oversized records from consuming local storage.
- Added exact acknowledgement, retry, and backoff handling for exception and operation uploads, including recovery of unfinished upload state after restart.
- Sanitized upload failures so authorization headers, tokens, and server response bodies are not persisted in local error records.
- Made Rust panic recording non-blocking while the diagnostics database is busy, preventing secondary hangs in the exception path.