feat(mosaic): mosaic update re-seeds framework + relaunches agents (R13) #610
Reference in New Issue
Block a user
Delete Branch "feat/f3-m3-update-reseed"
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?
F3-m3 —
mosaic updatere-seeds framework + relaunches agents (closes R13)The gap you found in 0.0.39 production validation:
mosaic updateinstalls the new npm CLI but never re-seeds~/.config/mosaic/from the package's bundledframework/. So the shipped custom Pi harness (agent-name export + native HB) stays dormant until a manual re-seed — operators (and w-jarvis) get the new CLI on a stale framework.What this does
After a successful
mosaic updateinstall that includes@mosaicstack/mosaic:install.shinMOSAIC_SYNC_ONLY=1 MOSAIC_INSTALL_MODE=keep— the P4 data-safe reconcile (framework-owned overwrite + backup-once;SOUL/USER/*.local/credentialspreserved). Default-on;--no-reseedopts out. This is the R13 fix — shipped launcher/runtime changes now activate.--relaunchrestarts rostered agents (systemctl --user restart mosaic-agent@<name>) so they pick up the new launcher/extension; default prints clear activation guidance (restarting running agents is disruptive, so it's opt-in).Flow:
update CLI → re-seed framework (data-safe) → relaunch agents (opt-in).Implementation
update-checker.ts:resolveBundledFrameworkRoot,buildReseedCommand,runFrameworkReseed,readRosterAgentNames,buildRelaunchCommands(pure builders + a best-effort runner that reports rather than throws).cli.tsupdate:--no-reseed/--relaunchflags + the post-install steps; only re-seeds when the framework-bearing package actually updated.Verification
Note
Best validated on a real host with a fleet (w-jarvis):
mosaic update --relaunch→ confirmstart-agent-session.sh+mosaic-extension.tsin~/.config/mosaicmatch the new package and agents come back on the native HB. The re-seed uses the local installed package (no network).🤖 Generated with Claude Code