Repository navigation
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.
ELI5
Sending review notes to Claude or Codex can leave the notes parked in the composer because the renderer sends Enter only 50 ms after a separate paste RPC. On supporting runtimes, notes now use the existing host-owned prompt transaction and wait for its submission verifier.
What Changed
terminal.agentStatusonly for proven settlement agents.sendTerminalAgentPrompt, retaining exact PTY and permission checks before both writes.Why
The execution host already owns paste ingestion timing, serialization, cancellation and submission verification. Reusing that path removes the notes caller's independent timer without introducing another verifier.
Linked Issue
Partial coverage of STA-5642 (notes path) and STA-4495 (remaining caller asymmetry). No complete historical ticket closure is claimed. Exact dispositions for all 18 assigned reports are included below; the working report remains local and untracked.
Existing open work is preserved: startup/recipe bindings #18996 / #16716, CLI attribution #18020, automation completion #18087, large-paste core #15698 / #18196, composer proof #18022, receipt/non-turn handling #16198, and shell startup #15275. This draft does not duplicate those fixes or change their branches.
Visual Proof
Incomplete for the changed interaction. Rebuilt this worktree and launched it with
ORCA_BACKGROUND_LAUNCH=1, an isolated app profile, and CDP; verifiedapp.getIdentityand inspected the hidden welcome-screen screenshot. No workspaces or agent sessions were opened. This proves rendering/startup only, not before/after notes delivery.Stopped validation after startup unexpectedly granted managed hook trust in the real Codex home as well as the isolated runtime home. The app-profile override does not isolate provider bootstrap; the existing E2E home-isolation harness is required for further live proof. No user configuration rollback or session cleanup was attempted. The validation detail below records the precise source and observations.
Testing
All tests and app launches used
ORCA_BACKGROUND_LAUNCH=1. On macOS: 129 tests passed across eight focused runtime/renderer suites;pnpm tc:node,pnpm tc:web, focused oxlint, changed-code quality, and diff whitespace checks passed. Deterministic coverage includes Windows/POSIX/SSH write-host ingestion, permission/cancellation, local/paired notes routing, old-host fallback, and guarded idempotent receipt replay. No live Windows/WSL/SSH provider run.Review
New clients require the additive support flag; old clients ignore it. Unsupported or changed targets cannot downgrade a guarded combined send into shell input. Renderer calls do not yet supply durable orchestration request IDs, and the incumbent verifier's limitations for local slash commands and pre-existing drafts remain.
Agent skill upstream boundary
Checklist
Exact issue accounting
No complete historical ticket closure is claimed by this draft.
agent-paste-draft.tsremains separate and overlaps #16716 / #18996; 50 ms fallback retained for old hosts.All PR numbers above link under
https://github.com/stablyai/orca/pull/<number>and were found open when checked, not treated as merged fixes.Recorded validation detail
ORCA_BACKGROUND_LAUNCH=1.pnpm tc:nodeandpnpm tc:web: passed.git diff --check: passed.codex-trust-grantmessages withhost=native, wrote=true(8 managed hook entries). Isolated app profile does not fully isolate provider bootstrap. Escalated to coordinator, launched no agents, performed no config rollback; stopped only recorded validation process tree and verified both ports closed. Own-profile ledger confirms the two affected homes:/Users/nwparker/.codexand/tmp/orca-prompt-delivery-validation-profile/codex-runtime-home/home, each 8 entries. Source iscodex-real-home-hook-install.tsreal-home grant withuseDefaultCodexHome: true; native launcher deletes CODEX_HOME. Existingtests/e2e/helpers/electron-home-isolation.tsis the required full home boundary.ORCA_DISABLE_CODEX_TRUST_RPCalone does not prevent all hook/config writes.