You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Corpus ratchet red after #8209: constants.t27 discard channel moved (top-level-resync 37 -> 0) #8345
#8209 made specs/math/constants.t27 parse its former forall properties as sampled asserts, so the parser's top-level-resync channel for that spec went from 37 to 0 (total discard 386 -> 349). The suite ratchet treats any moved pin as a failure on purpose (it is an unexpected improvement), so "Corpus ratchet (expected-failure ledger)" is red on every PR since.
Fix: re-record the one entry with t27c suite --ratchet --bless-expectations and keep the ledger's hand-written history notes, which the writer drops.
Acceptance criteria
t27c suite --corpus-only --ratchet prints RATCHET: CLEAN
the _why_entries_fell and _why_entries_rose notes are kept
Boundary
docs/reports/suite_expectations.json
User Scenarios
Given the corpus ratchet ledger at docs/reports/suite_expectations.json contains an outdated entry for specs/math/constants.t27 with a top-level-resync discard count of 37, when the spec was changed by math/constants: compile again and pass 36 of 36, seal v2 (Closes #8301) #8209 so the parser now produces 0 discards for that channel, then running t27c suite --corpus-only --ratchet fails because the ratchet treats the moved pin as an unexpected improvement.
Given the fix is to re-record the ledger entry for specs/math/constants.t27 using the blessed ratchet command, when the command t27c suite --ratchet --bless-expectations is run, then the ledger updates the discard count from 37 to 0 while preserving the hand-written _why_entries_fell and _why_entries_rose history notes.
Given the ledger has been re-recorded, when a contributor runs t27c suite --corpus-only --ratchet on any PR, then the command prints RATCHET: CLEAN and exits successfully.
Requirements
FR-001: The corpus ratchet ledger at docs/reports/suite_expectations.json MUST be updated to reflect the current top-level-resync discard count (0) for specs/math/constants.t27.
FR-002: The hand-written history notes _why_entries_fell and _why_entries_rose in the ledger MUST be preserved during the re-recording.
FR-003: The command t27c suite --corpus-only --ratchet MUST print RATCHET: CLEAN and exit 0 after the ledger is updated.
FR-004: The re-recording MUST be performed using t27c suite --ratchet --bless-expectations as specified in the issue.
Success Criteria
t27c suite --corpus-only --ratchet prints RATCHET: CLEAN and exits 0
The ledger file docs/reports/suite_expectations.json shows top-level-resync discard count 0 for specs/math/constants.t27
The _why_entries_fell and _why_entries_rose notes remain present and unchanged in docs/reports/suite_expectations.json
Activity
suite ledger: re-record constants.t27 after #8209 (Closes #8345) (#8355)