Crawler-Factory
Decisions/2026-05-03-WizardInWorkspace.md
Decision: Wizard Embedded in Workspace as "Setup" Page
Date: 2026-05-03 (Session 3) Status: Locked
Decision
The 4-step factory setup wizard (Discover → Review → Configure → Done) lives as the "Setup" page inside the WorkspaceShell, not as a full-screen overlay. The outer Algolia chrome (top bar + left nav) remains visible throughout the wizard flow.
Context
Session 3 built FactoryWizard.tsx as position: fixed; inset: 0 — a full-screen takeover that hides the outer Algolia chrome. The user correctly identified this as wrong: "Why is that in a pop-up? It has to be in screens inline."
The first response was to make it full-screen inline (replacing the modal). But after reviewing the real Algolia dashboard flow (Images 3-7 shared in Session 3), the right architecture became clear:
- Algolia's "Add new crawler" immediately opens the crawler's workspace
- The per-crawler workspace has a left nav with SETUP/STATUS/CONFIGURATION sections
- Our Factory wizard should work the same way — "Add new crawler" opens the factory workspace, the Setup page runs the wizard within the workspace content area
The Flow
- User clicks "Add new crawler" on the list
- A factory entity is created (e.g.
algolia_com) - The factory workspace opens immediately (same pattern as Algolia's native flow)
- Default active page is "Setup" (first item under SETUP section in left nav)
- The Setup page displays the wizard steps: Discover → Review → Configure → Done
- The step breadcrumb lives within the content area — NOT in a separate fixed header
- The outer Algolia top bar and left nav stay visible throughout
- After Done, workspace transitions to Overview
Consequences
- Wizard feels native to the Algolia dashboard, not like a separate app
- No chrome context loss during multi-step setup
- Consistent with how Algolia handles post-creation workspace (drops into workspace immediately)
FactoryWizard.tsxneeds to dropposition: fixed; inset: 0and render as a normal content area component
Related decisions
- D18: Factory entity model — sub-crawlers live inside factory, not in main list
- D20: Factory creation flow (Add → factory entity → workspace opens → Setup page)