Current HF baseline metric · 6,142 test examples · GPT-5.6-sol diagnosis snapshot

Video Games:
what to fix next

Current HF baseline Hit@10 is 10.0% (616/6,142). The judged snapshot used for the diagnosis below is 8.7%. In that snapshot, the largest failure mode is slate waste at 43% of all examples, and 23% of targets fall into the two lowest predictability levels. That rating flags weak observed signal; it does not establish a hard ceiling for every model.
Data provenance. Current HF baseline: 616/6,142 = 10.03% Hit@10. The diagnosis below uses the GPT-judged snapshot: 536/6,142 = 8.73%. 123 beam rows differ, so the affected cases must be re-judged before the diagnosis buckets can be refreshed.
The exact current-baseline Hit@10 above is recomputed from the HF baseline file. Bucket sizes, charts and case files below remain tied to the judged snapshot until changed beam rows are re-judged.
01 · Diagnosis

Every 100 examples, sorted by what went wrong

Five mutually exclusive buckets from the judged analysis snapshot. Each one has a different owner and a different fix, so the mix, not the headline Hit@10, is what should drive the next run.

9%
Slate waste43%
Low predictability23%
Wrong reasoning22%
3%
Hit 9% 536Slate waste 43% 2,657Low predictability 23% 1,391Wrong reasoning 22% 1,344Interest coverage gap 3% 214
Hit9%536
Exact target inside the beam-10.
Research angle · Use predictability as an RL curriculum: begin with high-signal targets to reduce reward sparsity, then add harder and more novel targets. Keep exact repeats separate so early reward does not become copying.
Slate waste43%2,657
Target was inferable, the CoT named the right interest, the beam held related items, but not the target.
Research angle · Evaluation fixes one CoT and decodes ten items, but training produces one item from each of 16 separately generated CoTs. On Video Games, the ten outputs cover only 3.0 Code-1 branches, and the largest branch takes 6.2 slots. Align training with inference by fixing one CoT and sampling several items under it. Score the set with the existing target reward plus a relevance-aware diversity reward for covering distinct Code-1 and Code-1+2 prefixes.
Low predictability23%1,391
A miss where the judge found little or no signal for the target in the observed history (one of the two lowest levels on the five-level predictability scale).
Research angle · Use predictability to allocate RL compute: filter or down-weight weak-signal examples before rollout, while keeping the full test set for evaluation.
Wrong reasoning22%1,344
Target was inferable, but the CoT never identified the interest it belongs to.
Research angle · Give a graded process reward for how closely the reasoning's inferred interest matches the target interest. A clearly aligned interest receives more credit than a nearby but incomplete one; generic or wrong interests receive zero.
Interest coverage gap3%214
The CoT mentioned the target interest, but none of the ten beam items came from that interest.
Research angle · Mentioning an interest is not the same as selecting it. Ask the CoT to emit ranked intents, allocate beam slots across the selected intents, and reward whether the final slate covers them.
02 · Where it leaks

The pipeline funnel

Each stage keeps only the examples that survived the previous one. The stage with the biggest drop is where the next study is worth the most.

All test examples
6,142 · 100%
Target predictability is level 3 or above
4,744 · 77%
−23 ptshigher-signal slice used below
CoT identified the target's interest
3,321 · 54%
−23 ptsreasoning stage
Beam contains a related item
3,107 · 51%
−3 ptscandidate generation stage
Beam contains the exact target
450 · 7%
−43 ptsslate / ranking stage
03 · Research agenda

Ranked by how many examples they could move

Ordered by bucket size. Evidence is auto-computed from this split; each direction is written as a question, a study that answers it, and the claim that study would let you defend.

#1

The ten answers all run down the same branch

43%2,657 examples
In this bucket the model already knows what the user wants. It just spends the 10 slots badly.
Evidence from this split
  • 2,657 examples (43%), the largest single bucket
  • the 10 answers sit on only 3.0 distinct first codes, and the biggest branch alone takes 6.2 of the 10 slots (11% of examples put all 10 under one first code)
  • mean interest coverage 5.0/10 slots, redundancy 3.0/5
  • 0.9 of 10 slots re-recommend items already in the history, while only 2.9% of targets are literal repeats
  • judge's own top prescription here: improve beam search
Research direction
Question

Where does the redundancy come from? Not from the item codes: when the ten answers do spread across more first codes, the judge sees more distinct interests and rates redundancy lower, so different first codes really do mean different products. It comes from the shape of training. Each of the 16 rollouts writes its own thinking and then one item, so training gets its variety by varying the thought. At evaluation the thought is frozen and all ten items come from one conditional distribution, and that distribution was never trained to spread.

Study

Change the shape of the group before changing the reward. Sample a few thoughts, hold each one fixed, and sample several items under it. Those items share the evaluator's conditioning, so they are a legitimate stand-in for the decoded list, which 16 independently sampled rollouts are not. Reward that set by how many distinct interests it covers as well as by whether the target is in it, and give each item credit equal to how much the set score drops without it. Put the greedy thought in the group, since that is the one evaluation uses.

