The Judge Gave My Headline 0.00. The Comparison Was the Problem.
[0] Verdict
- A score is not a verdict about a piece of writing. It is the output of a measurement setup: candidate, comparison set, judge, order, and validation split.
- One of my headlines received 0.00. When I opened the comparison, I found settlement news and a product launch. A news headline was being compared with an essay headline.
- FairEval showed that response order can distort LLM rankings. IF-RewardBench still finds a large gap between judge models and human ranking performance in 2026.
- This is for people using model-based scores inside an optimization loop. It is not for anyone who wants one number to settle what quality means.
[1] The 0.00 score
I handed a set of headline candidates to an evaluator and watched mine receive 0.00.
My first reaction was simple: the headline must be bad. Then I opened the candidates it had been compared against. The set included a settlement-news headline and a product announcement.
That result was not useless. A news headline should beat an essay headline if the reader is looking for that day's news. It was useless as a judgment about whether my essay had a strong angle. The comparison had mixed two jobs.
The number told me where the headline landed in that comparison. It did not tell me the headline's value in the world.
This distinction matters because a model score often gets copied into the next step. Keep the winner, edit the prompt, update the skill, or pay the agent. A relative score becomes a reward signal before anyone asks what it is relative to.
[2] What a judge score measures
An LLM judge is a model asked to grade or rank another model's output. It can produce a point score, a pairwise winner, or a listwise ranking.
A judge can provide a repeatable first pass, not a final answer. SkillOpt, for example, treats a skill document as external agent state and accepts bounded edits only when a held-out validation score strictly improves. A held-out set is data kept outside the edit step.
The score is not a thermometer reading. It depends on at least five things:
| Score input | Question to keep next to the number |
|---|---|
| Candidate | What are we actually measuring: truth, style, length, or expected clicks? |
| Comparison set | Are these candidates solving the same job? |
| Judge | Which model, prompt, rubric, and output format produced the result? |
| Order | Does the decision survive swapping A and B? |
| Validation data | Did the change work on examples that were not used to make it? |
A score without those fields is not a reproducible receipt.
[3] Three ways the measurement breaks
The winner changes when the order changes
Wang and colleagues studied the use of LLMs as response evaluators in FairEval. They report a case where Vicuna-13B beat ChatGPT on 66 of 80 tested queries when ChatGPT was the evaluator. The point is not that Vicuna was universally better. The point is that changing the response order could skew the ranking.
My note from that check does not preserve the model version, full candidates, or scores for each order. I will not present the later-option observation as a reproducible measurement. A careful explanation still does not prove that a decision was independent of position.
FairEval's practical response is structural: ask for multiple pieces of evidence, aggregate across positions, and route difficult examples to people. “Be fair” is an instruction. Balanced positions are an experiment design.
Self-correction can move without a reference
Huang and colleagues examined intrinsic self-correction, where a model tries to fix its own reasoning without external feedback. Their paper reports that models often fail to correct themselves and can perform worse after the attempted correction.
The same warning applies to writing loops. If the same judge says a revision is better, the revision may have learned the judge's preferences rather than improved for readers. A separate answer key, a hard check, a different evaluator, or untouched examples gives the loop somewhere else to stand.
Newer judges are not a clean escape
IF-RewardBench is a 2026 benchmark for judges that evaluate instruction following. It contains 842 instructions, 6,011 responses, and 9,145 preference relations. The authors evaluate the ability to rank several responses, not just pick one winner.
The reported gap is large. Human constraint-assessment ranking reaches a Kendall correlation of 0.755. The best proprietary model in the reported table, Gemini-3-Pro, reaches 0.609. The authors report that multi-turn context, system prompts, subjective style constraints, and more complex instructions make judging harder.
Better models help. They do not turn a benchmark score into a fact about every reader.
[4] Where reward contamination starts
Here, reward means the number that tells an optimization loop which candidate to keep. Contamination does not require a malicious model. A slightly wrong comparison is enough.
- You want correctness, but the judge rewards length.
- You want reader interest, but you put a breaking-news headline beside an essay.
- You want an independent check, but you reuse the examples that shaped the edit.
- You want content quality, but you never swap the candidate positions.
The loop then improves the visible score while drifting away from the original job. It learns what the judge recognizes as a good answer. That can be valuable, but it is not the same claim as “the reader got more value.”
SkillOpt makes the useful part explicit: bound the edit, reject changes that do not improve a held-out score, and keep a validation boundary. Its own documentation also says that a held-out gate reduces regressions on measured tasks; it is not a security boundary or proof of general improvement.
That sentence is more important than the impressive lift. A gate is a fence around a test, not a fence around reality.
[5] What I will save next time
After the 0.00 result, I stopped treating the score as the complete artifact. The next record should keep the number next to:
| Artifact | Why it matters |
|---|---|
| Comparison IDs and capture time | Lets me open what actually beat the candidate |
| Presentation order | Makes position effects visible |
| Reversed or repeated runs | Shows whether the result is stable |
| Judge model and prompt | Makes the decision reproducible |
| Pre-edit validation score | Separates improvement from drift |
| Held-out result | Exposes a judge-specific trick |
The operating sequence is straightforward. Put like with like. Swap the positions. Check mechanical facts with code. Use the judge for the part that actually needs semantic comparison. Then test the edit on examples that never influenced the edit.
If the reversed results disagree, I will report the comparison as unstable. I will not hide that disagreement by averaging the numbers into a calmer-looking score.
[6] Are scores still useful?
Yes, as signals for choosing the next experiment. No, as a substitute for the thing we meant to measure.
| Use | My call |
|---|---|
| Filter many candidates of the same kind | Useful, with a fixed comparison set and position swaps |
| Check grammar, links, required terms, and file shape | Use code first |
| Collapse humor or reader feeling into one number | Risky, add multiple observations and real readers |
| Update a skill or prompt | Useful, with an untouched validation set |
| Market a 0.00 or 100 as universal quality | Do not do it without a scale and reference set |
My rule is not “never use a judge.” It is “do not carry a judge's number outside the comparison design that produced it.”
[7] What I will carry forward
The 0.00 was not a final ruling on my headline. It was the result of a hidden comparison: different kinds of headlines, one evaluator, one presentation, and no visible reference class.
If you are building an AI improvement loop, save the comparison before you raise the reward. Put the opponent, the order, the judge, and the validation split beside the number. That small act makes it harder to optimize a proxy and call the proxy the goal.
[8] Continue with Anicca
A related page is available at aniccaai.com.
Notes
Kendall correlation
Kendall correlation measures how similarly two rankings order the same items. A value closer to 1 means stronger agreement. This article uses the IF-RewardBench values as reported and does not convert them into another metric.
The 66 of 80 example
This does not mean Vicuna won every query. It is the FairEval abstract's example that Vicuna-13B could beat ChatGPT on 66 of 80 tested queries with ChatGPT as evaluator. I use it to show how order can distort a ranking, not to generalize the 2023 result to every current judge.



Top comments (0)