Installer: quick-start provider gate (#1) + local-tier gateway Redis (#2) #675

Open
opened 2026-06-24 21:35:05 +00:00 by jason.woltje · 0 comments
Owner

Greenfield-test (0.0.48, fresh Debian 13 VM) surfaced two installer defects:

Bug #1 — Quick Start lets the user skip the LLM provider/API key yet reports "Mosaic is ready".

  • Pressing Enter at the key prompt yielded an empty string → providerType='none', wizard fell through to finalize, which printed "Health: all checks passed" / "Mosaic is ready" with no brain configured.
  • Skip note + log referenced a non-existent mosaic configure subcommand.
  • Fix: interactive quick-start now REQUIRES a provider SELECT (Anthropic/OpenAI) + a validated key; finalize won't print "Mosaic is ready" without a configured provider; bad command references removed.

Bug #2 — "Local" storage tier still connects to Redis (ioredis ECONNREFUSED, gateway never healthy).

  • Multiple gateway services opened ioredis/BullMQ connections at bootstrap regardless of tier, despite config { queue: { type: 'local' } }.
  • Fix: every Redis/BullMQ consumer (queue.service, gc.module, session-gc.service, commands.module, command-executor.service, system-override.service, cron.service, admin-health.controller) is now tier-aware — on local tier it skips Redis and degrades gracefully (no-op queue, in-memory system-override store, etc.). Standalone/Federated unaffected.

Verification: typecheck (mosaic+gateway) clean; provider-setup 6/6, unified-wizard 3/3, gateway service specs 38/38; independent review passed (also fixed a pre-existing SystemOverrideService connection leak).

Greenfield-test (0.0.48, fresh Debian 13 VM) surfaced two installer defects: **Bug #1 — Quick Start lets the user skip the LLM provider/API key yet reports "Mosaic is ready".** - Pressing Enter at the key prompt yielded an empty string → providerType='none', wizard fell through to finalize, which printed "Health: all checks passed" / "Mosaic is ready" with no brain configured. - Skip note + log referenced a non-existent `mosaic configure` subcommand. - Fix: interactive quick-start now REQUIRES a provider SELECT (Anthropic/OpenAI) + a validated key; finalize won't print "Mosaic is ready" without a configured provider; bad command references removed. **Bug #2 — "Local" storage tier still connects to Redis (ioredis ECONNREFUSED, gateway never healthy).** - Multiple gateway services opened ioredis/BullMQ connections at bootstrap regardless of tier, despite config `{ queue: { type: 'local' } }`. - Fix: every Redis/BullMQ consumer (queue.service, gc.module, session-gc.service, commands.module, command-executor.service, system-override.service, cron.service, admin-health.controller) is now tier-aware — on local tier it skips Redis and degrades gracefully (no-op queue, in-memory system-override store, etc.). Standalone/Federated unaffected. Verification: typecheck (mosaic+gateway) clean; provider-setup 6/6, unified-wizard 3/3, gateway service specs 38/38; independent review passed (also fixed a pre-existing SystemOverrideService connection leak).
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: mosaicstack/stack#675