Repository navigation
fix(compaction): persist handoffs without internal filesystem access - #158
Open
akemmanuel wants to merge 1 commit into
Open
akemmanuel wants to merge 1 commit into
akemmanuel wants to merge 1 commit into
Conversation
This branch has not been deployed
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 #150; foundational dependent work for #151 and #155. Restricted compaction no longer asks normal Project tools to write/read internal temporary files.
payload.handoff). No new store, schema migration, filesystem grant, or internal-path exception.Reproduction
The original deterministic Harness fixture followed the old handoff instruction using a restricted Project-only policy. Manual/threshold compaction denied the internal write and failed with missing HANDOFF.md. The same restriction now compacts and continues without any internal filesystem effect or permission widening.
Parent review added regressions for rendered-summary bounds, corrupt-summary history preservation, failed legacy artifact replay, incomplete/truncated responses, and provider usage preservation. All were independently verified after review corrections.
Verification
Parent independently ran:
vp check,pnpm run slop-check,git diff --check: pass.Covers restricted manual/threshold continuation, validation, unexpected tools, injected persistence failure, cancellation, legacy resume, concurrent Sessions, revocation/regrant, restart, foreign-path denial, and actor-specific instruction context. Only harmless isolated fixtures/fake models were used; no production Runs or customer data were modified.
Deliberately separate
#151 remains open: cross-prompt retry suppression, durable compaction failure classification, and localized explicit-retry UX follow in a dependent PR under the approved policy (no automatic repeat after failure, no history discard). Those are not claimed complete here. The old
tempDirectoryoption remains accepted but is ignored for compatibility.