落地本特性分支的规划 artifacts,使分支自洽(需求→计划→实现 同源): - docs/brainstorms/2026-06-17-mac-work-list-requirements.md:E1–E6 需求(经 5 人 ce-doc-review + 重锚 + 创始人裁定 game-admin 归本线 / 六类资产=P-CRT-02)。 - docs/plans/2026-06-17-002-feat-mac-engine-frontend-tier0-plan.md:E1–E6 实现计划(经 3 人 headless ce-doc-review,U2 净新建/KTD1 接缝/MVP-latch/producer 跨线 等修订已融)。 本分支已实现 E1(3 archetype + win/lose + asset + 鲁棒)/E2 scaffold/E3 asset;E4/E5/E6/U7 见计划(跨线/设计门)。 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
10 KiB
date, topic
| date | topic |
|---|---|
| 2026-06-17 | mac-work-list |
Mac 工作清单(前端+引擎线 · Phase 1 主账)
Summary
为「前端+引擎线」(本机 lili-mac)排定 Phase 1 工作账,锚定在固定游戏架构 + SAA agentic studio(契约 8/8 已冻,我线全部现在可开工)。我线的活 = 协调档 §7.2 的 E1–E6 + 广度 8 页:后端 SAA 图产 gameDefinition/assetSpec,我做消费/适配/QA/创作 UI 侧。最高价值首件 = E1 2D 适配器(gameDefinition→LittleJS);关键路径 = 后端 B6 + 引擎 E1/E3/E4 合流出「一句话→生成→玩」M0 真闭环。
Problem Frame
2026-06-17 创始人按"要不要浏览器/视觉"切两开发线,本机由"便宜模型生成 L1"转为「前端+引擎线」。随后两次 pull 落地了契约冻结门 8/8 ✅ + SAA 固定架构图 16 节点(B2),协调档 §7 刷新为"契约冻结后各线当前工作清单"。本账重锚到这一现状:早版按旧 W-G1 Python worker 主线 + 旧 §6 搭的骨架(R1–R8)已被 §7.2 的 E1–E6 取代——主线现是 SAA 图,worker 降为引擎线复用的组件(build.mjs 共调 / asset 角色 / few-shot 来源),不再是"转默认产线"。
已落地基线(re-baseline · 不再列为 TODO)
- 引擎:
game-runtime/src/plugins/8 业务插件(collision 含 swept CCD、physics-lite、particles-juice、gamefeel、palette-post、audio-music、save-progress、runtime-probe;_example样例不计)。预判"4 短板"实测已突破。 - worker 九门 real-play:scale 18/19 过九门(94.7%),仅 t2048 因 latch 挂(见 E4)。driver 覆盖已补齐:angrybirds drag-aiming(
runDragAiming@play.cdp.cjs:368,commit06e59de6,pass)、multiball(commitcc5fa486,pass)、tap-targets 自产、brief-pin 数值自产化均已落地。首局体验门(组 C,additive 非阻断)已落地、本机 M1 跑通(breakout 全过)。 - worker 派发壳:
service.py已含/generate+ HMAC-SHA256X-Callback-Signature+ 回调内部路(commitd59093f8),供 SAA/worker 两路复用。 - 前端:8 个 studio 页已落地(Feed/Play/Create/Message/Profile/Project/Biz/Dashboard,共 10 个 views 目录含 login/share)+ 设计体系(
tokens.css/vue-i18n zh+en/组件库/Vant 深色主题)。注:这 8 个 ≠ demo 设定的"八大页";demo 八大页里素材中心、玩法模板中心两页仍缺(见广度)。 - 联合 spike:缓存透传 ✅ 绿(76–93% 命中)、classify 准确率 ✅ 绿(M3 archetype 93%/$0.003)。
Key Decisions
- 重锚到 §7.2 E1–E6:用协调档/执行档的权威 E-ID 体系,本账作其详账,避免与 §7.2 漂移。
- 契约 8/8 已冻 → 我线全部可开工:E1–E6 不再"卡契约";依赖 B 步只是跨线协调(各对 mock 建半边),非阻塞。
- worker = 复用组件,非主线:固定架构主线是 SAA 图;worker 提供 build.mjs 共调 / asset 角色 / few-shot 来源 / cost 折算。
- 插件库不预补门面:18/19 在无预补下达成(限当前语料;若后续 grid/HUD 密集体裁批量重写同逻辑则复评)。
- 权威 e2e 在 mini-desktop,本机 = 快走查。
- 创始人 2026-06-17 裁定:game-admin 前端归本线(入广度,≈M3)· 六类资产 = P-CRT-02 六类(定 E3 assetSpec)。
flowchart TB
subgraph FE["前端+引擎线 (本机 lili-mac)"]
e6["E6 创作/修改/预览 UI"]
e1["E1 2D 适配器 gameDefinition→LittleJS"]
e3["E3 asset 产消 (六类资产)"]
e4["E4 九门 QA + narrative reviewer"]
e5["E5 Prompt Registry few-shot 冻结"]
end
subgraph BE["后端线 (6c6g / mini-desktop)"]
b6["B6 studio 编排 /studio/create,modify"]
g["SAA 固定架构图 (16 节点)"]
cb["handleCallback 建版本→组包→入 feed (唯一写入路径)"]
end
e6 -->|"/studio/create (frozen yaml)"| b6
b6 --> g
g -->|"gameDefinition"| e1
g -->|"assetSpec"| e3
e1 --> e4
e4 -->|"engineBundle / 过九门"| cb
Requirements
采协调档/执行档权威 E-ID(E1–E6);广度页用列表。状态:✅已落地 / 🔄部分 / ⏳开口。每项附验收(对齐执行档 §10.2)。
Tier 0(生成引擎 · 关键路径 · 现在可开工)
| E | 工作项 | 文件 | 状态 | 验收(§10.2) |
|---|---|---|---|---|
| E1 | 2D 适配器(SourceProject.gameDefinition→LittleJS 可玩)= 最高价值首件:实体→sprite、behavior→逻辑 |
game-runtime/src/(新增 adapter 层) |
⏳ 开口·新 | 单测 实体→sprite/behavior→逻辑 + 九门真玩绿 |
| E2 | 唯一构建实现核对:SAA build 节点与 worker 共调 scripts/build.mjs(不动) |
game-runtime/scripts/build.mjs |
🔄 共调已有,补核对 | 同源同参 __GameBundle 一致;同 buildInputHash 字节等价 |
| E3 | asset 产消(六类资产 = 图元/角色/特效/场景/界面/音乐 · P-CRT-02):asset 节点 spec→assets[]→宿主消费 + provider=mmx-cli 插桩 |
game-runtime/ + worker asset 角色 |
⏳ 开口·新 | assets[] 非空 → GamePackage assets[] → 宿主非空 assetContext |
| E4 | 九门 QA harness 复用(禁重写)+ narrative 路质量门接 reviewer;含 t2048 latch(唯一剩门) | _shared/*(不动)+ reviewer 角色 |
🔄 18/19,t2048 开口 | 九门真玩绿(mini-desktop 4320/9222) |
| E5 | Prompt Registry 冻结 few-shot(byte 稳)+ CI 卡 byte(现 _few_shot() 读文件=字节不稳) |
contracts/prompts/、prompt.py |
⏳ 开口·新 | CI:few-shot byte 不变 |
| E6 | 前端创作(接 /studio/create)/ 修改(接 /studio/modify)/ 预览 UI(对 frozen studio.yaml + mock) |
game-studio/src/ |
🔄 Create 已存,补真接+进度 | 真机 UI 走查(mini-desktop CDP)create/modify/预览闭环 |
- E4 子项(t2048):抗死锁盲态体裁——放宽 H 门 latch 为"score↑ ∧ board 变 + G 兜",或升级"填库死锁"driver;立为体裁规则补档。实现期按数据二选一。
- E6 子项(进度反馈):补 UI 形态(成功/失败/进行中落点),与 SSE/轮询传输选择分离(后者视后端定)。
广度(Tier 1+ · 账本级 · 价值×独立性)
- 创作页完善 · feed · 钱包 · 消息社交 · 账号(均已有骨架,补真接/完善)
- 玩法模板中心页(新页,低):浏览/选择/应用模板到草稿;先对 mock,真接等后端模板 API,毕业门绑 M1
- 素材中心页(新页,低):素材浏览/选用加入草稿;先对 mock,真接等后端素材 API,毕业门绑 M3
- 设计体系 HJ-FE-DS-001(P1–P5 大半已落地)
- game-admin 运营台前端(创始人 2026-06-17 裁定归本线):限曝光/导出/经营看板 + 赋余额/订阅入口;
game-adminrepo(huijing-ui-admin-vue3 fork);低优先 ≈ M3 - 新页验收(mock 阶段最小状态):加载中 / 空列表 / 选中→应用 交互路径可走查
Success Criteria(= 执行档 §10.2 引擎+前端线验收门)
- E1:
gameDefinition渲成可玩(实体→sprite、behavior→逻辑)单测绿。 - E4:九门真玩绿(mini-desktop),cheap 在固定架构填出过九门游戏
verdict.pass=true;scale 维持 ≥18/19,t2048(唯一剩门)解决后 19/19。注:19/19 经放宽 latch 门达成(体裁固有边界,非生成能力增益);语料 19 款(simon×3 变体)无第 20,scale-20 目标另需生成第 20 款。 - E3:
sourceProject.assets[]非空 → GamePackageassets[]→ 宿主加载(非空 assetContext)。 - E2:同
buildInputHash→ 字节等价 bundle(从源可复现)。 - E6:create/modify/预览闭环真机 UI 走查过(编排器旁路会掩盖 UI 缺陷,真 UI 走查是唯一手段)。
- M0 失败门:E1/E4 任一门挂或 GamePackage manifest 不符 schema → M0 不清、阻 M1 在其上开工。
Scope Boundaries
- 不做(后端线 / 6c6g):SAA 图(B2)、studio 编排 B6、源落库/构建落包、
handleCallback入 feed(唯一写入路径在后端)、全部 game-cloud 后端、契约/Flyway/prompt 后端段。我线只产出过九门的 engineBundle/GamePackage,"入 feed" 是跨线集成点。 - 不做(本 Phase 外 → P2/P3):3D 适配器/Cocos(P2)、云部署/监控运维(P2)、真支付/短信/广告/渠道(P3)、全维优化。
Dependencies / Assumptions
- 契约 8/8 已冻(源项目 schema+V18 DB · SAA ALL_KEYS · trace 扩展键 · studio.yaml 生命周期 API · GamePackage/构建 API)→ 两线可独立开工,各对 mock 建半边。
- M0 集成 = 后端 B6 + 引擎 E1/E3/E4 合流(跨线协调点,非阻塞)。
- 硬约束(回归红线):九门 harness 禁重写;
build.mjs唯一构建脚本不动;GamePackage 产物面既冻;modify 不动 currentVersion、不自动入 feed;new-api 缓存命中只落成本台账、不接收益结算。 - 接缝:
cost.py(B9 缓存命中字段)、few-shot(E5 来源prompt.py)为 worker/SAA 两路共用,改动须双路兼容。 - 权威 e2e 机 = mini-desktop(Linux);本机 M1 = 快走查自检。
- 安全:NEWAPI_KEY 仅在
wg1/gen-worker/.env(gitignore),不入提交;生成 + 九门在本机跑。
Outstanding Questions
原两项 Resolve-Before-Planning 已由创始人 2026-06-17 裁定:game-admin 前端归本线(入广度)· 六类资产 = P-CRT-02 六类(写入 E3)。
Deferred to Planning
- E4/t2048:走"放宽 latch 门"还是"填库死锁 driver"——实现期按数据定。
- E6 进度反馈:SSE 节点流(SAA 强项)还是前端轮询——视 B6 契约定。
- 最简模板首件:M0 端到端先打通哪一档 archetype(8 档:clicker/dodge/match/runner/idle/merge/tycoon/generic;倾向 clicker/dodge 最简)。
Sources / Research
- 协调档:
docs/agent-specs/2026-06-17-多session分工与任务总账.md(§7.2 我线当前清单 E1–E6、契约 8/8 冻结进度)。 - 执行档:
docs/agent-specs/2026-06-17-固定游戏架构与SAA-agentic-studio-execution.md(§7.2 E 步定义、§10.2 验收门、§4.1 数据流、§3.2/3.3 文件路径、§5.5 asset 契约)。 - 现状盘点(file:line 实证):
game-runtime/src/all-plugins.js(8 业务插件)、game-runtime/games/_wg1-gen/_shared/play.cdp.cjs:368(runDragAiming)、{angrybirds,multiball}/evidence/verdict.json(pass)、t2048/evidence/verdict.json(pass=false)、wg1/gen-worker/worker/service.py(/generate+HMAC)、game-studio/src/views/(10 目录)、game-studio/src/host/(宿主装载契约)。 - 提交锚:
06e59de6(angrybirds drag-aiming)、cc5fa486(multiball)、d59093f8(worker 派发壳+HMAC)。