Gate 0.5 — exit checklist¶
Authoritative spec:
lastvet-gates/gates/GATE_0.5_hardening_and_proof.md(realigned 2026-09-15).
Updated: 2026-09-15 — Gate 0 EARNED on R940; Gate 0.5 exit complete
Evidence index: docs/runbooks/gate-0.5/ (July AWS logs retained as historical only)
Gate labels (do not conflate)¶
| Milestone | Status | Date | Meaning |
|---|---|---|---|
| Gate 0 (AWS era) | ✅ Proof only | 2026-07-21 | ROI E2E on decommissioned AWS stack. Same hostname (api.last.vet) but not R940 origin. Evidence: E2E_RUN_LOG_2026-07-15.md. Does not satisfy R940 earn line. |
| Gate 0 (R940) | ✅ EARNED | 2026-09-15 | Scripted + human ROI E2E on R940 prod. Evidence: E2E_RUN_LOG_2026-09-15_R940.md + E2E_RUN_LOG_2026-09-15_R940_HUMAN.md. |
| Gate 0.5 exit (R940) | ✅ COMPLETE | 2026-09-15 | All twelve items below — hardening checklist on current stack. |
Gate 0 is the product proof. Gate 0.5 exit is the twelve-item hardening checklist. Both re-earned on R940 2026-09-15.
Exit items — R940 (mirrors gates spec 2026-09-15)¶
| # | Item | Status | Evidence / notes |
|---|---|---|---|
| A1 | Scripted + human E2E on R940 | DONE | E2E_RUN_LOG_2026-09-15_R940.md + E2E_RUN_LOG_2026-09-15_R940_HUMAN.md |
| A2 | Bearer harness + R940 base URL + inbox OTP | DONE | Green e2e-roi-gate0-full.sh 2026-09-15 on R940 |
| A3 | Facilities leg (live open-data key) | DONE | verify-facilities-sd.js 2026-09-15 — 11 facilities |
| B4 | Build secrets in Bitwarden | DONE | Maintain |
| B5 | RLS + PHI encryption on lastvet-db | DONE | Spot-verify on VM 108 |
| B6 | TestFlight Bearer on R940 hosts | DONE | Human TestFlight 2026-09-15 (E2E_RUN_LOG_2026-09-15_R940_HUMAN.md) |
| B7 | Pentest / security status note | DONE | docs/security/SECURITY_PENTEST_STATUS.md rewritten for R940 2026-09-15 |
| C8 | Remove VA API matrix from onboarding | DONE | DECISIONS.md 2026-07-11 — dev-only VAAPIMatrixDevView |
| C9 | SMS OTP ship or defer | DONE | DECISIONS.md 2026-07-09 — email OTP; SMS deferred |
| D10 | HL Part 2 copy | DONE (tracked) | Flagged-and-tracked in DECISIONS.md; not counsel-signed — blocks real pilot only |
| D11 | Gate 1 threshold doc | DONE | lastvet-gates/gates/GATE_1_TRACTION_THRESHOLD.md |
| D12 | VA production access tracker | DONE | Case #00015000 |
Summary (R940)¶
| Bucket | Done | Open |
|---|---|---|
| A — Prove Gate 0 | 3/3 | — |
| B — Ops & security | 4/4 | — |
| C — Veteran IA | 2/2 | — |
| D — Legal & Gate 1 prep | 3/3 | — |
Gate 0 (R940): ✅ EARNED (2026-09-15)
Gate 0.5 exit on R940: ✅ COMPLETE (2026-09-15)
Gate 1 sandbox: May begin (Radio Check, Missions, OS mechanics) — VA prod approval still gates production pilot, not sandbox build.
Historical — July 2026 AWS closure (archived)¶
The sections below describe the superseded AWS-era closure. Kept for audit trail only.
July 2026 AWS 12/12 table (click to expand — not current)
| # | Item | Status (July AWS) | |---|------|-------------------| | A1 | Scripted + human E2E | ✅ `E2E_RUN_LOG_2026-07-15.md` | | A2 | Bearer harness | ✅ AWS + CloudWatch OTP era | | A3 | Facilities | ✅ 2026-07-15 log | | A4 | Dual-grant revocation | ✅ TestFlight 2026-07-23 (not in current 12-item spec) | | B4–D12 | … | ✅ per July checklist | **Gate 0.5 exit (AWS):** declared complete 2026-07-23 — **superseded by R940 cutover.**Infrastructure notes¶
| Item | Status |
|---|---|
| Railway LastVet | ✅ Deleted 2026-07-15 |
| AWS ECS/RDS | Rollback net only — no prod traffic post-R940 |
| R940 prod | api.last.vet → lastvet-edge (.89) → lastvet-api (.90) → lastvet-db (.91) |
Related¶
lastvet-gates/gates/GATE_0.5_hardening_and_proof.md— authoritativedocs/planning/gate-0.5/DECISIONS.md— C8/C9/D10 decisionsdocs/security/SECURITY_PENTEST_STATUS.md— B7 security posture (R940)docs/runbooks/VA_PRODUCTION_CUTOVER_RUNBOOK.md— Appendix B inbox OTP