Files
stack/packages/mosaic/framework
Zane bf8510879f
ci/woodpecker/pr/ci Pipeline was successful
feat(doctor): brain-home fleet-state check (#1298 follow-up, canon §6)
mosaic-doctor now reports which tree fleet state resolves from and warns
on the drift a launch would hit at runtime:

- stale MOSAIC_BRAIN_HOME (no fleet/agents under it)
- symlinked brain/agents paths (managed-directory boundary)
- group/world-readable agents dir (0700 projection boundary)
- split state: env files in BOTH config-home and brain trees

Resolution mirrors brain-home.ts (#1298): MOSAIC_BRAIN_HOME wins;
canonical ~/.mosaic adopted only at the default config home; else legacy.

test-brain-home-check.sh: extraction-style harness (test-fleet-transport
discipline — functions pulled from the shipped script, never copied), 8
cases covering every branch; wired into test:framework-shell and covered
by the enumeration guard (population 53, all present).

Live-run verified on dragon-lin: caught two real drifts — agents dir
755 (fixed locally) and pre-cutover split state (expected, tracked in
mosaic-brain fleet/SEAT-CUTOVER.md).
2026-08-17 22:34:22 -05:00
..