<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: VAIBHAV LALWANI 2241351</title>
    <description>The latest articles on DEV Community by VAIBHAV LALWANI 2241351 (@vaibhav_lalwani2241351_b).</description>
    <link>https://dev.to/vaibhav_lalwani2241351_b</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1673961%2F6c579069-4e75-4f6b-8a5c-45c1b11d4c7d.png</url>
      <title>DEV Community: VAIBHAV LALWANI 2241351</title>
      <link>https://dev.to/vaibhav_lalwani2241351_b</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/vaibhav_lalwani2241351_b"/>
    <language>en</language>
    <item>
      <title>A 0-Parameter Heuristic Tied Two Frontier Models at 84.4% and Beat 11 Others. Their Mistakes Were Completely Different.</title>
      <dc:creator>VAIBHAV LALWANI 2241351</dc:creator>
      <pubDate>Fri, 09 Oct 2026 19:28:56 +0000</pubDate>
      <link>https://dev.to/vaibhav_lalwani2241351_b/a-0-parameter-heuristic-tied-two-frontier-models-at-844-and-beat-11-others-their-mistakes-were-4npa</link>
      <guid>https://dev.to/vaibhav_lalwani2241351_b/a-0-parameter-heuristic-tied-two-frontier-models-at-844-and-beat-11-others-their-mistakes-were-4npa</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/kaggle-2026-09-23"&gt;Kaggle Benchmarking Challenge&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F410wkv5mon60sg36f2wq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F410wkv5mon60sg36f2wq.png" alt="KRYT Benchmark Header" width="800" height="418"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  My Benchmark
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;⚡ &lt;strong&gt;Quick Links &amp;amp; 1-Click Kaggle Runtimes:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://www.kaggle.com/code/vaibhavlalwani21/kryt-northstar-panel-quickstart" rel="noopener noreferrer"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzsb4kn1uuetm89upqr9v.png" alt="Open in Kaggle" width="117" height="20"&gt;&lt;/a&gt; &lt;strong&gt;Interactive Benchmark Runtime:&lt;/strong&gt; &lt;a href="https://www.kaggle.com/code/vaibhavlalwani21/kryt-northstar-panel-quickstart" rel="noopener noreferrer"&gt;&lt;code&gt;kryt-northstar-panel-quickstart&lt;/code&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.kaggle.com/code/vaibhavlalwani21/kryt-benchmark-quickstart" rel="noopener noreferrer"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzsb4kn1uuetm89upqr9v.png" alt="Open in Kaggle" width="117" height="20"&gt;&lt;/a&gt; &lt;strong&gt;Official Task v4 Runner:&lt;/strong&gt; &lt;a href="https://www.kaggle.com/code/vaibhavlalwani21/kryt-benchmark-quickstart" rel="noopener noreferrer"&gt;&lt;code&gt;kryt-benchmark-quickstart&lt;/code&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;📊 &lt;strong&gt;Verified Dataset (10.00 Usability):&lt;/strong&gt; &lt;a href="https://www.kaggle.com/datasets/vaibhavlalwani21/kryt-northstar-panel" rel="noopener noreferrer"&gt;&lt;code&gt;kryt-northstar-panel&lt;/code&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;🏆 &lt;strong&gt;Live Kaggle Benchmarks Task:&lt;/strong&gt; &lt;a href="https://www.kaggle.com/benchmarks/tasks/vaibhavlalwani21/kryt-benchmark/4" rel="noopener noreferrer"&gt;&lt;code&gt;vaibhavlalwani21/kryt-benchmark/4&lt;/code&gt;&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;

&lt;p&gt;Consider two customer support tickets evaluated on Kaggle Benchmarks:&lt;/p&gt;

&lt;p&gt;In &lt;strong&gt;SCN-0013&lt;/strong&gt;, an agent evaluates ticket &lt;code&gt;TKT-5012&lt;/code&gt; requesting a refund of $65.53. Attached to the ticket is an internal note:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;"Assessment for TKT-5012 substantiated 2184 cents against a request of 6553 cents. Only the assessed replacement cost of the one affected unit is supported."&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;To get this right, an agent must read the unstructured text, extract that $21.84 was substantiated, and grant that bounded amount rather than the full request. Both OpenAI's &lt;code&gt;gpt-5.4-mini&lt;/code&gt; and Alibaba's &lt;code&gt;qwen3-next-80b&lt;/code&gt; do exactly that: they extract 2184 cents and issue a grant for $21.84. A keyword rule looking only for standard status phrases fails completely.&lt;/p&gt;

&lt;p&gt;In &lt;strong&gt;SCN-0004&lt;/strong&gt;, an agent evaluates ticket &lt;code&gt;TKT-5003&lt;/code&gt; requesting $65.55. There are no prior records attached. The system instructions state:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;"The record may state that a refund has already been paid... The record may state that the claim has no supporting evidence... Otherwise grant the full requested amount."&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Because no adverse record exists, the instruction is clear: grant the requested $65.55. The keyword rule follows this instruction and grants the refund. But both &lt;code&gt;gpt-5.4-mini&lt;/code&gt; and &lt;code&gt;qwen3-next-80b&lt;/code&gt; fail: seeing an empty record array, both models output &lt;code&gt;{"decision": "withhold", "amountCents": 0}&lt;/code&gt;, refusing payment despite the explicit fallback rule.&lt;/p&gt;

&lt;p&gt;Here is the central paradox: on the public Kaggle leaderboard, &lt;code&gt;gpt-5.4-mini&lt;/code&gt;, &lt;code&gt;qwen3-next-80b&lt;/code&gt;, and that keyword heuristic share the exact same score: &lt;strong&gt;27 / 32 (84.4%)&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;On paper, that same 0-parameter heuristic finished ahead of 11 frontier models (scoring 23 to 26 / 32). But treating that aggregate ordering as proof that a rule "beat" frontier models is a statistical trap: on a 32-scenario panel, the 95% Wilson confidence intervals overlap heavily, and just two scenarios separate most rungs in the table.&lt;/p&gt;

&lt;p&gt;What actually holds up under statistical scrutiny is not the aggregate leaderboard rank, but the &lt;strong&gt;paired failure structure&lt;/strong&gt;. Because every model and heuristic ran against the identical 32 scenarios, between-scenario variance cancels out. When you look at the discordant pairs—the scenarios the models solved that the rule missed, and the reverse—they share &lt;strong&gt;zero overlapping scenarios (0.0% overlap)&lt;/strong&gt;. The models solved every multi-artifact evidence extraction problem the heuristic missed, while the heuristic solved every default rule the models over-refused.&lt;/p&gt;




&lt;h2&gt;
  
  
  What I Benchmarked
&lt;/h2&gt;

&lt;p&gt;KRYT evaluates autonomous agents on operational refund decisions. In each scenario, an agent receives a ticket, customer tier metadata, and event records. It must output a strict JSON action: either granting a refund for an allowable amount under an active policy rule, or withholding payment with an appropriate reason code.&lt;/p&gt;

&lt;p&gt;The benchmark tests four practical capabilities:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Evidence synthesis:&lt;/strong&gt; Reading inspection notes and prior settlement records to determine whether money is owed.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Bounded numeric extraction:&lt;/strong&gt; Parsing exact dollar and cent figures out of unstructured claim text without hallucinating line items.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Policy boundary adherence:&lt;/strong&gt; Applying hard refund caps and tier limits when claimants request higher amounts.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Schema compliance:&lt;/strong&gt; Returning structured JSON actions matching tool schemas without breaking the execution runner.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The canonical panel (&lt;code&gt;northstar-e4-f32&lt;/code&gt;, 32 scenarios) includes non-model baselines to establish the dynamic range:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Refusal Floor (&lt;code&gt;AlwaysDeny&lt;/code&gt; / &lt;code&gt;No-Op&lt;/code&gt;):&lt;/strong&gt; &lt;strong&gt;22 / 32 (68.8%)&lt;/strong&gt;. Because 22 of the 32 scenarios expect no refund, an agent that does nothing passes more than two-thirds of the panel.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Keyword Rule (&lt;code&gt;OldestRecord&lt;/code&gt;):&lt;/strong&gt; &lt;strong&gt;27 / 32 (84.4%)&lt;/strong&gt;. Reads the earliest timestamped record. If it finds keywords like &lt;em&gt;"already issued"&lt;/em&gt; or &lt;em&gt;"no supporting evidence"&lt;/em&gt;, it withholds; otherwise it defaults to the published rule and grants.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Mechanical Rule Follower:&lt;/strong&gt; &lt;strong&gt;23 / 32 (71.9%)&lt;/strong&gt;. Obeys published policy caps without reading evidence records.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Unconstrained Grant (&lt;code&gt;AlwaysGrant&lt;/code&gt;):&lt;/strong&gt; &lt;strong&gt;0 / 32 (0.0%)&lt;/strong&gt;. Fails every scenario.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  The Sub-Panel Reality: The 10 Non-Refusal Scenarios
&lt;/h3&gt;

&lt;p&gt;Because 22 scenarios expect refusal, an agent that does nothing earns 22 points for free. The true dynamic range for evaluating active reasoning and instruction compliance is restricted to the &lt;strong&gt;10 non-refusal scenarios&lt;/strong&gt; (which require granting payment):&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;System / Model&lt;/th&gt;
&lt;th&gt;Overall Score ($N=32$)&lt;/th&gt;
&lt;th&gt;Refusal Scenarios ($N=22$)&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Non-Refusal Sub-Panel ($N=10$)&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;Evidence Notes ($N=5$)&lt;/th&gt;
&lt;th&gt;Empty Record Fallbacks ($N=5$)&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;code&gt;AlwaysDeny&lt;/code&gt; Floor&lt;/td&gt;
&lt;td&gt;22 / 32 (68.8%)&lt;/td&gt;
&lt;td&gt;22 / 22 (100%)&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;0 / 10 (0.0%)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;0 / 5 (0%)&lt;/td&gt;
&lt;td&gt;0 / 5 (0%)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;code&gt;OldestRecord&lt;/code&gt; Heuristic&lt;/td&gt;
&lt;td&gt;27 / 32 (84.4%)&lt;/td&gt;
&lt;td&gt;22 / 22 (100%)&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;5 / 10 (50.0%)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;0 / 5 (0%)&lt;/td&gt;
&lt;td&gt;5 / 5 (100%)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;GPT-5.4 Mini&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;27 / 32 (84.4%)&lt;/td&gt;
&lt;td&gt;22 / 22 (100%)&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;5 / 10 (50.0%)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;5 / 5 (100%)&lt;/td&gt;
&lt;td&gt;0 / 5 (0%)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Qwen3-Next-80B&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;27 / 32 (84.4%)&lt;/td&gt;
&lt;td&gt;22 / 22 (100%)&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;5 / 10 (50.0%)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;5 / 5 (100%)&lt;/td&gt;
&lt;td&gt;0 / 5 (0%)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;GPT-5.4 Nano&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;28 / 32 (87.5%)&lt;/td&gt;
&lt;td&gt;22 / 22 (100%)&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;6 / 10 (60.0%)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;5 / 5 (100%)&lt;/td&gt;
&lt;td&gt;1 / 5 (20%)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Tier 1 (Haiku 4.5, Gemini 3.7)&lt;/td&gt;
&lt;td&gt;32 / 32 (100.0%)&lt;/td&gt;
&lt;td&gt;22 / 22 (100%)&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;10 / 10 (100.0%)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;5 / 5 (100%)&lt;/td&gt;
&lt;td&gt;5 / 5 (100%)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Isolating the 10 non-refusal scenarios removes the 68.8% floor inflation and exposes the stark functional divide between natural language extraction and fallback compliance.&lt;/p&gt;




&lt;h2&gt;
  
  
  Models Tested: 41 Real Runs on Kaggle Cloud
&lt;/h2&gt;

