TenantAtlas/specs/320-workspace-owned-analysis-surface-registration-shell-cutover/checklists/requirements.md
ahmido ec9649897a feat: cut over workspace-owned analysis shell context (#375)
## Summary
- cut over workspace-owned analysis and library surfaces to workspace shell ownership instead of inheriting remembered environment shell context
- update the affected findings pages, scope resolution, navigation helpers, and related Blade views to keep environment focus explicit instead of implicit
- add and update Spec 320 artifacts plus focused regression coverage for findings navigation context, workspace hub registration, and admin surface scope behavior

## Guardrails
- Filament remains on v5 with Livewire v4 compliance unchanged
- provider registration remains in apps/platform/bootstrap/providers.php
- no new globally searchable resources were introduced or changed
- no new destructive actions were introduced or changed
- no Filament assets were added or changed, so the deploy requirement for filament:assets is unchanged

## Testing
- `cd apps/platform && ./vendor/bin/sail artisan test --compact tests/Feature/Findings/FindingsAssignmentHygieneReportTest.php tests/Feature/Findings/FindingsIntakeQueueNavigationContextTest.php tests/Feature/Findings/FindingsIntakeQueueTest.php tests/Feature/Findings/MyFindingsInboxNavigationContextTest.php tests/Feature/Findings/MyWorkInboxTest.php tests/Feature/Navigation/WorkspaceHubRegistryTest.php tests/Unit/Support/OperateHub/OperateHubShellResolutionTest.php tests/Unit/Tenants/AdminSurfaceScopeTest.php`
- `cd apps/platform && ./vendor/bin/sail bin pint --dirty --format agent`

Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de>
Reviewed-on: #375
2026-05-16 23:16:53 +00:00

76 lines
4.4 KiB
Markdown

# Specification Quality Checklist: Workspace-Owned Analysis Surface Registration & Shell Cutover
**Purpose**: Validate specification completeness and quality before implementation
**Created**: 2026-05-16
**Feature**: [spec.md](/Users/ahmeddarrazi/Documents/projects/wt-plattform/specs/320-workspace-owned-analysis-surface-registration-shell-cutover/spec.md)
## Candidate Selection Gate
- [x] Explicit user-provided Spec 320 request was selected as the source of truth for this preparation pass.
- [x] Completed-spec guardrail checked that no existing `specs/320-*` package was present before generation.
- [x] Specs 313, 314, 315, 316, 317, 318, and 319 were treated as dependency/historical context, not rewritten.
- [x] Roadmap/spec-candidate queue was reviewed; active auto-prep queue is empty, so this package proceeds only because the user directly supplied/promoted Spec 320.
- [x] Close alternatives were deferred to follow-up Specs 321 and 322.
- [x] The selected slice is workspace-owned analysis/library shell classification and remembered Environment fallback removal only.
## Content Quality
- [x] Problem statement is operator-visible and tied to workspace-owned page / Environment shell mismatch.
- [x] User value is clear: clean workspace-owned analysis URLs show Workspace shell only.
- [x] Scope is bounded to Spec 318 M2/M4 targets plus directly related unregistered workspace analysis pages.
- [x] Hard cutover/no compatibility posture is explicit.
- [x] No unresolved clarification-marker placeholders remain.
- [x] Mandatory Spec Candidate Check is complete.
- [x] Spec Scope Fields are complete.
- [x] Shared pattern, OperationRun, provider boundary, UI/surface, testing, acceptance, and browser sections are complete.
## Requirement Completeness
- [x] Functional requirements are testable and unambiguous.
- [x] Requirements cover Baselines, Baseline Snapshots, baseline detail/edit/matrix pages, My Findings, Findings Intake, Findings Hygiene, Cross-environment Compare, legacy aliases, remembered fallback, reload/back-forward, Baseline Compare regression, and Decision Register regression.
- [x] Non-goals prevent Spec 321/322 scope creep.
- [x] Edge cases are identified.
- [x] Assumptions and risks are documented.
- [x] Success and acceptance criteria are measurable.
- [x] Open questions do not block implementation; they require per-page documentation during implementation.
## Plan Quality
- [x] Laravel, Filament, Livewire, Pest, PostgreSQL, Sail, and Dokploy context is recorded.
- [x] Livewire v4.0+ compliance is explicitly noted through Livewire 4.1.4.
- [x] Laravel 12 panel provider location remains `apps/platform/bootstrap/providers.php`.
- [x] Global search impact is assessed as unchanged unless a touched Resource is deliberately changed and tested.
- [x] Destructive/high-impact action handling is addressed for existing archive/capture/compare/preflight actions.
- [x] Asset strategy is assessed as no new Filament assets/no new `filament:assets` step.
- [x] No migration, seeder, package, env var, queue, scheduler, storage, or deployment asset change is planned.
- [x] Existing repo seams are named.
- [x] Test strategy and browser verification plan are concrete.
## Task Quality
- [x] Tasks are ordered from guardrails/tests through classification, page/link alignment, browser verification, and final validation.
- [x] Tests are required before or alongside implementation.
- [x] Task IDs follow the required checkbox format.
- [x] File paths are concrete where repo surfaces are known.
- [x] Non-tasks explicitly prevent compatibility layers, query alias support, Baseline Compare changes, and follow-up-spec scope creep.
- [x] Browser screenshot paths are specified.
- [x] Validation commands are specified.
## Constitution Alignment
- [x] Workspace and Environment isolation are covered.
- [x] Cross-workspace Environment filters cannot create shell context or leak identity.
- [x] No new persisted truth is introduced.
- [x] Possible classifier complexity has a proportionality review.
- [x] OperationRun semantics are preserved for existing high-impact actions.
- [x] Audit/authorization/confirmation expectations for existing high-impact actions remain explicit.
- [x] Test governance lane impact is explicit.
- [x] Provider/platform boundary is explicit.
## Readiness Result
- [x] Candidate Selection Gate passes.
- [x] Spec Readiness Gate passes.
- [x] Ready for separate implementation loop.
- [x] No application implementation was performed during this preparation step.