[tournament-email-agent T1] Audit tournament_fee email infrastructure #511

Open
opened 2026-04-25 02:10:27 +00:00 by forgejo_admin · 1 comment
Contributor

Type

Task

Scope

Read-only audit of basketball-api to verify the building blocks the tournament-email-agent's Step 2 pre-flight check needs. For each item, report present / missing in a comment on this issue. Each missing piece spawns a new ticket on board-westside-basketball with consumer:tournament-email-agent.

Items to verify:

  1. EmailType.tournament_fee enum value: SELECT unnest(enum_range(NULL::emailtype)) against prod DB (read-only)
  2. tournament_committed audience query registered: grep services/email_queries.py for the key
  3. action.html compiled MJML template at templates/email/compiled/action.html
  4. westside-ai-bot Keycloak service account exists and JWT is fetchable

Parent: board-tournament-email-agent — Ticket T1
User story: story-westside-agency-tournament-product-minting

Acceptance Criteria

  • Comment on this issue: each of 4 items marked present or missing
  • For each missing item, a new ticket created on board-westside-basketball with consumer:tournament-email-agent label
  • No DB writes occurred during audit (verify in audit log)
  • No code changes in basketball-api
  • westside-agency — project this affects
  • story:tournament-product-minting — user story this serves
  • arch:basketball-api — architecture component this touches
  • consumer:tournament-email-agent — downstream consumer
  • board-tournament-email-agent — parent sub-board
### Type Task ### Scope Read-only audit of basketball-api to verify the building blocks the tournament-email-agent's Step 2 pre-flight check needs. For each item, report present / missing in a comment on this issue. Each missing piece spawns a new ticket on `board-westside-basketball` with `consumer:tournament-email-agent`. Items to verify: 1. `EmailType.tournament_fee` enum value: `SELECT unnest(enum_range(NULL::emailtype))` against prod DB (read-only) 2. `tournament_committed` audience query registered: grep `services/email_queries.py` for the key 3. `action.html` compiled MJML template at `templates/email/compiled/action.html` 4. `westside-ai-bot` Keycloak service account exists and JWT is fetchable Parent: [board-tournament-email-agent](https://pal-e-docs.tail5b443a.ts.net/notes/board-tournament-email-agent) — Ticket T1 User story: [story-westside-agency-tournament-product-minting](https://pal-e-docs.tail5b443a.ts.net/notes/story-westside-agency-tournament-product-minting) ### Acceptance Criteria - [ ] Comment on this issue: each of 4 items marked present or missing - [ ] For each missing item, a new ticket created on `board-westside-basketball` with `consumer:tournament-email-agent` label - [ ] No DB writes occurred during audit (verify in audit log) - [ ] No code changes in basketball-api ### Related - `westside-agency` — project this affects - `story:tournament-product-minting` — user story this serves - `arch:basketball-api` — architecture component this touches - `consumer:tournament-email-agent` — downstream consumer - [board-tournament-email-agent](https://pal-e-docs.tail5b443a.ts.net/notes/board-tournament-email-agent) — parent sub-board
Author
Contributor

ABANDONED — scope replaced by westside-email-agent project. Building a generic email agent + audience-as-data system instead of one-agent-per-email-type. Safe to close.

ABANDONED — scope replaced by `westside-email-agent` project. Building a generic email agent + audience-as-data system instead of one-agent-per-email-type. Safe to close.
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
ldraney/basketball-api#511
No description provided.