feat(harness): manage owned child sessions [Agent Map 13/15] - #832
Conversation
Review — PR #832 (Agent Map 13/15)No confidentiality findings: the changeset, JSDoc, comments and test fixtures name only Sapiom, Claude Code and Codex, and no business arrangement, private host or internal link appears in the published prose. Findings1. A pending broker registration that never claims can steal the next session's rollout
Failure: session A launches codex in Release the registration on the discovery-failure return, and release by session id (not 2.
|
92b36da to
e2471dc
Compare
5ec7105 to
cabf531
Compare
Review round 2 — PR #832 (Agent Map 13/15)Delta reviewed: Earlier findings — all four resolved
New findingsNone. The Correction to round 1Nothing in round 1 was wrong. Nit (unchanged from round 1)
Verdict: Approve. Every round-1 finding is addressed and the delta introduces no new ones. |
e2471dc to
58fb5cf
Compare
cabf531 to
4aa4784
Compare
Primary change type
Problem and motivation
A coordinator must reuse or close only the exact child it owns, and concurrent Codex processes must not claim the same native conversation.
Summary and scope
Add trusted private binding markers, reserved create/resume/restart/close operations, explicit user-close protection, and a Codex rollout broker over the ordinary SessionManager path.
Allow an exact retry after a binding marker commits but process launch fails. Release pending Codex discovery registrations on timeout or exit, and prevent released discovery from claiming a later rollout. Await owned close from the session deletion route.
How this increment fits
Private child operations are available before public tool activation. Native Codex first-turn discovery integration is exercised and completed in part 15.
Stack and review boundary
4aa478488ac0f8b9b3851e48969ac6773e5075ca; 1,627 changed lines across 11 files, counting additions and deletions including tests.fix/studio-onboarding-followups.Related work
Agent Map checkpoint SAP-3147; relevant work SAP-3151. This packaging follows the maintainer-approved 15-PR split.
Validation
Root checks ran against
cabf531fadb3a6cef18f8e4cc9babc6957687516. The final head changes only README terminology or commit ancestry; a complete tracked-file comparison confirms identical executable source and build inputs. The terminology gate was rerun on4aa478488ac0f8b9b3851e48969ac6773e5075ca.Tests and documentation
Regression coverage: Exact binding checks, reserved create/resume, launch-failure retry, explicit user close, fresh-restart fencing, concurrent rollout attribution, and discovery cleanup races.
See part 15 for integrated browser, native CLI, and Mac journey validation. The checks above were run independently on this PR’s own commit.
Linux tests run with ordinary user filesystem permissions; the sandbox's extra ambient capabilities are dropped. Hosted CI and automated review are separate from these recorded local results.
Compatibility and release impact
.changeset/owned-child-session-lifecycle.mdSecurity
AI assistance
Checklist