Fix PHP recovery leaf error parity - #970
Merged
Merged
Conversation
- Track direct lexer acceptance using a new token flag. - Require a source-bearing parsed prefix to clear ordinary leaf errors. - Reject pending, missing, error, dirty, and invalid payloads for clearance. - Block clearance for generated, external, no-lookahead, and error-mode tokens. - Update PHP issue #454 parity tests to validate raw, production, and locked-C digests. - Document that PHP compact admission remains open due to persistent fallback routing. Refs #454 Buckley-Change-Hash: sha256:12248e721d4385f28f84b58df6a9d4e67437e9475901714469f96bacf43c9938 Buckley-Change-Stats: files=7 insertions=400 deletions=62 binaries=0
- Pack the recovery-leaf policy into the high bit of `groupOrder`. Drop the standalone boolean field to reduce memory layout complexity. - Add packing and accessor helpers to enforce masking, saturation, and nil safety. - Update the state clone method to copy the packed value directly. - Switch strategy-1 member sorting to use the unpacked value. The policy bit must not alter path ordering. - Saturate out-of-range orders to the mask limit and clear the policy flag. Invalid input fails safely. - Add unit tests for clone retention, sort stability, collision handling, and struct size budget. Buckley-Change-Hash: sha256:a7757c3d1f6835c584bfbf4c51a2a098b98b8a0db1dd5ea97ade4d315fd7ee2d Buckley-Change-Stats: files=2 insertions=92 deletions=23 binaries=0
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.
Summary
Refs #454
Correctness evidence
1516308c38163089778464ad171875308c559af11af7c8c03ee17ae4eacd23c6.routed=0andfallback=1.Controls
Open work