81 lines
3.9 KiB
Markdown
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.
|