@@ -104,17 +104,18 @@ CP1 前后必须使用 `workflow-plan-decision.v1.schema.json` 与 `hooks/_runti
1041047 . ** CP3 内容边界** :CP3 只确认实施计划,不重复技术方案中的架构决策、接口论证和兼容性主说明;必须显式覆盖任务拆分、顺序、依赖、验证方式与回滚策略
1051058. **产物文件前置创建**:输出 CP 确认请求前,对应产物文件必须已写入磁盘。正式任务由 `TaskAdmissionTransactionV1` 单写者先 create-if-absent 并回读 identity、canonical overview/问题概况和 CP pending,禁止先手工拼目录再补准入。dev/requirements 必须先判定入口类型:纯新需求且无产品角色 → `00-需求概况.md` + `01-需求确认.md` + `<任务>/.memory/sessions.md`;有产品角色直接提供完整需求 → `00-需求概况.md`(仅来源/映射概况)+ 原样 `01-产品需求.md` + `<任务>/.memory/sessions.md`,产品正文只给产品填写完整 PRD,AI / 研发缺口 / 冲突检查记录在 00、CP1 摘要、`02-技术方案.md` 或报告中,不改写 01;需求变更 → `00-需求变更概况.md` + `01-需求变更确认.md` + 回写目标需求真相源;历史目录的 `01-需求概述.md` 仅作兼容。fix/bugs → `00-问题概况.md` + `01-问题确认.md`,也允许使用 `01--问题确认与CP1.md`、`02--技术方案与CP2.md` 这类报告等价承载 CP1/CP2;CP3 → `04-实施计划.md`。命中有效 `SimpleTaskFastPathLeaseV1` 时,允许不创建需求/bug 目录,用内联 CP 摘要 + 报告/记忆替代,但必须记录 `N/A + skipReason` 和升级回退条件;若命中 ExistingRequirementArtifactOverride,则必须先增量编辑已有真相源,回复内联摘要不得替代文件回写。所有场景必须用 ArtifactDecisionMatrix 说明每个产物是 `create`、`update`、`skip` 还是 `N/A`。
1061069 . ** 进度文档触发** :` 05-实施进度.md ` 不是小任务默认必产物;当任务跨 2 轮以上会话、存在明确阻塞、用户要求持续跟踪、CP3 计划拆为多批次、预计修改 ≥10 文件或命中控制面/模板/validate/部署副本联动时,必须在执行前创建并在每批完成后更新。默认前提是已存在 ` 04-实施计划.md ` ;docs/init/plan-review 等 CP3 豁免场景可使用已确认文档大纲、任务切片或 ContextHandoffCard 作为等价计划锚点。
107- 10 . ** CP3 豁免记录** :docs/init/plan-review 等被工作流规则明确豁免 CP3 时,必须写入 ` CP3: N/A(<子类型> 子类型豁免) ` ,让 hook/fallback 能区分“合法豁免”和“遗漏确认”。
108- 11 . ** 确认后前置复审分级** (C19 / ` PostConfirmationReviewScopeGate ` ):每次显式或 Auto CP 决定后、进入下一阶段前,必须先判定复审强度。低风险单文件、纯文案或 SimpleTaskFastPath 可做轻量复审;命中公共 API/配置、跨模块注册链、运行时安全能力、package/adapter、文档消费者、控制面、多真相源同步、用户要求全面复审或预计多轮收敛时,必须升级为冻结清单驱动的全面复审,复用 ` review-checklist ` 文件、` dev-plan-review ` PR-2~ PR-7、ReviewCoverageDelta / ReviewDimensionDeltaGate 和状态新鲜度检查;命中控制面、多文件联动、多真相源同步或模板-示例-校验链时必须追加交叉验证。阻断项先修正并回到结构化意图重算,不得由复审器直接要求重复确认。低风险降级必须写 ` skipReason ` 。
109- 12 . ** 审计问题清单转修复的 CP1 映射** :当 fix 源自 audit/analyze 的问题清单时,CP1 必须建立问题 ID 映射,逐项标注 ` 本轮修复 / 已关闭 / 延后 / 另起任务 ` ,并把验收口径写入 CP1 产物;禁止只列新增问题而漏掉用户已指出或上轮已确认的问题。
110- 13 . ** 执行期 CP3 回退** :若执行过程中实际变更范围触达 CP3 门槛(≥5 文件、高风险、控制面联动),必须暂停执行、补做或重开 CP3,再继续后续修改与验证。
111- 14 . ** backlog 来源前置真相复核** :当 CP1/问题确认直接来源于 ` data/*.md ` 的 open/partial 项时,进入正式确认前必须先把候选项分类为 ` pure-open ` / ` residual-tail ` / ` already-fixed ` / ` misclassified ` ;非 ` pure-open ` 项须先回写状态并修正本轮范围,不得把 stale-open 条目继续按纯 open 统计。
112- 15 . ** 代码事实与唯一推荐** :CP1/CP2/CP3 的重要需求、方案和推荐结论触发 ` CodeTruthEvidenceMatrixGate ` ,至少绑定 repo path、符号/契约、当前行为、反证探针和差距;多方案收敛后触发 ` UniqueRecommendationBeforeConfirmGate ` ,只能保留一个推荐方案或一个明确组合推荐。** 禁止** 收敛后用「你希望哪种 / A/B/C 点选」代替唯一推荐(` NoPreferenceMenuAfterConvergenceGate ` )。完成态 / 收口「下一步」另受 ` UniqueNextStepRecommendationGate ` 约束:禁止 free-text「做 A 或做 B」并列(` classifyNextStepOrForkSample ` / PF-172)。
113- 16 . ** CpArtifactBeforeConfirmGate(PF-138)** :输出「确认 CP1/CP2/CP3」前,磁盘产物路径必须已写入且出现在确认文案(如 ` 01-需求确认.md ` / ` 02-技术方案.md ` / ` artifactPath ` );禁止无路径点选。机器探针:` classifyCpArtifactBeforeConfirmSample ` → ` missing-cp-artifact ` 失败。
114- 17 . ** CodeTruthAtCpEntryGate(PF-139)** :控制面 / MCP / Hook / CLI / validate / 分发类任务在写「可确认 CP / 方案定稿 / 可实施」前必须含 ` CodeTruthEvidenceMatrix ` (或 Gate 名 + repoPath/currentBehavior/negativeProbe);机器探针:` classifyCodeTruthMatrixAtCpSample ` → ` missing-code-truth-matrix ` 失败。
115- 18 . ** ControlPlaneDigest + AuthorSelfReviewBoundary(PF-140)** :控制面确认必须绑定 ` artifactPath ` +` artifactSha256 ` /` ConfirmBindingGate ` (` classifyControlPlaneDigestSample ` );** 禁止** 把「作者自审」标成「独立审查」(` classifyAuthorSelfReviewBoundarySample ` )。TimeoutOwnership:同步 I/O 不得宣称 wall-clock 硬超时假绿(见 release-verification / MCP 文档边界)。
116- 19 . ** ClosedArtifactNoReviveGate(PF-191)** :需求/bug 目录头部为 ` closed ` / ` canceled ` / ` archived ` / ` user-canceled ` 时,** 禁止** 把同一目录改回 active/candidate 或增量写 00/01 冒充新开。必须** 新建** 需求/bug 目录,旧目录仅可追加 superseded/related marker 或被新目录引用。机器探针:` classifyClosedArtifactNoReviveSample ` → ` revive-allowed-invalid ` 失败;` npm run test:executable-absorption-gates ` 。
117- 20 . ** TaskPhaseProjectionGate(PF-183 · 条件)** :多 active 任务、用户只说「继续/刚才/当前」、或出现实施计划/进度投影时,用户可见回复必须含 ` activeTask ` (或等价任务名)、` phaseKind ` /CP 状态、` sourceDelivery=none|started|partial|complete ` 、唯一 ` nextAllowedAction ` 。禁止把「CP3 候选计划已生成 / 04 已存在」渲染为「源码已在实施」。仅 CP3 confirmed + 05 存在 + 可验证 source mutation 才可 ` sourceDelivery=started ` 。探针:` classifyTaskPhaseProjectionSample ` → ` phase-fail ` 。
107+ 10 . ** TaskPhaseStatusProjectionSyncGate** :每次 CP1/CP2/CP3 确认、生成 ` 04-实施计划.md ` 或启用 ` 05-实施进度.md ` 后,必须同步同一任务目录内 ` 00/01/02/04/05 ` 的阶段状态投影。上游真相源可保留历史事实,但文首/状态行不得继续写“待 CP2 / CP2 候选 / 等待用户确认 / 待 CP3”等已被后续产物超越的当前态;若保留历史候选,必须改为 ` historical / superseded / 已确认后进入实施 ` 等明确状态。机器探针:` collectStatusProjectionIssues ` 随 ` test:requirement-artifacts ` 覆盖 requirements / bugs / optimizations / scenario-tests。
108+ 11 . ** CP3 豁免记录** :docs/init/plan-review 等被工作流规则明确豁免 CP3 时,必须写入 ` CP3: N/A(<子类型> 子类型豁免) ` ,让 hook/fallback 能区分“合法豁免”和“遗漏确认”。
109+ 12 . ** 确认后前置复审分级** (C19 / ` PostConfirmationReviewScopeGate ` ):每次显式或 Auto CP 决定后、进入下一阶段前,必须先判定复审强度。低风险单文件、纯文案或 SimpleTaskFastPath 可做轻量复审;命中公共 API/配置、跨模块注册链、运行时安全能力、package/adapter、文档消费者、控制面、多真相源同步、用户要求全面复审或预计多轮收敛时,必须升级为冻结清单驱动的全面复审,复用 ` review-checklist ` 文件、` dev-plan-review ` PR-2~ PR-7、ReviewCoverageDelta / ReviewDimensionDeltaGate 和状态新鲜度检查;命中控制面、多文件联动、多真相源同步或模板-示例-校验链时必须追加交叉验证。阻断项先修正并回到结构化意图重算,不得由复审器直接要求重复确认。低风险降级必须写 ` skipReason ` 。
110+ 13 . ** 审计问题清单转修复的 CP1 映射** :当 fix 源自 audit/analyze 的问题清单时,CP1 必须建立问题 ID 映射,逐项标注 ` 本轮修复 / 已关闭 / 延后 / 另起任务 ` ,并把验收口径写入 CP1 产物;禁止只列新增问题而漏掉用户已指出或上轮已确认的问题。
111+ 14 . ** 执行期 CP3 回退** :若执行过程中实际变更范围触达 CP3 门槛(≥5 文件、高风险、控制面联动),必须暂停执行、补做或重开 CP3,再继续后续修改与验证。
112+ 15 . ** backlog 来源前置真相复核** :当 CP1/问题确认直接来源于 ` data/*.md ` 的 open/partial 项时,进入正式确认前必须先把候选项分类为 ` pure-open ` / ` residual-tail ` / ` already-fixed ` / ` misclassified ` ;非 ` pure-open ` 项须先回写状态并修正本轮范围,不得把 stale-open 条目继续按纯 open 统计。
113+ 16 . ** 代码事实与唯一推荐** :CP1/CP2/CP3 的重要需求、方案和推荐结论触发 ` CodeTruthEvidenceMatrixGate ` ,至少绑定 repo path、符号/契约、当前行为、反证探针和差距;多方案收敛后触发 ` UniqueRecommendationBeforeConfirmGate ` ,只能保留一个推荐方案或一个明确组合推荐。** 禁止** 收敛后用「你希望哪种 / A/B/C 点选」代替唯一推荐(` NoPreferenceMenuAfterConvergenceGate ` )。完成态 / 收口「下一步」另受 ` UniqueNextStepRecommendationGate ` 约束:禁止 free-text「做 A 或做 B」并列(` classifyNextStepOrForkSample ` / PF-172)。
114+ 17 . ** CpArtifactBeforeConfirmGate(PF-138)** :输出「确认 CP1/CP2/CP3」前,磁盘产物路径必须已写入且出现在确认文案(如 ` 01-需求确认.md ` / ` 02-技术方案.md ` / ` artifactPath ` );禁止无路径点选。机器探针:` classifyCpArtifactBeforeConfirmSample ` → ` missing-cp-artifact ` 失败。
115+ 18 . ** CodeTruthAtCpEntryGate(PF-139)** :控制面 / MCP / Hook / CLI / validate / 分发类任务在写「可确认 CP / 方案定稿 / 可实施」前必须含 ` CodeTruthEvidenceMatrix ` (或 Gate 名 + repoPath/currentBehavior/negativeProbe);机器探针:` classifyCodeTruthMatrixAtCpSample ` → ` missing-code-truth-matrix ` 失败。
116+ 19 . ** ControlPlaneDigest + AuthorSelfReviewBoundary(PF-140)** :控制面确认必须绑定 ` artifactPath ` +` artifactSha256 ` /` ConfirmBindingGate ` (` classifyControlPlaneDigestSample ` );** 禁止** 把「作者自审」标成「独立审查」(` classifyAuthorSelfReviewBoundarySample ` )。TimeoutOwnership:同步 I/O 不得宣称 wall-clock 硬超时假绿(见 release-verification / MCP 文档边界)。
117+ 20 . ** ClosedArtifactNoReviveGate(PF-191)** :需求/bug 目录头部为 ` closed ` / ` canceled ` / ` archived ` / ` user-canceled ` 时,** 禁止** 把同一目录改回 active/candidate 或增量写 00/01 冒充新开。必须** 新建** 需求/bug 目录,旧目录仅可追加 superseded/related marker 或被新目录引用。机器探针:` classifyClosedArtifactNoReviveSample ` → ` revive-allowed-invalid ` 失败;` npm run test:executable-absorption-gates ` 。
118+ 21 . ** TaskPhaseProjectionGate(PF-183 · 条件)** :多 active 任务、用户只说「继续/刚才/当前」、或出现实施计划/进度投影时,用户可见回复必须含 ` activeTask ` (或等价任务名)、` phaseKind ` /CP 状态、` sourceDelivery=none|started|partial|complete ` 、唯一 ` nextAllowedAction ` 。禁止把「CP3 候选计划已生成 / 04 已存在」渲染为「源码已在实施」。仅 CP3 confirmed + 05 存在 + 可验证 source mutation 才可 ` sourceDelivery=started ` 。探针:` classifyTaskPhaseProjectionSample ` → ` phase-fail ` 。
118119
119120## CP 响应处理
120121
0 commit comments