@xulthekl/team-flow 0.64.0 → 0.67.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 (77) hide show
  1. package/.claude/always/phase-guard.md +1 -1
  2. package/.claude-plugin/marketplace.json +1 -1
  3. package/.claude-plugin/plugin.json +1 -1
  4. package/.codex-plugin/plugin.json +1 -1
  5. package/.cursor-plugin/marketplace.json +1 -1
  6. package/.cursor-plugin/plugin.json +1 -1
  7. package/.github/plugin/marketplace.json +2 -2
  8. package/CHANGELOG.md +60 -0
  9. package/GEMINI.md +1 -1
  10. package/INSTALL.md +1 -1
  11. package/README.md +1 -1
  12. package/agents/architecture-design.md +1 -1
  13. package/agents/architecture-reviewer.md +6 -2
  14. package/agents/prd-completeness-reviewer.md +10 -0
  15. package/agents/prd-writer.md +1 -0
  16. package/agents/release-archivist.md +2 -0
  17. package/docs/README_en.md +1 -1
  18. package/docs/team-flow /344/275/277/347/224/250/350/257/264/346/230/216/357/274/210/347/240/224/345/217/221/345/233/242/351/230/237/347/211/210/357/274/211.md" +8 -6
  19. package/gemini-extension.json +1 -1
  20. package/hooks/session-start +2 -2
  21. package/llms.txt +1 -1
  22. package/package.json +1 -1
  23. package/plugin.json +1 -1
  24. package/prd/v1/prd.md +1 -1
  25. package/scripts/guard/checks/arch-gate-exemptions.mjs +5 -3
  26. package/scripts/guard/checks/arch-readiness.mjs +1 -1
  27. package/scripts/guard/checks/arch-snapshot.mjs +5 -3
  28. package/scripts/guard/checks/history-risk.mjs +132 -0
  29. package/scripts/guard/checks/prd-clarity-state.mjs +41 -0
  30. package/scripts/guard/checks/prd-clarity.mjs +176 -0
  31. package/scripts/guard/guard.mjs +16 -8
  32. package/scripts/infer-workflow.mjs +20 -0
  33. package/scripts/lib/arch-merge.mjs +384 -50
  34. package/scripts/lib/arch-parse.mjs +5 -2
  35. package/scripts/lib/arch-registry.mjs +523 -0
  36. package/scripts/lib/arch-scan-code.mjs +518 -0
  37. package/scripts/lib/cmd-arch.mjs +9 -1
  38. package/scripts/lib/cmd-doctor.mjs +3 -3
  39. package/scripts/lib/cmd-prd.mjs +84 -1
  40. package/scripts/lib/cmd-solutions.mjs +3 -0
  41. package/scripts/lib/cmd-state.mjs +31 -1
  42. package/scripts/lib/config-loader.mjs +20 -0
  43. package/scripts/lib/solutions-capture.mjs +5 -0
  44. package/scripts/lib/solutions-index-gen.mjs +33 -3
  45. package/scripts/lib/solutions-inject.mjs +34 -9
  46. package/scripts/lib/state-loader.mjs +13 -0
  47. package/scripts/team-flow.mjs +3 -0
  48. package/skills/architecture-design/SKILL.md +29 -11
  49. package/skills/architecture-design/chapters/ch04-entity-to-aggregate.md +18 -7
  50. package/skills/architecture-design/chapters/ch06-integration.md +12 -3
  51. package/skills/architecture-design/glossary.md +5 -1
  52. package/skills/architecture-design/references/adr-templates.md +56 -0
  53. package/skills/architecture-design/references/context-map-8.md +47 -0
  54. package/skills/architecture-design/references/ddd-evented-playbook.md +41 -0
  55. package/skills/architecture-design/references/s3.5-architecture-template.md +36 -4
  56. package/skills/architecture-design/references/s3.5-loading-protocol.md +5 -4
  57. package/skills/architecture-design/references/s3.5-product-architecture.md +6 -6
  58. package/skills/architecture-design/templates/architecture.md +20 -0
  59. package/skills/ce-brainstorm/SKILL.md +3 -3
  60. package/skills/ce-brainstorm/references/grounding.md +1 -1
  61. package/skills/ce-brainstorm/references/prd-84-authoring-spec.md +26 -3
  62. package/skills/ce-brainstorm/references/prototype-loop.md +8 -0
  63. package/skills/ce-compound/references/concepts-vocabulary.md +1 -1
  64. package/skills/ce-compound/references/full-mode-workflow.md +2 -2
  65. package/skills/ce-compound/references/lightweight-mode.md +1 -1
  66. package/skills/ce-compound/references/promotion-rules.md +1 -1
  67. package/skills/ce-compound/references/three-tier-index.md +1 -1
  68. package/skills/ce-plan/references/research-workflow.md +1 -1
  69. package/skills/jarvis/references/protocols.md +1 -0
  70. package/skills/release-archivist/SKILL.md +21 -0
  71. package/skills/release-archivist/references/closing-procedures.md +1 -1
  72. package/skills/workflow-orchestrator/SKILL.md +8 -4
  73. package/skills/workflow-orchestrator/references/s1-path-router.md +7 -0
  74. package/skills/workflow-orchestrator/references/s2-prd-prototype-loop.md +16 -2
  75. package/skills/workflow-orchestrator/references/s3-plan-pipeline.md +1 -1
  76. package/skills/workflow-start/SKILL.md +1 -1
  77. package/templates/prd.md +9 -1
