Progress & Coverage
Requirements Traceability Matrix (PRD → code → test), test suite counts, and coverage signals.
Passing tests
5680
7 suites
Requirements with code
38/41
Requirements with tests
24/41
validation-engine coverage
99%/ 88%
Test Suites
Per-package Vitest counts. Coverage % is shown only where instrumented — never estimated.
| Suite | Tests | Coverage | Notes |
|---|---|---|---|
| validation-engine | 2374 | 99% / 88% | 108 files: 6 gates + readiness/ceiling + critical-path/forecast/override/rule-registry/advanced. (+3 todo) |
| worker | 777 | 89% | 23 files: jobs (readiness/kpi/escalation-tick/escalation/presence), schedulers, dispatch. (+5 skipped) |
| web | 938 | pending instrumentation | Route handlers, snapshot mapping, authed queries, auth-helpers, rate-limit. |
| shared-types | 274 | 100% | Enums, Error Contract (parseRpcResult), contract shapes. |
| ui | 865 | pending instrumentation | Component render tests + status helpers. |
| notifications | 274 | 81% | Dispatcher, channels (email/web-push/sms stub + Twilio), severity. |
| observability | 178 | pending instrumentation | Logger, timing, error-reporter, analytics, tracing seams. |
| Total | 5680 | ||
Requirements Traceability Matrix
| ID | Area | Requirement | Code | Test |
|---|---|---|---|---|
| R-EVT | Event | Event creation + auto code + 8-state field (live: 3 seeded events render) | Done | Done |
| R-NODE | Node | Node structure (≤5, is_mandatory) (live: 8 seeded nodes render) | Done | Done |
| R-ROLE | Roles | Role definition per node + fulfillment status (43 seeded; /roles page route still 404) | Done | In Progress |
| R-INV | Roles | Invitation system (single-use, 72h) + accept | Done | In Progress |
| R-SM | State Machine | 8-state machine, server-side boolean gates (verified on PG) | Done | Done |
| R-G1 | Validation | Blocker #1 — required role unfilled | Done | Done |
| R-G2 | Validation | Blocker #2 — vendor channel missing canonical instruction | Done | Done |
| R-G6 | Validation | Blocker #6 — critical dependency unresolved (T-24h) | Done | Done |
| R-G7 | Validation | Blocker #7 — no presence at LIVE | Done | Done |
| R-GC | Validation | Resource Capacity Gate (Revision 1) — verified on PG | Done | Done |
| R-GS | Validation | Schedule Conflict Gate (Revision 1) — verified on PG | Done | Done |
| R-RULE | Validation | Generic rule registry (all blockers pluggable) | Done | Done |
| R-CP | Dependencies | Critical path + impact preview | Done | Done |
| R-EC | Contract | Canonical RPC Error Contract (R2) | Done | Done |
| R-RDY | Readiness | Weighted readiness score + ceiling | Done | Done |
| R-FC | Readiness | Readiness forecast (ETA) | Done | Done |
| R-RT | Realtime | useRealtimeSubscription single hook (R3) — no live push in single-image build | Done | In Progress |
| R-RLS | Security | Event-scoped RLS on every table (live: role grants in 0088) | Done | Done |
| R-JWT | Security | User-JWT-scoped client so RLS is enforced (E1) — keys derived from secret at boot | Done | Done |
| R-AUTH | Security | Auth flows (login/logout/session) + middleware — GoTrue email+password login incomplete | Done | In Progress |
| R-RL | Security | Rate limiting on sensitive endpoints | Done | Done |
| R-CHAN | Channels | Realtime channels + messages | Done | In Progress |
| R-TASK | Tasks | Tasks complete→verify (is_fulfilled) | Done | In Progress |
| R-VEND | Vendor | Instruction versioning + supersede + conflict | Done | In Progress |
| R-NUG | Nuggets | Nugget timeline (click-to-move, R4) | Done | In Progress |
| R-ACK | Acknowledgment | 6-level Acknowledgment Ladder | Done | In Progress |
| R-MC | Mission Control | Action Board with Recommended Actions | Done | In Progress |
| R-HT | Timeline | Event Health Timeline feed | Done | In Progress |
| R-ESC | MVP02 | Escalation engine (timers/chains) + UI | Done | In Progress |
| R-NOTI | MVP02 | Notification dispatcher (email/web-push/SMS-stub) | Done | Done |
| R-I18N | MVP02 | i18n EN/HE/HI + RTL | Done | In Progress |
| R-OFF | MVP02 | Offline write-queue + conflict-aware sync | Done | Done |
| R-PWA | MVP02 | Installable PWA shell (manifest + SW) | Done | In Progress |
| R-OBS | MVP02 | Observability seams (errors/analytics/traces) | Done | Done |
| R-DEPLOY | Deploy | Staging live (uploz-staging @62.169.27.202): web :8090, dev-admin :8091, supabase-api :8095 | Done | Done |
| R-MIG | Deploy | Migrations 0001–0088 applied on staging Postgres | Done | Done |
| R-SEED | Deploy | DB seeded (3 events, 8 nodes, 43 roles, 17 alerts, 14 nuggets, 31 activity rows) | Done | Done |
| R-DATA | Deploy | Live app↔DB data path: event pages render real seeded data | Done | Done |
| R-LIVE | Verification | Self-hosted Supabase auth/realtime live (GoTrue login + live push) | In Progress | To Do |
| R-DR | Verification | End-to-end dress rehearsal (i4F) | To Do | To Do |
| R-PEN | Verification | Penetration test (zero critical/high) | To Do | To Do |