Reconcile schema with migrations and fix failed migration

- Align schema.prisma with add_15_features migration (15 discrepancies):
  nullability, column names, PKs, missing/extra columns, onDelete behavior
- Make universal_apply_programid migration idempotent for safe re-execution
- Add reconciliation migration for missing FKs and indexes
- Fix message.ts and mentor.ts to match corrected schema field names

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-08 14:37:32 +01:00
parent 04d0deced1
commit e0e4cb2a32
18 changed files with 1174 additions and 353 deletions

View File

@@ -674,11 +674,23 @@ export const evaluationRouter = router({
})
}
return assignments.map((a) => ({
project: a.project,
evaluation: a.evaluation,
assignmentId: a.id,
}))
// Fetch the active evaluation form for this round to get criteria labels
const evaluationForm = await ctx.prisma.evaluationForm.findFirst({
where: { roundId: input.roundId, isActive: true },
select: { criteriaJson: true, scalesJson: true },
})
return {
items: assignments.map((a) => ({
project: a.project,
evaluation: a.evaluation,
assignmentId: a.id,
})),
criteria: evaluationForm?.criteriaJson as Array<{
id: string; label: string; description?: string; scale?: string; weight?: number; type?: string
}> | null,
scales: evaluationForm?.scalesJson as Record<string, { min: number; max: number }> | null,
}
}),
// =========================================================================