{ "schema": "p05-02-expectation-changes-v1", "rule": "SPEC ยง4 F8: an existing test expectation changes only where the difference is explained by A09, A10, A11 or A12 alone", "changes": [ { "test": "tests/business/test_required_kitchen.gd", "function": "_approved_runtime_migrations", "decision": "A12", "before": "a legacy v14 save loaded back equals the written state plus the approved mana_reserve and elevators migrations", "after": "the same, plus the five empty fund accounts A12 creates on load (BACK_CASH and RANK_TAX_EXPENSE and LOAN_INTEREST_EXPENSE non-negative; RANK_TAX_PAYABLE and LOAN_INTEREST_PAYABLE allowing negative; none system); every other economy field must stay byte-identical (checked)", "results_local_diagnostic": { "base_dda3eed": "163 checks, 0 failures", "draft_before_change": "163 checks, 2 failures (legacy migration control; whole typed loaded state)", "draft_after_change": "163 checks, 0 failures" } } ], "not_changed_by_this_unit": "the other suites that end nonzero in a direct headless run (Main/audio teardown asks for the guarded runner proof; the export pack test needs a built pack; tests/s0/test_kernel_and_save.gd times out at 600 s) end the same way on the unchanged base dda3eed" }