TenantAtlas/specs/129-workspace-admin-home/quickstart.md
ahmido 0c709df54e Spec 129: add workspace admin home overview (#157)
## Summary
- make `/admin` the canonical workspace-level home instead of implicitly forcing tenant context
- add a new Filament workspace overview page with bounded workspace-safe widgets, quick actions, and empty states
- align panel routing, middleware, redirect helpers, and tests with the new workspace-home semantics
- add Spec 129 design artifacts, contracts, and focused Pest coverage for landing, navigation, content, operations, and authorization

## Validation
- `vendor/bin/sail artisan test --compact tests/Feature/Filament/AdminHomeRedirectsToChooseTenantWhenWorkspaceSelectedTest.php tests/Feature/Filament/LoginRedirectsToChooseWorkspaceWhenMultipleWorkspacesTest.php tests/Feature/Filament/WorkspaceOverviewLandingTest.php tests/Feature/Filament/WorkspaceOverviewNavigationTest.php tests/Feature/Filament/WorkspaceOverviewContentTest.php tests/Feature/Filament/WorkspaceOverviewEmptyStatesTest.php tests/Feature/Filament/WorkspaceOverviewOperationsTest.php tests/Feature/Filament/WorkspaceOverviewAuthorizationTest.php tests/Feature/Filament/WorkspaceOverviewPermissionVisibilityTest.php tests/Feature/Filament/ChooseTenantRequiresWorkspaceTest.php tests/Feature/Guards/AdminWorkspaceRoutesGuardTest.php`
- `vendor/bin/sail bin pint --dirty --format agent`

## Notes
- Livewire v4.0+ compliance is preserved through Filament v5 usage.
- Panel provider registration remains in `bootstrap/providers.php` for Laravel 12.
- This feature adds a workspace overview page for the admin panel home; it does not introduce destructive actions.
- No new Filament assets were added, so there is no additional `filament:assets` deployment requirement for this branch.
- Manual browser QA for the quickstart scenarios was not completed in this session because the local browser opened at the Microsoft login flow without an authenticated test session.

Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de>
Reviewed-on: #157
2026-03-09 21:53:25 +00:00

5.1 KiB

Quickstart: Workspace Home & Admin Landing

Feature: 129-workspace-admin-home | Date: 2026-03-09

Scope

This feature turns /admin into the canonical workspace-level home by:

  • adding a real workspace overview page,
  • preserving workspace selection as the only precondition,
  • stopping normal /admin access from silently redirecting into tenant context,
  • exposing a primary Overview navigation item,
  • adding bounded workspace-safe summary, attention, and recent-operation surfaces,
  • keeping Switch workspace and Manage workspaces distinct.

Implementation order

  1. Create the new workspace overview page under the existing admin panel.
  2. Update /admin landing behavior so selected-workspace requests render the overview instead of delegating to tenant branching.
  3. Constrain direct /admin requests without workspace context to chooser-first behavior in the workspace-selection middleware.
  4. Register Overview as the first relevant admin navigation item and confirm brand-logo navigation resolves back to /admin.
  5. Add capability-safe summary cards and bounded recent or needs-attention surfaces using existing canonical destinations.
  6. Add quick actions for choose tenant, operations, alerts, switch workspace, and manage workspaces when authorized.
  7. Update or replace legacy tests that currently assert /admin redirects to tenant chooser or tenant dashboard.
  8. Run focused Sail-based tests.
  9. Run Pint on dirty files.

Reference files

Suggested validation commands

vendor/bin/sail artisan test --compact tests/Feature/Filament/AdminHomeRedirectsToChooseTenantWhenWorkspaceSelectedTest.php
vendor/bin/sail artisan test --compact tests/Feature/Filament/LoginRedirectsToChooseWorkspaceWhenMultipleWorkspacesTest.php
vendor/bin/sail artisan test --compact tests/Feature/Filament/WorkspaceOverviewLandingTest.php
vendor/bin/sail artisan test --compact tests/Feature/Filament/WorkspaceOverviewNavigationTest.php
vendor/bin/sail artisan test --compact tests/Feature/Filament/WorkspaceOverviewContentTest.php
vendor/bin/sail artisan test --compact tests/Feature/Filament/WorkspaceOverviewEmptyStatesTest.php
vendor/bin/sail artisan test --compact tests/Feature/Filament/WorkspaceOverviewOperationsTest.php
vendor/bin/sail artisan test --compact tests/Feature/Filament/WorkspaceOverviewAuthorizationTest.php
vendor/bin/sail artisan test --compact tests/Feature/Filament/WorkspaceOverviewPermissionVisibilityTest.php
vendor/bin/sail artisan test --compact tests/Feature/Filament/ChooseTenantRequiresWorkspaceTest.php
vendor/bin/sail artisan test --compact tests/Feature/Guards/AdminWorkspaceRoutesGuardTest.php
vendor/bin/sail bin pint --dirty --format agent

Expected outcome

  • /admin is a real workspace-level home whenever a workspace is selected.
  • Direct /admin access without workspace context goes to choose-workspace instead of silently auto-resuming into tenant context.
  • The admin brand logo and primary navigation lead back to the workspace home.
  • Workspace home content is capability-aware, tenantless by default, bounded, and non-polling by default.
  • Legacy tenant-forcing assumptions are contained to explicit chooser or tenant-required flows.