Some checks failed
Main Confidence / confidence (push) Failing after 58s
## Summary - remove deprecated baseline profile status alias constants and keep baseline lifecycle semantics on the canonical enum path - retire the dead tenant app-status badge/default-fixture residue from the active runtime support path - add the `234-dead-transitional-residue` spec, plan, research, data-model, quickstart, checklist, and task artifacts plus focused regression assertions ## Validation - not rerun during this PR creation step Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de> Reviewed-on: #270
3.9 KiB
3.9 KiB
Quickstart: Dead Transitional Residue Cleanup
Goal
Validate that dead baseline profile alias language and dead tenant app-status support residue are removed without changing current tenant-truth or baseline-profile behavior.
Prerequisites
- Start Sail for
apps/platform. - Ensure the current branch is
234-dead-transitional-residue. - Be ready to update tests that intentionally use historical
app_statusvalues so they set those values explicitly.
Implementation Validation Order
1. Format touched files
export PATH="/bin:/usr/bin:/usr/local/bin:$PATH" && cd apps/platform && ./vendor/bin/sail bin pint --dirty --format agent
Expected outcome:
- Touched PHP and test files follow project formatting rules.
2. Run tenant-truth continuity coverage
export PATH="/bin:/usr/bin:/usr/local/bin:$PATH" && cd apps/platform && ./vendor/bin/sail artisan test --compact tests/Feature/Filament/TenantTruthCleanupSpec179Test.php tests/Feature/Filament/TenantLifecycleStatusDomainSeparationTest.php
Expected outcome:
- Tenant lifecycle and RBAC truth remain unchanged.
- Any legacy
app_statusused in those tests is explicit scenario setup, not a hidden factory default.
3. Run baseline-profile continuity coverage
export PATH="/bin:/usr/bin:/usr/local/bin:$PATH" && cd apps/platform && ./vendor/bin/sail artisan test --compact tests/Feature/Baselines/BaselineProfileArchiveActionTest.php tests/Feature/Filament/BaselineProfileListFiltersTest.php tests/Feature/Filament/BaselineProfileScopeV2PersistenceTest.php tests/Feature/Baselines/BaselineProfileWorkspaceOwnershipTest.php tests/Feature/Baselines/BaselineProfileAuthorizationTest.php
Expected outcome:
- Baseline profile archive, list, view, and edit behavior still work after removing deprecated status aliases.
4. Run central badge cleanup coverage
export PATH="/bin:/usr/bin:/usr/local/bin:$PATH" && cd apps/platform && ./vendor/bin/sail artisan test --compact tests/Unit/Badges/TenantBadgesTest.php tests/Unit/Badges/BadgeCatalogTest.php
Expected outcome:
- The central badge catalog still resolves active tenant badge domains correctly.
- The removed tenant app-status badge path no longer acts as active runtime truth.
5. Run a focused residue grep before merge
export PATH="/bin:/usr/bin:/usr/local/bin:$PATH" && cd /Users/ahmeddarrazi/Documents/projects/wt-plattform && rg -n "BaselineProfile::STATUS_|TenantAppStatus|tenant_app_status" apps/platform/app apps/platform/tests apps/platform/database/factories
export PATH="/bin:/usr/bin:/usr/local/bin:$PATH" && cd /Users/ahmeddarrazi/Documents/projects/wt-plattform && rg -n -- "app_status" apps/platform/app apps/platform/tests apps/platform/database/factories
Expected outcome:
- No unexpected alias or badge-domain references remain.
- Any remaining
app_statusmatches are deliberate explicit historical setup or reviewed historical artifacts, not ambient defaults or active truth.
Implementation close-out:
- Active runtime/support paths are clean.
- Remaining
tenant_app_statusandBaselineProfile::class.'::STATUS_*'matches are negative regression assertions. - Remaining
app_statusmatches are explicit tenant-truth setup or suppression assertions; no follow-up spec is needed.
Optional Manual Smoke
- Open
/admin/tenantsand verify current tenant truth still behaves as before. - Open
/admin/baseline-profiles, then a baseline profile view page and edit page, and verify list, view, edit, and archive behavior still read normally. - If the backup-health browser fixture command is still used locally, run it once and confirm it no longer depends on ambient
app_statusdefaults.
Non-Goals For This Slice
- No database migration.
- No route or global-search change.
- No new readiness or badge framework.
- No onboarding or provider-connection cleanup outside the approved dead-residue scope.