Go to file
Matt 6d2537ec04
Build and Push Docker Image / build (push) Successful in 9m41s Details
Add per-round assignment constraints (min/max per judge)
- Add minAssignmentsPerJuror and maxAssignmentsPerJuror fields to Round model
- Update assignment router:
  - Calculate effective max from user override or round default
  - Add forceOverride parameter for manual assignment beyond limits
  - Update getSuggestions to use round constraints with min target bonus
  - Update getAISuggestions to pass constraints to AI service
- Update AI assignment service:
  - Add minAssignmentsPerJuror to constraints interface
  - Update fallback algorithm with under-min bonus scoring
  - New score weights: 50% expertise, 30% load, 20% under-min bonus
- Update round router:
  - Add new constraint fields to create/update schemas
  - Add validation for min <= max constraint
- Update admin UI:
  - Add min/max constraint fields to round edit page
  - Remove hardcoded maxPerJuror from assignments page
- Add migration files for production deployment:
  - User.bio field for judge/mentor profiles
  - Round assignment constraint fields

Constraint hierarchy:
1. User.maxAssignments (if set) overrides round default
2. Round.maxAssignmentsPerJuror is the default cap
3. Admin can force-override any limit with confirmation

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-04 16:01:18 +01:00
.gitea/workflows Fix CI: hardcode Gitea registry URL 2026-01-30 13:45:07 +01:00
docker Fix health check: use node instead of wget (not available in Alpine image) 2026-02-02 17:35:52 +01:00
docs Fix GPT-5 API compatibility and add AIUsageLog migration 2026-02-03 15:04:16 +01:00
images Initial commit: MOPC platform with Docker deployment setup 2026-01-30 13:41:32 +01:00
prisma Add per-round assignment constraints (min/max per judge) 2026-02-04 16:01:18 +01:00
public Display filtering controls inline for FILTERING round type 2026-02-03 10:33:34 +01:00
scripts Initial commit: MOPC platform with Docker deployment setup 2026-01-30 13:41:32 +01:00
src Add per-round assignment constraints (min/max per judge) 2026-02-04 16:01:18 +01:00
.dockerignore Initial commit: MOPC platform with Docker deployment setup 2026-01-30 13:41:32 +01:00
.env.example Add email password change feature and fix nginx config 2026-01-30 16:15:08 +01:00
.gitignore Initial commit: MOPC platform with Docker deployment setup 2026-01-30 13:41:32 +01:00
CLAUDE.md Fix: sync package-lock.json and update CLAUDE.md dev notes 2026-01-30 13:47:00 +01:00
DEPLOYMENT.md Initial commit: MOPC platform with Docker deployment setup 2026-01-30 13:41:32 +01:00
Notes.md Initial commit: MOPC platform with Docker deployment setup 2026-01-30 13:41:32 +01:00
components.json Initial commit: MOPC platform with Docker deployment setup 2026-01-30 13:41:32 +01:00
next.config.ts Initial commit: MOPC platform with Docker deployment setup 2026-01-30 13:41:32 +01:00
package-lock.json Remove dynamic form builder and complete RoundProject→roundId migration 2026-02-04 14:15:06 +01:00
package.json Remove dynamic form builder and complete RoundProject→roundId migration 2026-02-04 14:15:06 +01:00
postcss.config.mjs Initial commit: MOPC platform with Docker deployment setup 2026-01-30 13:41:32 +01:00
tailwind.config.ts Initial commit: MOPC platform with Docker deployment setup 2026-01-30 13:41:32 +01:00
tsconfig.json Initial commit: MOPC platform with Docker deployment setup 2026-01-30 13:41:32 +01:00