feat: add atomic interrupt-and-deliver - #388
Open
VishnuM049 wants to merge 2 commits into
Open
Conversation
Signed-off-by: VishnuM049 <vishnu.muthiah04@gmail.com>
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.Scanned FilesNone |
Signed-off-by: VishnuM049 <vishnu.muthiah04@gmail.com>
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.
Purpose
Make interruption reliable and add an atomic way to stop current work and deliver a replacement prompt. This also fixes the TUI race where Escape could be accepted before the daemon installed operation ownership.
Fixes
Fixes #28
Fixes #387
Approach
session.interruptAndDeliverRPC andsession.interrupt_delivercapability in wire version 12.How was this tested?
pnpm build: passed.pnpm format:check: passed.pnpm lint: passed.pnpm typecheck: passed.pnpm check:boundaries: passed.pnpm check:generated: passed.pnpm --filter @axl/protocol test: passed, 31 tests.pnpm --filter @axl/sdk test: passed, 29 tests.pnpm --filter @axl/daemon test: passed, 63 tests over real Unix-socket client and daemon sessions.reuse lint: passed, 322 files compliant.pnpm audit --audit-level high: passed with no known vulnerabilities.pnpm testrun was attempted. Two existing OCI tests require Linux/proc/self/mountinfoand failed on macOS. Two existing timing-sensitive TUI tests failed in the aggregate run and passed when rerun individually.Learning
Interrupt intent must bind to an operation during request admission. Client polling cannot safely close the gap between optimistic UI state and daemon ownership.
Checklist
REUSE.toml.Signed-off-bytrailer.AI assistance