From 908fbf385b8517429de5c3095e0b79b46ecd1df6 Mon Sep 17 00:00:00 2001 From: unanmed <1319491857@qq.com> Date: Fri, 18 Sep 2026 12:13:39 +0800 Subject: [PATCH] fix(04): revise plans based on checker feedback --- .planning/phases/04-render-adaptation/04-02-PLAN.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/.planning/phases/04-render-adaptation/04-02-PLAN.md b/.planning/phases/04-render-adaptation/04-02-PLAN.md index db0e210..a5d5d28 100644 --- a/.planning/phases/04-render-adaptation/04-02-PLAN.md +++ b/.planning/phases/04-render-adaptation/04-02-PLAN.md @@ -144,7 +144,9 @@ Output: `04-HERO-MOVER-INTERFACE.md`(本 run 唯一新增交付物;零生产 ④ **关卡性质(必须原样告知用户)**:无论触发方式(`/gsd-execute-phase`、`/gsd-manager`、`/gsd-autonomous`、子代理/执行器派发)或配置模式(`.planning/config.json` 的 `yolo`、`workflow.auto_advance`)如何,**执行者/子代理都必须在此停下并等待**用户明确回复「可以执行」四个字;未收到这四个字前不得执行任何任务、不得派发执行子代理,也不得以「自动化模式」为由自动放行。 - ⑤ **若用户给出修订意见**:退出本计划、修订 `04-02-PLAN.md` 后重新汇报,不得自行改道执行。 + ⑤ **失败语义(等同硬门禁,非自动命令)**:用户未回复「可以执行」即继续,或回复的是其它任何内容(含修订意见、沉默、`yolo`/`auto_advance` 模式下的自动推进、或子代理/执行器的自行放行),一律视为**未通过本关卡**:必须立即停止执行,不派发任何执行子代理,保持只读、不写任何文件,直到用户在对话中明确回复「可以执行」四个字后方可继续。本条失败语义只以本 `` 与 `` 的形式表达,不写成 XML 失败声明元素(人工关卡没有可运行的自动命令可与之绑定)。 + + ⑥ **若用户给出修订意见**:退出本计划、修订 `04-02-PLAN.md` 后重新汇报,不得自行改道执行。 是否按本计划(只读勇士移动接口探索,产出 `04-HERO-MOVER-INTERFACE.md`,零生产代码改动,不规划 04-03+ 适配)开始执行 @@ -164,8 +166,7 @@ Output: `04-HERO-MOVER-INTERFACE.md`(本 run 唯一新增交付物;零生产 回复「可以执行」四个字,或给出修订意见 - 用户在对话中明确回复「可以执行」四个字 - 用户未回复「可以执行」即继续,或回复的是其它内容(含 yolo/auto 模式的自动推进)—— 必须停止执行,不派发任何执行子代理 + 用户在对话中明确回复「可以执行」四个字(人工核对用户回复原文;本关卡为人工关卡,无自动命令,失败语义写在 Task 0 的 action ④/⑤ 与 acceptance_criteria 中) - 用户回复中明确包含「可以执行」四个字 @@ -326,7 +327,7 @@ Output: `04-HERO-MOVER-INTERFACE.md`(本 run 唯一新增交付物;零生产 | T-04-02-01 | Tampering | 被查渲染端包 `packages-user/client-base` / `client-modules` | high | mitigate | Task 1 先记录「扫描前基线」(逐行 porcelain 条目 + `sha256` 摘要;规划时既有、与勇士移动无关的用户改动 `client-base/src/load/**`);Task 1–3 均为只读;Task 3 门禁断言「当前 porcelain 条目集合与基线记录逐条一致」且「基线摘要 `sha256`(status 条目 + 各基线条目文件内容的 sha256)未变」——基线目录内的新增/消失条目、状态码变化或基线文件内容被改动均失败;不得回滚/暂存/提交用户既有改动 | | T-04-02-02 | Repudiation | 对账行(无锚点则不可追溯) | medium | mitigate | 每条 `#04-02-R-*` 强制含两侧 `file:line`;由 Task 1/3 的 `` 门禁机器判定(两侧锚点正则) | | T-04-02-03 | Spoofing | 「缺失接口候选」段 | high | mitigate | 候选**至少 1 条**且每条必须含 `渲染端需求` / `数据端现状` / `待确认` 三段、数据端现状带 `file:line`;节末固定结论行的 N 必须等于实际候选条数且 ≥ 1;门禁机器判定;明写「未经用户裁决不视为最终清单」(D-13) | -| T-04-02-07 | Elevation of Privilege | 执行前置关卡(AGENTS.md 要求的第一处 block 点) | high | mitigate | Task 0 为 `checkpoint:decision` + `gate="blocking-human"` 且本计划 `autonomous: false`;`` 明示未收到用户「可以执行」四个字即必须停止、不派发执行子代理;`yolo` / `workflow.auto_advance` 等模式不得自动放行 | +| T-04-02-07 | Elevation of Privilege | 执行前置关卡(AGENTS.md 要求的第一处 block 点) | high | mitigate | Task 0 为 `checkpoint:decision` + `gate="blocking-human"` 且本计划 `autonomous: false`;Task 0 的 `` ④/⑤ 与 `` 明示未收到用户「可以执行」四个字即必须停止、不派发执行子代理;`yolo` / `workflow.auto_advance` 等模式不得自动放行 | | T-04-02-04 | Elevation of Privilege | 探索范围(`HeroRendering` 渲染状态 / `core.*` / 双布局 / legacy 移植) | medium | mitigate | D-12/D-18 为显式排除项且边界写明(排除 `IHeroRendering`/贴图别名/alpha 钩子,保留移动契约与移动钩子);文中排除说明与「处置」必须出现 `HeroRendering` 与 `core.*`;范围门禁禁止产生 04-03+ 计划文件 | | T-04-02-05 | Information Disclosure | 探索文档引用的源码行与接口名 | low | accept | 记录只含接口名、文件行号与成员签名,不含凭据/密钥 | | T-04-02-06 | Denial of Service | 只读子代理越权写入(D-09) | low | mitigate | Task 2 明确子代理仅回传事实表、不写文件、不贴大段源码;最终由主执行者只读门禁统一验证 |