## 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
76 lines
4.4 KiB
Markdown
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.
|