TenantAtlas/specs/375-ui-bloat-regression-guard/artifacts/source-summary.md
ahmido 8efc8981a4 feat(guard): implement ui bloat regression guard (#446)
Added UiBloatRegressionGuardTest to enforce known UI bloat and customer/auditor safety regression patterns across configured runtime UI source paths as defined in Spec 375.

Registered the test in Pest.php and added to TestLaneManifest.

Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de>
Reviewed-on: #446
2026-06-13 09:03:36 +00:00

61 lines
4.5 KiB
Markdown

# Source Summary
## Repo State
- Branch: `375-ui-bloat-regression-guard`
- HEAD before implementation: `0a1ecf99`
- Dirty state before implementation: untracked Spec 375 artifacts only.
- Implementation option selected: Pest guard under `apps/platform/tests/Feature/Guards/UiBloatRegressionGuardTest.php`.
- Rejected options:
- Artisan command: broader than v1 because it adds a runtime app command surface for a review guard.
- Repo shell script: less repo-conform than existing Pest guard conventions and harder to test with fixture cases.
## Source Inputs
| Source | Status | Notes |
|---|---|---|
| `specs/368-platform-ui-signal-to-noise-browser-audit/audit.md` | available | Source audit input for bloat and customer-safety failure modes. |
| `specs/368-platform-ui-signal-to-noise-browser-audit/page-scorecard.csv` | available | Score context only; not used as a scanner threshold in v1. |
| `specs/368-platform-ui-signal-to-noise-browser-audit/findings.md` | available | Source for repeated status, zero-card, metadata, and customer-safe risks. |
| `specs/368-platform-ui-signal-to-noise-browser-audit/spec-candidates.md` | available | Confirms guardrail candidate lineage. |
| `specs/368-platform-ui-signal-to-noise-browser-audit/artifacts/raw/browser-notes.md` | available | Browser notes input; no browser dependency in Spec 375. |
| `specs/370-global-surface-information-architecture-contract/artifacts/surface-contract.md` | available | Surface IA contract input. |
| `specs/370-global-surface-information-architecture-contract/artifacts/ui-bloat-patterns.md` | available | Primary rule-group source for v1. |
| `specs/370-global-surface-information-architecture-contract/artifacts/page-assessment-checklist.md` | available | Manual review checklist source. |
| `specs/370-global-surface-information-architecture-contract/artifacts/copy-and-terminology-rules.md` | available | Customer-safe and provider/internal term source. |
| `specs/370-global-surface-information-architecture-contract/artifacts/follow-up-spec-map.md` | available | Confirms guardrail follow-up lineage. |
| `specs/371-core-operator-view-surfaces-productization/artifacts/*` | available | Completed operator-surface context, read-only. |
| `specs/372-customer-auditor-surface-safety-pass/artifacts/*` | available | Customer/auditor safety contracts and browser evidence, read-only. |
| `specs/373-diagnostic-surface-separation/artifacts/*` | available | Actual repo directory differs from draft name; diagnostic safety contracts are available. |
| `specs/374-diagnostic-entry-point-support-diagnostics-consolidation/artifacts/*` | available | Diagnostic entrypoint matrix and validation evidence, read-only. |
## Existing Guard Structures
- Existing guard tests live under `apps/platform/tests/Feature/Guards`.
- `apps/platform/tests/Pest.php` defines the `surface-guard` group.
- `apps/platform/tests/Support/TestLaneManifest.php` declares `surface-guard` as heavy-governance-only.
- `scripts/check-ui-productization-coverage` is a repo-level shell guard for UI coverage acknowledgements, not content-quality scanning.
- `apps/platform/tests/Support/OpsUx/SourceFileScanner.php` exists for PHP-only source scans, but Spec 375 also needs Blade scanning and fixture-string scans, so a narrow Spec 375 test helper is used.
## Scan Paths
| Path | Status | Treatment |
|---|---|---|
| `apps/platform/app/Filament` | available | scanned |
| `apps/platform/resources/views/filament` | available | scanned |
| `apps/platform/app/Support/EnvironmentDashboard` | available | scanned |
| `apps/platform/app/Support/Navigation` | available | scanned |
| `apps/platform/app/Support/OpsUx` | available | scanned |
| `apps/platform/app/Support/SupportDiagnostics` | available | scanned |
| `apps/platform/app/Support/Ui` | available | scanned |
| `apps/platform/app/Support/Workspaces` | available | scanned |
| `apps/platform/resources/views/components` | not available | recorded only |
| `apps/platform/app/View` | not available | recorded only |
## Lane Ownership
- Classification: Heavy-Governance / `surface-guard`.
- The guard is registered as a surface-guard Pest file and as a heavy-governance manifest family.
- The test uses repository source text and fixture strings only. It does not require browser auth, seed data, provider setup, Graph calls, queues, or runtime product state.
- Because the repository binds `Feature` tests to `RefreshDatabase` globally, the file still boots the normal Feature test harness, but the guard introduces no database fixture or data dependency.