games-development-ai/docs/agent-specs/2026-06-12-T1b-α插件库与参考件-execution.md
zizi 2446b712d5 docs(rulings): 拍板台全清回填+T1b-α执行版v1——四裁定落档,T1b-α进入过审
- C1口径定「自研流即时发布+双渠道精选发行」,可行性方案原文四处更词(闭环表述×2/15KB→Runner v2实测口径/渠道节奏合规依据)
- C2以渠道合规为准绳:游戏集稳定化+月级重备案默认,律所校准,更严照办
- HJ-GEN-001终审通过(Q1~Q7全默认):生成主线=agent写码于插件库按预算/职责分档,不设纯数据热发子集;W-G0解锁排队
- W-T1b §8按默认+mmx资产管线拍板回填(spec §2/作战清单/新记忆mmx-asset-pipeline:盯用量=quota对账铁律)
- 新增T1b-α执行版(HJ-T1B-A-EXEC-001):game-runtime/工程+插件协议五件套+四lane切分(math/vfx/sys/core)+参考件人肉循环协议(mmx用量对账/IP gate/亲玩打分门≥4迭代≤3轮)+时间盒

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-12 10:41:00 +00:00

39 lines
4.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# T1b-α · LittleJS 能力插件库 seed 八件 + 王蓝莓参考件 · 执行版(HJ-T1B-A-EXEC-001)
> **状态:v1 待评审(Codex 优先,503 则回落 Claude 注明)→ 过审放 agent。** 配对评审版 = `2026-06-12-W-T1b-Runner与双层模板-review.md` v2.1(架构/范围门/主门护栏以它为准,本文只管执行)。开工授权:创始人 2026-06-12「按默认开工」。
## 1. 工程位置与工具链
- **新建仓根工程 `game-runtime/`**(LittleJS 增强发行版,独立 npm 工程,后续拆仓友好):`src/plugins/{collision,physics-lite,particles-juice,gamefeel,palette-post,audio-music,save-progress,sdk-probe}/`+`src/core/`(发行版入口/插件注册)+`docs/`(给 agent 读的插件文档)+`test/`+`games/`(参考件等 agent 生成游戏工程)+`host-dev/`(开发宿主页,简版 Runner:加载发行版+游戏 entry,留八锚点接线)。
- 依赖:littlejsengine@1.18.x(锁 T1 终裁版)+esbuild+TS;测试=node:test 零外依赖(沿 spike 纪律);**构建/装依赖只在 mini-desktop**(6c6g 禁,staging-ops 红线),lane 在仓内写码、经 `ssh mini-desktop 'bash -ls'` 同步构建(git 经 Gitea 拉取或 cat 管道单文件传,禁 scp 目录)。
## 2. 插件协议(shared 契约,先于 lane 定稿)
每插件固定五件:`api.d.ts`(公开能力面,**禁玩法/品类语义**)/`impl.ts`/`test/*.test.cjs`(node 可跑)/`PLUGIN.md`(给 agent 读:能力/集成点/示例)/`manifest.json`(名称/版本/gz 预算/依赖)。插件只经公开 API 暴露,**禁直透 LittleJS 裸接口给游戏层**(保引擎可换);单件 gz 配额见评审版 §1(P1 8K/P2 6K/P3 10K/P4 4K/P5 8K/P6 12K/P9 2K/P10 6K),超配额→评审,合计>60K→创始人放行。
## 3. Lane 切分(互斥文件面,lane 不跑 git)
| Lane | 插件 | 要点 |
|---|---|---|
| lane-math | P1 collision(空间哈希/圆 AABB SAT/射线)+P2 physics-lite(弹道/弹簧阻尼/运动学约束)+P4 gamefeel(输入缓冲/coyote/缓动库/连击窗) | 数学正确性单测为主(已知解对照) |
| lane-vfx | P3 particles-juice(预设粒子+hit-stop/屏震/闪白)+P5 palette-post(调色引擎+后处理;**不内置成品色板**) | 视觉件以确定性快照测(seed 固定→canvas 哈希) |
| lane-sys | P6 audio-music(ZzFXM 序列器+情绪分层+ZzFX 预设)+P9 save(SDK storage 契约)+P10 sdk-probe(SDK 接入面+八锚点取证集成点,**只复用 channel-spike 取证 API 形状,不搬其实体资产**) | P10 对齐 contracts/sdk-interface.d.ts 语义 |
| lane-core | 发行版入口/插件注册器/host-dev 宿主页/构建脚本(esbuild 分项产物+SIZES 实测) | 先行半天定插件协议骨架,其余 lane 依协议并行 |
集成门(lane 全绿后,主会话编排):全插件注册构建绿+SIZES 分项实测(增量法,沿 channel-spike 口径)+host-dev 页冒烟(空游戏挂全插件不抛错)。
## 4. 参考件(王蓝莓,人肉循环)
- **循环协议**(主会话编排,全程留痕入 `games/wanglanmei-ref/LOOP-LOG.md`):每轮=①计划(本轮目标/调用哪些插件)→②开发 agent 写码→③mini-desktop 构建+host-dev serve(systemd-run 配方)→④评估(可测性红线:取证清单导出+真输入脚本过五要素 checklist 自动子项)→⑤判词(中间轮=我按 checklist 预判;终轮=创始人亲玩打分)。迭代≤3 轮预判收敛后才提请亲玩。
- **资产铁律(mmx)**:美术=`mmx image generate`(手绘市井风占位,**不用王蓝莓名称/形象**,IP gate)+P5 调色;音乐=`mmx music generate --instrumental`;**每轮资产生成前后 `mmx quota show --output json` 对账,生成清单(prompt/文件/字节)入 LOOP-LOG**(创始人令 watch the usage);资产入 `games/wanglanmei-ref/assets/` 并登记 manifest(尺寸/用途/hash)。
- **主门**:创始人亲玩(手机+桌面,serve URL)按五要素各 1~5 分,均分 ≥4 过;判词与轮次全留痕。
- 游戏工程红线:只用插件公开 API(禁裸 LittleJS);导出取证清单(可交互几何/锚点接线/闭环可达断言);GameConfig 过 channel-spike 合规 schema 扫描(红线复用,资产域名豁免本地)。
## 5. 验收与收口
1. seed 八件:单测全绿+单件 gz ≤配额+PLUGIN.md 齐(给 agent 读的文档=一等公民,缺文档=未交付);2. 集成门三项过;3. 参考件过评估门+**创始人亲玩 ≥4**(主门);4. mmx 用量台账完整;5. 过门后按 wave-close 七步收口(蒸馏:插件协议→9a 契约组草案、循环留痕→W-G2 选型需求输入);判不过→按判词迭代(≤3 轮触发创始人裁决)。失败处置:任一插件结构性受阻(LittleJS 不可扩展点)→停 lane 上报,不绕道 hack。
## 6. 时间盒与红线
插件段 ≤2 天等效;参考件段 ≤3 天等效(含迭代);超盒上报不静默续期。全代码简体中文注释;lane 不跑 git(主会话收编);mini-desktop 不起长驻进程(serve 走 systemd-run);不碰 channel-spike/ 与 contracts/(P10 只读对齐);IP gate:对外可见物零「王蓝莓」字样与形象。