docs(website): record that the website-side registration/checkout flow is now built

ced4568/RootNode-academy-website (separate GitHub repo, Chase-authorized access) now implements
docs/WEBSITE_REGISTRATION_AND_CHECKOUT.md's full contract on its own side: public offering
lookup, registration (adult + guardian/minor), agreement acceptance, checkout creation, and a
status-polling success page. Its own stale pricing was also corrected to match docs/
ROOTNODE_PRICING_AND_OFFERS_V1.md. It has nothing to talk to yet -- no real Platform API exists
(Gate 4's hardware blocker, unchanged) -- so every RootNode-facing route there returns a clean
503 until ROOTNODE_API_URL/ROOTNODE_INTEGRATION_KEY point at a real deployment.

Updates PHASE10_LAUNCH_READINESS.md Gate 10 and its matrix row, and WINTER_BREAK_LAUNCH_CHECKLIST.md
and WINTER_BREAK_CAMP_OPERATIONS.md's own website-status notes, all of which previously said
'nobody has built the website-side form yet.'
This commit is contained in:
2026-08-28 15:22:10 -05:00
parent bfae2aafe0
commit e6a5902ddf
3 changed files with 29 additions and 14 deletions
+16 -8
View File
@@ -14,13 +14,21 @@ re-reading code and assuming it still works.
## Gate 10 — Website integration ## Gate 10 — Website integration
`docs/WEBSITE_REGISTRATION_AND_CHECKOUT.md` and `docs/WEBSITE_ENROLLMENT_INTEGRATION.md` remain **Update (post-Phase 10.1)**: the website side is now actually built, not just documented.
the full, accurate, already-tested contract: public offerings API, registration submission, `ced4568/RootNode-academy-website` (a separate GitHub repository — Chase provided access and
agreement acceptance, checkout creation, and the status-lookup endpoint. Nothing new was built — explicitly authorized this phase to build against it) now has a real registration/agreement/
the contract was fully proven end to end (including against real Stripe) in Phase 9/9.1. The checkout/status flow implementing `docs/WEBSITE_REGISTRATION_AND_CHECKOUT.md`'s full contract:
website itself (`rootnodeacademy.com`) is confirmed live and real (Gate 6, `docs/ public offering lookup, registration submission (adult and guardian+minor), agreement
PHASE10_PRODUCTION_DEPLOYMENT.md`) but remains a separate, not-RootNode-owned repository — this acceptance, checkout creation, and a status-polling success page that never trusts the redirect
phase did not access or modify it, per the standing boundary. URL alone, exactly as that document specifies. Verified there: a clean production build, `tsc`,
eslint, and 9/9 tests all pass. The site's own stale pricing was also corrected to match
`docs/ROOTNODE_PRICING_AND_OFFERS_V1.md`.
It has nothing to talk to yet — `ROOTNODE_API_URL`/`ROOTNODE_INTEGRATION_KEY` are unset on the
website side (no real Platform API exists to point them at), so every RootNode-facing route on
the website returns a clean `503`, never a `500`, until Gate 4's hardware blocker resolves and a
real Platform API origin exists. `docs/WEBSITE_REGISTRATION_AND_CHECKOUT.md` and `docs/
WEBSITE_ENROLLMENT_INTEGRATION.md` remain the accurate contract both sides now implement.
## Gate 11 — Winter Break offering ## Gate 11 — Winter Break offering
@@ -134,7 +142,7 @@ gates so many other rows).
| 14. Stripe LIVE configuration | ⛔ BLOCKED | EXTERNAL BLOCKER | Not configured, not attempted | Chase completes Stripe business/identity verification, provides LIVE credentials | **Yes** | | 14. Stripe LIVE configuration | ⛔ BLOCKED | EXTERNAL BLOCKER | Not configured, not attempted | Chase completes Stripe business/identity verification, provides LIVE credentials | **Yes** |
| 15. Live webhook configuration | ⛔ BLOCKED | EXTERNAL + HARDWARE BLOCKER | Depends on #14 and a real HTTPS endpoint (#9) | Same | **Yes** | | 15. Live webhook configuration | ⛔ BLOCKED | EXTERNAL + HARDWARE BLOCKER | Depends on #14 and a real HTTPS endpoint (#9) | Same | **Yes** |
| 16. Google Workspace | ✅ COMPLETE (validated in Phase 5C) | TECHNICAL READY | `docs/RUNBOOK_GOOGLE_WORKSPACE_EMAIL.md` | Deploy alongside the real server | No (already proven) | | 16. Google Workspace | ✅ COMPLETE (validated in Phase 5C) | TECHNICAL READY | `docs/RUNBOOK_GOOGLE_WORKSPACE_EMAIL.md` | Deploy alongside the real server | No (already proven) |
| 17. Website integration | ✅ COMPLETE | — | Contract tested end to end, including real Stripe | None | No | | 17. Website integration | ✅ COMPLETE, both sides | — | Contract tested end to end; website-side registration/checkout flow now built and verified (see Gate 10 above) | None | No |
| 18. Winter Break price | ✅ COMPLETE | — | $399/$449, real, Stripe-validated, confirmed current with Chase (the live website's own pricing is stale — see `docs/PHASE10_CANONICAL_STATE_AUDIT.md`) | None (website update is separate, not-RootNode-owned repo work) | No | | 18. Winter Break price | ✅ COMPLETE | — | $399/$449, real, Stripe-validated, confirmed current with Chase (the live website's own pricing is stale — see `docs/PHASE10_CANONICAL_STATE_AUDIT.md`) | None (website update is separate, not-RootNode-owned repo work) | No |
| 19. Winter Break dates | ⚠️ DECISION REQUIRED | OWNER DECISION REQUIRED | Not decided | Chase decides | **Yes** | | 19. Winter Break dates | ⚠️ DECISION REQUIRED | OWNER DECISION REQUIRED | Not decided | Chase decides | **Yes** |
| 20. Venue | ⚠️ DECISION REQUIRED | OWNER DECISION REQUIRED | Not decided | Chase decides | **Yes** | | 20. Venue | ⚠️ DECISION REQUIRED | OWNER DECISION REQUIRED | Not decided | Chase decides | **Yes** |
+6 -3
View File
@@ -83,7 +83,10 @@ flow — see `docs/PHASE9_COMMERCE_AND_LAUNCH.md` and `docs/WINTER_BREAK_LAUNCH_
STUDENT_GUARDIAN_DATA_MODEL.md`). STUDENT_GUARDIAN_DATA_MODEL.md`).
- Real Stripe credentials do not exist yet — the commerce pipeline is built and tested against - Real Stripe credentials do not exist yet — the commerce pipeline is built and tested against
the deterministic test provider only; see `docs/STRIPE_INTEGRATION_RUNBOOK.md` for going live. the deterministic test provider only; see `docs/STRIPE_INTEGRATION_RUNBOOK.md` for going live.
- The website's own registration/checkout UI does not exist yet in this repository - The website's own registration/checkout UI is now built (rootnodeacademy.com, a separate
(rootnodeacademy.com is built separately) — the integration contract it needs is ready repository not owned by this one) against `docs/WEBSITE_REGISTRATION_AND_CHECKOUT.md`'s
(`docs/WEBSITE_REGISTRATION_AND_CHECKOUT.md`), but nobody has built the website-side form yet. contract — but it has nothing to talk to yet, since `ROOTNODE_API_URL`/
`ROOTNODE_INTEGRATION_KEY` point at no real Platform API (none is deployed — see `docs/
PHASE10_PRODUCTION_DEPLOYMENT.md`). Its own real pricing (`docs/
ROOTNODE_PRICING_AND_OFFERS_V1.md`) has already been published on the live site.
- See `docs/WINTER_BREAK_LAUNCH_CHECKLIST.md` for the full go/no-go list. - See `docs/WINTER_BREAK_LAUNCH_CHECKLIST.md` for the full go/no-go list.
+7 -3
View File
@@ -55,9 +55,13 @@ piece of hardware that has to come from Chase, a legal reviewer, or Stripe, not
- [x] **Google Workspace** — COMPLETE. `[email protected]`, `gmail.send` scope, - [x] **Google Workspace** — COMPLETE. `[email protected]`, `gmail.send` scope,
domain-wide delegation — validated in Phase 5C (`docs/ domain-wide delegation — validated in Phase 5C (`docs/
RUNBOOK_GOOGLE_WORKSPACE_EMAIL.md`); deployment to production needs the real server. RUNBOOK_GOOGLE_WORKSPACE_EMAIL.md`); deployment to production needs the real server.
- [x] **Website integration** — COMPLETE. Full contract tested end to end, including against - [x] **Website integration** — COMPLETE, both sides. Full contract tested end to end on the
real Stripe. The website itself (separate repo, not RootNode-owned) is live and real; platform side, including against real Stripe. The website itself (a separate repository,
this phase did not access or modify it. `ced4568/RootNode-academy-website` on GitHub — not this repo) now has the actual
registration/agreement/checkout/status flow built against that contract, and its own
pricing has been corrected to match `docs/ROOTNODE_PRICING_AND_OFFERS_V1.md`. It has
nothing to talk to yet — `ROOTNODE_API_URL`/`ROOTNODE_INTEGRATION_KEY` are unset until a
real Platform API exists (every route fails a clean 503, never a 500, in the meantime).
- [x] **Winter Break price** — COMPLETE. **$399.00 launch ("Founding Cohort") / $449.00 - [x] **Winter Break price** — COMPLETE. **$399.00 launch ("Founding Cohort") / $449.00
standard reference, paid in full, no deposit, no payment plan** — founder-approved by standard reference, paid in full, no deposit, no payment plan** — founder-approved by
Chase directly, validated against real Stripe TEST mode at this exact amount, reconfirmed Chase directly, validated against real Stripe TEST mode at this exact amount, reconfirmed