@@ -49,7 +49,9 @@ Do NOT invoke for:
49
49
  ## Execution Flow(S1-S5 + ARCH 产品级架构设计)
50
50
 
51
51
  ### S1: 路径路由器
52
- **先做需求选择**(v0.15.0 多需求):读 `.team-flow/registry.yaml`,确定 `active_requirement`(多需求则询问操作哪个/新建)。再判断 7 种入口路径之一;检查 baseline.md / CONCEPTS.md(后者在 `docs/architecture/CONCEPTS.md`,根目录为旧位置)并注入;复利注入(INDEX.md 默认 top-5,见 `references/s1-path-router.md` 的窗口与排序口径)。**路由结果必须向用户显式确认**(路由是建议非决定)。详见 `references/s1-path-router.md`。
52
+ **先做需求选择**(v0.15.0 多需求):读 `.team-flow/registry.yaml`,确定 `active_requirement`(多需求则询问操作哪个/新建)。再判断 7 种入口路径之一;检查 baseline.md / CONCEPTS.md(后者在 `docs/architecture/CONCEPTS.md`,根目录为旧位置)并注入;**复利注入(P2-3 顶层调用,跑真命令而非只读声明)**:`tf solutions inject --phase prd --limit 5`(CLI 内含 P2-2 见习/红区门控;CLI 不可用才降级手动读 INDEX,降级不降门——见 `references/s1-path-router.md`)。**收益量化协议(P2-3)**:每次注入记录「条目数 + 后续阶段被引用/采纳条数」,采纳持续为 0 达 2 个样例需求 → 回退调用点(回退已预授权;冷启动 0 条目不计为收益 0,属语料未积累)。**路由结果必须向用户显式确认**(路由是建议非决定)。详见 `references/s1-path-router.md`。
53
+
54
+ **低风险降阈值(agent-governance P1-2 · A 档)**:同时满足 ① `arch_baseline` 已建档 ② 本次 scope 单一清晰(一句话可述、无跨模块疑点)③ 不涉红区(DP-A / Code Landing / publish)——则各阶段确认点**合并为一次推荐+确认**:S1 路由确认后直接进所选阶段,不为每个子步骤重复询问;含糊任一条 → 维持完整确认轮次。**边界不变**:下方 ⛔ 约束块的 `prd_draft` 强制等待确认(以 ⛔ 块身份引用、不锚行号——行号是位置不是身份)、红区永久挂起、DP-A 必经——A 档只减"清晰需求的重复确认轮次",不删强制点。
53
55
 
54
56
  **conventions 注入(v0.11 §33)**:
55
57
  - 读取 conventions 配置,注入为需求分析上下文
@@ -93,7 +95,9 @@ prd_draft → user_review → prototype_loop → prd_frozen → completed
93
95
 
94
96
  产品级架构设计:基于迭代版本 vN 产出覆盖所有模块的整体详细架构(预测态快照,P1:只写快照不写全局)。**ARCH 在 S3 之前**——计划(S3)与拆分(S4)是最终任务拆分,必须基于架构定稿(聚合/服务/模块)进行。
95
97
 
