Fix QP standings: filter to drafted/points-earning participants with correct global ranks #76

Merged
chrisp merged 2 commits from fix/qp-standings-filter-drafted-and-points into main 2026-06-06 16:51:47 +00:00
Owner

Summary

  • Filter the qualifying points standings table to show only participants with QP > 0 or drafted by any team in the league — undrafted 0-QP participants are now hidden
  • Compute global ranks with tie handling across the full participant field before filtering, so displayed rank numbers and the top-8 "Points Line" cutoff remain correct after rows are removed (previously ranks restarted from 1 on the filtered subset)
  • Fix two flaky CI timeout tests: world-cup simulator (100 → 50 iterations) and SportsSection userEvent test (explicit 15s timeout)

Test plan

  • Open a golf or tennis league sports-season page — confirm undrafted 0-QP participants no longer appear
  • Confirm participants with QP > 0 appear regardless of draft status
  • Confirm all drafted participants appear regardless of QP total
  • Verify rank numbers reflect global standing (e.g. if ranks 1–3 are filtered out, next visible participant shows as rank 4, not rank 1)
  • Verify the Points Line appears after the correct global rank-8 row
  • npm run typecheck passes
  • npm run test:run passes (2351 tests)

Generated with Claude Code

## Summary - Filter the qualifying points standings table to show only participants with QP > 0 or drafted by any team in the league — undrafted 0-QP participants are now hidden - Compute global ranks with tie handling across the **full** participant field before filtering, so displayed rank numbers and the top-8 "Points Line" cutoff remain correct after rows are removed (previously ranks restarted from 1 on the filtered subset) - Fix two flaky CI timeout tests: world-cup simulator (100 → 50 iterations) and SportsSection userEvent test (explicit 15s timeout) ## Test plan - [ ] Open a golf or tennis league sports-season page — confirm undrafted 0-QP participants no longer appear - [ ] Confirm participants with QP > 0 appear regardless of draft status - [ ] Confirm all drafted participants appear regardless of QP total - [ ] Verify rank numbers reflect global standing (e.g. if ranks 1–3 are filtered out, next visible participant shows as rank 4, not rank 1) - [ ] Verify the Points Line appears after the correct global rank-8 row - [ ] npm run typecheck passes - [ ] npm run test:run passes (2351 tests) Generated with Claude Code
chrisp added 1 commit 2026-06-06 16:39:10 +00:00
Fix QP standings: filter to drafted/points-earning participants with correct global ranks
Some checks failed
🚀 Deploy / 🧪 Test (pull_request) Failing after 2m33s
🚀 Deploy / ʦ🔍 Typecheck & Lint (pull_request) Successful in 1m20s
🚀 Deploy / 🐳 Build (pull_request) Has been skipped
🚀 Deploy / 🚀 Deploy (pull_request) Has been skipped
73f0256ff5
- Filter the QP table to show only participants with QP > 0 or drafted by any team in the league (undrafted 0-QP participants hidden)
- Compute global ranks with tie handling across the full field before filtering so displayed rank numbers and the top-8 Points Line remain correct after rows are removed
- Fix flaky CI timeouts: world-cup simulator test (100 → 50 iterations), SportsSection userEvent test (explicit 15s timeout)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
chrisp added 1 commit 2026-06-06 16:47:32 +00:00
Fix remaining world-cup simulator test timeouts (100 → 20 iterations)
All checks were successful
🚀 Deploy / 🧪 Test (pull_request) Successful in 2m33s
🚀 Deploy / ʦ🔍 Typecheck & Lint (pull_request) Successful in 1m19s
🚀 Deploy / 🐳 Build (pull_request) Has been skipped
🚀 Deploy / 🚀 Deploy (pull_request) Has been skipped
a4ef8c3aa1
Column-sum and structural assertions are mathematically exact regardless of
iteration count; 20 iterations runs the suite in ~270ms vs the 5s CI limit.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
chrisp merged commit 350620ca67 into main 2026-06-06 16:51:47 +00:00
chrisp deleted branch fix/qp-standings-filter-drafted-and-points 2026-06-06 16:51:48 +00:00
Sign in to join this conversation.
No description provided.