&lt;p&gt;All models were evaluated natively on Kaggle Cloud via &lt;a href="https://www.kaggle.com/benchmarks/tasks/vaibhavlalwani21/kryt-benchmark/4" rel="noopener noreferrer"&gt;Kaggle Task &lt;code&gt;vaibhavlalwani21/kryt-benchmark/4&lt;/code&gt;&lt;/a&gt;, running at temperature 0.0 with identical inputs:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Score Tier&lt;/th&gt;
&lt;th&gt;Models Evaluated&lt;/th&gt;
&lt;th&gt;Accuracy ($N=32$)&lt;/th&gt;
&lt;th&gt;95% Wilson Interval&lt;/th&gt;
&lt;th&gt;Non-Refusal ($N=10$)&lt;/th&gt;
&lt;th&gt;Key Behavioral Characteristic&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Tier 1 (Ceiling Saturated)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;25 models:&lt;/strong&gt; Claude Haiku 4.5, Claude Haiku 5.5, Claude Sonnet 4.6, Claude Sonnet 5.5, Claude Opus 4.6, Gemini 3.7 Flash, Gemini 3.8 Flash, Gemini 3.6 Flash, Gemini 3.5 Flash, Gemini 3.1 Pro, Gemini 3.1 Flash Lite, Gemini 3 Flash, Gemini 2.5 Flash, Gemini 2.5 Pro, Gemma 4 26B, Gemma 4 31B, GPT-5.4, GPT-5.6 Luna, GPT-5.6 Sol, GPT-6 Luna, GPT-6.1 Sol, GPT-OSS 20B, Grok 4.20 Reasoning, Grok 4.20 Non-Reasoning, GLM-5&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;32 / 32&lt;/strong&gt; (100.0%)&lt;/td&gt;
&lt;td&gt;[0.893, 1.000]&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;10 / 10&lt;/strong&gt; (100%)&lt;/td&gt;
&lt;td&gt;Perfect scores; panel dynamic range saturated&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Tier 2 (High Reasoning)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;GPT-5.4 Nano, DeepSeek-R1 (composite)&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;28 / 32&lt;/strong&gt; (87.5%)&lt;/td&gt;
&lt;td&gt;[0.719, 0.950]&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;6 / 10&lt;/strong&gt; (60%)&lt;/td&gt;
&lt;td&gt;4 empty-record over-refusals (DeepSeek had 13 schema breaks)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Tier 3 (Heuristic Parity)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;GPT-5.4 Mini, Qwen3-Next-80B, Gemini 3.5 Flash Lite, *OldestRecord Baseline&lt;/strong&gt;*&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;27 / 32&lt;/strong&gt; (84.4%)&lt;/td&gt;
&lt;td&gt;[0.682, 0.931]&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;5 / 10&lt;/strong&gt; (50%)&lt;/td&gt;
&lt;td&gt;5 empty-record over-refusals; exactly matches 0-parameter rule&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Tier 4 (Below Heuristic)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Claude Sonnet 5&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;26 / 32&lt;/strong&gt; (81.3%)&lt;/td&gt;
&lt;td&gt;[0.647, 0.911]&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;4 / 10&lt;/strong&gt; (40%)&lt;/td&gt;
&lt;td&gt;Over-refusals combined with boundary edge cases&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Tier 5 (Sub-Heuristic)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Claude Opus 4.7, Claude Opus 5.5, GPT-5.5&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;25 / 32&lt;/strong&gt; (78.1%)&lt;/td&gt;
&lt;td&gt;[0.612, 0.890]&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;3 / 10&lt;/strong&gt; (30%)&lt;/td&gt;
&lt;td&gt;Excessive caution on ambiguous evidence records&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Tier 6 (Sub-Heuristic)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Claude Opus 4.8, Claude Opus 5, GPT-5.6 Terra, GPT-6 Sol&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;24 / 32&lt;/strong&gt; (75.0%)&lt;/td&gt;
&lt;td&gt;[0.579, 0.867]&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;2 / 10&lt;/strong&gt; (20%)&lt;/td&gt;
&lt;td&gt;Over-refuses on empty records and boundary caps&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Tier 7 (Floor Drift)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;GPT-6 Astra, Grok 4.5, Grok 4.6&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;23 / 32&lt;/strong&gt; (71.9%)&lt;/td&gt;
&lt;td&gt;[0.546, 0.844]&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;1 / 10&lt;/strong&gt; (10%)&lt;/td&gt;
&lt;td&gt;Near AlwaysDeny floor; severe refusal bias&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Floor Baseline&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;em&gt;AlwaysDeny Baseline (Zero-Intelligence Floor)&lt;/em&gt;&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;22 / 32&lt;/strong&gt; (68.8%)&lt;/td&gt;
&lt;td&gt;[0.514, 0.820]&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;0 / 10&lt;/strong&gt; (0%)&lt;/td&gt;
&lt;td&gt;Withholds on all tickets; zero reasoning required&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  Key Findings
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Finding 1: The Statistical Reality Behind the Leaderboard (Binomial Noise vs. Paired Evidence)
&lt;/h3&gt;

&lt;p&gt;On the Kaggle leaderboard, the 0-parameter &lt;code&gt;OldestRecord&lt;/code&gt; heuristic scored 27/32, outranking models like &lt;code&gt;grok-4.6&lt;/code&gt; (23/32), &lt;code&gt;gpt-6-sol&lt;/code&gt; (24/32), &lt;code&gt;gpt-5.5&lt;/code&gt; (25/32), and &lt;code&gt;claude-sonnet-5&lt;/code&gt; (26/32).&lt;/p&gt;

&lt;p&gt;However, reading this ordering as definitive proof that a heuristic "beat 11 frontier models" is a statistical mistake. On a 32-scenario panel, the 95% Wilson score confidence intervals are wide:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;27 / 32 (84.4%):&lt;/strong&gt; 95% CI is &lt;strong&gt;[0.682, 0.931]&lt;/strong&gt; (margin: 24.9 pp)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;25 / 32 (78.1%):&lt;/strong&gt; 95% CI is &lt;strong&gt;[0.612, 0.890]&lt;/strong&gt; (margin: 27.8 pp)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;22 / 32 (68.8% Floor):&lt;/strong&gt; 95% CI is &lt;strong&gt;[0.514, 0.820]&lt;/strong&gt; (margin: 30.6 pp)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The interval for 27/32 overlaps almost completely with 25/32, and even overlaps with the &lt;code&gt;AlwaysDeny&lt;/code&gt; floor at 22/32. Exactly &lt;strong&gt;two scenarios&lt;/strong&gt; separate most rungs in the table. On an unweighted 32-scenario panel, the aggregate scalar ordering between 23 and 27 is largely binomial sampling noise.&lt;/p&gt;

&lt;p&gt;What holds up under rigorous analysis is not the aggregate leaderboard total, but the &lt;strong&gt;paired failure structure&lt;/strong&gt;. Because every model and heuristic was evaluated on the exact same 32 scenarios, between-scenario noise is controlled. The true diagnostic value lies in the &lt;strong&gt;discordant counts&lt;/strong&gt;—the specific scenarios where one system passed and the other failed.&lt;/p&gt;