96
- **场景判定(入口三态)**:全新项目 → 正向设计(首轮不可跳过);旧项目首轮(`arch_baseline` 缺失)→ 逆向重建 L0 骨架 → 渐进深化;已建档 + 迭代无结构性变更 → 跳过(**skip 必须物化**:写 `docs/architecture/iterations/vN/SKIPPED` 标记 + 理由,判定者=编排器+用户确认)。
98
+ **场景判定(入口三态)**:全新项目 → 正向设计(首轮不可跳过);旧项目首轮(`arch_baseline` 缺失)→ 逆向重建 L0 骨架 → 渐进深化;已建档 + 迭代无结构性变更 → 跳过(**skip 必须物化**:写 `docs/architecture/iterations/vN/SKIPPED.md` 标记 + 理由,判定者=编排器+用户确认)。
99
+
100
+ **低风险轻审(agent-governance P1-2 · A 档)**:`arch_baseline` 齐 + 本次迭代无结构性变更(纯功能增量、不动聚合/限界上下文边界)→ 8 步设计可按**增量裁剪**执行(只重算受影响聚合,未触及段标注 `unchanged` 引用上版快照),评审走一次 product 视角 PASS 即过、不展开全量问询。**红线不降**:4A+DDD 六产物交付永不绕过;skip 仍须物化 + 用户确认;涉结构性变更(新聚合/BC 边界/跨模块 schema)→ 一律完整 8 步 + 重评审(判定含糊按完整走)。
97
101
 
98
102
  **执行**:调用 architecture-design skill 的 **product 模式**子代理(8 步设计:限界上下文/聚合注册表/指令事件/状态机/概念 ER/时序),产出 `docs/architecture/iterations/vN/architecture.md`(6 产物,provenance 标注)。
99
103
 
@@ -108,7 +112,7 @@ prd_draft → user_review → prototype_loop → prd_frozen → completed
108
112
  4. 已存在(未拉取)→ 提示用户 git pull/检出对应服务
109
113
 
110
114
  ### S3: 计划阶段
111
- **入口一次性问定计划模式**(业务/一人公司),调用 `/ce-plan`(`pipeline_mode: orchestrator` + `plan_mode: business|solo`,跳过仪式开销、保留 repo research + change splitting + 依赖 DAG + 技术方向)产出 `requirement/vN/plan.md`。plan 只到产品级策略 + 高阶技术设计,**不含接口清单**(属各 change 的 spec-writer)。**S3 在 ARCH 之后**——基于架构定稿(聚合/服务/模块)做计划与拆分(2026-08-19 LT 调整)。反馈环路检查点:plan 是否暴露 PRD scope 问题(是→回退 S2)。详见 `references/s3-plan-pipeline.md`。完成条件:plan.md 产出 + S3 状态 = completed,**下一步进 S4**。
115
+ **复利注入(P2-3 顶层调用)**:调 ce-plan 前跑 `tf solutions inject --phase plan --limit 5`(phase 合法集以 `solutions-phases.mjs` 为准,S3 = `plan`;与 `s3-plan-pipeline.md` 同口径),把计划期相关经验(门禁踩坑/拆分教训)带入上下文;空结果/冷启动不阻断。**入口一次性问定计划模式**(业务/一人公司),调用 `/ce-plan`(`pipeline_mode: orchestrator` + `plan_mode: business|solo`,跳过仪式开销、保留 repo research + change splitting + 依赖 DAG + 技术方向)产出 `requirement/vN/plan.md`。**低风险轻审(P1-2 · A 档)**:PRD 已冻结且 scope 清晰(S1 低风险三条件成立)时,plan 产出后**一次确认**即进 S4,不逐节问询;ce-plan 反馈环路暴露疑点(scope 含糊/拆分不稳/架构缺口)→ 升级完整人审并回溯。plan 只到产品级策略 + 高阶技术设计,**不含接口清单**(属各 change 的 spec-writer)。**S3 在 ARCH 之后**——基于架构定稿(聚合/服务/模块)做计划与拆分(2026-08-19 LT 调整)。反馈环路检查点:plan 是否暴露 PRD scope 问题(是→回退 S2)。详见 `references/s3-plan-pipeline.md`。完成条件:plan.md 产出 + S3 状态 = completed,**下一步进 S4**。
112
116
 
113
117
  ### S4: 拆分验证与分发
114
118
 
@@ -214,7 +218,7 @@ plan_hash: sha256:<plan.md 内容摘要> # 检测产品层改动后变更层
214
218
  - **后台子代理等待范式(v0.20.0)**:派发后台子代理(prototype-builder / reviewer / architecture-design 等长任务)后**依赖完成通知(`<task-notification>`)再行动**,**禁止反复 `TaskOutput(block=true)` 阻塞轮询**——其对长任务超时返回会倾泻完整子代理 transcript,撑爆主上下文、抵消"只编排"的轻上下文优势。长任务派发后可先处理可并行工作或结束本轮等待通知,**不空转死等**;确需中途观察用 `block=false` 轻量查询(仍返转录,尽量不用)。(设计 §22.2)
