# 2026-06-27 M4C-H5 Retry 重跑 ## 用户目标 - 从 `02-P/plan-progress.markdown` 的 `P-20260626-m4c-handshake-coordination` 领取 m4c 侧 `M4C-H5-07`。 - 在 Mindraw `MD-H5-04` 恢复有效 live capability 后,用当前 runtime capability 重跑 m4c H5 retry smoke。 - 不写真实用户原件,不做 App open direct package write,不领取 `PM-H5-RETRY-GATE` / `H*` / `PM-*`。 ## 已完成事项 - 重新读取全局 / 项目 / m4c 规则、根与 m4c 索引、m4c `CODEGRAPH.md`,确认只领取 `M4C-H5-07`。 - 读取当前 `/Users/ar/Library/Application Support/com.mindraw.desktop/runtime/write-api.json`,确认 PID `93170` running,`/health` 与 `/capabilities` 可达。 - 最小参数化 `m4c-h5-retry-smoke.mjs`,支持 `--task-id M4C-H5-07`、独立报告路径,并优先识别 `MD-H5-04` recovery 报告。 - 执行 `M4C-H5-07` retry smoke:discovery、health、capability、read-state、live-frame-context、lease acquire-release、controlled `commit_write_result(createAiResultFrame)`、unsupported method 错误映射、timeout fallback 全部 PASS。 - 回写总台账 `M4C-H5-07` 完成,`PM-H5-RETRY-GATE` 保持未勾选,等待 PM 收敛。 ## 文件变更 - 主项目: - `02-P/plan-progress.markdown` - `INDEX.md` - m4c 子项目: - `p.mindrawforcodex/INDEX.md` - `p.mindrawforcodex/02-P/Round05-MCPAlpha/qa/round05-h5-retry-smoke-m4c-h5-07.json` - `p.mindrawforcodex/02-P/Round05-MCPAlpha/qa/round05-h5-retry-smoke-m4c-h5-07-check.md` - m4c `03-O` Git commit: - `007db8b2f5c23211e730dc0c342c2276fd0df2ec` ## QA 结论 - m4c 侧建议:`GO-FOR-PM-H5-RETRY-GATE`。 - 明文 bearer token 未落入 JSON / Markdown 证据。 - controlled commit 只修改安全副本 `/private/tmp/mindraw-md-h5-04-live-recovery/MD-H5-04-live-copy.mindraw`。 - m4c `03-O` 提交后工作区干净。 ## 未决问题 - `PM-H5-RETRY-GATE` 只能由 PM 收敛,本轮未代判。 - endpoint / token 是运行态临时值,App 退出后仍需重新读取 capability 并以 `/health` 判定 stale。 - `get_capabilities` 结果中 legacy 顶层 capability 仍显示 write unavailable,但嵌套 transport capability 与 controlled commit 均证明 write path 可用;建议 PM / Mindraw 后续统一 capability payload 语义。 ## 后续建议 - PM 基于 `MD-H5-04` 与 `M4C-H5-07` 证据收敛 `PM-H5-RETRY-GATE`。 - 如 PM 判定 Go,再由 PM 拆后续 H6 / H7 / H8,不由 m4c worker 自行领取。