build-joinroom.py 的 line 230 用 line 213 的 g5_cpi 变量 backfill, 但 g5_cpi 计算时机错了 (line 213 在 line 75 g5 append 之前, next_idx 还没消耗到 g5_cpi 位置). 导致 g5_cpi=0 指向 c.Prefab 自己 (data[0] vs data[0] = self-ref → infinite recursion). 修复: 改 hardcode 直接 backfill group-5._prefab=4 (g5_cpi 在 combined index 4). 同时重写每个 spirit 节点 _prefab 指向正确 cpi index (node+3). verify: c.Prefab data.__id__=1 (指向 group-5), 0 self-refs. Cocos open_asset: imported:true, invalid:false (无 Maximum call stack 错误). Co-Authored-By: Claude Opus 5 (1M context> <noreply@anthrop.com>
framework — 框架真源(唯一权威副本)
各子游戏工程的 assets/framework 是指向本目录的 junction(见 scripts/setup-links.mjs)。
六层结构(依赖严格单向,详见 spec §3):core / net / protocol / platform / ui / sdk。
协议相关实现一律以 docs/protocol/ 为唯一信息源(spec §0.1),不在代码或注释中内联复制协议字段。