## Summary - add Spec 288 no-legacy route/helper and provider-core/role-authority guard coverage - extend the pinned Spec 281 and Spec 285 browser smokes plus lane/report classification wording for classification-only fallout handling - add the Spec 288 artifact package and contributor-facing quality-gate guidance while keeping Package Execution deferred to Spec 289 ## Validation - `export PATH="/bin:/usr/bin:/usr/local/bin:$PATH" && REPO_ROOT="$(git rev-parse --show-toplevel)" && (cd "$REPO_ROOT/apps/platform" && ./vendor/bin/sail artisan test --compact tests/Feature/Guards/Spec288NoLegacyRouteAndHelperGuardTest.php tests/Feature/Guards/Spec288ProviderCoreAndRoleAuthorityGuardTest.php tests/Feature/Guards/AdminWorkspaceRoutesGuardTest.php tests/Feature/Guards/ProviderBoundaryPlatformCoreGuardTest.php tests/Feature/ProviderConnections/LegacyRedirectTest.php tests/Feature/ManagedEnvironment/LegacyTenantCoreGuardTest.php tests/Feature/Spec080WorkspaceManagedTenantAdminMigrationTest.php tests/Feature/Rbac/ProviderConnectionWorkspaceFirstPolicyTest.php tests/Feature/Filament/ManagedEnvironmentAccessScopeManagementTest.php tests/Feature/Guards/BrowserLaneIsolationTest.php tests/Feature/Guards/CiLaneFailureClassificationContractTest.php tests/Feature/Guards/CiHeavyBrowserWorkflowContractTest.php tests/Unit/Auth/NoRoleStringChecksTest.php)` - `export PATH="/bin:/usr/bin:/usr/local/bin:$PATH" && REPO_ROOT="$(git rev-parse --show-toplevel)" && (cd "$REPO_ROOT/apps/platform" && ./vendor/bin/sail artisan test --compact tests/Browser/Spec281ProviderConnectionScopeSmokeTest.php tests/Browser/Spec285WorkspaceRbacEnvironmentAccessSmokeTest.php)` - `export PATH="/bin:/usr/bin:/usr/local/bin:$PATH" && REPO_ROOT="$(git rev-parse --show-toplevel)" && (cd "$REPO_ROOT/apps/platform" && ./vendor/bin/sail bin pint --dirty --format agent)` Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de> Reviewed-on: #347
3.2 KiB
3.2 KiB
Requirements Checklist: Quality Gates / No-Legacy Enforcement
Scope and problem framing
- The package describes the real repo problem as missing enforcement over an already-completed cutover baseline.
- The package keeps scope limited to guards, targeted browser proof, quality-gate docs, and classification-only baseline handling.
- The package explicitly excludes runtime cutover work, provider-core rewrites, RBAC rewrites, UI copy cleanup, Review Pack export work, Guided Operations, and full-suite repair.
- The package explicitly moves Package Execution Contract work to Spec
289.
Repo-truth anchoring
- The package anchors route/path enforcement to exact retired management families instead of broad
/admin/tbans. - The package anchors helper enforcement to retired tenant-panel bootstrapping patterns on owned seams.
- The package anchors provider-core enforcement to the existing provider-boundary seams and operation-definition guards.
- The package anchors role-authority enforcement to the existing workspace-first policy and managed-environment scope tests.
- The package anchors baseline classification to
TestLaneManifest,TestLaneReport, the current classification-contract tests, andREADME.md.
Enforcement inventory and boundedness
- The same enforcement categories appear across
spec.md,plan.md,research.md,data-model.md,quickstart.md, the logical contract, andtasks.md. - Historical and immutable scan exclusions are pinned explicitly.
- The package keeps provider-owned detail nested and bounded instead of pretending it disappears entirely.
- The package forbids open-ended route, helper, or source-scan allowlists.
- The package keeps broader baseline fallout classification-only.
Validation and workflow
- Planned proof stays bounded to targeted guard tests, targeted browser validation, and formatting.
- The same validation commands appear in
spec.md,plan.md,tasks.md, andquickstart.md. - The task package explicitly re-verifies Filament/Livewire/provider-registration invariants and the no-asset-registration boundary.
- The package keeps review outcome, workflow outcome, and test-governance outcome aligned.
- The package uses
NoLegacyGuardrailas the close-out intent.
Adjacent-spec control
- Spec
289is named as the explicit Package Execution Contract follow-up. - The package does not silently absorb runtime cutover work from Spec
287. - The package does not silently absorb UI copy cleanup from Spec
286. - The package does not silently absorb broader provider-core or RBAC rewrites.
Notes
- Reviewed against
.specify/memory/constitution.md, the cutover sequence in Specs279through287, the current guard/browser/lane seams, and the user-corrected288scope on 2026-05-10. - This artifact package is implementation-ready only when the execution task map exists and the companion artifacts remain aligned.
Outcome
- Review outcome class:
acceptable-special-case - Workflow outcome:
keep - Test-governance outcome:
keep - Readiness note: implementation is ready as a bounded enforcement slice following Spec
287; broader baseline repair remains out of scope