Checkpoint acceptance sweep & hard cases #96
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Parent
Spec #92 (round-end checkpointing).
What to build
Confidence at the edges of the finished wiring: injected write failure at checkpoint time preserves the previous best; death mid-game still checkpoints (dead bots receive round end); a legacy headerless file upgrades naturally on the first improved candidate; assertion sets written for the old game-end semantics migrate to round-end expectations; the full suite runs green.
Acceptance criteria
Blocked by
Acceptance sweep #96 — verifier pass (fresh re-verification, threads:on)
All 5 ACs green. Nothing was broken → no production fixes needed; only test-side additions/migration.
handler_seam_v2.nimK1/K2: dir-level write-permission injection through realonRoundEnded; previous best byte-identical AND loadable (K1-crashed-save-preserves-best,K2-previous-best-loadable-after-crashPASS).D1-death-round-still-checkpointsPASS; enemy slot updated 60>50, global correctly kept @100).#evo-champheader format, no manual steps (L1-legacy-upgraded-by-first-better-candidatePASS).key_lag_repro.nimsave-side migrated from legacy unconditionalsaveChampiongame-end mirror to mirroredonRoundEnded+saveChampionIfBetter; A1 now asserts gated replacement in header format with stored fitness. Key-heal coverage untouched (A0/G1-key-selfheals/G2/A2 all PASS). Clean separation achieved — no legacy block retained.ann self-check PASS (NumWeights=745)data self-check PASSinitial_best=-57.48508290593695 final_best=-52.54165227073674gun self-check PASSpersistence self-check PASS (NumWeights=745)vguns self-check PASSGREEN — all assertions passedGREEN — real handler wiring reproduces neither symptom(19/19 PASS)SuccessXexit 0Commit: ee0b7eb
test(evo,#96): acceptance sweep — hard-case coverage and assertion migration