Send contract offers to parents (Tuesday) #119

Closed
opened 2026-03-19 19:05:54 +00:00 by forgejo_admin · 0 comments

Type

Feature

Lineage

plan-wkq → Phase 14 → Billing Tiers & Contracts

Repo

forgejo_admin/basketball-api

User Story

As a parent
I want to receive a contract offer for my child's team placement
So that I can sign and officially join the program

Context

Contract signing flow already built (Phase 14). Player profile page has contract section that appears when status='offered'. Parent signs with signature name + acceptance. Records timestamp and IP. After teams are announced, contracts go out Tuesday March 25.

File Targets

Files the agent should modify or create:

  • src/basketball_api/routes/admin.py — contract offer trigger endpoint
  • src/basketball_api/services/email.py — contract offer email template

Files the agent should NOT touch:

  • Contract signing frontend — already working

Acceptance Criteria

  • When parent receives contract email, they can click through to sign
  • When parent signs, contract_status updates to 'signed'

Test Expectations

  • Test contract offer flow with e2e-test account
  • Run command: N/A

Constraints

  • Sent Tuesday March 25 only
  • No emails without Lucas approval

Checklist

  • Contract email drafted
  • Lucas approves
  • Sent Tuesday
  • phase-wkq-14-billing-tiers
### Type Feature ### Lineage `plan-wkq` → Phase 14 → Billing Tiers & Contracts ### Repo `forgejo_admin/basketball-api` ### User Story As a parent I want to receive a contract offer for my child's team placement So that I can sign and officially join the program ### Context Contract signing flow already built (Phase 14). Player profile page has contract section that appears when status='offered'. Parent signs with signature name + acceptance. Records timestamp and IP. After teams are announced, contracts go out Tuesday March 25. ### File Targets Files the agent should modify or create: - `src/basketball_api/routes/admin.py` — contract offer trigger endpoint - `src/basketball_api/services/email.py` — contract offer email template Files the agent should NOT touch: - Contract signing frontend — already working ### Acceptance Criteria - [ ] When parent receives contract email, they can click through to sign - [ ] When parent signs, contract_status updates to 'signed' ### Test Expectations - [ ] Test contract offer flow with e2e-test account - Run command: N/A ### Constraints - Sent Tuesday March 25 only - No emails without Lucas approval ### Checklist - [ ] Contract email drafted - [ ] Lucas approves - [ ] Sent Tuesday ### Related - `phase-wkq-14-billing-tiers`
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
forgejo_admin/basketball-api#119
No description provided.