| T-01 | Build | npm run build completes without error | Static build log | Pass |
| T-02 | Preset count | Exactly seven presets in the scenario dropdown | scripts/validate-sos-capstone.js | Pass |
| T-03 | Backend request | Run dispatches a real POST to the safety-simulation-lab endpoint | Manual Playwright network capture | Pass |
| T-04 | Trial cap | Requested trials above 5,000 are rejected or clamped | Backend sanitizer code path | Not independently load-tested |
| T-05 | Duplicate submission | A second click while a run is in flight does not fire a second request | Run button disable + runToken guard | Pass |
| T-06 | Receipt generation | A completed run returns a full public-safe receipt object | assets/sos-sample-public-receipt.json | Pass |
| T-07 | Latest receipt download | Download always reflects the most recently completed run | Manual verification across reruns | Pass |
| T-08 | Counter source | Access counters come only from the backend response | publicAccessWindow field inspection | Pass |
| T-09 | Stale state | Any slider change after a completed run shows the stale/rerun indicator | Manual + scripted check | Pass |
| T-10 | TAB no interaction | No accepted/denied override is injected without a real user decision | Direct event-dispatch test | Pass |
| T-11 | TAB accepted | Accepting TAB and rerunning records an accepted state on the receipt | Direct event-dispatch test | Pass |
| T-12 | TAB denied | Denying TAB and rerunning records a denied state on the receipt | Direct event-dispatch test | Pass |
| T-13 | Sensitivity receipt connection | Sensitivity bands populate from the completed receipt, not a static preview | Manual verification | Pass |
| T-14 | Guided demo | The existing Guided Demo opens/closes and consumes no run | Scripted Playwright check | Pass |
| T-15 | Reset preset | Reset Preset restores real defaults and marks the run stale | Scripted Playwright check | Pass |
| T-16 | Changed-from-default indicators | Indicators reflect real slider deltas only | Scripted Playwright check | Pass |
| T-17 | Baseline / blackout comparison | Comparison table renders from two stored completed receipts, with neutral text for missing fields | Manual verification, this branch | Pass |
| T-18 | Error states | Rate-limit/terms/5xx errors show safe copy, no stack traces, no fake result | Manual + code review | Pass |
| T-19 | Copy/claim scan | No forbidden claim phrases appear in changed files | scripts/validate-sos-capstone.js | Pass |
| T-20 | Mobile layout | No horizontal overflow at 390×844 | Playwright viewport check | Pass |
| T-21 | Tablet layout | No horizontal overflow at 768×1024 | Playwright viewport check | Pass |
| T-22 | Desktop layout | No horizontal overflow at 1024–1920 widths | Playwright viewport check | Pass |
| T-23 | Keyboard navigation | All interactive controls reachable and operable by keyboard | Manual tab-order pass on new pages | Not yet independently tested |
| T-24 | 200% zoom | No lost content or broken layout at 200% browser zoom | Manual visual check on new pages | Not yet independently tested |
| T-25 | Console errors | No uncaught console errors during the flagship workflow | Playwright pageerror capture | Pass |