- Switch admin EV form to batchUpsertParticipantEVs to avoid N×N concurrent UPDATE storm (was calling upsertParticipantEV per participant, each triggering a full syncVorpForSeason) - deleteParticipantEV now resets vorpValue to "0" and calls syncVorpForSeason so remaining participants' ranks stay correct - syncVorpForSeason issues a single bulk CASE UPDATE instead of N individual UPDATE statements - Add doc warning on recalculateEV that callers must sync VORP manually - Extract REPLACEMENT_LEVEL_START/END_IDX constants; clarify comment that 12-14 is a fixed product decision, not derived from league size - Include vorpValue in draft room participant select projection - Update drizzle-orm mock to support sql.join; update test assertions to reflect single bulk-update call Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| __tests__ | ||
| $leagueId.draft-board.$seasonId.tsx | ||
| $leagueId.draft.$seasonId.tsx | ||
| $leagueId.server.ts | ||
| $leagueId.settings.tsx | ||
| $leagueId.sports-seasons.$sportsSeasonId.server.ts | ||
| $leagueId.sports-seasons.$sportsSeasonId.tsx | ||
| $leagueId.standings.$seasonId.teams.$teamId.tsx | ||
| $leagueId.standings.$seasonId.tsx | ||
| $leagueId.tsx | ||
| $leagueId.upcoming-events.tsx | ||
| new.tsx | ||