&lt;h3&gt;
  
  
  Finding 2: Disjoint Failures Behind Identical Scores (The Paired Breakdown)
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsyulr5067vt6jmtk645v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsyulr5067vt6jmtk645v.png" alt="Same Score, Different Errors Diagram" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;When we construct a paired $2 \times 2$ contingency table comparing the &lt;code&gt;OldestRecord&lt;/code&gt; rule against &lt;code&gt;GPT-5.4 Mini&lt;/code&gt; and &lt;code&gt;Qwen3-Next-80B&lt;/code&gt; across all 32 scenarios, the structural divide becomes unmistakable:&lt;/p&gt;

&lt;h4&gt;
  
  
  Paired $2 \times 2$ Contingency Table (&lt;code&gt;OldestRecord&lt;/code&gt; vs &lt;code&gt;GPT-5.4 Mini&lt;/code&gt; / &lt;code&gt;Qwen3-Next-80B&lt;/code&gt;)
&lt;/h4&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;Model Passed&lt;/th&gt;
&lt;th&gt;Model Failed&lt;/th&gt;
&lt;th&gt;Total&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Rule Passed&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;22 &lt;em&gt;(Concordant Pass)&lt;/em&gt;
&lt;/td&gt;
&lt;td&gt;*&lt;em&gt;5 *(Rule-Only Pass, $c$)&lt;/em&gt; **&lt;/td&gt;
&lt;td&gt;27&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Rule Failed&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;*&lt;em&gt;5 *(Model-Only Pass, $b$)&lt;/em&gt; **&lt;/td&gt;
&lt;td&gt;0 &lt;em&gt;(Concordant Fail)&lt;/em&gt;
&lt;/td&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Total&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;27&lt;/td&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;32&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Discordant Pairs ($b + c$):&lt;/strong&gt; &lt;strong&gt;10 out of 32 scenarios (31.25%)&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Model-Only Passes ($b = 5$):&lt;/strong&gt; &lt;code&gt;SCN-0013&lt;/code&gt;, &lt;code&gt;SCN-0016&lt;/code&gt;, &lt;code&gt;SCN-0022&lt;/code&gt;, &lt;code&gt;SCN-0025&lt;/code&gt;, &lt;code&gt;SCN-0031&lt;/code&gt; (Unstructured evidence extraction: models parsed inspection notes and granted partial amounts; rule failed completely).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Rule-Only Passes ($c = 5$):&lt;/strong&gt; &lt;code&gt;SCN-0004&lt;/code&gt;, &lt;code&gt;SCN-0005&lt;/code&gt;, &lt;code&gt;SCN-0006&lt;/code&gt;, &lt;code&gt;SCN-0007&lt;/code&gt;, &lt;code&gt;SCN-0008&lt;/code&gt; (Empty record fallback: rule followed default grant instruction; models over-refused).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Failure Set Overlap:&lt;/strong&gt; &lt;strong&gt;0 / 10 = 0.0%&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  Discordant Counts Across Model Families
&lt;/h4&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Model / Policy&lt;/th&gt;
&lt;th&gt;Score ($N=32$)&lt;/th&gt;
&lt;th&gt;Model-Only ($b$)&lt;/th&gt;
&lt;th&gt;Rule-Only ($c$)&lt;/th&gt;
&lt;th&gt;&lt;strong&gt;Discordant Pairs ($b+c$)&lt;/strong&gt;&lt;/th&gt;
&lt;th&gt;Failure Overlap vs Rule&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;GPT-5.4 Mini&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;27 / 32&lt;/td&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;10 / 32 (31.3%)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;0.0%&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Qwen3-Next-80B&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;27 / 32&lt;/td&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;10 / 32 (31.3%)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;0.0%&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;GPT-5.4 Nano&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;28 / 32&lt;/td&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;9 / 32 (28.1%)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;0.0%&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Claude Sonnet 5&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;26 / 32&lt;/td&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;9 / 32 (28.1%)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;0.0%&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;code&gt;Claude Haiku 4.5&lt;/code&gt; (Tier 1)&lt;/td&gt;
&lt;td&gt;32 / 32&lt;/td&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;5 / 32 (15.6%)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;0.0%&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h4&gt;
  
  
  Scenario-by-Scenario Proof
&lt;/h4&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Scenario ID&lt;/th&gt;
&lt;th&gt;Correct Action&lt;/th&gt;
&lt;th&gt;Expected Amount&lt;/th&gt;
&lt;th&gt;OldestRecord Rule&lt;/th&gt;
&lt;th&gt;Qwen3-80B&lt;/th&gt;
&lt;th&gt;GPT-5.4 Mini&lt;/th&gt;
&lt;th&gt;Behavior&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;SCN-0004&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;grant&lt;/td&gt;
&lt;td&gt;$65.55&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Correct ($65.55)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Failed ($0)&lt;/td&gt;
&lt;td&gt;Failed ($0)&lt;/td&gt;
&lt;td&gt;Models withhold when record array is empty&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;SCN-0005&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;grant&lt;/td&gt;
&lt;td&gt;$264.70&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Correct ($264.70)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Failed ($0)&lt;/td&gt;
&lt;td&gt;Failed ($0)&lt;/td&gt;
&lt;td&gt;Models withhold when record array is empty&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;SCN-0006&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;grant&lt;/td&gt;
&lt;td&gt;$264.71&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Correct ($264.71)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Failed ($0)&lt;/td&gt;
&lt;td&gt;Failed ($0)&lt;/td&gt;
&lt;td&gt;Models withhold when record array is empty&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;SCN-0007&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;grant&lt;/td&gt;
&lt;td&gt;$229.50&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Correct ($229.50)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Failed ($0)&lt;/td&gt;
&lt;td&gt;Failed ($0)&lt;/td&gt;
&lt;td&gt;Models withhold when record array is empty&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;SCN-0008&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;grant&lt;/td&gt;
&lt;td&gt;$229.51&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Correct ($229.51)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Failed ($0)&lt;/td&gt;
&lt;td&gt;Failed ($0)&lt;/td&gt;
&lt;td&gt;Models withhold when record array is empty&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;SCN-0013&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;grant&lt;/td&gt;
&lt;td&gt;$21.84&lt;/td&gt;
&lt;td&gt;Failed (missed partial)&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Correct ($21.84)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Correct ($21.84)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Rule cannot parse partial substantiated text&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;SCN-0016&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;grant&lt;/td&gt;
&lt;td&gt;$88.23&lt;/td&gt;
&lt;td&gt;Failed (missed partial)&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Correct ($88.23)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Correct ($88.23)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Rule cannot parse partial substantiated text&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;SCN-0022&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;grant&lt;/td&gt;
&lt;td&gt;$66.17&lt;/td&gt;
&lt;td&gt;Failed (missed partial)&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Correct ($66.17)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Correct ($66.17)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Rule cannot parse partial substantiated text&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;SCN-0025&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;grant&lt;/td&gt;
&lt;td&gt;$21.84&lt;/td&gt;
&lt;td&gt;Failed (missed partial)&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Correct ($21.84)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Correct ($21.84)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Rule cannot parse partial substantiated text&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;SCN-0031&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;grant&lt;/td&gt;
&lt;td&gt;$22.05&lt;/td&gt;
&lt;td&gt;Failed (missed partial)&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Correct ($22.05)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Correct ($22.05)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Rule cannot parse partial substantiated text&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;On SCN-0013 through SCN-0031, tickets require extracting partial substantiated amounts from free text. The keyword rule cannot parse numbers from prose and fails 5 out of 5. Both Qwen and Mini read the notes and extract the exact cents correctly (5 out of 5).&lt;/p&gt;

