Expected Score value with its rubric, distribution, and confidence.
score is the expected position on the rubric and may be fractional, because
it summarizes the distribution rather than selecting one level. legend
holds the original rubric descriptions and probabilities the distribution,
both keyed by zero-based level. confidence, from 0 to 1, is derived
from the level distribution.
legend and probabilities are typed Record<string, ...> because JSON
keys are strings; legend[0] still works.
ScoreAnswer: z.infer<typeof scoreAnswerSchema>