@dommaker/harness 1.8.0 → 1.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/CHANGELOG.md +18 -1
  2. package/README.md +1 -1
  3. package/dist/cli/commands/check.d.ts +8 -0
  4. package/dist/cli/commands/check.d.ts.map +1 -1
  5. package/dist/cli/commands/check.js +10 -11
  6. package/dist/cli/commands/check.js.map +1 -1
  7. package/dist/cli/commands/status.d.ts +8 -0
  8. package/dist/cli/commands/status.d.ts.map +1 -1
  9. package/dist/cli/commands/status.js +5 -7
  10. package/dist/cli/commands/status.js.map +1 -1
  11. package/dist/cli/commands/sync-docs/capabilities-syncer.d.ts +22 -0
  12. package/dist/cli/commands/sync-docs/capabilities-syncer.d.ts.map +1 -1
  13. package/dist/cli/commands/sync-docs/capabilities-syncer.js +113 -8
  14. package/dist/cli/commands/sync-docs/capabilities-syncer.js.map +1 -1
  15. package/dist/cli/commands/sync-docs/index.d.ts.map +1 -1
  16. package/dist/cli/commands/sync-docs/index.js +36 -4
  17. package/dist/cli/commands/sync-docs/index.js.map +1 -1
  18. package/dist/cli/state-io.d.ts +34 -0
  19. package/dist/cli/state-io.d.ts.map +1 -0
  20. package/dist/cli/state-io.js +71 -0
  21. package/dist/cli/state-io.js.map +1 -0
  22. package/dist/hooks/bootstrap.d.ts +9 -12
  23. package/dist/hooks/bootstrap.d.ts.map +1 -1
  24. package/dist/hooks/bootstrap.js +9 -31
  25. package/dist/hooks/bootstrap.js.map +1 -1
  26. package/dist/hooks/index.d.ts +5 -7
  27. package/dist/hooks/index.d.ts.map +1 -1
  28. package/dist/hooks/index.js +4 -10
  29. package/dist/hooks/index.js.map +1 -1
  30. package/dist/index.d.ts +2 -2
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +3 -7
  33. package/dist/index.js.map +1 -1
  34. package/package.json +1 -1
  35. package/src/CONTEXT.md +2 -2
  36. package/src/__tests__/public-exports.test.ts +30 -4
  37. package/src/__tests__/public-type-surface.test.ts +0 -8
  38. package/src/cli/__tests__/state-io.test.ts +50 -0
  39. package/src/cli/commands/CONTEXT.md +4 -0
  40. package/src/cli/commands/__tests__/check-read-count.test.ts +3 -0
  41. package/src/cli/commands/__tests__/check.test.ts +20 -8
  42. package/src/cli/commands/__tests__/registry.test.ts +39 -3
  43. package/src/cli/commands/__tests__/status-extra.test.ts +25 -8
  44. package/src/cli/commands/__tests__/status.test.ts +46 -18
  45. package/src/cli/commands/__tests__/sync-docs-table-layout.test.ts +259 -0
  46. package/src/cli/commands/check.ts +20 -18
  47. package/src/cli/commands/status.ts +12 -7
  48. package/src/cli/commands/sync-docs/capabilities-syncer.ts +139 -9
  49. package/src/cli/commands/sync-docs/index.ts +41 -4
  50. package/src/cli/state-io.ts +53 -0
  51. package/src/hooks/CONTEXT.md +12 -22
  52. package/src/hooks/__tests__/bootstrap.test.ts +21 -70
  53. package/src/hooks/bootstrap.ts +9 -48
  54. package/src/hooks/index.ts +5 -20
  55. package/src/index.ts +1 -13
  56. package/dist/hooks/config.d.ts +0 -30
  57. package/dist/hooks/config.d.ts.map +0 -1
  58. package/dist/hooks/config.js +0 -34
  59. package/dist/hooks/config.js.map +0 -1
  60. package/dist/hooks/pipeline.d.ts +0 -36
  61. package/dist/hooks/pipeline.d.ts.map +0 -1
  62. package/dist/hooks/pipeline.js +0 -133
  63. package/dist/hooks/pipeline.js.map +0 -1
  64. package/dist/hooks/registry.d.ts +0 -70
  65. package/dist/hooks/registry.d.ts.map +0 -1
  66. package/dist/hooks/registry.js +0 -141
  67. package/dist/hooks/registry.js.map +0 -1
  68. package/dist/hooks/types.d.ts +0 -111
  69. package/dist/hooks/types.d.ts.map +0 -1
  70. package/dist/hooks/types.js +0 -9
  71. package/dist/hooks/types.js.map +0 -1
  72. package/src/__tests__/hooks-pipeline.test.ts +0 -201
  73. package/src/hooks/__tests__/config.test.ts +0 -19
  74. package/src/hooks/__tests__/pipeline.test.ts +0 -90
  75. package/src/hooks/__tests__/registry.test.ts +0 -115
  76. package/src/hooks/config.ts +0 -33
  77. package/src/hooks/pipeline.ts +0 -155
  78. package/src/hooks/registry.ts +0 -166
  79. package/src/hooks/types.ts +0 -118
