fix(tools): preserve archived output when identifiers repeat - #6756
Merged
Merged
Conversation
Use the existing immutable artifact writer for full model-context output, matching the classic and adaptive spillover paths. Identical replay is idempotent; a different result cannot overwrite the existing artifact or claim it was saved. Validation: 5 focused Rust tests passed, 0 failed, 0 ignored; npm test 670 passed; npm run check:web passed. Regression covers initial archive, identical replay, conflicting payload and the actual Engine fallback projection. Two independent source reviews and diff/format checks passed.
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.
No-Issue: verified output artifact preservation finding from the current audit.
Full model-context output used a mutable artifact writer, so a repeated tool identifier could replace an earlier saved result. Reuse the existing immutable writer already used by classic and adaptive spillover. Identical replay remains successful; different bytes leave the original artifact intact and trigger the existing truthful Engine fallback without claiming an artifact was saved.
Validation: 5 focused Rust tests passed (0 failed, 0 ignored), including identical/conflicting replay and real Engine projection, plus serial/parallel and classic/adaptive spillover regressions.
npm test: 670 passed;npm run check:web: passed. Two independent source reviews, formatting and diff checks passed. This bounded repair preserves evidence; session-wide execution/provider identity separation is separate pending work.