Phase 0: Determinism and invariant test suite #62
No reviewers
Labels
No labels
bug
cli
core
docs
event
experiment
figure
invariant
metrics
oracle
phase-0
phase-1
phase-2
phase-3
phase-4
phase-5
phase-6
provenance
revocation
tests
workload
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
erikinkinen/AES!62
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "0-determinism-and-invariant-test-suite"
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?
Implemented
#21on branch0-determinism-and-invariant-test-suitewith the required four per-step commits:73b4767Phase 0: Test deterministic logs for same seed (#21)83958ecPhase 0: Test replayed hash equals live hash (#21)4efe21fPhase 0: Test deterministic invalid event rejection (#21)6ad451aPhase 0: Add invariant property test after every event (#21)Closes #21
What changed
Extended CLI determinism matrix (same seed + same args => identical JSONL logs across):
in tests/cli_simulate_tests.cpp
Added replay hash equivalence suite in:
snapshot_hash_v0equality, canonical snapshot equality, andverify_replay_matches_live_state.Added deterministic invalid-event rejection suite in:
Errcand messagetime,history,snapshot_hashunchanged)Added invariant property matrix suite in:
{0, 1, 42, 0xabcdu, 0xdeadbeef}validate_graph(...)succeedstime,history.size(),next_event_value()consistencysnapshot_hash_v0(...)succeedsWired new test targets in:
Added Phase 0 note:
Validation
Ran after each commit:
cmake --build _buildctest --test-dir _build --output-on-failureFinal suite result:
36/36tests passing.Working tree is clean.