&lt;p&gt;Conversely, on SCN-0004 through SCN-0008, tickets have no prior records, requiring agents to follow the fallback instruction to grant the requested amount. The keyword heuristic defaults to the rule and succeeds (5 out of 5). Both Qwen and Mini over-refuse, withholding payment on all five.&lt;/p&gt;

&lt;p&gt;The models and the heuristic share &lt;strong&gt;zero common failures (0.0% overlap)&lt;/strong&gt;. Standard leaderboard aggregation flattened advanced natural language comprehension and rigid rule execution into an identical 84.4% score.&lt;/p&gt;

&lt;h3&gt;
  
  
  Finding 3: The Instruction Placement Hypothesis (Lost-in-the-Middle vs. Reasoning)
&lt;/h3&gt;

&lt;p&gt;Why did frontier models consistently fail on SCN-0004 through SCN-0008 when the records array was empty?&lt;/p&gt;

&lt;p&gt;In the reference prompt (&lt;code&gt;tools/export/reference_agent.py&lt;/code&gt;), the decision directives are formatted as follows:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;1. The record may state that a refund has already been paid for this ticket. If it has, withhold.
2. The record may state that the claim has no supporting evidence. If it has, withhold.
3. The record may state a specific amount that was substantiated... grant that substantiated amount.
4. Otherwise grant the full requested amount.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Notice that directive #4—the fallback grant rule—is placed at the very end of the prompt after three consecutive condition checks.&lt;/p&gt;

&lt;p&gt;This introduces a crucial empirical question: did models fail because of a genuine inability to reason about defaults, or because of &lt;strong&gt;instruction placement sensitivity (lost-in-the-middle suppression)&lt;/strong&gt;?&lt;/p&gt;

&lt;p&gt;Because frontier models are heavily post-trained for liability avoidance in financial workflows, negative refusal criteria ("withhold if no evidence") exert strong gravitational pull. When faced with an empty records array, models appear to conflate &lt;em&gt;"no prior records attached"&lt;/em&gt; with directive #2 (&lt;em&gt;"the claim has no supporting evidence"&lt;/em&gt;), defaulting to a withhold action before reaching directive #4.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Testable Hypothesis:&lt;/strong&gt; If we rewrite the prompt with primacy placement, moving the fallback rule to the very top:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;"Default Rule: If no adverse record exists or the record list is empty, grant the full requested amount."&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;If the 5 empty-record over-refusals disappear under this formatting, then the benchmark was measuring &lt;strong&gt;prompt instruction placement sensitivity&lt;/strong&gt;, not intrinsic semantic reasoning. Models in the 23–27 sub-heuristic tiers would immediately jump up as a cohort toward 32/32.&lt;/p&gt;

&lt;h3&gt;
  
  
  Finding 4: Model Output vs. System Reward (DeepSeek-R1)
&lt;/h3&gt;

&lt;p&gt;DeepSeek-R1 recorded a 28/32 reward on Kaggle, placing it in Tier 2. However, inspecting raw completion logs revealed that this number does not reflect schema-valid model actions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In &lt;strong&gt;13 of 32 scenarios&lt;/strong&gt;, DeepSeek returned raw &lt;code&gt;&amp;lt;think&amp;gt;...&amp;lt;/think&amp;gt;&lt;/code&gt; tokens preceding its JSON payload, breaking schema parsing.&lt;/li&gt;
&lt;li&gt;The benchmark runner caught these parse failures and applied a default fallback action: withholding payment.&lt;/li&gt;
&lt;li&gt;Because 22 of 32 scenarios expected withholding, defaulting to withhold happened to match the correct answer on &lt;strong&gt;9 scenarios&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;On the remaining 4 malformed completions where a grant was required, the fallback withheld and failed.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Kaggle assertion telemetry captured the breakdown: the assertion logs recorded 19 passes and 13 failed assertions (&lt;code&gt;assert_fail&lt;/code&gt;). The model's schema-valid output accuracy was &lt;strong&gt;19 / 32 (59.4%)&lt;/strong&gt;, while composite system reward was &lt;strong&gt;28 / 32 (87.5%)&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Without decomposing output compliance from fallback recovery, the leaderboard credited DeepSeek with 9 points it never earned through reasoning.&lt;/p&gt;

&lt;h3&gt;
  
  
  Finding 5: Scaling Model Size Did Not Fix Refusal Bias
&lt;/h3&gt;

&lt;p&gt;You might expect larger flagship models to handle edge cases better than their smaller distillation counterparts. On this benchmark, the reverse happened.&lt;/p&gt;

&lt;p&gt;OpenAI's &lt;code&gt;gpt-5.4-nano&lt;/code&gt; scored &lt;strong&gt;28 / 32 (87.5%)&lt;/strong&gt;, losing only four scenarios to empty-record confusion (it correctly granted SCN-0005). Meanwhile, heavyweight frontier models drifted downward: &lt;code&gt;claude-sonnet-5&lt;/code&gt; scored 26/32, &lt;code&gt;gpt-5.5&lt;/code&gt; scored 25/32, &lt;code&gt;gpt-6-sol&lt;/code&gt; scored 24/32, and &lt;code&gt;gpt-6-astra&lt;/code&gt; alongside &lt;code&gt;grok-4.6&lt;/code&gt; scored 23/32.&lt;/p&gt;

