# 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.
