Skip to content

B4 — event roster fill view - #207

Merged
tomqwu merged 1 commit into
mainfrom
overnight-B4-roster-fill
May 19, 2026
Merged

tomqwu merged 1 commit into
mainfrom
overnight-B4-roster-fill

Conversation

@tomqwu

@tomqwu tomqwu commented May 19, 2026

Copy link
Copy Markdown
Owner

Summary

  • Per-event roster now shows role coverage — for each role in extra_data.role_counts: filled/needed and the remaining gap.
  • Roles with a gap get an inline fill control (person picker, role pre-bound) reusing the existing /a/events/{id}/assignments/add endpoint; the coverage block is in the HTMX-swapped partial so it updates live on add/remove.
  • #role-coverage[data-staffed] + .cov-row[data-role][data-gap] hooks for deterministic assertions.

Test plan

  • tests/web/test_event_roster_fill.py — gap shown, fill closes coverage (+assignment row created), no role_counts → no coverage block
  • Committed e2e tests/e2e/test_event_roster_fill.py — admin inline-fills the usher gap, volunteer then sees the shift
  • Local: full tests/e2e/ 4 passed; web+contract+openapi 209 passed; black --check api tests + ruff check api tests clean
  • CI: lint/type/test + blocking e2e lane green

Closes #206 · part of #196 (Phase B).

🤖 Generated with Claude Code

Adds a per-role coverage breakdown to the per-event roster: for each
role in extra_data.role_counts, show filled/needed and the gap, with an
inline person picker (reusing the existing assign endpoint, role
pre-bound) so an admin can close coverage gaps without the solver. The
coverage block lives in the HTMX-swapped partial so it updates on every
add/remove.

Tests: tests/web/test_event_roster_fill.py (3) and committed e2e
tests/e2e/test_event_roster_fill.py (admin fills a gap inline, the
volunteer then sees the shift).

Closes #206

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@tomqwu tomqwu added this to the Overnight — e2e workflows milestone May 19, 2026
@tomqwu tomqwu mentioned this pull request May 19, 2026
16 tasks done
@tomqwu
tomqwu merged commit 456b7c7 into main May 19, 2026
5 checks passed
@tomqwu
tomqwu deleted the overnight-B4-roster-fill branch May 19, 2026 16:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

B4 — event roster fill view (needed vs filled, inline assign)

1 participant