zizi 11c8eafb42 feat(t1b-beta): A0 引擎掌帧接管落地——host-dev RAF桩→littlejsengine engineInit 五回调;本机门全绿,门0浏览器段待mini-desktop
host.js+entry.js:engineMode 分流。real=引擎掌帧(engineInit 五回调 engGameInit/
Update/UpdatePost/Render/RenderPost 接帧驱动+渲染)+getContext2d backing 切引擎
mainContext(setGLEnable(false) 纯2D渲进 mainContext);stub=α RAF桩原样保留(可回滚点)。

本机已验(主会话亲跑):
- 155单测绿(基线持平,受控面/插件零改故计数不变)
- 受控面零改实证:src/core/api.d.ts+plugin.js 未触(七项 backing 全在 host 层切换)
- Q4边界:引擎 import 仅 host.js+entry.js(metafile importers 反查证),未泄进受控面/插件
- 真接线门①:esbuild metafile 实证 littlejsengine 真入产物(163691 bytesInOutput),
  box2d 惰性(0 wasm input),产物 205KB min

8-agent workflow(源码取证→设计→对抗复审→实现):3/3 concerns 0 fatal。
17 mustFix(P0×1/P1×9/P2×7)全采纳:P0=real像素门 overshoot(引擎追帧 N tick/RAF 墙钟抖动
污染采样帧)→改 stub 通道独占逐像素回归,real 只证掌帧;P1 源码级纠偏=debug水印每帧画
averageFPS入mainContext(setDebugWatermark(false))/clearColor默认alpha=0不铺底
(setCanvasClearColor(BLACK))/P75须读timeReal非mockNowMs(real模式退化逻辑帧钟)。

门0 G0-1~G0-7(引擎真掌帧/真渲2D mainContext/双时钟/无uncaught/水印已除)须 mini-desktop
chrome 实测(6c6g 禁 chrome)——未实测不宣布 A0 完成。

新:docs/agent-specs/2026-06-13-A0-引擎掌帧接管-edit-plan.md(编辑计划+门0 runbook)
   +game-runtime/test/harness/gate0-engine-takeover.cjs(门0 CDP 驱动,独立闭合不复用未改造的 integration-run)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-13 06:33:27 +00:00

29 lines
1.7 KiB
JavaScript
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.

/**
* host-dev/entry.js — host-dev 冒烟页的 esbuild 打包入口(集成段打成 iife → index.html 加载)
* ownerT1b-α 集成段 仅集成段mini-desktop用锁参打包本机不构建。
*
* 【定位】
* 把「core 协议 + 九件插件 + host 引导host.js 的 bootHostDev」汇成一个 iife 全局,
* 供 host-dev/index.html 以 <script> 加载。**α 阶段不接 littlejsengine**——发行版 v0 = core+插件,
* 引擎接线由参考件循环按需决定(裁定见 REPORT。故本入口只挂「受控面桩createHostDevContext+ 插件」,
* 引擎主循环用浏览器 RAF + bundle.tick 模拟host-dev 桩语义),不引入真引擎。
*
* 【全局导出】window.GameRuntimeHostDev = { bootHostDev, ...core 公开面 + 工厂,便于控制台调试)}
*/
'use strict';
import * as RT from '../src/all-plugins.js';
import { bootHostDev } from './host.js';
// 【A0引擎主循环接管】littlejsengine import 落点之一(集成段 host与 host.js 并列)。
// Q4 铁律:引擎 import 只许活在集成段 hostentry.js/host.js禁泄进受控面契约/插件。
// host.js 自行 import * as LJS 作引擎掌帧实现;此处 export 仅为 DevTools 控制台手验引擎导出便利。
import * as LJS from 'littlejsengine';
// 暴露到全局index.html 调 bootHostDev 启动;其余符号便于 DevTools 控制台手验。
// esbuild globalName 也会把本模块的默认/具名导出挂全局,这里再显式聚合一份语义清晰的入口。)
export { bootHostDev };
export const Runtime = RT;
// A0引擎名字空间挂入口便于控制台手验引擎导出host.js 才是引擎接管的真实现体)。
export const Engine = LJS;