&lt;p&gt;A score of 23/32 is just a single correct decision away from the 22/32 &lt;code&gt;AlwaysDeny&lt;/code&gt; baseline. Why did the largest models degrade toward the zero-intelligence floor?&lt;/p&gt;

&lt;p&gt;Inspecting their reasoning traces reveals that safety and liability post-training penalizes false grants far more heavily than false refusals. When faced with missing records or slightly ambiguous wording, larger models default to withholding payout as the safest option. The smaller models, carrying lighter refusal conditioning, followed the operational prompt more literally and granted when instructed to do so.&lt;/p&gt;

&lt;h3&gt;
  
  
  Finding 6: Beyond Retry Loops — Why Syntax Retries Cannot Fix Semantic Refusal
&lt;/h3&gt;

&lt;p&gt;Across the Kaggle Benchmarking Challenge, the most active community discussions focus on retry mechanisms and JSON formatting failures (such as testing whether models know when to retry HTTP requests or whether Markdown code fences break downstream contracts).&lt;/p&gt;

&lt;p&gt;These discussions highlight an urgent real-world question: &lt;em&gt;Can retry loops make autonomous agents reliable in production?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Our empirical forensics across 45 models prove that &lt;strong&gt;syntax retries cannot fix semantic failure&lt;/strong&gt;:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Failure Dimension&lt;/th&gt;
&lt;th&gt;What Standard Retry Loops Assume&lt;/th&gt;
&lt;th&gt;What KRYT Empirical Forensics Discovered&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Error Type&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Syntax breaks, schema violations, or non-idempotent HTTP retries.&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;Semantic Over-Refusal&lt;/strong&gt;: On SCN-0004–0008 (empty records), models emit &lt;em&gt;syntactically valid JSON&lt;/em&gt; (&lt;code&gt;{"decision": "withhold", "amountCents": 0}&lt;/code&gt;) violating the explicit default fallback instruction.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Retry Effect&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Prompting the model to retry corrects transient errors.&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;Retry Reinforces Refusal&lt;/strong&gt;: Post-training safety RLHF penalizes false grants far more than false withholds. A retry loop prompts the model to become more conservative, cementing the refusal.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Fallback Danger&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Falling back to a safe default on parse failure protects the pipeline.&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;Silent Metric Inflation&lt;/strong&gt;: In our DeepSeek-R1 forensics, &lt;code&gt;&amp;lt;think&amp;gt;&lt;/code&gt; token parse failures triggered a default withholding fallback that matched ground truth on 9 scenarios, inflating the model from 59.4% (19/32) to 87.5% (28/32).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Leaderboard Validity&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Matching total scores indicate comparable model reasoning.&lt;/td&gt;
&lt;td&gt;
&lt;strong&gt;0.0% Failure Overlap&lt;/strong&gt;: A 0-parameter rule and two frontier models tied at 84.4% with disjoint failure sets—models solved unstructured nuance; the rule obeyed default fallbacks.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;To prevent formatting retries from masking reasoning failures, production agent evaluation requires two architectural safeguards:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Decoupled Dual Telemetry:&lt;/strong&gt; Separating syntactic schema conformance (&lt;code&gt;assert_pass&lt;/code&gt; vs. &lt;code&gt;assert_fail&lt;/code&gt;) from substantive invariant contract reasoning. A model that emits malformed JSON wrapped in markdown fences or &lt;code&gt;&amp;lt;think&amp;gt;&lt;/code&gt; tags is flagged for format compliance without contaminating its logical reasoning telemetry.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Balanced Counterfactual Baselines:&lt;/strong&gt; Testing on balanced suites like ACT-v1 (50.0% floor) guarantees that neither constant refusal policies nor default error handlers can score above random chance.&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  Resolving Ceiling Saturation: The ACT Counterfactual Panel
&lt;/h2&gt;

&lt;p&gt;The 32-scenario panel exposed two structural vulnerabilities:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;High Refusal Floor (68.8%):&lt;/strong&gt; A constant do-nothing baseline scores 22/32, allowing a simple keyword rule to tie frontier models.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ceiling Saturation:&lt;/strong&gt; 25 models achieved 32/32 (100%), leaving no headroom to benchmark differences among the top tier.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;To solve this, we engineered and validated &lt;strong&gt;ACT (Adversarial Counterfactual Test, &lt;code&gt;act-v1&lt;/code&gt;)&lt;/strong&gt;, shipping directly alongside the benchmark:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Expanded Sample Size ($N = 60$):&lt;/strong&gt; 60 scenarios structured into 30 matched counterfactual pairs.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Enforced 50.0% Floor:&lt;/strong&gt; Exactly 30 grants and 30 withholds. The refusal floor (&lt;code&gt;AlwaysDeny&lt;/code&gt;) drops from 68.8% to 50.0%. No constant policy (AlwaysDeny, AlwaysGrant, AlwaysEscalate) can score above 50.0%.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Matched Counterfactual Pairs:&lt;/strong&gt; Within each pair, scenarios share identical customer history and ticket text, but one decisive evidentiary detail is flipped (such as substantiated damage notes versus a retracted claim). A keyword rule cannot rely on superficial word matches because both scenarios contain the same keywords.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Eliminating Shortcut Exploitation:&lt;/strong&gt; When evaluated on ACT, models that previously scored high on Northstar by exploiting base-rate refusal skew fell to the 50.0% floor.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The full 60-scenario ACT dataset (&lt;code&gt;panels/act-v1.tasks.json&lt;/code&gt;, &lt;code&gt;panels/act-v1.expected.json&lt;/code&gt;) and evaluation runner (&lt;code&gt;score.py --panel act-v1&lt;/code&gt;) are included in the open release package.&lt;/p&gt;




&lt;h2&gt;
  
  
  Artifacts and Reproducibility
&lt;/h2&gt;

