Repository navigation
Conversation
|
🔍 Automated Cursor review is underway. Please hold off on merging until the review comment lands here (usually 10–20 minutes). |
|
Review complete: I did not re-run the supervisor suite, the core Session execution tests, or Existing non-supervisor behavior looks preserved. MediumManaged native recovery fails open if the owner line never arrives
If the daemon is killed after native is listening and before that line is read, stdin closes, the recovery fiber is interrupted, and the HTTP server stays ready. Claimed Sessions are neither user-interrupted nor resumed. The next Direction: fail closed. Do not report ready until the line has been decoded and the interrupt pass has started, and treat stdin EOF or a malformed line as a fatal boot error so the daemon replaces the process. Keep reconcile from running until that pass has finished, instead of relying on the 1s timer. Received handoffs install the source policy on the destination
A source home whose project is yolo / Direction: on receive, intersect permissions with the destination project and keep the destination's delivery mode and merge policy unless a destination operator record accepts the source policy before dispatch. SSH delegation does not pin host keys and does not bound output
Direction: set an explicit Lead replies can attach any image the OS user can read
Direction: resolve the file under an explicit media directory (or only accept inline base64) and reject paths that realpath outside that root. Fenced recovery does not reset pre-migration attempt rows
Direction: treat null as the previous epoch, for example LowProject and task knowledge can grow without a count cap
Direction: cap record count or total bytes for those scopes the same way startup knowledge is budgeted. Not filedWorktree creation, receipt realpath checks, and discard-before-remove look fail-closed for the cases the tests cover. Plugin tools stamp |
Issue for this PR
No linked issue.
Type of change
What does this PR do?
Adds an experimental
shuvcode supervisorlauncher: run it from any directory to open the same firstmate Session in~/fleet-home. Firstmate registers, clones, and creates projects conversationally, then coordinates ship/scout work, decisions, and delivery through durable Shuvcode Sessions. A separate supervisor process owns backlog, authority, receipts and recovery; a bundled plugin supplies native lead/worker tools. The CLI and board expose the same fleet state. Herdr views are optional: the background supervisor discovers a running server, publishes firstmate and worker views without an attached client, and preserves work across terminal/SSH disconnects. Inside Herdr, the launcher focuses firstmate; outside, it opens a direct TUI. Existing ShuvBro-owned homes retain their separate adapter.Supports isolated worktrees, local/PR/no-mistakes delivery policies, persistent SSH delegates, away mode, bounded private/shared knowledge and optional Relay/voice adapters. Managed restart waits for the tool bridge and applies durable cancellations before resuming claimed Sessions, including background descendants. Startup knowledge and budget warnings enter model system context without being copied into user messages; later messages, curation, and restart retain that separation.
Adds the Shuvcode side of native ShuvBro/Herdr integration: immutable orchestration profiles for new managed homes, a read-only presentation projection, and exact home/Session/location attachment. Opening or restoring a Herdr pane cannot initialize a home, admit work or fall back to a different Session. Projection includes descendant permission/form blocking, explicit unknown observations and settlement facts for guarded display cleanup. Bundled plugin inputs use portable Standard Schema validation so the compiled plugin's Effect runtime validates its own constraints. Status delivery refresh preserves the serialized observer’s event cursor, preventing an overlapping status read from failing reconciliation.
See the operator guide, workflow qualification, and three-repository contract and local evidence. Managed panes require companion Herdr #16. The explicit ShuvBro policy/placement adapter is in ShuvBro #62; the bare launcher supplies its own background publisher. Existing-home migration, live forge/Relay/speech integrations, two-host networking and production load remain outside the qualified local path.
How did you verify your code works?
integration-v2, preserving prepared-subagent recovery and native cancellation.bun run check: all 41 tasks passed; scoped formatting and whitespace checks passed.ssh -t shuvcode-test.exe.xyz shuvcode supervisor, withssh -t shuvcode-test.exe.xyz herdrfor all worker views. A real model registered the project and completed a scout without Herdr. A later default headless Herdr server added both views. Native/Herdr restart retained exact identities with step counts 16→16. A second real worker stayed running through direct SSH TUI closure and two Herdr attach/detach cycles, then completed with its verified receipt. Three Bun tests passed independently. The requested reset then removed 21 old Sessions, test worktrees, four earlier homes, retired wrappers, the watcher and the private test SSH route. The real2passwordcheckout and registration remain; the fresh firstmate has no messages or tasks, and all runtimes are stopped.089d2b7: cleanup and reopen while continuouswatchstays active; exact native Session retained, new binding reports advance, both generations' neighboring panes and parent focus survive, and model requests remain 4→4.63835aa2: real client Done survives acknowledgement and Herdr restart with unchanged identities and model requests. Closed highest workspace identity stays reserved across restart (w5:p1closes; the next created pane isw6:p1). All seven Herdr checks pass, including native Windows and ConPTY.76d68406passes real missing/mismatched peer refusal, exact foreground-argv readback, and pane-absence confirmation while watch stays active. Candidateca4dc617also passes a real delayed-launch check: the firstupreturns success inlaunch_pendingwith sequence zero; watch marks it ready only after one exact foreground attach appears. Repeated cleanup/reopen preserves the Session, neighboring panes, focus and settlement with model requests unchanged at 4. All 20 executable CLI tests pass. The required Test evidence-review gate remains pending before this candidate becomes the published ShuvBro PR head.eval/gpt-6-solworker committed its implementation and result, passed three independently rerun tests, and was locally landed at99218396. Herdr restart preserved exact home/Session/pane/binding identities; the lead was idle and worker Done. These old trial homes were retired during the requested reset.Screenshots / recordings
Board after the isolated evaluation's local delivery:
Checklist