215
219
  - **不跳过 PRD 冻结**:PRD 必须经原型循环(或显式跳过)后才能进 ce-plan
216
220
  - **不跳过拆分审计**:change-split-auditor 审计 verdict = PASS 是创建 change 脚手架的前置条件(S4 必选门禁)
217
- - **架构门禁(v0.36.0)**:ARCH 阶段 skip 必须物化(`iterations/vN/SKIPPED` + 理由);arch-readiness(S4 拆分:快照覆盖 change 触及 BC)与 arch-snapshot(change closing)为 guard 门禁,`arch_baseline` 缺失 → WARN 不 FAIL(存量豁免)
221
+ - **架构门禁(v0.36.0)**:ARCH 阶段 skip 必须物化(`iterations/vN/SKIPPED.md` + 理由;存量无扩展名 SKIPPED 门禁亦识别);arch-readiness(S4 拆分:快照覆盖 change 触及 BC)与 arch-snapshot(change closing)为 guard 门禁,`arch_baseline` 缺失 → WARN 不 FAIL(存量豁免)
218
222
  - **路由是建议非决定**:S1 路由判断必须用户确认;重规划必须 DP-R 阻塞确认
219
223
  - **回退必写 replan_log**:active → pending 回退必须记录;受影响制品归档为 .revN,重入不读旧制品
220
224
  - **不阻断流程**:所有复利操作为 advisory 级——INDEX 缺失/读取失败时 CLI 输出一行 WARN 并返回空结果,**不阻断流程**(v0.57.0 前为完全静默)
