Skip to content

fix: 修复经验镜像与会话趋势并统一资源后端 - #466

Closed
nateEc wants to merge 5 commits into
Tencent:mainfrom
nateEc:fix/issues-458-418-404
Closed

nateEc wants to merge 5 commits into
Tencent:mainfrom
nateEc:fix/issues-458-418-404

Conversation

@nateEc

@nateEc nateEc commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

问题与结果

团队经验从上游删除后,本地 recall 缓存仍会保留旧文件;会话趋势缺少稳定的跨日归档与可信成本明细;Git source 与 ClawPro HTTP 分发也缺少统一的 Provider 生命周期和多实例隔离。本 PR 一并补齐这三条路径的核心行为。

主要改动

#404 中跨 HTTP Provider 的持久 ownership ledger,以及删除 active HTTP 来源后的全资源类型自动回退仍需后续实现,因此本 PR 仅引用该 issue,不自动关闭它。

验证

  • npm test:212 个测试文件、2938 项测试通过。
  • npm run test:e2e:22 个测试文件、110 项测试通过;25 项依赖外部凭据的 live 测试按配置跳过。
  • npm run build
  • npm run typecheck
  • 使用两个本地 HTTP 服务验证 report/sync、故障隔离、状态隔离与优先级调度。

Closes #458
Closes #418
Refs #404

- 新增统一的 learnings 镜像协调逻辑,以团队仓库和当前项目命名空间作为用户级缓存的真实来源。
- 在 pull、普通 contribute 和 self contribute 三条索引重建路径中传播顶层及命名空间内的删除。
- 保留 TeamAI 不管理的本地非 Markdown 文件,并过滤未激活项目的私有经验目录。
- 新增文件系统回归测试,覆盖上游文件删除、命名空间切换和上游目录整体删除。
- 以首次停止时间建立 UTC 每日会话桶,幂等累计成功率、对话轮次、活跃时长和纠偏率,并正确处理恢复执行的会话。
- 按带版本的 Claude 官方单价估算输入、输出及缓存 token 的 API 等价成本;未知模型不进入成本或覆盖率计算。
- 在团队周报和本地 Dashboard 中展示最近 7 天相对前 7 天的趋势,同时将旧指标明确标记为历史累计数据。
- 仅向团队仓库写入每日聚合数据,保留请求级数据的本地边界,并同步更新中英文说明。
- 新增单元及端到端回归覆盖;验证 2921 项测试、TypeScript 检查、构建和真实 Dashboard API。
- 新增统一 ResourceProvider、capability、registry 与故障隔离调度,并将现有 Git source 接入同一同步生命周期。
- 将 ClawPro 协议实现迁入独立 HTTP adapter,保留 local-agent 兼容门面和旧版 HTTP 初始化路径。
- 支持多个具名 HTTP Provider;配置、凭据、绑定、manifest、插件、缓存与日志均按 Provider 隔离,凭据使用 0600 权限单独保存。
- 增加 provider add/list/sync/remove/set-primary/migrate-legacy 命令,push 校验可写目标,并为旧 source HTTP 命令保留带弃用提示的兼容入口。
- 为 Git 同名 skill 增加 priority 选择与来源删除回退;通过 2928 项单元测试、3 项 E2E、构建及双 HTTP 后端真实 CLI 验证。
- 将会话指标固定在首次 Stop 日期,并把成本与缓存指标按每个请求自身的 UTC 日期分桶。
- 在本地 requests.jsonl 中保留去重后的隐私安全请求明细,并自动清理 90 天前记录。
- 复用请求首次记录的价格表版本,避免价格更新反向改写历史成本。
- 增加跨日、恢复会话、本地保留期和端到端回归验证。
- HTTP Provider 按优先级从低到高同步,确保冲突资源最终由最高优先级的成功来源生效。
- 在 set-primary 时直接拒绝不可写的 HTTP Provider 与 Git 订阅源。
- 增加多 HTTP Provider 调度顺序的端到端覆盖,并通过类型检查和定向回归测试。
@jeff-r2026
jeff-r2026 self-requested a review September 9, 2026 14:25
@jeff-r2026

Copy link
Copy Markdown
Collaborator

多谢你的 PR,这个改动太大了,希望能拆分为多个 PR

@nateEc

nateEc commented Sep 9, 2026

Copy link
Copy Markdown
Contributor Author

感谢建议,已经按问题边界拆分为 3 个独立 PR:

这个合并 PR 现在关闭,后续分别在三个 PR 中评审和修改。

@nateEc nateEc closed this Sep 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants