roster: data model + event-driven update protocol (always-current) #797

Open
opened 2026-07-16 20:11:43 +00:00 by jason.woltje · 0 comments
Owner

Part of EPIC #796 (design-first).

Every orchestrating agent maintains a roster of the agents it leased or launched; the Orchestrator (Mos) roster spans all Team-Lead and 1st-class sessions. The roster must stay current AT ALL TIMES — event-driven on spawn / kill / lease, NOT periodic polling.

Scope (design doc under docs/design/ first):

  • Roster schema: agent id, alias, runtime, model, parent (nesting), worktree/cwd, tmux session + socket, lease/launch provenance, lifecycle state, timestamps.
  • Update protocol: hooks/events on spawn, kill, lease acquire/release; how a child registers with its launching orchestrator; reconciliation on crash/restart.
  • ALIGN with jarvis-brain infra/fleet fleet.roster + conf (file-form prior art) — learn/migrate that shape.
  • SUBSUME/align with stack#791 (agents-dir protection/regen) and #792 (roster.json ENOENT): same roster files — coordinate manifest/ownership + regen with this schema so they do not diverge.

Security: roster write-path integrity is a secrev surface (corrupted roster = attacker-controlled terminal embeds downstream). Ownership/permissions/integrity on the store.

Part of EPIC #796 (design-first). Every orchestrating agent maintains a roster of the agents it leased or launched; the Orchestrator (Mos) roster spans all Team-Lead and 1st-class sessions. The roster must stay current AT ALL TIMES — event-driven on spawn / kill / lease, NOT periodic polling. Scope (design doc under docs/design/ first): - Roster schema: agent id, alias, runtime, model, parent (nesting), worktree/cwd, tmux session + socket, lease/launch provenance, lifecycle state, timestamps. - Update protocol: hooks/events on spawn, kill, lease acquire/release; how a child registers with its launching orchestrator; reconciliation on crash/restart. - ALIGN with jarvis-brain infra/fleet fleet.roster + conf (file-form prior art) — learn/migrate that shape. - SUBSUME/align with stack#791 (agents-dir protection/regen) and #792 (roster.json ENOENT): same roster files — coordinate manifest/ownership + regen with this schema so they do not diverge. Security: roster write-path integrity is a secrev surface (corrupted roster = attacker-controlled terminal embeds downstream). Ownership/permissions/integrity on the store.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: mosaicstack/stack#797