Claim to defend

A set-level reward computed under a fixed thought raises coverage at equal or better exact match, and it does so by changing the policy, not the decoder. The supporting measurement is that training buys its diversity from the reasoning while evaluation cannot, so the number everyone reports comes from a distribution nobody trained.

two caveats worth stating up front: hit rate peaks at three distinct first codes and drops after that, but a model that spreads is usually a model that is unsure, so this is correlation and only a controlled training run separates the two. And sampling items under a fixed thought is still not the same as beam search taking the most likely ones. Redundancy 4-5 hits 7.8% vs 14.6% at redundancy 1-2, same first caveat
#2

Separate model quality from target predictability

23%1,391 examples
The two lowest predictability levels form a large weak-signal slice, but the judge rating is not a universal ceiling.
Evidence from this split
  • 1,398 examples (23%) fall into predictability levels 1 or 2
  • mostly broadening (71%) and exploration (20%) targets
  • Hit@10 on that slice is 0.5% vs 18.6% for levels 4 and 5
  • the judge prescribes down-weighting for 95% of them
Research direction
Question

How do method comparisons change when examples are stratified by how much target signal is visible in the observed history?

Study

Learn a predictability estimator from history statistics alone, calibrated against the LLM judge's rating, and use it twice: to publish predictability-stratified leaderboards for existing baselines, and to weight the RL objective by estimated learnability. Pair it with a graded semantic reward (category, brand, embedding distance) that scores near-misses instead of zeroing them.

Claim to defend

If stratification compresses or reorders the gaps between published methods, the field's headline metric is sensitive to test-set composition. A released predictability annotation for standard splits would make that sensitivity measurable.

the deliverable is a predictability-stratified leaderboard, not one more number on the old one
#3

Recommendation as a testbed for verifiable reasoning

22%1,344 examples
Identifying the target's interest is the strongest single predictor of a hit in this split.
Evidence from this split
  • CoT names the right interest → Hit@10 13.6% (3,321 ex); it doesn't → 5.6% (1,423 ex), a 2.4× gap
  • 1,344 examples (22%) are inferable targets lost purely at this stage
  • dominant failure modes: wrong interest 69%, unsupported claim 14%
  • CoT↔answer consistency is already 4.2/5, so the decoder faithfully executes bad reasoning
Research direction
Question

Recommendation is the rare reasoning domain with a verifiable intermediate: the interest a CoT commits to can be checked against the target's own category or brand. Does process supervision on that latent beat outcome-only RL, and is the CoT causal or decorative?

Study

Two studies. (1) Causality: counterfactually edit the CoT's stated interest, regenerate the answer, and measure how far it moves; a decorative CoT will barely shift. (2) Supervision: train a process reward on interest identification, or treat intent as a latent variable with the CoT as its amortised inference and optimise an ELBO-style objective, then compare against exact-match-only RL at matched compute.

Claim to defend

Evidence on whether process rewards beat outcome rewards in a domain where the intermediate step is automatically checkable, plus a causal measurement of CoT faithfulness that does not rely on human raters. Both are open questions in the reasoning literature and free of label cost here.

the decoder follows its own CoT closely, which is exactly what makes the causal edit test readable
#4

Turn mentioned interests into slate coverage

3%214 examples
The CoT mentions the target interest, but the slate allocates no item to it.
Evidence from this split
  • 214 examples (3%), the lowest volume and so the lowest priority
  • 52.3% never make a clear interest decision; only 14.5% are explicit CoT-to-answer mismatches
  • 96.3% are judged under-diversified
  • mean interest coverage here is only 3.8/10
Research direction
Question

Is the target interest merely mentioned, actually selected, or selected but omitted from the final slate? The current boolean cannot distinguish those stages.

Study

Require the CoT to emit a ranked intent list before the SID. Allocate item samples or beam slots across those intents, then add a set-level reward for covering the selected intents with relevant items. Count it as a grounding failure only when a selected intent receives no matching item.

Claim to defend

A structured intent-to-slate interface separates reasoning selection from candidate coverage, so each failure gets the reward and intervention it actually needs.

smallest bucket; use it to diagnose intent selection and slate allocation, not as a headline gain
Sensitivity · linear what-if, not a promise
Judged-snapshot Hit@10 is 8.7%. If a change converted part of a bucket into hits:
19.5% from 8.7%
if 25% of slate waste (2,657 examples) converted to hits
14.2% from 8.7%
if 25% of wrong reasoning (1,344 examples) converted to hits
14.4% from 8.7%
if 25% of low predictability (1,391 examples) converted to hits
9.6% from 8.7%
if 25% of interest coverage gap (214 examples) converted to hits
04 · Evidence

Five charts that carry the argument

Green = share of that bucket where the exact target made the beam-10. Grey = how many examples sit in the bucket. All relationships are descriptive, not causal.

