Cross-Context Verification: Hierarchical Detection of Benchmark Contamination through Session-Isolated Analysis
Organizations: Daejeon Jungang Cheonggua Co., Ltd.
Abstract
LLM coding benchmarks face a credibility crisis: widespread solution leakage and test quality issues undermine SWE-bench Verified, while existing detection methods--paraphrase consistency, n-gram overlap, perplexity analysis--never directly observe whether a model reasons or recalls. Meanwhile, simply repeating verification degrades accuracy: multi-turn review generates false positives faster than it discovers true errors, suggesting that structural approaches are needed. We introduce Cross-Context Verification (CCV), a black-box method that solves the same benchmark problem in N independent sessions and measures solution diversity, combined with the Hierarchical Cross-Context Architecture (HCCA), a multi-agent analysis framework that prevents confirmation bias through intentional information restriction across specialized analytical roles. On 9 SWE-bench Verified problems (45 trials, Claude Opus 4.6, temperature 0), CCV achieves perfect separation between contaminated and genuine reasoning (Mann-Whitney U=0, p approx 0.012, r = 1.0). Key findings: (1) contamination is binary--models either recall perfectly or not at all; (2) reasoning absence is a perfect discriminator; (3) 33% of prior contamination labels are false positives; (4) HCCA's independent analysis structure discovers contamination-flaw composite cases that single-analyst approaches miss. A pilot experiment extending HCCA to multi-stage verification (Worker to Verifier to Director) yields a negative result--100% sycophantic confirmation--providing further evidence that information restriction, not structural complexity, is the key mechanism. We release all code and data.
Figures & tables
| Problem | Pre | Actual | Div. | Gold | Time | Reas. | CS | Applied |
|---|---|---|---|---|---|---|---|---|
| django-11451 | A | Contam. | 0.000 | 1.000 | 4.5s | NO | 1.000 | 5/5 |
| django-11099 | A | Contam. | 0.000 | 0.911 | 5.5s | NO | 0.956 | 5/5 |
| astropy-7606 | B | Contam.+Flaw | 0.002 | 0.283 | 7.3s | NO | 0.641 | 0/5 |
| astropy-13236 | A † | Genuine | 0.451 | 0.297 | 16.8s | FULL | 0.509 | 5/5 |
| sklearn-14894 | C | Genuine | 0.592 | 0.211 | 16.5s | FULL | 0.406 | 2/5 |
| django-10097 | B | Gen.+Flaw | 0.699 | 0.354 | 19.9s | FULL | 0.429 | 1/5 |
| CAP | SWE-b+ | PPL | CCV | |
|---|---|---|---|---|
| Approach | Para. | Text | Stat. | Gen. |
| Black-box | ✓ | ✓ | ✓ | |
| Observes gen. | ✓ | |||
| Test flaws | ✓ | |||
| No bench. mod. | ✓ | ✓ | ✓ |
Appendix figures & tables2 assets
Supplementary material from the paper’s appendix.
Appendix
| Problem | Grp | Trials | Diversity | Gold | Gold | Unique | Time (s) | Tokens | Reas. |
|---|---|---|---|---|---|---|---|---|---|
| django-11451 | A | 5 | 0.000 | 1.000 | 0.000 | 1 | 4.5 | 154 | NO |
| django-11099 | A | 5 | 0.000 | 0.911 | 0.000 | 1 | 5.5 | 256 | NO |
| astropy-13236 | A | 5 | 0.451 | 0.297 | 0.023 | 5 | 16.8 | 1156 | FULL |
| astropy-7606 | B | 5 | 0.002 | 0.283 | 0.000 | 1 | 7.3 | 473 | NO |
| matplotlib-20488 | B | 5 | 0.557 | 0.093 | 0.059 | 5 | 19.1 | 1246 | FULL |
| django-10097 | B | 5 | 0.699 | 0.354 | 0.194 | 4 | 19.9 | 1320 | FULL |
| Problem | Reas. | Applied | Resolved |
|---|---|---|---|
| django-11451 | NO | 5/5 | 5/5 |
| django-11099 | NO | 5/5 | 5/5 |
| astropy-13236 | FULL | 5/5 | 0/5 |
| astropy-7606 | NO | 0/5 | 0/5 |
| matplotlib-20488 | FULL | 0/5 | 0/5 |
| django-10097 | FULL | 1/5 | 0/5 |
Benchmark Contamination
Benchmark contamination is the presence of evaluation data or cues in training or development, which can inflate scores and weaken claims of generalization.
See all 49 papers