Skip to content

v1.1.11 — 审计回源 · 回测汇总分档

Choose a tag to compare

@new-256 new-256 released this 17 Sep 17:20
· 2 commits to main since this release

背景

v1.1.10 引入 audit-npm-sync.mjsdsh-compat.mjs 之后暴露的两处观测准确性问题:审计刚发布的版本看不见最新版,回测汇总把真实失败说成「没跑过」。本版只修这两个工具的读数口径,不涉及插件运行时行为(preset / 家级灯 / 动态形态 / MCP 三形态代码零改动)。

修复

  • 审计版本列表回源scripts/audit-npm-sync.mjs):npm view <pkg> versions 会命中 npm 本地元数据缓存,导致npm publish 完立刻审计仍只看到旧版本列表(v1.1.10 发布时实测)——审计看上去「少了最新版」,CI 里也是新 tag 刚推、正需要最新元数据。现在取版本清单时加 --prefer-online 强制回源。改动只在版本列表这一步:tarball 传输层不动,仍走 npm CLI(自动重试)+ 官方 dist.shasum 校验 + npmmirror 镜像兜底。

  • 回测汇总单列「功能失败」scripts/dsh-compat.mjs):此前汇总按 PASS / 不可安装 / 待重跑 / 未回测 分档,其中 functional.ok === false真实功能失败被并进 untested,与「根本没跑过」混为一谈——20 版本回测里 7 个「CLI 环境不兼容」的失败行因此口径不准。现在 untested = 总数 − pass − failed − skip − pending,并把 功能失败 ${failed} 单独打印进汇总行,与 docs/COMPATIBILITY.md §3.1 的「不可安装 / CLI 环境不兼容」分档对齐。

测试

  • npm run check 全绿:MCP self-check + verify.mjs 22 项闸门(含 client 注册 id == 包名 的静态检查)+ 74 例测试全部通过。
  • 版本号同步(本次涉及的全部声明位):package.json / home-plugin/codebuddy-indicator/package.json / mcp/codebuddy-mcp-server.mjsVERSION / docs/CHANGELOG.md 顶部条目 / test/mcp.test.mjs 版本断言 —— 五处一致为 1.1.11;README 中英文版本表与本交接文档的版本说明同步更新。

版本一致性

  • 发布顺序严格遵循 docs/RELEASE-SOP.md §0.3:commit → tag → push → GitHub Release → npm publishnode scripts/audit-npm-sync.mjs 审计。
  • 自 1.1.10 起工作区 CRLF 已归一(.gitattributes * text=auto eol=lf),本版 tarball 与 tag 树应报 ✓ IDENTICAL