- CU-07-01: install.sh gains --yes/--no-auto-launch flags; on first install
with a TTY, auto-launches mosaic wizard then mosaic gateway install before
the summary. Non-interactive / --no-auto-launch falls back to guidance text.
- CU-07-02: wizard writes transient session state to $XDG_RUNTIME_DIR/
mosaic-install-state.json on completion; gateway install reads it on startup,
announces the resume, and applies mosaicHome for custom-home installs.
State is cleared on successful gateway install.
- CU-07-03: new packages/mosaic/src/commands/gateway/verify.ts exports
runPostInstallVerification() (3 checks: gateway /health, admin token on file,
/api/bootstrap/status). Called at end of runInstall. Registered as
mosaic gateway verify subcommand. fetchWithRetry retries non-OK responses
to handle startup races.
- CU-07-04: tools/e2e-install-test.sh — Docker-based e2e harness that runs
the full install.sh -> wizard -> gateway install -> verify flow in a clean
node:22-alpine container. Skips gracefully if Docker is unavailable.
Gateway verify step skips with explanation when the published CLI pre-dates
the new command (expected until next release).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@mosaic/mosaic is now the single package providing both:
- 'mosaic' binary (CLI: yolo, coord, prdy, tui, gateway, etc.)
- 'mosaic-wizard' binary (installation wizard)
Changes:
- Move packages/cli/src/* into packages/mosaic/src/
- Convert dynamic @mosaic/mosaic imports to static relative imports
- Add CLI deps (ink, react, socket.io-client, @mosaic/config) to mosaic
- Add jsx: react-jsx to mosaic's tsconfig
- Exclude packages/cli from workspace (pnpm-workspace.yaml)
- Update install.sh to install @mosaic/mosaic instead of @mosaic/cli
- Bump version to 0.0.17
This eliminates the circular dependency between @mosaic/cli and
@mosaic/mosaic that was blocking the build graph.
The @mosaic scope registry is configured in ~/.npmrc. Passing --registry
on the install command overrides the default registry for ALL packages,
causing non-@mosaic deps like @clack/prompts to 404 against Gitea.