基线复读(T0,2026-10-21):冒烟 1156/0、单测 35 套件全绿、probe_gate --click 全绿。 承载面(save_manager.gd):SLOT_COUNT=3 三文件制 user://save_slot_N.json(§9 白名单①拍板, 槽1 禁复用旧名单独派生);启动态钉死 _ready 不读槽(内存=默认空态、无激活态、写盘一律拒——sv2/sv3); 旧单档一次性字节迁槽1(Q1 甲:幂等判据槽1已存在不重迁、源改名 .migrated.bak 留痕——sv12); 原语 activate_slot/create_slot/delete_slot(失败恢复切换前三态、删激活槽指针连清除——sv4/sv5/sv6); 窥视读器 peek_slot_summary 三态零副作用(sv7/sv8);测试隔离注入口 attach_slot_template+ peek_summary_at(契约7 单路径语义保持,attach_path/注入面零变化——sv11)。 断言批:三新单元套件(isolation 22/boot 8/summary 12)+冒烟 V2-s1..s4 启动态段+ _smoke_save_slots 段(往返×3/删档/新档/各槽迁移/窥视/旧档迁移);V2d-1 按削弱申报改写 boot 恒隐(卡② mn8 再承接)。 真实链实证:本机 user://save.json(v7 空档)已随批内首次 boot 迁入槽1,原件留痕 .migrated.bak。
tests/unit/ — 隔离单元测试
每系统一个子目录(现行:data_config/、core/、battle_settlement/、contracts/、presentation/)。协议与命名见 tests/README.md。
活样板:example_test.gd(本目录)——第一个真实测试请以它为模板。
参考实现:game/smoke/smoke_all.gd(752+ 条断言的组织方式)。