docs(cheap-worker): M3 生产 cutover 完成 — Node/gamedef 退役 go-live、live 跑 Python M3 路(切片一 M3)

live :48080 端口精确从 6-21 旧 gamedef jar 换成 6-28 M3 jar(dev/2.0.0)+ dispatcher=http→worker:9501 + trace.enabled;boot 日志「生成派发通道选定 dispatcher=http=WorkerDispatchClient」坐实 Node/gamedef 旧路在 live 退役。拆 iso :48090 避 live+iso 双 executor 同 DB split-brain。最终拓扑=live :48080(M3 路)+ worker :9501,同 DB。control-plane 6门放量创始人定后单独开。

M3 剩(非 cutover 工程缺口):≥80% 生产真实分布达标复验(质量轨 WU-B/C/F)+ 对外开闸放量(放行决策)+ publish→feed→玩家真玩(产品轨移交边界)。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
lili 2026-06-28 04:46:09 -07:00
parent 16112827da
commit 7f8a418cb5

View File

@ -1,7 +1,7 @@
---
date: 2026-06-28
topic: cheap-worker-M3b-create-feed-e2e-and-6gates
status: 已实现(M3b 生成线收口·U1-U5 真后端验·承重 trace/D11/D9 跨成败两路证实);publish→feed→玩家真玩=产品轨后续(移交边界)
status: 已实现 + ✅ 生产 cutover 完成(Node/gamedef 退役 go-live、live :48080 跑 Python M3 路 dispatcher=http);M3 剩 ≥80% 生产达标(质量轨 WU-B/C/F)+ 对外开闸放量(放行决策)
关联:
- cheap-worker/result_out.py (HEAD a327c991 · 现只产 trace.cost.totalRmb L148-150)
- cheap-worker/cheap_studio.py (run_studio summary L164-184 · 缺 repairs/models/stage/逐门 guards)
@ -253,8 +253,9 @@ Opus 对抗评审判 needs-rework(窄域),3 MAJOR + 5 MINOR,均 code-grounded、
- **6 门新路状态**:9d trace / D11 / D9 三道 worker 侧门**新路已验**(U4/U5);D12 / GP9(提交侧、dispatch 上游、与 worker 实现正交,GP9 经 G1 已验)+ 首局(引擎无关 harness)三道**新路天然继承**。
- **边界发现(收口判据修正)**:玩家 manifest 端点要求 runtime_package published(status=1),preview(0)返「运行包未发布」。故 `publish→feed→玩家真玩` 必须过 `reviewProject(APPROVE)`——按本 plan 移交边界属**产品/审核台轨(auth + 项目 REVIEWING 生命周期)、非生成线 M3b**;M3b 生成线交付 = 落到可发布的预览包(version + status=0 包 + 真 engineBundle 进 package_json + D11 分),已具。
- **创始人裁定(2026-06-28):收口 M3b 生成线 + U6 蒸馏**;publish→feed→玩家真玩 作产品轨后续。测试数据已清(task 189/190、version 93144、runtime_package、amgen 工作区)。
- **遗留(显式)**:① 生产 cutover(切 live :48080,创始人决策)② 产品轨 publish→feed→玩家真玩(auth + REVIEWING 生命周期)③ 待拍数值(配额 / D11 权重 / `BUDGET_RMB` / D9 阈值)④ D12·GP9 新路 belt-and-suspenders re-demo(可选,本路径无关)⑤ iso :48090 + worker :9501 留验证态(M3b 代码经 scp 部署、未 push;worktree dirty)。
- **✅ 生产 cutover 完成(2026-06-28,创始人「同意切,完成M3」)**:侦察揭 live :48080 原跑 6-21 旧 gamedef jar(非 M3 代码),故 cutover 实质=jar 重部署。端口精确把 live :48080 换成 6-28 M3 jar(dev/2.0.0)+ dispatcher=http→worker:9501 + trace.enabled,boot 日志「生成派发通道选定 dispatcher=http=WorkerDispatchClient」坐实 **Node/gamedef 旧路在 live 退役、Python M3 路上 live**;`fuser -k 48080/tcp` 端口精确(绝不 global pkill)、revert 备=换回 6-21 jar+saa;拆 iso :48090 避 live+iso 双 executor 同 DB split-brain;最终拓扑=live :48080(M3 路)+ worker :9501,同 DB 13306。control-plane 6门放量创始人定**后单独开**。
- **遗留(M3 完整达标的非 cutover 工程缺口)**:① **≥80% 生产真实分布达标复验**(依赖便宜档生成质量=WU-B/C/F;U4 真 gen 没过九门、质量未到 ≥80%)② **对外开闸 6门放量**(control-plane,§6 放行决策 + 待拍配额值,创始人定后单独开)③ 产品轨 publish→feed→玩家真玩(移交边界 auth+REVIEWING)④ 待拍数值(配额/D11 权重/`BUDGET_RMB`/D9 阈值)。即 **Node 退役 go-live 已成;M3 的 ≥80% 质量达标 + 开闸放量 = 后续(质量轨/放行决策)**
---
> **状态:** **M3b 生成线收口(创始人 2026-06-28 裁定)。** 承重命题(9d trace 七项 parity 救活 D11 + D9 dedup parity)经 §6.8 双评审 → 本机 U1-U3(全 16 Python 测绿 + Java 跨语言切片 5/5 绿)→ mini-desktop U4/U5 真后端 e2e **跨成败两路证实**(D11 三值判别 28/45/100;trace+similarity 真落库;engineBundle 落可发布预览包),全程 live :48080 未动。6 门:worker 侧三门(trace/D11/D9)新路已验,提交侧/harness 三门(D12/GP9/首局)新路天然继承。**publish→feed→玩家真玩 = 产品/审核台轨后续(移交边界,auth + REVIEWING 生命周期);生产 cutover = 创始人决策。**
> **状态:** **M3b 生成线收口(创始人 2026-06-28 裁定)。** 承重命题(9d trace 七项 parity 救活 D11 + D9 dedup parity)经 §6.8 双评审 → 本机 U1-U3(全 16 Python 测绿 + Java 跨语言切片 5/5 绿)→ mini-desktop U4/U5 真后端 e2e **跨成败两路证实**(D11 三值判别 28/45/100;trace+similarity 真落库;engineBundle 落可发布预览包),全程 live :48080 未动。6 门:worker 侧三门(trace/D11/D9)新路已验,提交侧/harness 三门(D12/GP9/首局)新路天然继承。**✅ 生产 cutover 已切(2026-06-28,创始人「同意切」):live :48080 退 Node/gamedef、上 Python M3 路(dispatcher=http→worker:9501 + trace),拆 iso 避 split-brain。** M3 剩:≥80% 生产真实分布达标复验(质量轨 WU-B/C/F)+ 对外开闸 6门放量(control-plane §6 放行决策)+ publish→feed→玩家真玩(产品/审核台轨,移交边界)。