Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

100 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔄🔴 FRESH-LAUNCH FORK — DIRECTOR RULING 56 + 57 (2026-06-25)

READ FIRST. This supersedes the migration framing in the rest of this document. Everything below that describes a Firebase→Supabase migration, Sitting 2, identity remediation, the R54 probe, or Gate R / Gate W is HISTORICAL and SUPERSEDED — NON-EXECUTABLE. No Executor may run any cutover, remediation tool, Firebase probe, or Firebase deployment.

Launch model

Fresh Supabase launch
No Firebase migration
No Sitting 2
No Firebase identity remediation
No R54 Firebase probe
No Gate R or Gate W

The two Firebase projects were attested empty by Kevin — an operator attestation, NOT a repository proof. Ruling 57 does not authorize deletion of either Firebase project.

Repository topology

5070f877 = historical audit artifact; never merge
launch base = Coach main 0c0f82b
future replay order = C then D
A and B = historical Firebase transition work

No branch creation or cherry-pick occurs under Ruling 57.

New binding order

core governance reconciliation
→ Coach launch branch replay C
→ Coach launch branch replay D
→ production Supabase Phase 1
→ first-super-admin bootstrap
→ scheduler rehome
→ staff-assisted beta onboarding
→ device QA / closed beta
→ invite-redemption mobile UI
→ public-launch gates
→ dead-code and Firebase cleanup

First-super-admin bootstrap — concept approved; exact SQL and hosted execution are HELD. The eventual transaction must require:

public signup closed
exactly 1 auth user
exactly 1 profile
profile maps to that user
profile initially family/pending
zero coach_admin
zero super_admin
privileged non-user execution context
exactly 1 row updated
final exactly 1 approved super_admin
full counts rechecked before commit
no email or UUID literal in SQL/output

Scheduler rehome — design-stage; neither implementation selected nor built:

dailyDigest: SQL-Cron candidate
sweepAttendanceEvaluations: SQL-Cron versus scheduled Edge Function — undecided pending parity audit

Onboarding — Closed beta: the existing admin approval path is the staff-assisted candidate (creates the family, links the profile, inserts swimmers, records an approval log); acceptable only after synthetic end-to-end proof, an operator checklist, duplicate handling, and rollback verification. Staff never redeem a parent invite. Public launch: the mobile invite-redemption UI is mandatory (the RPC is tested but has no mobile caller).

Gate 6 — Retire migrated-family and Firebase-shutdown messaging. Retain:

Supabase email provider
SMTP/delivery proof
invite template
password-reset template
redirect and deep-link allow-list
synthetic invite/reset end-to-end proof

Cleanup accounting

−105 retired
−102 provisional
1103 provisional

Exact cleanup paths and test bars require a later deletion diff and an actual test run.

— End fresh-launch banner (Rulings 56 + 57). Historical content follows unchanged. —


bspc-unify

This repository is the canonical unification plan for two separate application repositories — BSPC (the parent app) and BSPC-Coach-App (the coach app) — which intentionally remain their own independent repos. Nothing here changes that: this repo holds only the planning and design documents for migrating both apps onto a single shared, canonical Postgres/Supabase backend.

Documents

Design & schema

  • 00_TERRAIN.md — design map of the existing two-app landscape.
  • 01_CANONICAL_SCHEMA.sql — the unified canonical schema (law; storage spec at Appendix A).
  • 02_SCHEMA_REDTEAM.md — red-team critique of the canonical schema.
  • 03_MIGRATION_PLAYBOOK.md — step-by-step migration playbook.
  • 04_CROSS_TIER_SEQUENCING.md — cross-tier sequencing plan for the migration.

Migration phases

  • 05_PHASE_A_IDENTITY.md · 07_PHASE_C_ATTENDANCE.md · 08_PHASE_D_TIMES.md · 10_PHASE_F_MEDIA.md · 11_PHASE_G_NOTIFICATIONS.md · 12_PHASE_H_CALENDAR_MEETS_PLANS.md — per-phase design + ratification records.
  • 06_FIREBASE_RUNBOOK.md — ⛔ historical cutover runbook (PART B / Sitting 2 / §B0 probe / §B6 decommission are superseded & non-executable under Rulings 56 + 57 — fresh launch, no migration).

Publish era

  • 13_PUBLISH_PLAN.md — master Plan for Publish (§8 = the [DECIDE] resolutions).
  • 14_GATE1_LAWYER_BRIEF.md — children's-privacy fact pack + questions for counsel.
  • 15_PRIVACY_REWRITE_OUTLINE.md — privacy-policy + ToS gap analysis and target outline.
  • 16_PROD_BACKEND_PROVISIONING.md — Phase-1 backend checklist (what must be true).
  • 17_PROD_BACKEND_RUNBOOK.md — Phase-1 command sequence (how it's done).
  • 18_DIRECTOR_ONBOARDING.md — bootstrap brief to hand a new DIRECTOR seat the role.
  • 19_FAMILY_COMMS_DRAFTS.md — ⚠ amended (Rulings 56 + 57): migrated-family + Firebase sign-in-shutdown messaging retired; retained are the fresh-launch Gate-6 controls (Supabase email provider, SMTP/delivery proof, invite template, password-reset template, redirect/deep-link allow-list, synthetic invite/reset e2e proof). Original (now historical): pre-cutover family announcement + recovery/invite email templates, revised per Director Ruling 05 (no automatic-blast promise; recovery-email delivery + Firebase sign-in shutdown gated on a proven recovery path — SMTP + send-rate + redirect/deep-link + synthetic e2e mobile reset — while the announcement may use the existing team channel; invite template held inactive until a net-new onboarding path exists).
  • 20_IDENTITY_REMEDIATION_SITTING.md — ⛔ superseded & non-executable (Rulings 56 + 57): the Firebase identity-remediation sitting is retired; Kevin becomes first super_admin via the Supabase first-admin bootstrap. Kept as historical material, not deleted.
  • 21_SUPABASE_AUTH_DASHBOARD_CHECKLIST.md — Kevin-owned Supabase dashboard checklist for email/password Auth, SMTP, reset/invite templates, redirect/deep-link allow-list, and the one throwaway recovery-test account.

Program records

  • HANDOFF.md — program handoff.
  • NOTES.md — append-only, sanitized tool-output log (inspect output for secrets, PII, account identifiers, roster data, and media metadata before recording; record sanitized output only — sensitive findings as path/category or count/status only; never a secret, UID, email, minor, or roster value).

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages