The prompt and the grader are one artefact
A real case. The prompt said "return empty rather than guess". The grader then demanded the field anyway and marked empty as wrong. The eval was punishing exactly the behaviour the deployment wanted, and scoring memorisation of a reference directory instead.
Fixing the grader moved one model from 3/12 to 8/12. No model changed. No prompt changed. The score was measuring the wrong thing the entire time.
The refusal
Do not report a score until prompt and grader have been read side by side. If they disagree anywhere, the score is invalid, not merely low.
What to check, line by line
- Abstention. If the prompt permits "I don't know" or empty, does the grader credit it? An abstention graded as an error trains you to prefer confident wrongness.
- Format. Does the grader reject an answer that is correct but shaped differently? Trailing whitespace, casing, date format, currency symbols, ordering.
- Under-specification. Anything the prompt leaves open, the grader must accept every reasonable reading of. Otherwise you are scoring mind-reading.
- Rubric drift. Where the grader applies a rubric, check whether the labels follow it. On priority classification I found the model applied my own stated rubric more consistently than my labels did.
- Schema strictness.
additionalProperties: falseagainst a field the harness itself injects will score a whole workload at zero and look like a model failure. - Leakage into the truth object. If grading metadata rides along in the ground truth, it can reach the model. One field like this scored an entire workload at 0%.
Judgement fields
If a field is one person's opinion, it does not belong in a composite score until it has two annotators and an agreement statistic. Grade it, show it, mark it not scored. Persist per-field verdicts on every attempt so a composite can never hide this again.
Output contract
- each contradiction found, quoting both the prompt line and the grader line
- fields where abstention is punished
- fields that are judgement calls with no measured agreement
- the score before and after each fix, so the size of the measurement error is visible
What this prevents
Shipping "the model only gets 25% on this" when the grader was wrong, and the six weeks of model selection that follows from believing it.