Repository navigation
spec(port): the two CR-CHAT-04 padding guards compile under t27b natively (Refs #8884) - #9614
Merged
gHashTag merged 3 commits intoOct 17, 2026
Merged
Conversation
…vely (Refs gHashTag#8884) Follow-up to gHashTag#9613: the ratchet named both specs UNLISTED - t27b blocked on ExprArrayLiteral (an untyped const array literal) and ExprCall(@truncate). Both rewrites keep the same tests and the same rule order: every const test array now carries its type annotation, and the PBSA-06 fixture marks each ID with one non-zero byte instead of a truncated index byte (the batch-size rule fires before any ID is examined). Measured with t27b built from this tree: - padding_alignment_boundary_guard: t27b test 14 passed, 0 failed - padding_block_size_alignment_guard: t27b test 13 passed, 0 failed Both specs re-pass the reference gates (t27c test-report 14/14 and 13/13, 0 vacuous; gen-rust output compiles under rustc; coverage Untested 0) and carry fresh seals, all hashes MATCH.
…o CR-CHAT-04 padding guards (Refs gHashTag#8884) The follow-up commit c54f94f was empty by mistake: the branch was cut from the merged tree and the patched files were overwritten by the checkout, so only the seal timestamps travelled - which is also why the t27b-native workflow skipped the PR (its paths filter saw no specs change). This commit carries the actual rewrite: - every const test array now carries its type annotation (t27b's ExprArrayLiteral blocker: an untyped array literal has no result type); - the PBSA-06 fixture marks each of its 257 IDs with one non-zero byte instead of a truncated index byte (the ExprCall(@truncate) blocker; the batch-size rule fires before any ID is examined). Measured with t27b built from this tree: 14 passed 0 failed and 13 passed 0 failed; the reference gates re-pass (t27c test-report 14/14 and 13/13, 0 vacuous; gen-rust compiles under rustc; coverage Untested 0) and both seals are fresh, all hashes MATCH.
…ledger (Refs gHashTag#8884) Both measured t27b pass by this PR's ratchet run (the rows themselves said so); the ledger names every spec the reference passes, so the two entries land as pass rows. Hand edit in the PR, per the ledger's own rule for OVER CAP moves; the non-pass count and max_not_pass are untouched (28/28).
Contributor
Author
|
Merge request for the gHashTag merger: the steward gate on the final SHA 86ef02a answers READY (required checks all SUCCESS; the three red - cli-tri, duplicate-bodies, t27b-native-ratchet - are non-required per Q16 and red on master too: 157 pre-existing rows, none from this PR after the ledger rows landed). Progress note: #8884 (comment) |
This was referenced Oct 15, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Refs #8884 (CR-CHAT-04 ring tracker). Follow-up to #9613.
What changed
The t27b-native-ratchet run of #9613 named both new specs UNLISTED - the native backend blocked on:
padding_alignment_boundary_guard.t27: ExprArrayLiteral (const msgs = [N]PaddedMessage{...}, an array literal with no result type)padding_block_size_alignment_guard.t27: ExprCall(@truncate) in the PBSA-06 fixture, then the same ExprArrayLiteralTwo rewrites, same tests, same rule order, same verdicts:
const msgs: [1]PaddedMessage = [1]PaddedMessage{...}) - typed arrays lower in both backends (probe: t27b and t27c both pass a typed-const and typed-var array test).Measured (t27b built from this tree @ c54f94f, t27c same compiler sources)
With this, both specs are t27b passes: no ledger entries, no
max_not_passchange (the ledger stays at its cap of 28 with zero additions from this lane).Not done here
The remaining 34 targets of the #8884 tracker; the trios-side swaps (start after W0 lands).