Commit graph

1 commit

Author SHA1 Message Date
Chris Parsons
8f55d0d135
Prevent duplicate participants within a sports season, fixes #69 (#236)
- Add unique index on (sports_season_id, name) in participants table
- findParticipantByName uses case-insensitive lower() comparison
- Single add: check for existing name before insert, return clear error
- Bulk add: load existing names once upfront (1 query vs N), dedup
  input case-insensitively, report skipped names in UI
- Fix golf-skills and surface-elo routes which called createParticipant
  without any duplicate guard (would have thrown DB constraint errors)

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-27 01:09:04 -07:00