- Canonical /admin/onboarding entry point; legacy routes 404\n- Tenantless run viewer at /admin/operations/{run} with membership-based 404\n- RBAC UX (disabled controls + tooltips) and server-side 403\n- DB-only rendering/refresh; contract registry enforced\n- Adds migrations + tests + spec artifacts
36 lines
1.2 KiB
Markdown
36 lines
1.2 KiB
Markdown
# Quickstart — Unified Managed Tenant Onboarding Wizard (073)
|
||
|
||
## Local setup
|
||
|
||
- Start containers: `vendor/bin/sail up -d`
|
||
- Install deps (if needed): `vendor/bin/sail composer install` and `vendor/bin/sail npm install`
|
||
- Run migrations: `vendor/bin/sail artisan migrate`
|
||
- Run frontend build/dev:
|
||
- `vendor/bin/sail npm run dev` (watch)
|
||
- or `vendor/bin/sail npm run build`
|
||
|
||
## Using the wizard (expected flow)
|
||
|
||
1) Sign in to `/admin`.
|
||
2) Open `/admin/onboarding`.
|
||
3) If no workspace is selected, you are redirected to `/admin/choose-workspace`.
|
||
4) Complete Identify → Connection → Verify (queued) → optional Bootstrap → Activate.
|
||
|
||
Notes:
|
||
|
||
- The onboarding UI must render DB-only; Graph calls occur only in queued work.
|
||
- Verification/bootstrap are tracked as `OperationRun`s.
|
||
- The “View run” link must open `/admin/operations/{run}` (tenantless). This page must be accessible without a selected workspace, but only to members of the run’s workspace.
|
||
|
||
## Tests
|
||
|
||
Run targeted tests (expected file name when implemented):
|
||
|
||
- `vendor/bin/sail artisan test --compact --filter=Onboarding`
|
||
|
||
## Deploy / Ops
|
||
|
||
If Filament assets are used/registered, deployment must include:
|
||
|
||
- `php artisan filament:assets`
|