package/CHANGELOG.md CHANGED
@@ -6,9 +6,24 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
- ## [1.8.0] - 2026-09-16
9
+ ## [1.9.0] - 2026-09-20
10
+
11
+ ### BREAKING
12
+ 记账口径 = ADR-0022 追记(breaking 落 master 即记,避免下次发版无据);发布级别 = 下一个 **minor**(ADR-0027 决策 2,沿用 ADR-0022「breaking 内容按 minor 号发布」先例,不进 major):
13
+ - **#170**(ADR-0027):包根公开面删除 hooks 管线——值符号 `HookRegistry` / `HookPipeline` / `assertHookRegistryClosed` / `toErrorStrategy` 四个 + 类型 `HookDefinition` / `HookConfig` / `EffectiveHook` / `HookErrorStrategy` / `HookExecutionRecord` / `HookPhase` / `HookResult` / `PipelineResult` 八个;`HarnessBootstrap` 收缩 `hooks` / `pipeline` 两字段、`bootstrapHarness` / `bootstrapHarnessSync` 收缩 `hookDefinitions` / `hookConfigs` 两参数。迁移路径 = 删引用。保留面只有 `bootstrapHarness` / `bootstrapHarnessSync` / `HarnessBootstrap` 三符号。
14
+ ### Changes
15
+ - refactor(hooks)!: hooks 管线面整体删除——`src/hooks/{registry,pipeline,config,types}.ts` 四文件连同公共面 12 个符号一并退场,`src/hooks/` 只剩 bootstrap 组合根(#170,执行票;裁决 = #169 三项人类裁定 2026-09-17,记 ADR-0027:①范围整体删(只删 `runOne` 被否——会留下零消费者的注册闭环,日后还要再开一刀)②minor 同车 ③hooks 管线不算 harness 独立供给)——原委:#167 的 `runOne` 随 1.8.1 发布当日其唯一需求方消失,studio#562 裁决 studio hooks 层整体删除;双仓事实核查(ADR-0027)——harness 内部四符号仅在 `src/index.ts` 被 re-export,CLI/bin/其余 src 零调用方;studio 侧消费全部位于已删的 hooks 层(本票开工前实测:`packages`/`apps`/`scripts` 对 `HookRegistry` / `HookPipeline` / `assertHookRegistryClosed` / `toErrorStrategy` / `HookConfig` 零命中,studio-shared `runtime/bootstrap.ts` 只剩初始化)。落地:`src/hooks/index.ts` barrel 收为 bootstrap 三符号;`src/index.ts` 导出段(原「Hooks 管线」)随之收缩并改标为运行环境引导;`bootstrap.ts` 删 `HookRegistry` / `HookPipeline` 装配与 `registerInitialHooks`(含 #159「给定义不给 `HookConfig` 声明表即抛错」闸——声明表语义随管线面一同消失)、`HarnessBootstrap` 返回值由 6 字段减为 4。**消费方影响单列**:bootstrap 唯一生产调用方(studio,经 studio-shared)为**无参调用且不访问被删字段**,因此零迁移成本、编译不受影响(已核 `HarnessBootstrap` 在 studio-shared 仅作类型持有/转发);`./hooks` 从来不在 `package.json` 的 `exports` 内,除包根外无第二个入口需清。**对外行为变化**(**breaking**,定级细节见上「BREAKING」节):包根删 4 值符号 + 8 类型、`HarnessBootstrap` 形状变更、`bootstrapHarness*` 减两形参。测试:三道公共面冻结闸条目同步——`public-exports.test.ts` 摘 4 个值符号并新增两条 **barrel 源形状负钉**(钉 12 个已删符号名不再出现于 `src/hooks/index.ts` 与 `src/index.ts`;与两道全量清单闸的分工是「回灌时红名直接指到 barrel,不必从清单 diff 反推」,`export *` 已被 `sub-barrels-explicit.test.ts` 禁到 src 下全部目录 barrel,故 barrel 源形状即全可达面)、`public-type-surface.test.ts` 包根类型清单摘 8 项、`public-value-surface.test.ts` 零改动(hooks 不住子路径入口,实测改动前后均绿);`src/hooks/__tests__/{registry,pipeline,config}.test.ts` 与 `src/__tests__/hooks-pipeline.test.ts` 四文件随迁删除;`bootstrap.test.ts` 改写为新形状(返回值键集合逐字冻结 `['checker','mergedConstraints','projectPath','sessions']` + 已删 `hooks` / `pipeline` 两字段 `@ts-expect-error` 编译期钉,照 ADR-0022 对 AC-007 的双钉手法)。**先红后绿**:闸与测试先改、源码后删,改完测试即 4 项红(`public-type-surface` 清单多出 8 项、`public-exports` 运行时键集合与两条 barrel 钉、`bootstrap.test.ts` 套件 TS2578 不可运行),删码后复绿;`layering.test.ts` 的 `hooks` 下行许可集合按上界语义不动(bootstrap 组合根本就装配 context/core/monitoring,实际依赖面收窄不报)。文档:`src/hooks/CONTEXT.md` 改写为 bootstrap 单面口径(管线面四导出、闭环与映射约定、'ignore' 收敛史全部撤下,只留「要重开须先按 ADR-0022 判据重新裁决」的指路);`src/CONTEXT.md` 术语「插件」行摘掉 hook 一族;`CAPABILITIES.md` 的 `## Hooks` 段换为 `## Runtime Bootstrap`;`README.md` 核心能力表的「Hook 管线」行换为「运行环境引导」行(同一能力表的既有陈旧行「上下文/监控 = …会话压缩…」属 ADR-0022 那车漏改,本票未动);`CLAUDE.md` 架构表 `src/hooks/` 行与「Hook 声明与实现必须注册表闭环」约定条改写为删除裁决记录(后者属手写治理段,改动理由与出处随本条留痕);`docs/adr/0002-registry-closed-loop.md` 按该文件自己的先例(2026-09-15 门禁侧收缩时在状态行加「部分失效」注记 + 文末「后续变更」节)补 hook 侧同形状注记与「后续变更(2026-09-18)」节——**状态行与追加节是活文档,正文既有条目一字未改**。纯历史快照(`docs/public-exports-review.md`、`docs/2026-08-*` 研究报告、`.scratch/`、既有 ADR 正文)按 ADR-0022 决策 4「不回改历史快照」口径未动。验收:`npm test` 全量 **184 套件 / 2630 passed / 6 skipped**、`npx jest --coverage --no-cache` 全局 **95.53% stmts**(较 CHANGELOG 上一条记录的 95.4% 不降;branches 84.58、functions 82.65、lines 96.36)、`tsc --noEmit` 与 `eslint src` 零错、`npm run build` 绿且产物面实测——`require('./dist/index.js')` 对 12 个已删符号零命中、`bootstrapHarnessSync.length === 1`、`dist/index.d.ts` 零 `Hook*` 类型、`node bin/harness.js check` 通过(铁律 3/3、指导原则 3/3)、`sync-docs --check` 零内容漂移。
16
+ - fix(sync-docs): 撤下模块登记时整行删除 + 表格排版收拢正本(#171)——原缺陷:`capabilities-syncer.ts` 删幽灵行用 `content.replace(/^\|…$/gm, '')`,`m` 下 `^…$` 只框住行内容、**不含行尾换行**,删完在表格中间留一个空行;CommonMark 以空行断表,于是每撤一次登记就把一张能力表多切一刀(studio 存量实测 40 处表格内空行)。同函数末尾既有的 `\n{3,}→\n\n` 够不着——删一行只产两个换行。落地:① 删除改按行 split/filter/join,行尾随之消失(CRLF 由行内正则尾部 `\r?` 保持与旧 `m` 相同的匹配面);② 新增排版收拢正本 `normalizeCapabilitiesTableLayout(content)`(模块内导出,不进包公共面)——规则①删两侧都是表格行的空行段、规则②收掉无数据行的表头+分隔行,**表格外的段落空行不动**、**围栏代码块(``` / ~~~)内的行在收拢一侧整体豁免**(CAPABILITIES.md 是手写文档,块内「表头+分隔行」示例按②会被判空表并删掉正文:实测一块 8 行正文被收成 6 行,`--check` 还为此判红),且两条规则**跑到不动点**——规则互相制造触发点(①吃掉两张空表之间那个空行后,②在同一轮只收得掉后一张),不迭代就一次收不干净、`--check` 修完仍红(实测需两轮);③ 收拢排在增删**之后**(先收拢会误删「本轮要往空表里补新行」的表头),而既有的一处 `\n{3,}→\n\n` 折叠由「增删之后」移到**收拢之后**并删去增删分支内的重复折叠(收掉一张夹在两段散文之间的空表本身会新产 `\n\n\n`);④ 幽灵行删除一侧**刻意不认围栏**,与收拢一侧口径故意不同:登记条目由 `core/constraints/capabilities-parser` 全文扫描得出(ADR-0009),围栏内的行同样算登记项——只让删除豁免围栏,块内示例引用的已删文件会永远报成幽灵条目且 `--check` 修不掉(实测该半改法令收敛闸转红);两侧同认围栏属改 ADR-0009 登记面并连带影响 docs_freshness 判定,另票裁决。⑤ `--check` 与写模式共用同一正本,判定面 = 返回内容与入参是否不同,故 check 报得出、fix 必清得掉(ADR-0009「check/fix 同规则才收敛」口径,不重演 2026-08-04 studio PR #44 的永不收敛)。**对外行为变化 2 处**:① 写模式对含脏排版文件的产出由「保留空行」变为「收拢成连续表格行 + 收掉空表」(生成物排版);② `sync-docs --check` 判定面**收紧**——此前对表格排版脏行静默放过(issue 实测:手工清掉 39 处后 `--check` 仍 exit 0),现判红并在 reason 里点名空行数与空表张数;`--json` 加性新增 `summary.tableLayoutDirty` 与顶层 `tableLayout: {blankLines, emptyTables}`,命令语法、旗帜集合、退出码取值面、包公共导出面零变化。**定级待 ship 时人裁**:先例 = ADR-0025/#142 对 `sync-docs --check` 语义收紧标 `!`,本条同属该收紧面;差别在收紧后果一条命令即可自愈(写模式必清得掉,下游不必手改文档)。测试:`__tests__/sync-docs-table-layout.test.ts` 13 项——四种撤登形状(中间行/目录条目行/末行/CRLF)+ 存量脏行「check 判红 → 写模式收拢 → check 复绿」+ 空表连表头一起收掉 + 两张空表相邻一次收干净(不动点)+ 收拢后不留三连换行 + 围栏内示例行按幽灵行处理且 check 收敛(钉取舍的另一半)+ 四条反向闸(有新行不误删表头、表格外段落空行不动、代码块内空表不被收、代码块内表格样式行不被收拢)。**先红后绿**:上述四条新闸对 #171 的上一版实现(commit `16eaf2c`)逐条实测转红(两条代码块豁免闸分别报「空表 1 张」「表格内空行 1 处」),改码后复绿;收敛闸另经反证——把幽灵行删除改成认围栏即转红(块内示例成了永久幽灵条目),故还原为不豁免并留注释。**核实后判定不属本票的三项**:① 「`--check` 报了但写模式一次收不干净」与「收拢后残留三连换行」为 `16eaf2c` 实测真缺陷,本票修;② module 模式下整张表被收空后下一次写会走「无表格」分支自动补一整张目录表(与「目录条目需人工策划登记」冲突)——**非本票引入**:修复前的产物形状(幽灵行变空行、表头仍在)经 `parseCapabilitiesFiles` 同样解析为空集,实测两版行为一致,另票;③ 4 空格缩进代码块(无围栏标记)内的表格样式行仍会被收拢——缩进 ≥4 在 CommonMark 里与缩进表格本身歧义,现有豁免取保守侧(宁可不动),记录不修。端到端核实:临时 git 工程撤一个目录登记行 → `git diff` 为纯删行、表格内空行 0、复跑 `--check` exit 0;studio 真实 `CAPABILITIES.md` 过正本函数 → 40 处收为 0 处、幂等、非空行内容逐字保留,harness 自身 `CAPABILITIES.md` 判定不变(零误报);同类清空行写法全仓仅此一处站点(`--compact` 路径按下标 filter 删除,本就纯删行)。文档:`src/cli/commands/CONTEXT.md` 记 #171 条目(根因 + 判定与修复共用正本 + 代码块豁免理由)。验收:`npx jest` 全量 **185 套件 / 2643 passed / 6 skipped**、`tsc --noEmit` 与 `eslint src` 零错、`npm run build` 绿、`node bin/harness.js check` 铁律 3/3 + 指导原则 3/3、`sync-docs --check --agents` 零漂移;端到端另测「两张空表 + 一个待登记文件」形状一次 `sync-docs` 即收干净且复跑 `--check` exit 0(不动点前需两轮)。
17
+ - test(cli): `registry.test.ts` 的 knowledge 别名冒烟自带夹具库根——原缺陷:该用例 spawn 真实 bin 跑 `knowledge ls --json` 却**不隔离数据面**,读的是操作机的真实知识库(本机实测 221 条 / 1.35MB JSON),而 CI 全新 checkout 上该库为空——同一份断言两侧取数规模差三个数量级,只有大的一侧崩。2026-09-20 发版(1.9.0 前置 `env CI=true npm test`)即以此形状暴露:子进程 stdout 越过 `spawnSync` 缺省 1MB 缓冲后被 **ENOBUFS 杀掉**,`status` 变 `null`、stderr 一句解释都没有,报错看着像别名路由崩了。本仓 `sync-docs` 侧刚记过同族病(CONTEXT.md mtime 判定按 CI 关闭、trace 锚根在非 root 下 EACCES,1.8.0 那轮 CI 首跑红两处),这条是它的镜像面:那两处是 CI 看得见本地看不见,这一处是本地看不见 CI 看得见。落地:① 用例经 `resolveKnowledgeBaseDir` 的既有解析缝 `KNOWLEDGE_BASE_DIR` 指向临时夹具,夹具由 `FileKnowledgeStore.save()` 播一条条目(`--json` 出口因此仍有真实记录可数),三条断言逐字不变;② `runWithModuleProbe` 收可选 `extraEnv` 形参(其余冒烟用例不传、行为不变)并显式抬高 `maxBuffer` 到 32MB——抬高**不是**本用例的修复手段(夹具后正文只有几百字节),它管的是诊断信息:超限不该以「进程被杀、无原因」面目出现。**对外行为变化 0 处**:纯测试面,`src` 产品代码零改动、包公共面零变化、命令语法与退出码零变化。测试:该套件 16 项在改造前红 1 项(`status: null`)、改造后全绿,且断言不再随操作机知识库规模漂移;`npm run build` 绿、`eslint src` 零错。
18
+
19
+ ## [1.8.1] - 2026-09-17
10
20
 
11
21
  ### Changes
22
+ - feat(hooks): `HookPipeline` 新增 `runOne(name, context)`——按名执行单个 hook 的公共入口(#167,#159 的 studio 侧随动遗留;票下 grilling 裁决 Q1–Q6)——原缺口:管线执行粒度是**时机**(`run(phase)` 一次跑该时机全部 enabled hook),consumer 按名直调单个函数的场景(studio 唯一生产调用点)无入口可委托,`enabled` / env 开关在直调路径上不配不生效。落地:方法挂在已导出类 `HookPipeline` 上,采样与错误隔离复用 `executeOne` 单路径(判定与错误策略的实现体只有一份),enabled / errorStrategy 值来源仍是注册环节填充的 `EffectiveHook`(唯一声明点 HookConfig,#159)。语义三面(裁决 Q2/Q3/Q5):`enabled:false` → 实现体零调用、返回 `skipped:true / passed:true` 记录(`HookExecutionRecord` 加性新字段,镜像 `sampled` 先例:未执行 = 记录上一面旗);`errorStrategy:'block'` 且失败(实现体抛或返回 `passed:false`)→ 抛裸 `Error`,message 形如 `[harness] hook "<name>" blocked: <原文>`(不新设 `HookBlockedError`,裁决明确不做);`'warn'` 且失败 → resolve、返回 `passed:false` 带 `error` 的记录;未知 hook 名 → 抛错(与 `assertHookRegistryClosed` 闭环口径一致,拒绝静默缺失)。**对外行为变化 1 处**(定级**非 breaking / minor**,ADR-0022 加性判据):已导出类加一个方法、已冻结类型加一个可选字段,无符号增删——`public-exports` / `public-type-surface` / `public-value-surface` 三套闸清单零变更(裁决预期核实成立)。测试:`src/hooks/__tests__/pipeline.test.ts` 新增「runOne 按名执行」describe 7 项——反证三形各一条(enabled:false 零调用 + skipped 记录;block 实现体抛 / 返回 passed:false 两形均抛且 message 含 hook 名与原文;warn 失败 resolve 且记录 passed:false 带 error)、未知名抛错、sampleRate 采样语义与 `run` 路径一致(未抽中零调用 + sampled 记录、抽中执行)。**先红后绿**:实现前 TS2339「runOne 不存在」令套件红。文档:`src/hooks/CONTEXT.md` 核心导出行补 `runOne` 与 `skipped` 语义。studio 侧随动(删本地判定读取点、委托 `runOne`)另开下游票,本仓发版后执行(照 #159 拆分模式)。
23
+ - feat(cli): 新立可注入状态文件接缝 `StateIO`,收编 `.harness/.state.json` 全部读写并修复智能提示去重失效(#148,#140 C 票;决策 ADR-0026)——原状两个写者裸调同步 `fs`、无注入缝,且 `status` 不读就整文件重写,把 `check` 写入的 `shownHints` 抹掉,「记录已足够,运行 harness status 查看统计」提示的「首次达到阈值」去重机制因此实面失效(每两次 `check` 夹一次 `status` 就再响一次)。落地:新增 `src/cli/state-io.ts`(cli 层,不进包根导出面,零公共面变化)——`HarnessState` 具名类型(`shownHints?` / `lastStatusRun?`;凭想象留下的 `lastDiagnoseRun` 按 ADR-0022 口径删除,旧落盘文件残留该键无害不迁移)、`StateIO` 接口(`read()` 文件缺失/空返 `{}` / 损坏照现状抛 / `write()`)、缺省真实 fs 实现 `fileStateIO(projectPath)`(状态文件路径知识单点化);`check` / `status` 两命令加**可选** `stateIO` 注入参数(照 `CommandIO` 模式,不扩 `CommandIO`、不动 `RunEnv` 只读契约),写语义统一为**读-改-写**。**对外行为变化 2 处**(均定级**非 breaking / patch**,ADR-0022 判据同 #138「恢复的是声明语义、修掉的是缺陷状态」先例):① 智能提示去重从此真生效——`shownHints` 跨 `status` 存活,提示出现频次由「夹一次 status 再响一次」恢复为设计口径「首次达到阈值一次」;② `.state.json` 损坏时 `harness status` 由「不读直接整文件覆盖重写」变为 `JSON.parse` 抛错(读-改-写决策 2 与「损坏抛即抛不兜底」决策 4 的合并后果,ADR-0026 已裁;`check` 侧原本就是这语义,未变);命令语法、输出文案、退出码、`.state.json` 路径与键名零变化。测试:状态相关用例全部改经注入内存假件、不再碰真文件系统(`check.test.ts` 智能提示组、`status.test.ts` 全部调用点);`status.test.ts` 新增「读-改-写:shownHints 不被抹掉」用例(**反证已做**:退回整文件重写该例转红并还原);计数闸 `check-read-count.test.ts` 夹具补 `.harness/.state.json`、冻结表新增「一次 check 运行内状态文件恰读一次」行(**反证已做**:`fileStateIO.read` 改双读 → 冻结表与「至多读一次」两例同红并还原)。文档:`src/CONTEXT.md` StateIO 条目由「代码未落」改为落地口径。
24
+
25
+ ## [1.8.0] - 2026-09-16
26
+
12
27
  ### BREAKING
13
28
  发版前只看这一节即可拿到本车全部 breaking 判定(#162 复审遗留项 5 设立;细节与迁移路径见 `### Changes` 对应条目):
14
29
  - **#134 ①**:包根公开类 `KnowledgeAudit` 构造签名由 `new KnowledgeAudit({ baseDir, … })` 变为 `new KnowledgeAudit(store, { 阈值 })`(`AuditOptions` 去掉 `baseDir` 与 `autoFix`)。
@@ -16,6 +31,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
16
31
  - **#135**:包根公开类型 `CommandGateConfig` 收缩两字段(`strict` / `customBlacklist` 删除,现只剩 `ignoreCategories`)、`harness command` 删除 `--strict` 选项;多重命中输入上 `harness command --level` 报告的等级可能由低变高(与同一条目的裁决一致)。
17
32
  - **#159**(晚于本批复审批次,同车 breaking,一并汇总以免漏级):包根公开类型 `HookDefinition` 收缩 `enabled` / `errorStrategy` 两字段、`HookErrorStrategy` 取值收窄为 `'block' | 'warn'`、`HookRegistry.register` / `registerAll` 签名变化(配置表成为必填配对)、`bootstrapHarness` / `bootstrapHarnessSync` 加第三参 `hookConfigs`。
18
33
  发布级别随本车 ship 时统一裁决,判据同 ADR-0022 / ADR-0024「breaking 内容按 minor 号发布」先例。
34
+
35
+ ### Changes
19
36
  - fix(knowledge): 三处声明与执法背离对齐正本——absent 静默跳过、外部 marking 接线、rule 降级边界取 <=(#161,commit `c9e42cf`;本条为 #164 复审遗留项 1 的补记——该 commit 落地时 Unreleased 无条目,同批 #154/#156/#157/#159/#163 均带,本票独缺)——① `migrateKnowledgeEntries`:frontmatter 缺失('absent')的 .md 不再写入 `result.errors`(`no frontmatter found` 假阳性),按 #89 裁决 2 的非条目语义改计 `skipped`,`MigrationResult` 形状不变;② `KnowledgeInjector`:`origin === 'external'` 条目的注入与格式化输出带 `EXTERNAL_SOURCE_MARKER` 前缀——三层防御第二层 retrieval marking 此前只有声明未接线,本票接通,标记唯一正本收在 `knowledge/query.ts` 并与 `formatForPrompt` 共用,注入 metadata 增 `origin` 字段;③ lifecycle rule 降级条件由 `<` 改 `<=`——成功率恰 0.5(失败率 >= 50%)的 rule 条目由不降级变为降级,与方法注释/CONTEXT.md 的既有声明一致。**对外行为变化 3 处**(定级**非 breaking / patch**,ADR-0022 判据同 #138「恢复的是声明语义、修掉的是缺陷状态」先例):三处均把可观察行为对齐到已声明口径——公开符号零删除、签名零变化,`EXTERNAL_SOURCE_MARKER` 为加性导出;受影响的只有依赖旧误报(errors 里的 absent 条目)与旧边界(恰 50% 不降级)的用法。测试:migration / knowledge-injector / lifecycle 三套件各补边界反证用例(absent 计 skipped 不进 errors、external 条目带标记、恰 50% 触发降级),随 commit `c9e42cf` 同车落地。
20
37
  - chore(cleanup+perf): 复审遗留项合并票的代码面两项(#162,ticket-loop #134–#147 统一复审)——① `utils/exec.ts` 删 `runCommand()`:#137 头注记它「有生产消费者」实为两处**注释**引用,非测试代码调用点为 0 且不在包公共面(`src/index.ts` 与五个 exports 入口均无),按 ADR-0022 同判据删除(`execAsync` 保留,判据与头注全文见 `src/__tests__/exec.test.ts`);② `spec-baseline-check` 共享索引加驻留上限 `SOURCE_INDEX_MAX_ENTRIES = 5000` / `SOURCE_INDEX_MAX_BYTES = 64MB`,超任一上限即放弃驻留、回落逐文件流式读——峰值内存由 O(全仓源码) 回到 O(单文件),正常规模仓保留 #146「一次遍历」收益(本仓 146 个源文件的规模测不出大仓峰值,故走上限+回落而非折叠重构)。**对外行为变化 0 处**(非 breaking):判定、证据文案、stdout、退出码、包公共面零变化;`runCommand` 外部不可达故零迁移成本。测试:`exec.test.ts` 收缩记录改写(`runCommand` 列入已删名单,`@ts-expect-error` + 运行时键双钉);新增 `spec-baseline-index-cap.test.ts` 4 项驻留上界闸(上限内驻留重放每文件至多读一遍、超条目/字节上限回落流式且判定不变——反证已做:摘掉回落分支 2 例转红并还原)。文档:`src/cli/commands/CONTEXT.md` 记名回落路径。
21
38
  - refactor(hooks)!: `HookConfig` 成为 `enabled` / `errorStrategy` 唯一声明点——`HookDefinition` 删除同名字段,注册环节由配置表填充有效值(#159,harness#142 核对出的「同一语义两处声明」根治票,triage 裁路线 1 配置表唯一化)——原缺陷:配置表两字段为必填却零读取点,执行链只读 `HookDefinition` 同名字段,`assertHookRegistryClosed` 只按 `name` 配对,consumer 写 `{ enabled: false, errorStrategy: 'block' }` 而注册定义是 `{ errorStrategy: 'warn' }` 时 hook 照样执行、按 warn 继续,闭环断言全绿。落地:`HookDefinition` 类型上不再有 `enabled` / `errorStrategy`(编译期 `@ts-expect-error` 双钉冻结新形状);`HookRegistry.register(hook, config)` 注册即配对(名称不一致 / `registerAll` 有实现缺配置声明均抛错),填充出 `EffectiveHook`(新公开类型 = 定义 + 有效 enabled / errorStrategy),`getEnabled` / `get` / `listAll` 返回它,管线 block/warn 分派与启用过滤的判定语义不变、只换值来源;`bootstrapHarness` / `bootstrapHarnessSync` 加第三参 `hookConfigs`,给定义不给配置表即抛错。有效策略集合收敛为 `'block' | 'warn'`——`HookErrorStrategy` 收窄、原 `'ignore'` 与「未声明 strategy 静默跳过」形态退出有效面(仓内核实零生产消费者,唯一引用是一份测试,已随新形状重写);`toErrorStrategy` 语义不变、返回类型随收窄。studio 侧随动(`callHook` 自建判定层拆除、委托 harness 管线)另开下游票,须在本仓发版后执行。**对外行为变化**(**breaking**,发布级别随本车 ship 时裁决,判据同 ADR-0022 / ADR-0024「breaking 内容按 minor 号发布」先例):包根公开类型 `HookDefinition` 收缩两必填语义词字段、`HookErrorStrategy` 取值收窄、`HookRegistry.register`/`registerAll` 签名变化(配置表成为必填配对)、`bootstrapHarness*` 加参;迁移路径 = 把定义上的 `enabled` / `errorStrategy` 挪进 `HookConfig` 声明表并随注册传入。测试:`src/hooks/__tests__/registry.test.ts` 新增「注册即配对」4 项(配置填充有效值、名称不一致抛错、缺声明抛错、编译期钉)、`pipeline.test.ts` 改写为配置驱动并新增「配置 enabled:false 不进管线」反证、`bootstrap.test.ts` 补「给定义不给表即抛错」×2、`src/__tests__/hooks-pipeline.test.ts` 全量改用新 API(原 'ignore' 用例随有效面收缩删除)、`public-type-surface.test.ts` 类型清单 +`EffectiveHook`。**先红后绿**:新测试对旧实现全红(TS2554 签名不匹配 + 行为断言失败)。文档:`src/hooks/CONTEXT.md` 已知偏差条删除、「配置归一/唯一真相」表述改为与实现一致。
package/README.md CHANGED
@@ -139,7 +139,7 @@ scenes: [] # 场景标签,命中场景专属 prompt 才进入生效集
139
139
  | 约束引擎 | check/prompt 二元约束 + 生效集合并(`getEffectiveConstraints`)+ 注入渲染/漂移校验 |
140
140
  | 知识引擎 | 约束退役 → KnowledgeStore 沉淀(规则原文 + 原因 + 历史统计),可检索、可追溯 |
141
141
  | 门禁系统 | 8 种门禁:测试/验收/性能/安全/契约/审查/命令/检查点 |
142
- | Hook 管线 | 通用 before/after/around hook:注册 排序 错误隔离 采样执行 |
142
+ | 运行环境引导 | `bootstrapHarness` / `bootstrapHarnessSync`:一次调用装配约束检查器 + trace 记录器 + 会话管理器(原「Hook 管线」面双仓零消费者,已随 ADR-0027 整体删除) |
143
143
  | 上下文/监控 | Token 预算 + 会话压缩 + Trace 收集/分析 |
144
144
 
145
145
  ### 代码结构
@@ -11,6 +11,7 @@ import { type GitEvidence } from '../../core/constraints/git-evidence';
11
11
  import { type RunEnv } from '../../core/constraints/run-env';
12
12
  import type { ConstraintTrigger } from '../../types/constraint';
13
13
  import { type CommandIO, type CommandResult } from '../command-contract';
14
+ import { type StateIO } from '../state-io';
14
15
  export interface CheckOptions {
15
16
  /** 预设名称;**不传 = 按项目 `.harness/config.yml` 的 preset**(CLI 不给缺省值,见 commands/definitions.ts) */
16
17
  preset?: string;
@@ -34,6 +35,13 @@ export interface CheckOptions {
34
35
  * 测试据此断言「同一次运行内同一项目文件至多读一次」。
35
36
  */
36
37
  runEnv?: RunEnv;
38
+ /**
39
+ * 状态文件接缝(非 CLI flag;ADR-0026)
40
+ *
41
+ * 缺省 = 真实 fs 实现(fileStateIO)。注入则 `.harness/.state.json` 的读写
42
+ * 走替身,测试据此不碰真文件系统。
43
+ */
44
+ stateIO?: StateIO;
37
45
  }
38
46
  /**
39
47
  * 执行约束检查
@@ -1 +1 @@
1
- {"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/check.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AASH,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAC1F,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,gCAAgC,CAAC;AAM3E,OAAO,KAAK,EAAoB,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAkB,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AA4BzF,MAAM,WAAW,YAAY;IAC3B,4FAA4F;IAC5F,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW;IACX,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,WAAW;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,wBAAsB,KAAK,CACzB,OAAO,EAAE,YAAY,EACrB,EAAE,GAAE,SAAqB,GACxB,OAAO,CAAC,aAAa,CAAC,CAwJxB;AAmDD;;GAEG;AACH,yDAAyD;AACzD,wBAAgB,QAAQ,CAAC,QAAQ,GAAE,OAAO,CAAC,YAAY,CAAM,EAAE,EAAE,GAAE,SAAqB,GAAG,aAAa,CA8BvG"}
1
+ {"version":3,"file":"check.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/check.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAQH,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAC1F,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,gCAAgC,CAAC;AAM3E,OAAO,KAAK,EAAoB,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAkB,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzF,OAAO,EAAe,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AA4BxD,MAAM,WAAW,YAAY;IAC3B,4FAA4F;IAC5F,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW;IACX,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,WAAW;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,wBAAsB,KAAK,CACzB,OAAO,EAAE,YAAY,EACrB,EAAE,GAAE,SAAqB,GACxB,OAAO,CAAC,aAAa,CAAC,CAyJxB;AA6CD;;GAEG;AACH,yDAAyD;AACzD,wBAAgB,QAAQ,CAAC,QAAQ,GAAE,OAAO,CAAC,YAAY,CAAM,EAAE,EAAE,GAAE,SAAqB,GAAG,aAAa,CA8BvG"}
@@ -48,7 +48,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
48
48
  exports.check = check;
49
49
  exports.listLaws = listLaws;
50
50
  const chalk_1 = __importDefault(require("chalk"));
51
- const fs = __importStar(require("fs"));
52
51
  const path = __importStar(require("path"));
53
52
  const checker_1 = require("../../core/constraints/checker");
54
53
  const definitions_1 = require("../../core/constraints/definitions");
@@ -62,6 +61,7 @@ const traces_1 = require("../../monitoring/traces");
62
61
  const jsonl_1 = require("../../utils/jsonl");
63
62
  const trace_1 = require("../../types/trace");
64
63
  const command_contract_1 = require("../command-contract");
64
+ const state_io_1 = require("../state-io");
65
65
  /** 证据行着色(与调用处所属结论块一致) */
66
66
  const EVIDENCE_PAINT = {
67
67
  red: chalk_1.default.red,
@@ -92,6 +92,7 @@ async function check(options, io = command_contract_1.processIO) {
92
92
  // 一次 run 一份证据与观察面(#87 / ADR-0023):入口构造,沿生效集、context、checker 向下传
93
93
  const evidence = options.evidence ?? (0, git_evidence_1.createGitEvidence)(projectPath);
94
94
  const runEnv = options.runEnv ?? (0, run_env_1.createRunEnv)(projectPath);
95
+ const stateIO = options.stateIO ?? (0, state_io_1.fileStateIO)(projectPath);
95
96
  // 生效约束集(ADR-0001):内置 → preset → config.yml 禁用 → custom 追加 → scenes 过滤。
96
97
  // --preset 仅在没有项目自定义配置时覆盖 config.yml 的 preset(工单 23 语义:
97
98
  // 项目自定义配置优先于 CLI 预设),优先级规则收在 getMergedConstraintsConfig 一处。
@@ -211,7 +212,7 @@ async function check(options, io = command_contract_1.processIO) {
211
212
  (0, command_contract_1.log)(io);
212
213
  (0, command_contract_1.log)(io, chalk_1.default.green('✅ 约束检查通过'));
213
214
  // 智能提示
214
- const hint = await getSmartHint(projectPath);
215
+ const hint = await getSmartHint(projectPath, stateIO);
215
216
  if (hint) {
216
217
  (0, command_contract_1.log)(io);
217
218
  (0, command_contract_1.log)(io, chalk_1.default.gray('────────────────────────────────────'));
@@ -230,10 +231,12 @@ async function check(options, io = command_contract_1.processIO) {
230
231
  const TRACE_HINT_THRESHOLD = 50;
231
232
  /**
232
233
  * 智能提示:检查是否需要提示用户下一步操作
234
+ *
235
+ * 状态读写经 StateIO(ADR-0026):读-改-写,`status` 不再把 `shownHints` 抹掉,
236
+ * 「首次达到阈值」的去重自此真生效。
233
237
  */
234
- async function getSmartHint(projectPath) {
238
+ async function getSmartHint(projectPath, stateIO) {
235
239
  const tracesPath = path.join(projectPath, trace_1.DEFAULT_TRACE_FILE);
236
- const statePath = path.join(projectPath, '.harness', '.state.json');
237
240
  // 只读够 TRACE_HINT_THRESHOLD 行即停(坏行照旧占位,条数口径与改前的纯计数逐字一致)——
238
241
  // traces.log 是 append-only 无上限文件,为一个比较符整读不成立
239
242
  // 计数去向:豁免(harness#100)——本消费面只输出「够不够」的提示行,没有可挂坏行计数的输出位
@@ -244,11 +247,8 @@ async function getSmartHint(projectPath) {
244
247
  if (traceCount === 0) {
245
248
  return null;
246
249
  }
247
- // 读取状态
248
- let state = {};
249
- if (fs.existsSync(statePath)) {
250
- state = JSON.parse(fs.readFileSync(statePath, 'utf-8'));
251
- }
250
+ // 读取状态(经接缝;文件缺失 → {})
251
+ const state = stateIO.read();
252
252
  state.shownHints = state.shownHints || [];
253
253
  const hints = [];
254
254
  // 条件 1: 记录数首次达到阈值
@@ -258,8 +258,7 @@ async function getSmartHint(projectPath) {
258
258
  }
259
259
  // 保存状态
260
260
  if (hints.length > 0) {
261
- fs.mkdirSync(path.dirname(statePath), { recursive: true });
262
- fs.writeFileSync(statePath, JSON.stringify(state, null, 2));
261
+ stateIO.write(state);
263
262
  return hints.join('\n');
264
263
  }
265
264
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"check.js","sourceRoot":"","sources":["../../../src/cli/commands/check.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"check.js","sourceRoot":"","sources":["../../../src/cli/commands/check.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgFH,sBA4JC;AAiDD,4BA8BC;AAzTD,kDAA0B;AAC1B,2CAA6B;AAC7B,4DAAmE;AACnE,oEAAoF;AACpF,4EAAqG;AACrG,4EAAgF;AAChF,sEAA0F;AAC1F,4DAA2E;AAC3E,4EAA8E;AAC9E,8EAA6E;AAC7E,oDAAyD;AACzD,6CAA8C;AAC9C,6CAA4E;AAE5E,0DAAyF;AACzF,0CAAwD;AAExD,yBAAyB;AACzB,MAAM,cAAc,GAAG;IACrB,GAAG,EAAE,eAAK,CAAC,GAAG;IACd,MAAM,EAAE,eAAK,CAAC,MAAM;IACpB,IAAI,EAAE,eAAK,CAAC,IAAI;CACR,CAAC;AAEX;;;;;;GAMG;AACH,SAAS,WAAW,CAClB,EAAa,EACb,MAAwB,EACxB,KAAkC,EAClC,EAAW;IAEX,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC9C,IAAA,sBAAG,EAAC,EAAE,EAAE,KAAK,CAAC,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;AACL,CAAC;AAkCD;;GAEG;AACI,KAAK,UAAU,KAAK,CACzB,OAAqB,EACrB,KAAgB,4BAAS;IAEzB,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IAClC,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,IAAI,CAAC,OAAO,OAAO,CAAC,MAAM,IAAI,4BAA4B,EAAE,CAAC,CAAC,CAAC;IAE7E,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QACzD,gEAAgE;QAChE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAA,gCAAiB,EAAC,WAAW,CAAC,CAAC;QACpE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,IAAA,sBAAY,EAAC,WAAW,CAAC,CAAC;QAC3D,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAA,sBAAW,EAAC,WAAW,CAAC,CAAC;QAE5D,uEAAuE;QACvE,wDAAwD;QACxD,4DAA4D;QAC5D,gEAAgE;QAChE,MAAM,MAAM,GAAG,IAAA,kDAA0B,EAAC,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QAC9E,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,IAAI,CAAC,UAAU,MAAM,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;QAC1D,CAAC;QACD,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,IAAI,CAAC,UAAU,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9D,CAAC;QACD,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;QAC3C,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,MAAM,CAAC,8BAA8B,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAC/E,CAAC;QAED,6DAA6D;QAC7D,0DAA0D;QAC1D,wDAAwD;QACxD,MAAM,OAAO,GAAG,MAAM,IAAA,wCAAsB,EAAC;YAC3C,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,QAAQ;YACR,MAAM;SACP,CAAC,CAAC;QACH,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC;QAChD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,IAAI,CAAC,SAAS,YAAY,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;QACxD,CAAC;QACD,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAEjG,yDAAyD;QACzD,iDAAiD;QACjD,yDAAyD;QACzD,MAAM,OAAO,GAAG,IAAI,2BAAiB,CAAC,IAAI,uBAAc,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;QAC3E,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;QAEjF,OAAO;QACP,IAAA,sBAAG,EAAC,EAAE,CAAC,CAAC;QAER,qDAAqD;QACrD,MAAM,cAAc,GAAG;YACrB,GAAG,MAAM,CAAC,QAAQ;YAClB,GAAG,MAAM,CAAC,UAAU;SACrB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAEzB,YAAY;QACZ,MAAM,iBAAiB,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAClE,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACtE,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnE,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,KAAK,CAAC,eAAe,iBAAiB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;QACrE,CAAC;aAAM,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,GAAG,CAAC,WAAW,iBAAiB,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;YAC5D,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBAC5B,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;oBACjB,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;oBACvE,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;oBAChD,WAAW,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;gBAC5B,CAAC;YACH,CAAC,CAAC,CAAC;YACH,IAAA,sBAAG,EAAC,EAAE,CAAC,CAAC;YACR,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC;YACxC,OAAO;gBACL,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,sBAAsB,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,EAAE,IAAI,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;aACrG,CAAC;QACJ,CAAC;QAED,aAAa;QACb,IAAI,MAAM,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;YAC5B,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,MAAM,CAAC,eAAe,MAAM,CAAC,YAAY,IAAI,CAAC,CAAC,CAAC;YAC9D,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBACtD,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;oBACjB,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;oBAC1E,WAAW,CAAC,EAAE,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;gBAC/B,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,MAAM,mBAAmB,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YACtE,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;YAC7E,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,KAAK,CAAC,WAAW,gBAAgB,IAAI,mBAAmB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;QACvF,CAAC;QAED,8CAA8C;QAC9C,kCAAkC;QAClC,MAAM,KAAK,GAAG,CAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAC7D,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAChE,CAAC;QACF,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,IAAI,CAAC,UAAU,KAAK,CAAC,MAAM,cAAc,CAAC,CAAC,CAAC;YAC1D,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACvD,CAAC;QAED,qCAAqC;QACrC,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,IAAI,CAAC,aAAa,cAAc,CAAC,MAAM,yBAAyB,CAAC,CAAC,CAAC;YACjF,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBACzB,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YACtC,CAAC,CAAC,CAAC;QACL,CAAC;QAED,oDAAoD;QACpD,sCAAsC;QACtC,IAAI,CAAC;YACH,0DAA0D;YAC1D,MAAM,KAAK,GAAG,IAAA,sCAAoB,EAAC,MAAM,EAAE,SAAS,EAAE,IAAA,6CAAqB,EAAC,MAAM,CAAC,CAAC,CAAC;YACrF,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACnB,IAAA,sBAAG,EAAC,EAAE,CAAC,CAAC;gBACR,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,MAAM,CAAC,WAAW,KAAK,CAAC,aAAa,IAAI,MAAM,mBAAmB,CAAC,CAAC,CAAC;gBACnF,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;oBACvB,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,MAAM,CAAC,kBAAkB,KAAK,CAAC,YAAY,CAAC,MAAM,uBAAuB,KAAK,CAAC,YAAY,CAAC,QAAQ,mCAAmC,CAAC,CAAC,CAAC;gBAC1J,CAAC;gBACD,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;oBACvB,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,MAAM,CAAC,eAAe,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,WAAW,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,uCAAuC,CAAC,CAAC,CAAC;gBAC3J,CAAC;gBACD,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;oBAC3B,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,MAAM,CAAC,cAAc,qCAAkB,MAAM,CAAC,CAAC,CAAC;gBAChE,CAAC;gBACD,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,MAAM,CAAC,UAAU,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,qBAAqB;QACvB,CAAC;QAED,IAAA,sBAAG,EAAC,EAAE,CAAC,CAAC;QACR,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;QAEjC,OAAO;QACP,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACtD,IAAI,IAAI,EAAE,CAAC;YACT,IAAA,sBAAG,EAAC,EAAE,CAAC,CAAC;YACR,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,CAAC;YAC5D,IAAA,sBAAG,EAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YACd,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,CAAC;QAC9D,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAA,sBAAG,EAAC,EAAE,CAAC,CAAC;QACR,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,GAAG,CAAC,aAAa,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1F,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;IAC5G,CAAC;AACH,CAAC;AAED,yDAAyD;AACzD,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAEhC;;;;;GAKG;AACH,KAAK,UAAU,YAAY,CAAC,WAAmB,EAAE,OAAgB;IAC/D,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,0BAAkB,CAAC,CAAC;IAE9D,yDAAyD;IACzD,6CAA6C;IAC7C,sDAAsD;IACtD,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,IAAA,iBAAS,EAAiB,UAAU,EAAE,MAAM,EAAE;QAC9E,IAAI,EAAE,oBAAoB;KAC3B,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,GAAG,YAAY,CAAC;IACjD,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,sBAAsB;IACtB,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAC7B,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC;IAE1C,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,kBAAkB;IAClB,IAAI,UAAU,IAAI,oBAAoB,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACjF,KAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;QAC9C,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC;IAED,OAAO;IACP,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,yDAAyD;AACzD,SAAgB,QAAQ,CAAC,WAAkC,EAAE,EAAE,KAAgB,4BAAS;IACtF,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;IAEpC,YAAY;IACZ,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC,CAAC;IACtD,MAAM,CAAC,MAAM,CAAC,uBAAS,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;QAC5C,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,GAAG,CAAC,KAAK,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACzC,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,IAAI,CAAC,OAAO,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAC9C,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,IAAI,CAAC,OAAO,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACjD,IAAA,sBAAG,EAAC,EAAE,CAAC,CAAC;IACV,CAAC,CAAC,CAAC;IAEH,aAAa;IACb,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,MAAM,CAAC,0CAA0C,CAAC,CAAC,CAAC;IAClE,MAAM,CAAC,MAAM,CAAC,wBAAU,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;QAC7C,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,MAAM,CAAC,KAAK,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC5C,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,IAAI,CAAC,OAAO,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAC9C,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,IAAI,CAAC,OAAO,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACjD,IAAA,sBAAG,EAAC,EAAE,CAAC,CAAC;IACV,CAAC,CAAC,CAAC;IAEH,+BAA+B;IAC/B,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,CAAC;IACxD,MAAM,CAAC,MAAM,CAAC,qBAAO,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;QAC1C,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,IAAI,CAAC,KAAK,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC1C,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,IAAI,CAAC,OAAO,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAC9C,IAAA,sBAAG,EAAC,EAAE,EAAE,eAAK,CAAC,IAAI,CAAC,OAAO,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACjD,IAAA,sBAAG,EAAC,EAAE,CAAC,CAAC;IACV,CAAC,CAAC,CAAC;IACH,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACxB,CAAC"}
@@ -4,6 +4,7 @@
4
4
  * 显示 Harness 状态、统计、异常检测 + 智能建议
5
5
  */
6
6
  import { type CommandIO, type CommandResult } from '../command-contract';
7
+ import { type StateIO } from '../state-io';
7
8
  export interface StatusOptions {
8
9
  /** 项目路径 */
9
10
  projectPath?: string;
@@ -13,6 +14,13 @@ export interface StatusOptions {
13
14
  anomalies?: boolean;
14
15
  /** 时间范围(小时) */
15
16
  hours?: number;
17
+ /**
18
+ * 状态文件接缝(非 CLI flag;ADR-0026)
19
+ *
20
+ * 缺省 = 真实 fs 实现(fileStateIO)。注入则 `.harness/.state.json` 的读写
21
+ * 走替身,测试据此不碰真文件系统。
22
+ */
23
+ stateIO?: StateIO;
16
24
  }
17
25
  /**
18
26
  * 显示 Harness 状态
@@ -1 +1 @@
1
- {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/status.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,OAAO,EAA4B,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEnG,MAAM,WAAW,aAAa;IAC5B,WAAW;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW;IACX,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY;IACZ,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,eAAe;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,MAAM,CAAC,OAAO,EAAE,aAAa,EAAE,EAAE,GAAE,SAAqB,GAAG,OAAO,CAAC,aAAa,CAAC,CAgItG"}
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/status.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,OAAO,EAA4B,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACnG,OAAO,EAAe,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAExD,MAAM,WAAW,aAAa;IAC5B,WAAW;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW;IACX,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY;IACZ,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,eAAe;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,wBAAsB,MAAM,CAAC,OAAO,EAAE,aAAa,EAAE,EAAE,GAAE,SAAqB,GAAG,OAAO,CAAC,aAAa,CAAC,CA6HtG"}
@@ -49,6 +49,7 @@ const trace_analyzer_1 = require("../../monitoring/trace-analyzer");
49
49
  const jsonl_1 = require("../../utils/jsonl");
50
50
  const trace_1 = require("../../types/trace");
51
51
  const command_contract_1 = require("../command-contract");
52
+ const state_io_1 = require("../state-io");
52
53
  /**
53
54
  * 显示 Harness 状态
54
55
  */
@@ -56,7 +57,7 @@ async function status(options, io = command_contract_1.processIO) {
56
57
  const projectPath = options.projectPath || process.cwd();
57
58
  const harnessDir = path.join(projectPath, '.harness');
58
59
  const tracesPath = path.join(projectPath, trace_1.DEFAULT_TRACE_FILE);
59
- const statePath = path.join(harnessDir, '.state.json');
60
+ const stateIO = options.stateIO ?? (0, state_io_1.fileStateIO)(projectPath);
60
61
  (0, command_contract_1.log)(io, chalk_1.default.blue('📊 Harness 状态'));
61
62
  (0, command_contract_1.log)(io);
62
63
  // 检查是否初始化
@@ -150,12 +151,9 @@ async function status(options, io = command_contract_1.processIO) {
150
151
  });
151
152
  (0, command_contract_1.log)(io);
152
153
  }
153
- // 更新状态文件
154
- const state = {
155
- lastStatusRun: new Date().toISOString(),
156
- };
157
- fs.mkdirSync(path.dirname(statePath), { recursive: true });
158
- fs.writeFileSync(statePath, JSON.stringify(state, null, 2));
154
+ // 更新状态文件:读-改-写(ADR-0026 决策 2)——不再整文件重写,
155
+ // 否则 check 写入的 shownHints 会被抹掉、智能提示去重失效
156
+ stateIO.write({ ...stateIO.read(), lastStatusRun: new Date().toISOString() });
159
157
  // 下一步建议
160
158
  (0, command_contract_1.log)(io, chalk_1.default.blue('💡 下一步建议:'));
161
159
  if (anomalies.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/cli/commands/status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/cli/commands/status.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,28 @@ export declare function parseCapabilitiesFiles(capabilitiesPath: string): Promis
20
20
  * (目录条目需人工策划登记),幽灵行剔除与「最后更新」刷新保留。
21
21
  */
22
22
  export declare function updateCapabilitiesFile(capabilitiesPath: string, currentModules: ModuleInfo[], existingFiles: string[], result: SyncResult, mode?: CapabilitiesMode): Promise<void>;
23
+ export interface TableLayoutNormalization {
24
+ /** 收拢后的内容 */
25
+ content: string;
26
+ /** 被删掉的「表格内空行」行数 */
27
+ blankLines: number;
28
+ /** 被收掉的「空表」(表头+分隔行且无数据行)张数 */
29
+ emptyTables: number;
30
+ }
31
+ /**
32
+ * 收拢 CAPABILITIES.md 的表格排版(harness#171)
33
+ *
34
+ * 两条规则:① 删掉夹在两个表格行之间的空行(CommonMark 会在此切断表格);
35
+ * ② 收掉没有数据行的表头+分隔行。表格外的空行(段落分隔)不动;围栏代码块内的行整体豁免。
36
+ *
37
+ * 规则互相制造对方的触发点(①把两张空表之间的那个空行吃掉后,②一轮只收得掉后一张),
38
+ * 所以跑到不动点:**一次 `sync-docs` 必须把 `--check` 报出来的东西全清掉**,
39
+ * 否则下游 CI 修完还是红的。计数 = 各轮合计(每轮只删当轮存在的行,不会重计)。
40
+ *
41
+ * 幂等,且 `--check` 与写模式共用此正本——判定面就是「返回内容与入参是否不同」,
42
+ * 因此不存在「check 报了 fix 修不掉」的不收敛(ADR-0009 口径)。
43
+ */
44
+ export declare function normalizeCapabilitiesTableLayout(content: string): TableLayoutNormalization;
23
45
  /**
24
46
  * 将 CAPABILITIES.md 文件表格折叠为目录条目(--compact 一次性迁移)
25
47
  *
@@ -1 +1 @@
1
- {"version":3,"file":"capabilities-syncer.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/sync-docs/capabilities-syncer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE/D;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAUxF;AAED;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAC1C,gBAAgB,EAAE,MAAM,EACxB,cAAc,EAAE,UAAU,EAAE,EAC5B,aAAa,EAAE,MAAM,EAAE,EACvB,MAAM,EAAE,UAAU,EAClB,IAAI,GAAE,gBAAyB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAuDf;AAsDD;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAqClE"}
1
+ {"version":3,"file":"capabilities-syncer.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/sync-docs/capabilities-syncer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE/D;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAUxF;AAED;;;;;GAKG;AACH,wBAAsB,sBAAsB,CAC1C,gBAAgB,EAAE,MAAM,EACxB,cAAc,EAAE,UAAU,EAAE,EAC5B,aAAa,EAAE,MAAM,EAAE,EACvB,MAAM,EAAE,UAAU,EAClB,IAAI,GAAE,gBAAyB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAoEf;AAWD,MAAM,WAAW,wBAAwB;IACvC,aAAa;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,oBAAoB;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,8BAA8B;IAC9B,WAAW,EAAE,MAAM,CAAC;CACrB;AAyED;;;;;;;;;;;;GAYG;AACH,wBAAgB,gCAAgC,CAAC,OAAO,EAAE,MAAM,GAAG,wBAAwB,CAa1F;AAsDD;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAqClE"}
@@ -41,6 +41,7 @@ var __importStar = (this && this.__importStar) || (function () {
41
41
  Object.defineProperty(exports, "__esModule", { value: true });
42
42
  exports.parseCapabilitiesFiles = parseCapabilitiesFiles;
43
43
  exports.updateCapabilitiesFile = updateCapabilitiesFile;
44
+ exports.normalizeCapabilitiesTableLayout = normalizeCapabilitiesTableLayout;
44
45
  exports.compactCapabilitiesContent = compactCapabilitiesContent;
45
46
  const fs = __importStar(require("fs/promises"));
46
47
  const path = __importStar(require("path"));
@@ -82,12 +83,22 @@ async function updateCapabilitiesFile(capabilitiesPath, currentModules, existing
82
83
  }
83
84
  // 如果有表格行,更新表格
84
85
  if (existingFiles.length > 0) {
85
- // 移除已删除文件的行
86
- for (const removed of result.removed) {
87
- const escapedFile = removed.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
88
- // 第二列存完整路径,basename 只在末尾出现,用 [^|]* 匹配路径前缀
89
- const rowRegex = new RegExp(`^\\|[^|]*\\|[^|]*\\b${escapedFile}\\s*\\|.*$`, 'gm');
90
- content = content.replace(rowRegex, '');
86
+ // 移除已删除文件的行(整行连行尾一起删——只清行内容会留一个空行,
87
+ // CommonMark 据此把一张表切成若干小表,harness#171)。
88
+ // 这里**不**豁免围栏代码块,与下方排版收拢刻意不同口径:登记条目由
89
+ // capabilities-parser 全文扫描得出(ADR-0009),围栏内的行同样算登记项;
90
+ // 只让删除认围栏而条目不认,块内示例行会一直被解析成幽灵条目,`--check`
91
+ // 从此每轮都报同一个已删文件且永远修不掉。豁免要生效得连登记面一起改。
92
+ if (result.removed.length > 0) {
93
+ const deadRowRegexes = result.removed.map((removed) => {
94
+ const escapedFile = removed.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
95
+ // 第二列存完整路径,basename 只在末尾出现,用 [^|]* 匹配路径前缀
96
+ return new RegExp(`^\\|[^|]*\\|[^|]*\\b${escapedFile}\\s*\\|.*\\r?$`);
97
+ });
98
+ content = content
99
+ .split('\n')
100
+ .filter((line) => !deadRowRegexes.some((rowRegex) => rowRegex.test(line)))
101
+ .join('\n');
91
102
  }
92
103
  // 添加新文件的行(在最后一个表格行之后);module 模式跳过
93
104
  if (mode !== 'module' && result.added.length > 0) {
@@ -104,18 +115,112 @@ async function updateCapabilitiesFile(capabilitiesPath, currentModules, existing
104
115
  content = content.replace(lastTableRow, lastTableRow + '\n' + newRows);
105
116
  }
106
117
  }
107
- // 清理多余空行
108
- content = content.replace(/\n{3,}/g, '\n\n');
109
118
  }
110
119
  else {
111
120
  // 没有表格,追加模块表格(module 模式按目录聚合)
112
121
  content += '\n\n' + (mode === 'module' ? generateDirTable(currentModules) : generateModuleTable(currentModules));
113
122
  }
123
+ // 表格排版收拢放在增删之后:有新行的表不会被误判为空表(#171)
124
+ content = normalizeCapabilitiesTableLayout(content).content;
125
+ // 多余空行的清理收在收拢之后一处:收拢本身会新产出连续空行
126
+ // (收掉一张夹在两段散文之间的空表就留下 `\n\n\n`,#171)
127
+ content = content.replace(/\n{3,}/g, '\n\n');
114
128
  // 更新最后更新时间
115
129
  const now = new Date().toISOString().split('T')[0];
116
130
  content = content.replace(/最后更新[::].*/, `最后更新: ${now}`);
117
131
  await fs.writeFile(capabilitiesPath, content, 'utf-8');
118
132
  }
133
+ /** 表格行:以 `|` 起始(表头、分隔行、数据行都算) */
134
+ const TABLE_ROW_REGEX = /^\s*\|/;
135
+ /** 表格分隔行(|------|------|) */
136
+ const TABLE_SEPARATOR_REGEX = /^\s*\|[\s:|-]+\|\s*$/;
137
+ /** 围栏代码块的起止行(``` / ~~~,允许缩进与信息串) */
138
+ const FENCE_LINE_REGEX = /^\s*(?:```|~~~)/;
139
+ /**
140
+ * 按行切开并标出围栏代码块(``` / ~~~)内的行
141
+ *
142
+ * 只服务排版收拢:CAPABILITIES.md 是手写文档,块内长得像表格的示例行不是排版脏行,
143
+ * 收它就是删用户正文(harness#171)。登记条目面不在此列——见 `updateCapabilitiesFile`
144
+ * 里「幽灵行删除不豁免围栏」的取舍注释。
145
+ */
146
+ function parseLayoutLines(content) {
147
+ const parsed = [];
148
+ let inFence = false;
149
+ for (const text of content.split('\n')) {
150
+ if (FENCE_LINE_REGEX.test(text)) {
151
+ parsed.push({ text, fenced: true });
152
+ inFence = !inFence;
153
+ continue;
154
+ }
155
+ parsed.push({ text, fenced: inFence });
156
+ }
157
+ return parsed;
158
+ }
159
+ const isTableRow = (line) => line !== undefined && !line.fenced && TABLE_ROW_REGEX.test(line.text);
160
+ const isTableSeparator = (line) => line !== undefined && !line.fenced && TABLE_SEPARATOR_REGEX.test(line.text);
161
+ /** 走一遍两条收拢规则(不迭代) */
162
+ function collapseTableLayoutOnce(content) {
163
+ const parsed = parseLayoutLines(content);
164
+ // ① 收拢表格内空行:一段连续空行,两侧最近非空行都是表格行 → 整段丢弃
165
+ const kept = [];
166
+ let blankLines = 0;
167
+ for (let i = 0; i < parsed.length;) {
168
+ if (parsed[i].text.trim() !== '') {
169
+ kept.push(parsed[i]);
170
+ i++;
171
+ continue;
172
+ }
173
+ let end = i;
174
+ while (end < parsed.length && parsed[end].text.trim() === '')
175
+ end++;
176
+ if (isTableRow(kept[kept.length - 1]) && isTableRow(parsed[end])) {
177
+ blankLines += end - i;
178
+ }
179
+ else {
180
+ kept.push(...parsed.slice(i, end));
181
+ }
182
+ i = end;
183
+ }
184
+ // ② 收掉空表:表头 + 分隔行后面没有数据行
185
+ const out = [];
186
+ let emptyTables = 0;
187
+ for (let i = 0; i < kept.length; i++) {
188
+ if (isTableRow(kept[i]) && isTableSeparator(kept[i + 1]) && !isTableRow(kept[i + 2])) {
189
+ emptyTables++;
190
+ i++;
191
+ continue;
192
+ }
193
+ out.push(kept[i].text);
194
+ }
195
+ return { content: out.join('\n'), blankLines, emptyTables };
196
+ }
197
+ /**
198
+ * 收拢 CAPABILITIES.md 的表格排版(harness#171)
199
+ *
200
+ * 两条规则:① 删掉夹在两个表格行之间的空行(CommonMark 会在此切断表格);
201
+ * ② 收掉没有数据行的表头+分隔行。表格外的空行(段落分隔)不动;围栏代码块内的行整体豁免。
202
+ *
203
+ * 规则互相制造对方的触发点(①把两张空表之间的那个空行吃掉后,②一轮只收得掉后一张),
204
+ * 所以跑到不动点:**一次 `sync-docs` 必须把 `--check` 报出来的东西全清掉**,
205
+ * 否则下游 CI 修完还是红的。计数 = 各轮合计(每轮只删当轮存在的行,不会重计)。
206
+ *
207
+ * 幂等,且 `--check` 与写模式共用此正本——判定面就是「返回内容与入参是否不同」,
208
+ * 因此不存在「check 报了 fix 修不掉」的不收敛(ADR-0009 口径)。
209
+ */
210
+ function normalizeCapabilitiesTableLayout(content) {
211
+ let current = content;
212
+ let blankLines = 0;
213
+ let emptyTables = 0;
214
+ for (;;) {
215
+ const pass = collapseTableLayoutOnce(current);
216
+ if (pass.blankLines === 0 && pass.emptyTables === 0) {
217
+ return { content: current, blankLines, emptyTables };
218
+ }
219
+ blankLines += pass.blankLines;
220
+ emptyTables += pass.emptyTables;
221
+ current = pass.content;
222
+ }
223
+ }
119
224
  /**
120
225
  * 生成 CAPABILITIES.md 内容
121
226
  */
@@ -1 +1 @@
1
- {"version":3,"file":"capabilities-syncer.js","sourceRoot":"","sources":["../../../../src/cli/commands/sync-docs/capabilities-syncer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"capabilities-syncer.js","sourceRoot":"","sources":["../../../../src/cli/commands/sync-docs/capabilities-syncer.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/sync-docs/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAiCH,OAAO,EAAkB,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5F,MAAM,WAAW,eAAe;IAC9B,WAAW;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qBAAqB;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,wBAAwB;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,2BAA2B;IAC3B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,oDAAoD;IACpD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,0CAA0C;IAC1C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAaD;;GAEG;AACH,wBAAsB,QAAQ,CAC5B,OAAO,EAAE,eAAe,EACxB,EAAE,GAAE,SAAqB,GACxB,OAAO,CAAC,aAAa,CAAC,CAkZxB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/sync-docs/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAkCH,OAAO,EAAkB,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAE5F,MAAM,WAAW,eAAe;IAC9B,WAAW;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qBAAqB;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,wBAAwB;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,2BAA2B;IAC3B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,oDAAoD;IACpD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,0CAA0C;IAC1C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAaD;;GAEG;AACH,wBAAsB,QAAQ,CAC5B,OAAO,EAAE,eAAe,EACxB,EAAE,GAAE,SAAqB,GACxB,OAAO,CAAC,aAAa,CAAC,CAsbxB"}