## Summary - restore broad full-suite green-signal coverage across platform governance, operations, onboarding, dashboard/productization, and customer review flows - align related platform tests and supporting behavior with the current expected state for this restoration pass - update the spec-candidates queue as part of the same suite-restoration sweep ## Validation - `cd apps/platform && ./vendor/bin/sail artisan test --compact tests/Browser/Dashboard/TenantDashboardProductizationSmokeTest.php tests/Browser/Reviews/CustomerReviewWorkspaceSmokeTest.php tests/Browser/Spec194GovernanceFrictionSmokeTest.php tests/Browser/Spec265DecisionRegisterSmokeTest.php` Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de> Reviewed-on: #351
61 lines
4.6 KiB
Markdown
61 lines
4.6 KiB
Markdown
# Lane Decisions: Full Suite Green Signal Restoration
|
|
|
|
## Purpose
|
|
|
|
Document which tests remain in the default full suite, which belong to browser or heavy/workflow lanes, and which are obsolete or intentionally skipped. This file prevents "green by hiding failures".
|
|
|
|
## Default Decision
|
|
|
|
Until proven otherwise, every existing test remains in the default/full-suite expectation. Moving, skipping, or removing a test requires a row in this file and validation that no true product/runtime bug is hidden.
|
|
|
|
## Lane Ownership Rules
|
|
|
|
| Lane | Belongs here | Does not belong here |
|
|
|---|---|---|
|
|
| Default full suite | Unit/Feature tests that prove ordinary product behavior, route context, policy behavior, helper contracts, and non-browser Filament/Livewire actions. | Real browser layout, screenshot baseline, broad discovery-heavy governance scans, external-runtime-only checks. |
|
|
| Fast-feedback | Narrow behavior tests with cheap fixtures and no broad surface/discovery/browser cost. | Browser, broad surface guard, workflow fan-out, large fixture graph, or screenshot work. |
|
|
| Confidence | Product feature and bounded Livewire/Filament workflow coverage. | Discovery-heavy scans, browser-only behavior, and broad action-surface governance. |
|
|
| Heavy/Workflow | Broad action-surface, relation-manager, discovery-heavy, governance-wide, or expensive workflow checks. | Narrow behavior tests that should stay cheap. |
|
|
| Browser | Real browser smoke, DOM/layout/session continuity, screenshot baseline checks. | Feature tests that can assert server-rendered behavior without browser runtime. |
|
|
| External/environment | Tests requiring unavailable external runtime or nondeterministic infrastructure. | Product bugs, stale expectations, ordinary local Sail behavior. |
|
|
|
|
## Decisions Table
|
|
|
|
| Test file | Test name or group | Decision | Target lane | Reason | Product bug hidden? yes/no | Validation command | Status |
|
|
|---|---|---|---|---|---|---|---|
|
|
| All existing tests | Default initial posture | Keep | Default/full suite | Spec 296 starts from the premise that the raw suite should become green. | no | `cd apps/platform && ./vendor/bin/sail artisan test --compact` | prepared |
|
|
| Browser failures from Spec 295 | Browser smoke/login/screenshot groups | Keep in browser lane; repair stale route/panel/copy expectations | Browser | Browser smoke tests remain the correct lane for real browser session/layout checks. No screenshot baseline was updated. | no | `./scripts/platform-test-lane browser` | green: 49 passed, 837 assertions |
|
|
| Heavy-governance failures from Spec 295 | Operation/list/surface/summary-count groups | Keep in heavy-governance lane; repair stale route/panel/RBAC expectations | Heavy/Workflow | Heavy-governance remains the owner for broad action-surface, relation-manager, and workflow checks. No test was moved or skipped to hide a product bug. | no | `./scripts/platform-test-lane heavy-governance` | green: 340 passed, 2525 assertions |
|
|
| Final raw-suite proof | Raw `artisan test --compact` after repairs | Not claimed as final green | Default/full suite | Initial raw output was too broad and long-running; the current bounded proof set is the configured lane split plus guard lanes. This is documented as a raw rerun gap, not a lane move or skip. | no | `./scripts/platform-test-lane fast-feedback`; `./scripts/platform-test-lane confidence`; `./scripts/platform-test-lane heavy-governance`; `./scripts/platform-test-lane browser`; guard commands | lane split green; raw rerun not executed |
|
|
|
|
## Skip Rules
|
|
|
|
Skips are allowed only when all are true:
|
|
|
|
- The test is not meaningful in default full suite.
|
|
- The target lane is explicit and existing or added through a documented lane owner.
|
|
- The skip message is concrete.
|
|
- The row above says no product bug is hidden.
|
|
- A focused or lane validation command proves the remaining suite signal is honest.
|
|
|
|
Recommended skip message shape:
|
|
|
|
```php
|
|
it('...', function (): void {
|
|
// ...
|
|
})->skip('Moved to browser lane: requires real browser layout baseline and screenshot evidence.');
|
|
```
|
|
|
|
## Obsolete-Test Rules
|
|
|
|
An obsolete test may be removed only when:
|
|
|
|
- It asserts retired behavior or duplicates a stronger current contract.
|
|
- The current contract is covered by another named test.
|
|
- The removal is listed in the table above.
|
|
- The affected lane and full suite are re-run.
|
|
|
|
## Tests Deliberately Not Moved
|
|
|
|
No tests were deliberately moved, skipped, deleted, or marked obsolete during this Spec 296 close-out. Browser and heavy-governance tests stayed in their existing lanes, and default/full-suite truth remains represented by the lane split plus guard evidence until the optional long raw rerun is executed.
|