# 2026-06-29 MEXP08A Stitch 阻塞 ## 用户目标 以 Goal 模式推进 `M-体验08A:Mindraw Frame -> Stitch UI 生成 -> Codex 返回可见结果`。 ## 已完成事项 - PM 在 `02-P/plan-progress.markdown` 立项 `P-20260629-mexp08a-frame-to-stitch`,并将 `P-20260601-finder-pdf-drag`、`P-20260531-default-new-dir`、`P-20260531-periodic-autosave` 调低为 Low priority backlog。 - PM 派发 `M4C-MEXP08A-01` 给 Coder@m4c,要求先补真实 Mindraw Frame link 的 frame-only context gate。 - Coder@m4c 完成并提交 `ee035fd4a5623995cb0e0c8790e638dadfcc1098`,结论为 `PASS_FOR_PM_MEXP08A_STITCH_01`。 - PM 使用 `--no-live` 文档索引路径复核真实链接 `mdoc_18bd9099d5510060_c76d / caJFkm_EjKdNTBQw9afOg`,确认返回 `readScope=frame-only`、`target.kind=frame`、`outsideTextIncluded=false`、`fallbackToDocumentRead=false`。 - PM 连接本机 `stitch` MCP,确认工具可用,并成功创建 Stitch project `projects/4145955783540509949`。 - Coder@m4c 完成 `M4C-MEXP08A-02`,commit `7c902bcc2f08d263bd1443e82d452d52a5f2dd2d`;PM 复跑默认真实 link 入口确认不带 `--no-live` 也能返回合法 frame-only context。 - PM 重试 Stitch 生成:`generate_screen_from_text` 不再立即返回 service unavailable,并创建 screen `projects/4145955783540509949/screens/f9cb5f72c6734bec96f369b1b8c62354`;但连续短轮询、长轮询和 late check 后仍为 `Generating Screen...`,没有下载到可见资产。 - PM 继续检查既有 screen,未重复调用 `generate_screen_from_text`;`get_screen` 仍返回 `Generating Screen...`,`download_assets` 仍无文件。最新证据:`02-P/MEXP08A-FrameToStitch/pm/stitch-check-20260629-150834.json`。 - PM 再次检查既有 screen,仍未完成生成:`screenshot={}`、`htmlCode={}`、`assetFiles=[]`。最新证据:`02-P/MEXP08A-FrameToStitch/pm/stitch-check-20260629-151207.json`。 - 2026-06-30 用户指出“感觉哪里不对劲”,PM 主动诊断 Google Stitch 登录 / 网络 / 服务状态:MCP 代理可连接 `stitch.googleapis.com` 并发现 15 个工具;DNS / TLS / HTTPS 基础连通正常;但 `get_screen` 对目标 screen 仍返回 `Generating Screen...`,`list_screens` 却返回 `{}`,`download_assets` 无文件。网页登录 `https://stitch.withgoogle.com/home` 显示黑屏且只有 Stitch iframe,直接打开内层 `app-companion-430619.appspot.com` 显示白屏空 root,未出现正常登录页、项目列表或错误提示。 - 2026-06-30 用户明确调整判断:重要的是任何模型都能从 Mindraw Frame-only context 生成可见 UI 结果,不必绑定 Stitch。PM 使用 Codex image2 基于同一份 `frame-only` 上下文生成 PNG:`02-P/MEXP08A-FrameToStitch/pm/mexp08a-image2-fallback-20260630.png`,并补充说明:`02-P/MEXP08A-FrameToStitch/pm/mexp08a-image2-fallback-20260630.md`。 - 2026-06-30 PM 已停用旧 `mexp08a-stitch-screen-monitor` heartbeat。原因:当前关键路径已调整为任意外部模型的可见 UI 结果,继续只轮询同一个卡住的 Stitch screen 会误导后续判断。 - 2026-06-30 用户查看 image2 可见结果后回复“验收通过”。PM 已在 `02-P/plan-progress.markdown` 将 `PM-MEXP08A-GATE` 收敛为 `Complete / MEXP08A accepted under external model visible result scope`。 ## 关键决策 - MEXP08A 的 Stitch 输入只能来自 frame-only context;不得为了跑通 Stitch 绕过 m4c Frame scope contract 去扫整包。 - 本轮没有上传真实截图或图片字节到 Stitch,只使用 Frame 内文本和元素摘要作为 text prompt。 - 在用户明确接受“任何模型都可以”后,Codex image2 可以成为 `MEXP08A` 的 fallback 生成通道;但仍必须明确标注为 image2 fallback,不得冒充为 Google Stitch 结果。 - `MEXP08A` 的用户可感知 Gate 按修订后的 `external model visible result` 口径完成;Stitch 不再是本轮 Gate 的必要条件。 ## 当前阻塞 / 等待项 - Stitch immediate unavailable 已缓解:本次调用已创建 screen `projects/4145955783540509949/screens/f9cb5f72c6734bec96f369b1b8c62354`。 - 当前等待项已从“单个 Stitch screen 异步生成慢”升级为“Stitch Web UI / MCP screen 状态不一致”:`get_screen` 能拿到一个永远 `Generating Screen...` 的目标 screen,但 `list_screens` 返回空对象;网页登录层也没有正常启动。 - 当前仍不是 m4c / Mindraw context gate 不通过,也不是本机网络完全不通;但 MEXP08A 尚未完成,因为还没有可见 Stitch 结果。 - Stitch MCP 当前可用工具没有 session 级诊断入口;继续只查询同一个 screen 的收益很低。 - `MEXP08A` 当前没有用户等待项;用户已接受 image2 可见结果。Stitch Web / MCP 状态不一致仍存在,但已降级为独立通道健康问题,不再阻塞本里程碑。 ## 未决问题 - 默认不带 `--no-live` 的 m4c resolver live old-shape fallback 已由 `M4C-MEXP08A-02` 修复并通过 PM 复核:live DTO 不满足 frame-only 审计时记录 `LIVE_FRAME_SCOPE_REJECTED`,再继续受控 document index / selected package frame-only fallback。 ## 后续建议 - 不建议继续只等同一个 Stitch screen。 - `MEXP08A` 已通过。后续如果继续推进产品化,建议另立 `M-体验08B:外部模型生成结果写回 Mindraw result Frame`;如果要修复 Google Stitch 通道,应另立独立 Stitch health / smoke 计划。 - Stitch 后续可以保留为独立通道健康问题,不再阻塞“Frame -> 可见 UI 生成”的体验目标。 - 旧 Stitch-only heartbeat 已删除;如果后续重新追 Stitch,应新建独立的 Stitch health / smoke 计划,而不是复用 `MEXP08A` 用户可感知 Gate。