{
  "subjectSha": "6ac56de2",
  "modelId": "claude-opus-5",
  "promptTemplateVersion": "jt-v1",
  "rung": "R3",
  "templateHash": "41cea3565a31aa46548f34c9100f1ac645614081ef2e2015196186c932db9882",
  "docHash": "075f98b785e3a1828ab0c130cd713d797e259abee258eb00b6fa12062153fcc4",
  "sampleId": "observe/oneshot-plan",
  "iteration": 4,
  "appendCost": 4,
  "unitsToModify": [
    "✅ 执行状态（2026-08-31 收尾回填）",
    "File Structure",
    "Self-Review 第 1 项「Spec 覆盖」",
    "Self-Review 第 3 项「类型一致性」"
  ],
  "wallMs": 37713,
  "exitCode": 0,
  "raw": "这份文档登记/组织的条目是 **Task**（Task 1 / 2 / 2′ / 3 / 4 / 5）。追加一个同类新条目（如 Task 6）时，除了新写一节 `## Task 6: …` 之外，必须改动的已有部分：\n\n1. **`## ✅ 执行状态（2026-08-31 收尾回填）`** —— 表格是「一 Task 一行」的登记表，新 Task 要加一行；表上方那句「**全部 Task 已执行完毕。**」以及紧随的结论段也随之失真，需一并改。\n2. **`## File Structure`** —— Create / Modify 清单集中列在这里，新 Task 触碰的文件必须补进这份清单（新 Task 自己的正文里不重复列全局文件账）。\n3. **`## Self-Review` 第 1 项「Spec 覆盖」** —— 该项是 spec 条目 → Task 编号的映射，并以「✅ 无缺口」结尾；新 Task 的覆盖关系要写进这条映射。\n4. **`## Self-Review` 第 3 项「类型一致性」** —— 该项逐字点名跨任务共享的字段/常量（`STATES`、`zerosByState[s].zeros`、`zeroIds[s]`、`branches.A[s].pct`、`c.proposalF4Ids`）出现在「Task 1 Step 3/4 与 Task 2 Step 3/5/6」，新 Task 若用到这些字段需扩充这条枚举。\n\n条件性的（取决于新 Task 内容，非必然）：\n- `## 🔴 预注册` 代码块 —— 新 Task 若引入新预注册常量，要改这个单一 `PREREG` 字面量及其下方「为什么只预注册第一项」的说明。\n- `Task 2 Step 8` 的 commit message 里写死的「**9 条控制**」与 `must-hit-N` / `must-not-hit-N` 的连续编号 —— 新 Task 若加控制项需同步。\n- 若新条目插在中间而非末尾，其后所有 `## Task N` 标题及 Self-Review 里的编号引用需重编（文档中用 `2′` 规避过一次）。\n\n```json\n{\"unitsToModify\": [\"✅ 执行状态（2026-08-31 收尾回填）\", \"File Structure\", \"Self-Review 第 1 项「Spec 覆盖」\", \"Self-Review 第 3 项「类型一致性」\"], \"appendCost\": 4}\n```"
}