Add `mosaic fleet comms-block <role> [--host]` — an explicit-arg, comms-only emitter wrapping a new resolveCommsBlock() over readFleetCommsBlock. Unlike the launch-time reader (which returns '' on any miss so composeContract can no-op silently), the emitter fails loud: unknown role / missing roster → stderr + exit 1, so an operator can safely preview any peer's view and a typo is never a silent no-op. Add docs/fleet/FLEET-LAUNCH.md: the canonical roster-driven launch path (worker + orchestrator .env fold via MOSAIC_AGENT_COMMAND, which short-circuits the line-44 yolo hardcode), 3 launch gotchas (flag conflict, MOSAIC_AGENT_NAME baking, launchRuntime guards), the #632 preserve-list note, and the North-Star A→B→webUI launch-config arc. PATH A of the orchestrator-launch fix; PATH B (roster-native launch-config: yolo toggle + command/channels emission) tracked as #636. TDD: 6 new resolveCommsBlock cases; 177 fleet+comms tests green; typecheck, eslint, prettier clean. Co-Authored-By: Claude Opus 4.8 <[email protected]> Claude-Session: https://claude.ai/code/session_01EsgTQzV5YUGk1JtCLP4B83