Takeaway

Hit@10 is mostly decided by what kind of next-item it is

Repeat targets are hit 22.0% of the time, exploration targets 0.0%. The benchmark is dominated by broadening targets (38%), the hardest large class, so a model can look better simply by facing an easier intent mix. Report Hit@10 per relation, not just the average.

repeat 291 examples · 5% of split
22.0% hit
same subcategory 1,446 examples · 24% of split
11.2% hit
same brand or series 976 examples · 16% of split
20.0% hit
complementary 837 examples · 14% of split
5.0% hit
broadening 2,317 examples · 38% of split
3.2% hit
exploration 275 examples · 4% of split
0.0% hit
Hit@10 within the bucket bucket size · target relation to history
Takeaway

Performance changes sharply with target predictability

The two lowest predictability levels cover 1,398 examples (23%) and hit 0.5%; levels 4 and 5 hit 18.6%. Report these slices separately. The judge label identifies weak observed signal, but it does not prove irreducible error.

predictability level 1 276 examples · 4% of split
0.0% hit
predictability level 2 1,122 examples · 18% of split
0.6% hit
predictability level 3 2,486 examples · 40% of split
4.4% hit
predictability level 4 1,792 examples · 29% of split
16.4% hit
predictability level 5 466 examples · 8% of split
27.0% hit
Hit@10 within the bucket bucket size · judge's inferability rating
Takeaway

Naming the right interest is the biggest controllable lever

Among inferable targets, a CoT that identifies the target's interest hits 13.6%; one that doesn't hits 5.6%, a 2.4× gap that is far larger than any decoding knob. And with CoT↔answer consistency at 4.2/5, the decoder already follows whatever the CoT decides, so fixing the CoT should convert directly into hits.

CoT identified the target's interest 3,321 examples · 54% of split
13.6% hit
CoT did not 1,423 examples · 23% of split
5.6% hit
…judged harmful 1,895 examples · 31% of split
8.4% hit
…judged no added value 49 examples · 1% of split
0.0% hit
…judged partly useful 2,787 examples · 45% of split
13.1% hit
…judged useful 13 examples · 0% of split
30.8% hit
Hit@10 within the bucket bucket size · inferable examples only (predictability ≥3)
Takeaway

The right slate width is domain-specific: here it is 6–10 interests

Among inferable targets the best-performing slate covers 6–10 interests (13.2% Hit@10 over 1,769 examples), and less redundancy goes with more hits. That makes diversity a tunable reward term rather than a fixed rule: pick the per-domain target coverage, then reward the beam for hitting it.

beam covers 1–3 interests 1,016 examples · 17% of split
9.7% hit
beam covers 4–5 interests 1,959 examples · 32% of split
10.1% hit
beam covers 6–10 interests 1,769 examples · 29% of split
13.2% hit
redundancy low 1–2 1,298 examples · 21% of split
14.6% hit
redundancy medium 3 1,865 examples · 30% of split
11.6% hit
redundancy high 4–5 1,581 examples · 26% of split
7.8% hit
Hit@10 within the bucket bucket size · inferable examples only
Takeaway

Roughly one slot in ten is spent re-recommending what the user already bought

The beam budget is 10 slots. 0.9 of them come back with an item already in the history, while only 2.9% of targets are literal repeats. Repeats are worth keeping: when the target really is a repeat the model hits it 24% of the time, just not 0.9 slots' worth. That gap is a clean natural experiment on how a likelihood-trained decoder allocates a fixed budget under distributional pressure from the history.

0.9 / 10 slots
average beam slots returning an SID already in the user's history (8.8% of all slots)
2.9%
of targets are literally an item the user already bought
24%
Hit@10 when the target is a repeat, the easiest slice in the split
8.4 / 10
beam items judged plausible on average. Relevance is not the bottleneck, allocation is
Show all 14 rubric distributions →
05 · Case files

Read the actual examples

Start from a failure bucket, then read history, beam and the judge's diagnosis side by side. This is where a reward-design idea gets sanity-checked against real rows.

Loading 6,142 judged examples…
06 · How to read this

Definitions

Hit@10The exact ground-truth SID appears in the 10 constrained beam-search outputs. Binary and unforgiving: a perfect substitute product counts as a miss.
Predictability 1–5Judge's estimate of how much evidence for the target appears in the history alone. A score of 1–2 means weak observed signal, not proof that every possible model must fail.
Interest coverage / redundancyHow many distinct interests the 10 beams span, and how near-duplicate they are. Together they describe how the slate budget is spent.
CoT identified target interestWhether the chain-of-thought named the interest the target belongs to, independent of whether the final SID was right.
BucketsAssigned in order: hit → low predictability (pred ≤2) → wrong reasoning (CoT missed the interest) → interest coverage gap (beam unrelated) → slate waste (everything else).
CaveatThe judge is an LLM reading titles, not the ground truth of user intent. Treat bucket sizes as a reliable steer and individual scores as noisy.