Validation: Data-Driven Contract Rendering System (Parent)

validation-34-2026-04-06 Doc

validation pass

Verdict: PASS

Board item #771 — westside-contracts#34 (parent ticket)

Sub-ticket Summary

9 sub-tickets, all done with passing validation notes:
  • T1 (#319) — validation-319-2026-04-05 PASS
  • T2 (#321) — validation-321-2026-04-05 PASS
  • T3 (#322) — validation-322-2026-04-05 PASS
  • T4 (#35) — validation-35-2026-04-05 PASS
  • T5 (#36) — validation-36-2026-04-05 PASS
  • T6 (#37) — validation-37-2026-04-05 PASS
  • T8 (#38) — validation-38-2026-04-05 PASS
  • T9 (#40) — validation-40-2026-04-05 PASS
  • T7 (#39) — validation-39-2026-04-06 PASS

Acceptance Criteria

  • [x] Kiana's contract: $100/month, Mesa AZ + Nike Vegas only, 1 practice, custom note
  • [x] Kelsie's contract: $160/month, local only, 2 practices, no travel tournaments
  • [x] Jahzmyn's contract: $160/month, standard Queens, apology email sent
  • [x] All existing contracts render with no regression (Aleiyah standard Queens verified)
  • [x] Contract signing flow end-to-end (Test Queens Player signed, DB + MinIO confirmed)
  • [x] Queens practice schedule: Wednesday Granger (not Friday BWill)
  • [x] Marcus approved all contracts via GroupMe DM
  • [x] 3 contract emails sent to parents

Deliverables

  • 11 PRs merged across 2 repos (basketball-api, westside-contracts)
  • 2 new DB columns (contract_config, contract_overrides)
  • 6 Svelte components extracted
  • Merge logic with 38 unit tests
  • 7 team configs seeded, 4 player overrides set
  • Architecture note: arch-contracts-westside-basketball
  • Board note: board-34-data-driven-contracts