PATH B: roster-native launch-config data model (harness/yolo/model/command) for webUI binding #636
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
PATH B — roster-native launch-config data model
Follow-up to #633 (FLEET-LAUNCH runbook +
mosaic fleet comms-blockemitter). #633 shipped PATH A:the manual
fleet/agents/<role>.envMOSAIC_AGENT_COMMANDoverride hatch (kept upgrade-safe by #632).This issue tracks PATH B: making the full launch config roster-native so it can be edited from a webUI.
Continuity (why this is small)
The launch mechanism is already roster-driven. Two of the four launch-config fields are already
end-to-end today — only two are new.
runtime)roster.runtime→generateAgentEnvemitsMOSAIC_AGENT_RUNTIME→start-agent-session.shline 44model_hint)MOSAIC_AGENT_MODEL→ line 44--modelstart-agent-session.shline ~44 hardcodesmosaic yolo. Add a rosteryolofield → emitMOSAIC_AGENT_YOLO→ make line 44 conditional (mosaic yolo $RTvsmosaic $RT).MOSAIC_AGENT_COMMANDis consumed (start-agent-session.shline ~12) butgenerateAgentEnv(packages/mosaic/src/commands/fleet.ts~202-207) does not emit it. Add a rostercommand/channelsfield → emit it.Scope
yolo(bool) +command/channelsfields (roster.schema.json+parseRosterText).generateAgentEnv: emitMOSAIC_AGENT_YOLOandMOSAIC_AGENT_COMMANDwhen set.start-agent-session.shline ~44: make theyolokeyword conditional onMOSAIC_AGENT_YOLO.generateAgentEnvemission + the line-44 conditional (bash fixture).Why it matters
This is the data model the future webUI binds to: harness dropdown + yolo toggle + model picker +
command/channels override → roster fields ← webUI ← user. One launcher, roster-native, all
UI-editable — no new launch path. PATH A's
.envoverride is the manual form of exactly this.See
docs/fleet/FLEET-LAUNCH.md(North Star section) for the full A → B → webUI arc.