Review: New page: Teams (Kings/Queens toggle + profile gate)

review-408-2026-03-25 Review

review needs-refinement

Verdict: NEEDS_REFINEMENT

Template Completeness

  • [x] Lineage
  • [x] Repo
  • [x] User Story
  • [x] Context
  • [x] File Targets
  • [x] Acceptance Criteria
  • [x] Test Expectations
  • [x] Constraints
  • [x] Checklist
  • [x] Related
All required template sections present. Extra ### Type section is harmless.

File Targets

  • [x] teams.html — to be created. No conflict with existing team.html (singular), which is an authenticated detail page (@route /teams/[id], @auth authenticated).
  • [x] shared/style.css — exists, confirmed. Will need new toggle styles.
  • [x] shared/app.js — exists, confirmed. Will need toggle JS.
  • [ ] Nav update across all public pages — NOT listed as a file target, but acceptance criteria says "Nav updated on ALL pages." Six public pages have nav: index.html, staff.html, sponsors.html, schedule.html, register.html, success.html. These should be listed explicitly in File Targets.

Repo Placement

MISMATCH. The issue body says ### Repo: forgejo_admin/westside-playground but the Forgejo issue is filed on forgejo_admin/westside-app (issue #93). The arch:landing-site label and all context confirm the work belongs in the playground repo. The Forgejo issue should be filed on forgejo_admin/westside-playground instead, or the Repo section should be corrected to match where the issue is filed. An agent reading this issue will see the wrong repo in the Forgejo URL vs. the body.

Dependencies

  • Board item #407 ("New page: Tryouts (history + Kings/Queens toggle)") — sibling ticket, also in todo. Both tickets need a Kings/Queens toggle component. The ticket says "Same toggle pattern as Tryouts page" but no tryouts page exists in the playground, and the westside-app /tryouts page has no toggle (it is Queens-only). The referenced pattern does not exist yet.
  • Board item #410 ("Update Schedule: Kings/Queens toggle") — another sibling in todo needing the same toggle.
  • Board item #405 ("Landing page: restore original energy") — in next_up. If this lands first and changes the nav or page structure, #408 may need to account for it.
  • No dependency labels declared on #408. At minimum, one of #407 or #408 should be designated as the toggle-pattern-defining ticket, and the other should depend on it.

Acceptance Criteria

  • [x] "teams.html exists with Kings/Queens toggle" — verifiable by file existence + DOM check.
  • [x] "Each team shows coach and player roster" — verifiable visually and via DOM.
  • [x] "Some players shown with Profile Pending placeholder" — verifiable via DOM.
  • [ ] "Nav updated on ALL pages" — verifiable, but which pages? The 6 public-nav pages are not enumerated. An agent may miss some.
  • [ ] "Toggle is same pattern as Tryouts page" — NOT verifiable. No tryouts toggle exists. The pattern must be invented here or in #407 first.

Blast Radius

  • Nav changes touch 6 pages — any merge conflict risk with sibling tickets (#405, #406, #407, #409, #410) that also add nav items or pages. These should be sequenced or the nav update should be a separate atomic ticket.
  • Toggle component is shared — three tickets (#407, #408, #410) all need Kings/Queens toggle. First one to land defines the CSS/JS pattern for the others. No shared component strategy documented.
  • No impact on westside-app SvelteKit routes (the existing /teams/[id] route is separate authenticated functionality).

Recommendation

Three issues must be resolved before this ticket is READY:
  • Fix repo placement — either re-file the Forgejo issue on forgejo_admin/westside-playground, or correct the ### Repo section to say forgejo_admin/westside-app. The mismatch will confuse agents.
  • Remove or fix the tryouts toggle reference — "Same toggle pattern as Tryouts page" references a nonexistent pattern. Either (a) designate #408 as the ticket that invents the toggle pattern and remove the tryouts reference, or (b) add an explicit depends:#407 label so #407 lands first and defines the pattern.
  • Enumerate nav pages in File Targets — list the 6 public pages that need nav updates so the agent doesn't miss any.