Repository navigation
Conversation
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.
Stacked on #354, targeting
seqcp-rollback-mtp-depth. Merge this correction into that branch before merging #354, or retarget after its parent lands.After rollback and
seq_cp(0, 1), a decode tagged with both sequence IDs consumes the shared recurrent snapshot.s_copycurrently clears only the first sequence's rollback marker. A later decode on sequence 1 restores the old snapshot again and produces incorrect recurrent state. Clear the marker for every sequence sharing the advanced cell.Extend the existing pending-rollback regression to cover both a direct fork continuation and a shared token followed by a sequence-1-only token. Both compare serialized recurrent state against an independently rolled-back reference.
Validation: assertions-enabled CPU build, existing rollback suite plus both fork cases pass on generated Qwen3.5, Nemotron-H, and DeepSeek V4 fixtures. With only the production correction removed, the new shared case fails on Qwen3.5 and Nemotron-H; the direct case still passes. DeepSeek V4 remains passing in both controls because it uses a separate state implementation. No new test file. GPU execution was not tested for this correction.