TenantAtlas/specs/234-dead-transitional-residue/quickstart.md
ahmido 603d509b8f
Some checks failed
Main Confidence / confidence (push) Failing after 58s
cleanup: retire dead transitional residue (#270)
## 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
2026-04-23 16:54:48 +00:00

81 lines
3.9 KiB
Markdown

# 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
1. Start Sail for `apps/platform`.
2. Ensure the current branch is `234-dead-transitional-residue`.
3. Be ready to update tests that intentionally use historical `app_status` values so they set those values explicitly.
## Implementation Validation Order
### 1. Format touched files
```bash
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
```bash
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_status` used in those tests is explicit scenario setup, not a hidden factory default.
### 3. Run baseline-profile continuity coverage
```bash
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
```bash
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
```bash
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_status` matches 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_status` and `BaselineProfile::class.'::STATUS_*'` matches are negative regression assertions.
- Remaining `app_status` matches are explicit tenant-truth setup or suppression assertions; no follow-up spec is needed.
## Optional Manual Smoke
1. Open `/admin/tenants` and verify current tenant truth still behaves as before.
2. Open `/admin/baseline-profiles`, then a baseline profile view page and edit page, and verify list, view, edit, and archive behavior still read normally.
3. If the backup-health browser fixture command is still used locally, run it once and confirm it no longer depends on ambient `app_status` defaults.
## 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.