Fix regressions in roster-only suites from A06/A07/P14-03

The formal collector's roster includes 46 suites the Makefile never ran;
the first formal attempt stopped on test_required_kitchen and a sweep found:
- v15 MIMI purchase saves could not be written once Runtime saves carried
  mana_reserve (P06-01): the format detector now validates that section and
  excludes it before the unchanged v15 allowlist, like special_peeping_rooms.
- test_required_kitchen's legacy14 exact-load comparison now maps the two
  approved migrations (fresh A06 reserve at the restored boundary, elevator
  snapshot v1->v2) after checking each against its contract, in Runtime key
  order; every other byte must still match.
- test_runtime_defense_autonomy allowed Mana to change only by the A06 flow.
- test_p08_normal_placement_ops expects 25 palette slots (two warps); its
  suite-policy pin is updated with flags unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Takeshi
2026-10-20 17:08:40 +09:00
co-authored by Claude Opus 5.5
parent 40364345ab
commit 83b170a4c7
5 changed files with 58 additions and 5 deletions
+3 -3
View File
@@ -8,9 +8,9 @@ class PalettePlacement extends Placement:
expect(palette != null, "production facility palette exists")
if palette == null:
return
expect(palette.get_child_count() == 23 and palette.columns == 23,
"palette has exactly 23 facility slots")
expect(main.build_buttons.size() == 23, "all 23 registered facility buttons exist")
expect(palette.get_child_count() == 25 and palette.columns == 25,
"palette has exactly 25 facility slots (A07/A08 warps added)")
expect(main.build_buttons.size() == 25, "all 25 registered facility buttons exist")
for child: Node in palette.get_children():
expect(child is Button and main.build_buttons.values().has(child),
"every palette child is a registered facility button")