Fix code review findings (OMNI-1 to OMNI-24) #25
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix/review-findings"
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?
Fixes the findings from the code review, one commit per issue or small group. Most fixes come with a regression test; for most of them I confirmed the test fails on the old code.
Closes OMNI-1, Closes OMNI-2, Closes OMNI-3, Closes OMNI-4, Closes OMNI-6, Closes OMNI-7, Closes OMNI-8, Closes OMNI-9, Closes OMNI-10, Closes OMNI-11, Closes OMNI-12, Closes OMNI-13, Closes OMNI-14, Closes OMNI-15, Closes OMNI-16, Closes OMNI-17, Closes OMNI-18, Closes OMNI-19, Closes OMNI-20, Closes OMNI-21, Closes OMNI-22, Closes OMNI-23, Closes OMNI-24
OMNI-5 (docs/RESULTS.md missing) could not be reproduced: the file exists in this tree. It was closed without a code change.
Grouped by area
on_cancelfor countered stack items (11), simultaneous wins are a draw (16), cumulative costs and overflow-safe arithmetic (17), step accounting and docs (18, 19), fullstate_hash(19)eval_checkpointuses the trained config (14)generate_seterrors (15), generator and relabel no-ops (20), empty batch and replay index panics (21), seat-relative tug (22)Things to know before merging
ActionDef.on_cancelchanges the hash of every game definition, and generated tug games differ in representation.docs/RESULTS.mdhas a section on it.Decisions taken
leadresource. Checked against the pre-change generator on 80 seeds: identical acceptance (Normal 57/80, Inverted 63/80) with identical rejection reasons, so the rewrite does not change which games pass.cargo test --workspacepasses and the build has no warnings.Review (board cleanup 2026-10-08)
Verified at head
efd6d26, with #27 stacked on top (62b4d98):cargo build --release --locked --workspaceis clean andcargo test --workspace --release --lockedpasses in full.cargo clippy -D warningsfails on four lints inomnia-dsl(analysis.rs:209, two derivable impls in ir.rs,&mut Vecin relabel.rs), but main has the same four, so this PR did not introduce them. The repo has no CI, so these local runs are the only check.I read the full diff against OMNI-1 to OMNI-24. No blocking issues. Points worth checking:
cancel_itemrunson_cancelthroughrun_top, which still drains triggers. The behaviour matches the old emit + drain, plus the new effect. One minor difference:run_topresets the step budget for the cancel effect.NUM_CLASSES6->7,rel::NUM_BASE19->20 and the cat-id moves change embedding shapes. Checkpoints and cached observation datasets from before this PR will not load. RESULTS.md already marks earlier runs as unreliable, so this is expected, but it should be stated explicitly there.Ready to merge. Merge #25 first, then retarget #27 to main.
Merged 2026-10-08 after review (see the review comment on PR #25): the release build is clean and all workspace tests pass. Closing OMNI-1 to OMNI-4 and OMNI-6 to OMNI-24. Note: observation shapes changed (NUM_CLASSES, relation vocab, cat ids), so checkpoints and datasets from before this merge will not load.