@@ -52,6 +52,13 @@ S1 只做编排动作(需求选择、存在性检查、路径判断、阻塞
52
52
 
53
53
  读取 `docs/solutions/INDEX.md`(如存在),过滤 `phase = prd OR cross-phase` 且 domain 匹配的经验,取 **默认 top-5** 摘要注入为上下文约束。读取失败时跳过、不阻断(**无索引时 CLI 会输出一行 WARN 并返回空结果,那不是错误**)。
54
54
 
55
+ > **⚠ 手动读必须带与 CLI 相同的两道门(agent-governance P2-2,防 fallback 绕过)**:
56
+ > ① `flags` 列 = `probation`(见习条目)→ **跳过不注入**;② summary/domain 命中红区关键词
57
+ > (与 `RED_ZONE_RE` 全集一致:`DP-A` / `Code Landing` / `publish` / `发布闸` / `代码落地`)→ **跳过**
58
+ > (红区建议永不自动进上下文)。
59
+ > 两者都由 `tf solutions inject` 自动执行——**凡 CLI 可用的场合一律优先 CLI**,本手动路径只是
60
+ > CLI 不可用时的降级,降级不降门。
61
+
55
62
  > **窗口与排序须与 CLI 同口径(v0.57.0)**:排序为 **severity 降序 → 阶段匹配度(本阶段优先于通配的 cross-phase)→ date 降序**(三级键;旧的"仅 severity 降序"已被取代)。窗口默认 5,用 `tf solutions inject --phase <p> --limit <n>` 放宽——cross-phase 条目满载 5 条时,本阶段新增条目**永不可达**,故凡有 CLI 可用的场合优先用 CLI(`--all` 输出全部,但无上界,慎用)。同 `source` 的条目折叠为 1 条并标注条数。
56
63
 
57
64
  工作流模式复利(L2):S1 路由时额外注入历史 `workflow_pattern` top-3(confidence ≥ 0.5)。详见 state-model.md「工作流模式复利 L2」。
@@ -56,7 +56,8 @@ PRD草稿生成后:
56
56
  ### 2. 判断是否需要原型
57
57
 
58
58
  - 需要(涉及 UI/交互/页面)→ 进入原型循环
59
- - 不需要(纯后端/无 UI)→ **先走步骤 3.5 完整性评审**,再冻结,跳到步骤 5
59
+ - 不需要(纯后端/无 UI)→ **先走步骤 3.4 清晰度机械门 → 3.5 完整性评审**,再冻结,跳到步骤 5
60
+ (**3.4 不可绕过**——P0-1 fail-closed;无 UI 只跳原型循环,不跳任何评审/机械门)
60
61
 
61
62
  ### 3. 原型循环(编排层控制)
62
63
 
@@ -78,13 +79,26 @@ PRD草稿生成后:
78
79
 
79
80
  **人工介入 = 编排层阻塞确认**(非 subagent,因 subagent 不能 AskUserQuestion),呈现争议项 + 选项(接受现状 / 指定修正方向 / 升版 / 放弃原型)。
80
81
 
82
+ ### 3.4 PRD 清晰度机械检查(冻结前门禁,agent-governance P0-1)
83
+
84
+ 进入 3.5 完整性评审**之前**,编排层运行机械门(checker 先跑拦明显问题,LLM 评审随后):
85
+
86
+ ```
87
+ tf prd check-clarity <工作区根> # 自动定位 requirement/vN/prd.md
88
+ ```
89
+
90
+ - **末行 `STATUS: PASS | FAIL`(非零退出码 = FAIL),必须读取**:FAIL → 直接回 ce-brainstorm Phase 1.3/Phase 3 修订,**不派发** 3.5 的 prd-completeness-reviewer(机械门已 FAIL,省一轮 LLM 评审);PASS → 进入 3.5。
91
+ - 判据 = 弱词 8 类 / 必需段缺失 / §8.4 左列技术维度漂移(fail-closed,见 `scripts/guard/checks/prd-clarity.mjs` 头注)。
92
+ - **首版无豁免通道**:误报时改 PRD 文字,或走代码变更调 checker 词表(校准纪律在 checker 头注)。
93
+ - resume 断点恢复:本检查挂评审链路(3.4→3.5→4),不挂保存步骤——resume 重走评审链自然重跑,不检半成品。
94
+
81
95
  ### 3.5 PRD 完整性评审(冻结前门禁,v0.47)
82
96
 
83
97
  **orchestrated 路径下完整性评审由编排层在此派发**(standalone 路径由 ce-brainstorm Phase 3.5 内部派发,见 ce-brainstorm `references/prototype-loop.md` §3.5.5)。
84
98
 
85
99
  - 派发:按名派发插件 agent `prd-completeness-reviewer`(6 维,含 §8.4 信息齐备性与业务可读形态 D6),传入 `prd_path` + `concepts_path`(可选)+ `template_path`(默认**插件内置** `templates/prd.md`)+ **`spec_path`**(默认 `${CLAUDE_PLUGIN_ROOT}/skills/ce-brainstorm/references/prd-84-authoring-spec.md`,§8.4 规范唯一权威)+ `detail_ledger_path`(如有)。
86
100
  - 判定:PASS / PASS_WITH_WARNINGS → 进入步骤 4 冻结;**FAIL(Critical>0:D1/D2 缺失、D6 核心信息缺失、D6 悬空功能)→ 回 ce-brainstorm Phase 1.3/Phase 3 修订后重审**。D6 形态核验(G7)命中判 Important,不直接触发 FAIL,但须记录并交人工裁定。
87
- - **适用性**:需要原型(步骤 3 完成后)与不需要原型(纯后端无 UI,步骤 2 后)两条路径**均必须派发**——不因跳过原型循环而跳过完整性评审。
101
+ - **适用性**:需要原型(步骤 3 完成后)与不需要原型(纯后端无 UI,步骤 2 后)两条路径**均必须派发**——不因跳过原型循环而跳过完整性评审。**两路径的前置均为步骤 3.4(prd-clarity 机械门)**——3.4 FAIL 不派发本评审,直接回改。
88
102
 
89
103
  ### 4. 冻结
90
104
 
@@ -35,7 +35,7 @@ ce-plan 在 orchestrator pipeline 上下文中减少仪式开销,但**保留
35
35
 
36
36
  ## 复利
37
37
 
38
- - **注入**:读取 `docs/solutions/INDEX.md`,过滤 `phase = plan OR cross-phase`,取默认 top-5 摘要(窗口与排序口径见 `s1-path-router.md`;有 CLI 时优先 `tf solutions inject --phase plan --limit <n>`)
38
+ - **注入**:优先 `tf solutions inject --phase plan --limit 5`(CLI 内含见习/红区门控);CLI 不可用才降级手动读 `docs/solutions/INDEX.md`(过滤 `phase = plan OR cross-phase`,窗口与排序口径见 `s1-path-router.md`)——**手动降级不降门(P2-2)**:跳过 `flags=probation` 行与红区关键词行(`DP-A`/`Code Landing`/`publish`/`发布闸`/`代码落地`)
39
39
  - **捕获**:检测可复利时刻(技术方向决策、拆分权衡等)
40
40
 
41
41
  ## 反馈环路检查点
@@ -123,7 +123,7 @@ Config-aware routing: check `artifacts.order` and `artifacts.skip` from project
123
123
 
124
124
  ## Mode Detection
125
125
 
126
- If workflow is `auto`/`null`/unset: run `tf runtime infer <change-dir>`. 双通道输出(v0.64.0):`mode` ∈ **hotfix**(≤2 tasks/≤2 files) / **tweak**(≤4, config/doc) / **full**(更大;quick/lightweight 仅由显式前门写入)+ `suggested_path` ∈ direct|planned|null(arch/API/DB/聚合信号 → 建议 planned 而非 full,D1)。
126
+ If workflow is `auto`/`null`/unset: run `tf runtime infer <change-dir>`. 双通道输出(v0.64.0):`mode` ∈ **hotfix**(≤2 tasks/≤2 files) / **tweak**(≤4, config/doc) / **full**(更大;quick/lightweight 仅由显式前门写入)+ `suggested_path` ∈ direct|planned|null(arch/API/DB/聚合信号 → 建议 planned 而非 full,D1)。**P1-1 双信号**:`clarity` ∈ pass|fail|null + `risk` ∈ low|medium|high|null——`clarity=fail` 或 `risk=high` 时路由推荐倾向**完整人审路径**(建议级;硬阻断由 guard 的 `prd-clarity`/`history-risk` 维度承担,两者分工不重叠)。
127
127
 
128
128
  **持久化改为「建议+询问」(P4 落地)**:有 TTY → 回显 `mode` + `suggested_path` 建议,AskUserQuestion 确认后 `tf state set <dir> workflow <mode>`;无 TTY → 按建议直接落盘并在输出中记 `infer_source=suggested`(B-12,e2e/jarvis 不挂起)。**`suggested_path` 只进前门选择提示,绝不写入 `state.workflow`。**
129
129
 
package/templates/prd.md CHANGED
@@ -320,6 +320,12 @@
320
320
  > **语汇**:正文主干用 §6 术语字典的**业务名**;类名 / 方法名 / 表名 / 行号不得出现,确需时以括注附于业务名后。
321
321
  > **精确**:禁用弱词(较快 / 友好 / 支持 / 适当 / 等 / 尽可能 / 必要时)——模糊表述会被下游自行解释,产生静默缺陷。
322
322
  > **完整性**:11 维 / 7 维清单**降为内部校验清单**,撰写前用它核对信息齐备,撰写时按业务认知顺序重组进正文,**不得**把清单写进正文;不适用维度在 `detail-ledger.md` 标 `NA + 理由`。
323
+ >
324
+ > **⚠ 撰写指引剥离规则(prd-writer 实例化时 MUST 遵守,agent-governance P0-1)**:本模板中
325
+ > 所有 `>` 撰写指引 blockquote(含上方「语汇/精确/完整性」与「可解析性」等指引段)是给撰写者的
326
+ > 元指令,**实例化 PRD 时必须整体剥离,不得写入 `requirement/vN/prd.md` 正文**——否则指引中的
327
+ > 弱词示例(本行自带「较快/友好/支持」等)会直接触发冻结前 `tf prd check-clarity` 机械门 FAIL,
328
+ > 且首版无豁免通道 = 死循环。`{…}` 占位符同样只在模板中存在。
323
329
 
324
330
  ### 8.5 非功能性需求说明
325
331
 
@@ -417,7 +423,9 @@
417
423
  > 本表只列名目与结果,**不重复列出条款正文**——同一规则两处维护必然漂移。
418
424
  >
419
425
  > **两处声明**:① **自查 ≠ 规格正文**——本节是**撰写者自检清单**,不构成对业务方的规格条款,
420
- > 判定权仍在业务评审;② **非脚本门禁**——不得将本节接入机械门禁脚本。
426
+ > 判定权仍在业务评审;② **非脚本门禁**——不得将本节(可读性自查节)接入机械门禁脚本
427
+ > (勘误 2026-09-25:弱词检测已独立落地为 `prd-clarity.mjs` 机械门,与本声明不冲突——
428
+ > 该门查 §4 弱词/必需段/§8.4 漂移,不查本可读性自查节)。
421
429
 
422
430
  | 编号 | 自查项(详见规范文件 §8) | 结果 | 备注 |
423
431
  |---|---|---|---|