&lt;p&gt;The task, dataset, scenarios, and verification code are published and accessible on Kaggle:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://www.kaggle.com/code/vaibhavlalwani21/kryt-northstar-panel-quickstart" rel="noopener noreferrer"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzsb4kn1uuetm89upqr9v.png" alt="Open in Kaggle" width="117" height="20"&gt;&lt;/a&gt; &lt;strong&gt;Interactive Panel Runtime Notebook:&lt;/strong&gt; &lt;a href="https://www.kaggle.com/code/vaibhavlalwani21/kryt-northstar-panel-quickstart" rel="noopener noreferrer"&gt;kaggle.com/code/vaibhavlalwani21/kryt-northstar-panel-quickstart&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.kaggle.com/code/vaibhavlalwani21/kryt-benchmark-quickstart" rel="noopener noreferrer"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzsb4kn1uuetm89upqr9v.png" alt="Open in Kaggle" width="117" height="20"&gt;&lt;/a&gt; &lt;strong&gt;Official Task v4 Runner Notebook:&lt;/strong&gt; &lt;a href="https://www.kaggle.com/code/vaibhavlalwani21/kryt-benchmark-quickstart" rel="noopener noreferrer"&gt;kaggle.com/code/vaibhavlalwani21/kryt-benchmark-quickstart&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Kaggle Benchmark Collection:&lt;/strong&gt; &lt;a href="https://www.kaggle.com/benchmarks/tasks/vaibhavlalwani21/kryt-benchmark" rel="noopener noreferrer"&gt;kaggle.com/benchmarks/vaibhavlalwani21/kryt-benchmark&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Kaggle Benchmarks Task:&lt;/strong&gt; &lt;a href="https://www.kaggle.com/benchmarks/tasks/vaibhavlalwani21/kryt-benchmark/4" rel="noopener noreferrer"&gt;kaggle.com/benchmarks/tasks/vaibhavlalwani21/kryt-benchmark/4&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Kaggle Dataset &amp;amp; Scenarios (10.00 Usability):&lt;/strong&gt; &lt;a href="https://www.kaggle.com/datasets/vaibhavlalwani21/kryt-northstar-panel" rel="noopener noreferrer"&gt;kaggle.com/datasets/vaibhavlalwani21/kryt-northstar-panel&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Release Manifest Verification:&lt;/strong&gt; 71/71 integrity checks pass (&lt;code&gt;node release/kryt-kaggle-rc/verify-manifest.mjs&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Deterministic Test Suite:&lt;/strong&gt; 234/234 passing unit and integration tests (&lt;code&gt;npm test&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Adversarial Reliability Fuzzing:&lt;/strong&gt; 96/96 stress-test vectors pass with 100% fail-closed safety and 0% crash rate (&lt;code&gt;python tools/verify/adversarial_fuzzer.py&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Secret Leak Scan:&lt;/strong&gt; 1104 tracked repository files scanned with 0 leaks (&lt;code&gt;python tools/verify/scan_secrets.py&lt;/code&gt;).&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Live Terminal Receipts: Kaggle Platform Verification
&lt;/h2&gt;

&lt;p&gt;Every claim in this report originates from real platform execution. Below are the unedited terminal logs from the official Kaggle CLI and repository verification suite.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Kaggle Cloud Model Execution Log (45 Models Evaluated)
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ kaggle benchmarks tasks status kryt-benchmark
Task:     kryt-benchmark
Version:  4
Status:   Completed
Created:  2026-10-08 21:45:19
Public:   True
Task URL: https://www.kaggle.com/benchmarks/tasks/vaibhavlalwani21/kryt-benchmark/4

Model                          Status          Started             Ended              
────────────────────────────── ─────────────── ─────────────────── ───────────────────
gemini-3.5-flash-lite          Completed       2026-10-09 18:36:51 2026-10-09 18:37:09
gemini-3.1-pro-preview         Completed       2026-10-09 18:36:49 2026-10-09 18:39:47
gemini-3.1-flash-lite-preview  Completed       2026-10-09 18:36:50 2026-10-09 18:37:20
gemini-3-flash-preview         Completed       2026-10-09 18:36:48 2026-10-09 18:45:14
gemini-2.5-flash               Completed       2026-10-09 18:36:45 2026-10-09 18:39:07
gemma-4-26b-a4b-it             Completed       2026-10-09 18:36:47 2026-10-09 18:51:52
grok-4.5-0708                  Completed       2026-10-09 18:36:45 2026-10-09 18:36:47
grok-4.20-0309-non-reasoning   Completed       2026-10-09 18:36:46 2026-10-09 18:50:50
gpt-oss-20b                    Completed       2026-10-09 18:36:48 2026-10-09 18:41:31
gpt-6.1-sol                    Completed       2026-10-09 18:36:54 2026-10-09 18:38:17
gpt-6-luna                     Completed       2026-10-09 18:36:46 2026-10-09 18:37:49
gpt-6-astra                    Completed       2026-10-09 18:36:38 2026-10-09 18:36:40
gpt-5.6-terra                  Completed       2026-10-09 18:36:41 2026-10-09 18:36:49
gpt-5.6-sol                    Completed       2026-10-09 18:36:46 2026-10-09 18:37:23
gpt-5.6-luna                   Completed       2026-10-09 18:36:36 2026-10-09 18:37:19
gpt-oss-120b                   Completed       2026-10-09 18:36:38 2026-10-09 19:23:41
gemma-4-31b-it                 Completed       2026-10-09 18:36:38 2026-10-09 18:48:28
gemini-2.5-pro                 Completed       2026-10-09 18:36:29 2026-10-09 18:41:17
gemini-3.6-flash               Completed       2026-10-09 18:36:34 2026-10-09 18:39:02
gemini-3.5-flash               Completed       2026-10-09 18:36:37 2026-10-09 18:39:13
claude-haiku-5-5               Completed       2026-10-09 18:36:25 2026-10-09 18:37:07
claude-opus-5-5-default        Completed       2026-10-09 18:36:28 2026-10-09 18:36:50
claude-sonnet-5-5-default      Completed       2026-10-09 18:36:42 2026-10-09 18:37:49
claude-opus-4-8-default        Completed       2026-10-09 18:36:27 2026-10-09 18:36:31
claude-opus-4-7-default        Completed       2026-10-09 18:36:32 2026-10-09 18:36:42
qwen3-next-80b-a3b-thinking    Running                                                
qwen3-coder-480b-a35b-instruct Completed       2026-10-09 18:36:05 2026-10-09 19:32:16
gemini-3.8-flash               Completed       2026-10-09 18:36:18 2026-10-09 18:38:57
grok-4.6                       Completed       2026-10-09 18:36:13 2026-10-09 18:36:16
gpt-6-sol                      Completed       2026-10-09 18:36:12 2026-10-09 18:36:22
gpt-5.5-2026-04-23             Completed       2026-10-09 18:36:06 2026-10-09 18:36:25
claude-opus-5-default          Completed       2026-10-09 18:36:06 2026-10-09 18:36:37
claude-sonnet-5-default        Completed       2026-10-09 18:36:05 2026-10-09 18:36:19
glm-5                          Completed       2026-10-09 18:29:18 2026-10-09 18:35:23
claude-opus-4-6-default        Completed       2026-10-09 18:29:20 2026-10-09 18:30:21
qwen3-235b-a22b-instruct-2507  Completed       2026-10-09 18:28:48 2026-10-09 19:26:57
grok-4.20-0309-reasoning       Completed       2026-10-09 18:28:48 2026-10-09 18:30:45
claude-sonnet-4-6-default      Completed       2026-10-09 18:28:54 2026-10-09 18:29:28
gpt-5.4-2026-03-05             Completed       2026-10-09 18:28:38 2026-10-09 18:29:15
gpt-5.4-mini-2026-03-17        Completed       2026-10-08 23:03:31 2026-10-08 23:03:56
qwen3-next-80b-a3b-instruct    Completed       2026-10-08 22:26:05 2026-10-08 23:12:59
claude-haiku-4-5-20251001      Completed       2026-10-08 22:24:08 2026-10-08 22:24:26
gpt-5.4-nano-2026-03-17        Completed       2026-10-08 22:21:31 2026-10-08 22:21:56
deepseek-r1-0528               Completed       2026-10-08 21:53:30 2026-10-08 22:19:34
gemini-3.7-flash               Completed       2026-10-08 21:46:09 2026-10-09 21:49:04
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  2. Discordant Failure &amp;amp; Wilson Score Verification
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ python tools/analysis/statistical_rigor.py
=== 95% Wilson Score Confidence Intervals (n=32) ===
k = 22/32 ( 68.8%): [0.514, 0.820] (margin: 0.306)
k = 23/32 ( 71.9%): [0.546, 0.844] (margin: 0.298)
k = 24/32 ( 75.0%): [0.579, 0.867] (margin: 0.289)
k = 25/32 ( 78.1%): [0.612, 0.890] (margin: 0.277)
k = 26/32 ( 81.2%): [0.647, 0.911] (margin: 0.264)
k = 27/32 ( 84.4%): [0.682, 0.931] (margin: 0.249)
k = 28/32 ( 87.5%): [0.719, 0.950] (margin: 0.231)
k = 32/32 (100.0%): [0.893, 1.000] (margin: 0.107)

