Skip to content

补齐配置保护 review 跟进项:清单反向断言、doctor 残留检查、CHANGELOG 与主题报错 - #1

Open
XisFool wants to merge 1 commit into
masterfrom
arena/5af3465c-codebuddy-hud
Open

XisFool wants to merge 1 commit into
masterfrom
arena/5af3465c-codebuddy-hud

Conversation

@XisFool

@XisFool XisFool commented Oct 28, 2026

Copy link
Copy Markdown
Owner

背景

d5e20e9 合入了 P0 配置保护修复(JSONC 无损、技能归属标记、主题配置保护、扫描预算上限、LICENSE 进分发清单)。本 PR 落地上轮 code review 提出的 4 个跟进项。

变更

  1. 清单漂移测试反向断言(tests/unit/bootstrap.test.mjs):RUNTIME_FILES 每一项必须在仓库中真实存在;之前只有“仓库 ⊆ 清单”方向,清单写错名会在远端安装时 404 且测不出来。
  2. doctor 残留副本检查(runtime/doctor.js、runtime/lang.js):新增 codebuddy / retainedBackups 检查项,扫描 settings 同目录的 .bak.codebuddy-hud.retained-* 并列出(最多 5 个),有残留时 warn 并提示手动清理;只读不删,无残留时 ok。中英文文案同步。
  3. CHANGELOG:[Unreleased] 补上 d5e20e9 那批 P0 修复与本次跟进的 Added/Fixed/Tests 条目(之前漏记了);不 bump 版本。
  4. 主题报错友好化(runtime/theme-selector.js):saveUserTheme 解析失败时报错点出配置文件路径与严格 JSON 要求(落盘到 error log),行为不变:抛错、中止、原文件不动,CLI 仍 exit 0。

文档同步:docs/module-reference.md(§18 新增第 8 项、§19 补充报错说明)、README.md/README_en.md 卸载章节注明可用 --doctor 查看残留副本。

验证(node v22.22.3)

  • npm test:496 用例 / 488 通过 / 0 失败 / 8 跳过(新增 4 个:drift 反向包含在既有单测内、doctor×3、theme×1)
  • npm run verify:10/10
  • node scripts/verify-install.js:14/14
  • 真实 CLI 冒烟:残留文件出现时 doctor 报 warn 并列出路径;非法配置下 --theme exit 0、stderr 可见、日志含新文案

未动事项

供应链签名、更新链路、状态文件权限/并发、renderer 小问题集等仍在原清单的后续批次中,本次未碰。

- bootstrap 漂移测试加反向断言:RUNTIME_FILES 每一项必须在仓库中真实存在
- --doctor 新增 retainedBackups 检查:列出 .retained-* 原文副本并提示手动清理(只读不删)
- CHANGELOG 补 Unreleased 条目:上一批 P0 修复与本次跟进(含测试覆盖说明)
- saveUserTheme 解析失败报错点出文件路径与严格 JSON 要求,原文件保持不动
- 同步 module-reference 与中英文 README 卸载/doctor 说明

验证:npm test 496/488/0/8,verify 10/10,verify-install 14/14

Co-authored-by: arena-agent <297053741+arena-agent@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant