Feature: admin UI to mark players as public for /teams page #111
Labels
No labels
domain:backend
domain:devops
domain:frontend
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
forgejo_admin/westside-landing#111
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
Feature
Lineage
Standalone — discovered after basketball-api migration fix. /public/teams returns empty because no players have
is_public=True.Repo
forgejo_admin/westside-appUser Story
As an admin (Marcus)
I want to toggle which players appear on the public teams page
So that I control who is visible to prospects and the public
Context
Migration 024 added
is_publicboolean to players (defaults to False). The/public/teamsendpoint filters byis_public=Trueand excludes teams with zero public players. Currently 78 players, 0 marked public. The /teams page on the landing site shows "No Kings teams available yet."Marcus needs an admin UI to bulk-toggle player visibility. Until then, the /teams page is empty.
File Targets
Files the agent should modify:
src/routes/(app)/admin/players/+page.svelte— add is_public toggle columnbasketball-api/src/basketball_api/routes/admin.py— add PATCH endpoint for is_publicFiles the agent should NOT touch:
/public/teamsendpoint — already works correctly with is_public filterAcceptance Criteria
Test Expectations
curl -s https://basketball-api.tail5b443a.ts.net/public/teams | python3 -m json.toolConstraints
westside-app-playgroundprototypeChecklist
Related
project-westside-basketballbasketball-api#183— migration that added is_public fieldScope Review: NEEDS_REFINEMENT
Review note:
review-455-2026-03-26Cross-repo scope needs splitting; Related section references wrong issue.
forgejo_admin/basketball-api. This issue (#111) should be frontend-only with adepends:reference.basketball-api#183is cited as the is_public migration but is actually "Bug: CrashLoopBackOff." The actual migration is revision 024 (024_add_is_public_to_players.py).Refinement (post review-455)
Addressed findings:
Cross-repo split. Creating separate
basketball-apiissue for the PATCH endpoint. This ticket (#111) is frontend-only — scoped towestside-appadmin players page. Depends on the API ticket.Wrong Related reference fixed. Was:
basketball-api#183(CrashLoopBackOff). Should reference: migration 024 (024_add_is_public_to_players.py) which added theis_publiccolumn.Playground-first constraint. This is an
(app)route — needswestside-app-playgroundprototype before code. Labeledscope:playground-first.Updated scope (frontend only)
src/routes/(app)/admin/players/+page.svelte— add is_public toggle per playerStatus: READY (but depends on API ticket + playground design)
Scope Review: NEEDS_REFINEMENT
Review note:
review-455-2026-03-27Board item #455 is stale — this issue has been superseded by the refined split.
westside-app#122(frontend, board #467, in_progress) andbasketball-api#189(backend, closed/merged). This ticket (#111) is no longer the active spec.basketball-api#183(CrashLoopBackOff) instead of migration 024. Moot if #111 is closed.Closing — Superseded
Scope review (
review-455-2026-03-27) found this ticket has been superseded:westside-app#122— frontend is_public toggle (board item #467, in_progress)basketball-api#189— PATCH visibility endpoint (already closed/merged)The refined split covers all scope from this ticket. Closing as superseded.