Add declined status to ContractStatus enum #379
Labels
No labels
domain:backend
domain:devops
domain:frontend
status:approved
status:in-progress
status:needs-fix
status:qa
type:bug
type:devops
type:feature
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
forgejo_admin/basketball-api#379
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Type
Bug
Lineage
Standalone — discovered during email blast preparation session (2026-04-07). Three families declined via email but have no status to reflect it, risking future unwanted emails.
Repo
forgejo_admin/basketball-apiWhat Broke
ContractStatusenum only hasnone,offered,signed. Families who explicitly declined via email (Patrick Kirschman Mar 20, Stein Kunic Mar 22) and admin-excluded players (Boston Greenhalgh) havecontract_status=none— indistinguishable from players who were never contacted. Future email blasts have no way to filter them out.Repro Steps
contract_status=nonenoneExpected Behavior
Declined players should have
contract_status=declinedso email blast logic can exclude them automatically.Environment
Acceptance Criteria
declined = "declined"added toContractStatusenumcontract_status=declinedRelated
westside— project this affectsValidation: PASS
Tiers executed: Tier 1 (CI pipeline), Tier 3 (production)
Validation note:
validation-379-2026-04-074 checks: 4 PASS, 0 FAIL
Evidence summary:
basketball-api-868ffc7cbf-qzpz6running, 0 restarts, image7f4a9dbe['none', 'offered', 'signed', 'declined']['none', 'offered', 'signed', 'declined']declinedstatus: ids 89, 94, 98, 134, 140signedanddeclinedvia.notin_()