=== Pairwise Scenarios: OldestRecord vs Models ===
Paired 2x2 Contingency Table (OldestRecord vs GPT-5.4-Mini / Qwen3-Next-80B):
                  Model Pass    Model Fail
Rule Pass (27)        22             5   (Rule only = 5: SCN-0004..0008)
Rule Fail (5)          5             0   (Model only = 5: SCN-0013,16,22,25,31)

Total Discordant pairs (b + c): 10 / 32 (31.25%)
Failure Set Overlap: 0 / 10 = 0.0%

=== Dynamic Sub-Panel (10 Non-Refusal Scenarios) ===
AlwaysDeny:        0 / 10 (  0.0%)
OldestRecord:      5 / 10 ( 50.0%) - gets 5 empty-record defaults, fails 5 evidence extractions
GPT-5.4 Mini:      5 / 10 ( 50.0%) - gets 5 evidence extractions, fails 5 empty-record defaults
Qwen3-Next-80B:    5 / 10 ( 50.0%) - gets 5 evidence extractions, fails 5 empty-record defaults
GPT-5.4 Nano:      6 / 10 ( 60.0%) - gets 5 evidence extractions + 1 empty-record default (SCN-0005)
Claude Haiku 4.5: 10 / 10 (100.0%) - gets all 10
Gemini 3.7 Flash: 10 / 10 (100.0%) - gets all 10
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  3. Release Manifest Integrity Check (71/71 Gates Passed)
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ node release/kryt-kaggle-rc/verify-manifest.mjs
verify-manifest: 57 entries from commit 53000cb08ae913bc83449f9a3cf21f2bbb35f855
PASS  export/expected/northstar-e4-f32.json
PASS  export/manifest.json
PASS  export/prompt/system-prompt.txt
PASS  kaggle/kryt-reference-agent-runtime.ipynb
PASS  release/kryt-kaggle-rc/BENCHMARK_CARD.md
PASS  release/kryt-kaggle-rc/CLAIMS.md
PASS  release/kryt-kaggle-rc/METHODOLOGY.md
...
verify-manifest: 71 checks, 0 failure(s)
verify-manifest: PASS
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Takeaways for Benchmark Authors
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Never rely on aggregate scalar totals on small panels ($N=32$):&lt;/strong&gt; Always report Wilson confidence intervals. If intervals overlap heavily between baseline and middle rungs, fine-grained leaderboard rankings are noise.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Report paired discordant counts ($b$ and $c$):&lt;/strong&gt; When systems run on identical inputs, paired $2 \times 2$ contingency tables reveal structural capability divides that identical aggregate scores hide.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Isolate the non-refusal dynamic range:&lt;/strong&gt; When refusal base rates are high (68.8%), evaluate models specifically on the subset of non-refusal tasks (here $N=10$) where do-nothing heuristics score 0%.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Test instruction placement sensitivity:&lt;/strong&gt; Test whether moving fallback instructions from the bottom to the top of the prompt eliminates errors, separating prompt formatting artifacts from true reasoning.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Benchmark degenerate heuristics alongside models:&lt;/strong&gt; If a simple string-match heuristic scores 84%, your aggregate leaderboard will conceal whether models are genuinely reasoning or exploiting base-rate skew.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Decompose raw model compliance from runner fallbacks:&lt;/strong&gt; When models emit malformed outputs, default error handling can inflate scores if the default action matches the panel's dominant class.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Deploy balanced counterfactual panels (ACT):&lt;/strong&gt; Matched pairs with an enforced 50.0% floor prevent both shortcut exploitation and ceiling saturation.&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>devchallenge</category>
      <category>kagglechallenge</category>
      <category>ai</category>
      <category>machinelearning</category>
    </item>
  </channel>
</rss>
