Maggio33 commited on
Commit
2d3d73f
·
verified ·
1 Parent(s): d71e7a4

Benchmarks: first results bench50-v0.3.1 (results 1cf2b8bb, page b71d0c71)

Browse files
Files changed (11) hide show
  1. METHOD.md +64 -0
  2. README.md +33 -4
  3. app.js +327 -0
  4. contamination_field_roles.json +779 -0
  5. contract.js +187 -0
  6. index.html +62 -17
  7. results-feed.json +1 -0
  8. results.json +0 -0
  9. results.schema.json +1129 -0
  10. style.css +75 -27
  11. tasks_50.json +1902 -0
METHOD.md ADDED
@@ -0,0 +1,64 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # 50 distinct benchmarks for small base models — method (v0.3.1)
2
+
3
+ This document describes how the 50-benchmark panel is selected, sampled and scored. It contains no questions, answers or model outputs. Machine-readable definitions:
4
+
5
+ - `tasks_50.json` — the 50 benchmarks, one primary protocol each (language, metric, shots, split).
6
+ - `benchmark_sources.json` — exact task definitions, group members, datasets, pinned revisions and observed licence tags.
7
+ - `results.schema.json` — the results format.
8
+ - `data_access.json` — parquet access for script-only datasets (section 8).
9
+
10
+ ## 1. What counts as one benchmark
11
+
12
+ One benchmark is one named, source-identified collection of tasks, not one YAML file. Splits, rounds, prompt formats, number of shots and translations do not add benchmarks: ARC, ANLI and PoLEMo2 count once; MMLU (57 subjects), BLiMP (67 paradigms), MATH (7) and BBH (27) count once each. GLUE/SuperGLUE are not counted on top of their component datasets. Datasets that reuse another selected benchmark's question pool (QNLI vs SQuAD, SWAG vs HellaSwag, MMLU-Pro vs MMLU, MATH-500 vs MATH) were left out.
13
+
14
+ Result: 50 benchmarks, 38 English and 12 Polish, from 44 dataset repositories; 204 source tasks underneath. Fifty distinct collections are not fifty independent pieces of evidence.
15
+
16
+ Not included: code execution benchmarks (need a separate sandbox) and agent/tool-use benchmarks.
17
+
18
+ ## 2. Harness and runtime
19
+
20
+ - Evaluation harness: EleutherAI lm-evaluation-harness, English tasks at commit `6d2abda4fd171e68a8789330c4149e37c1ca0bda`; Polish tasks from the OpenPL fork at `21d0ea9cf4fd6153dfff4d84d6ad0aab5488f302`. Separate environments, hash-locked dependencies.
21
+ - Settings: float32, batch size 1, maximum context 4096 tokens (longer inputs are rejected, never truncated), no chat template, greedy decoding. BOS follows each model's own tokenizer convention (for Hugging Face models `add_bos_token` from the pinned tokenizer files; recorded per run), with exactly one leading BOS per request; for empty contexts and rolling perplexity the BOS is an unscored prefix. This avoids the duplicate scored BOS that the pinned harness produces in those two paths when `add_bos_token` is true. Harness seeds (python, numpy, torch, fewshot) = (0, 1234, 1234, 1234).
22
+ - Offline: no network during evaluation; datasets, metric modules and NLTK data are pinned and staged before the run. Dataset loading scripts are never executed (see section 8).
23
+ - Before any benchmark is scored on a model, the runtime is calibrated on that model against the original harness forward: summed log-likelihood difference per target token ≤ 2e-5, full-vocabulary logits bitwise equal, rolling windows count each token once, greedy generation identical.
24
+
25
+ ## 3. Unit and sampling (panel200)
26
+
27
+ - Unit = one source document after the task's own `process_docs`. Identity = benchmark, source task, and the document's native id or, if none, the SHA-256 of the canonical document; byte-identical documents without an id get an ordinal in pinned file order (section 8).
28
+ - Per benchmark, `min(200, N_eligible)` documents are selected before any model is run, by SHA-256 of `20261028|benchmark_id|member_task|source_id`. All models are scored on the same documents.
29
+ - Groups: the 200 slots are per benchmark, not per member. Every member gets `min(2, N_i)` documents first; remaining slots go to the member with the largest deficit against `budget × source_weight`. BLiMP members are weighted equally; MMLU, MATH and BBH proportionally to member population. Member scores are re-aggregated with these fixed weights.
30
+ - WikiText-2 is scored on the full test stream with byte perplexity.
31
+ - `fullB` is a separate full-split run of the same primary protocols, without the 200 cap.
32
+
33
+ ## 4. Demonstrations and generation
34
+
35
+ - Number of shots as listed per benchmark (37 zero-shot, 12 with 5 shots, BBH with its source 3-shot prompts). Demonstrations come from a disjoint bank selected by hash; a demonstration never appears among scored documents. Fixed source prompts (BBH) are kept as published.
36
+ - Generation budget from the task definition (default 256 tokens; IFEval 1280). If prompt + budget exceed 4096, optional demonstrations are removed from the end; questions, options and references are never cut.
37
+ - Source task filters are applied unchanged (e.g. `remove_whitespace` for NQ-Open and TriviaQA).
38
+ - BBH: the generated answer is stripped of leading and trailing whitespace before exact match. Without this, byte-level BPE tokenizers keep the leading space of the first token and every answer fails, while SentencePiece tokenizers drop it on decoding; the source-literal value is kept as a diagnostic. This correction was introduced after the first run, once the zero score was traced to whitespace; it applies identically to all models.
39
+ - MATH: the 0-shot source extractor takes the text between the first and last `$` of the answer and does not read `\boxed{}`. Scores are reported exactly as the source gives them, and MATH is not used to rank models. A re-scoring by the last `\boxed{}`, made after the first run when both models' outputs were seen, is shown only as a labelled diagnostic and never as the MATH score.
40
+ - IFEval: `langdetect` is seeded (`DetectorFactory.seed = 0`) for reproducibility. It affects only IFEval's language instructions.
41
+
42
+ ## 5. Metrics and reporting
43
+
44
+ - One pre-declared primary metric per benchmark, in its source unit and scale (accuracy, F1, exact match, Levenshtein similarity, MCC, byte perplexity, IFEval prompt-level strict accuracy, …). MCC may be negative. There is **no average over the 50 benchmarks**.
45
+ - Uncertainty: 95% bootstrap confidence interval, 10 000 replicates, seed 20261028, resampling within group members with fixed weights. Byte-identical documents are resampled together as one cluster. For model-vs-model contrasts: paired bootstrap and a two-sided paired permutation test (10 000 swaps, +1 correction) with Holm correction over all pre-declared contrasts. When a contrast has at most 20 clusters with a non-zero difference, the permutation p-value is computed exactly; otherwise rows whose Holm-adjusted p falls between 0.02 and 0.10 are recomputed with 200 000 swaps. This precision rule was added after the first computation, when Monte Carlo error alone decided one verdict; it applies to every contrast and can add or remove significance. Each contrast states the items it was computed on (`subset`: the full frozen sample, or a hit-free subset defined by our model's training corpus and identical for both models) and its n; hit-free variants carry their own 95% CI.
46
+
47
+ ## 6. Contamination
48
+
49
+ - For our own models the full training corpus is scanned against every scored split before results are published: each scored text field is checked separately: fields of 13+ words by word 13-grams after normalisation (as in GPT-3); otherwise whole fields of 3–12 words (at least 60% of the item's longest field) by exact normalised match; categorical fields (labels, ids) are excluded; fields stored as serialized lists or dicts are parsed and their parts checked as separate fields; bare numbers are ignored; items with no field of 3+ words are unscannable. Positive and negative controls are mandatory.
50
+ - **Reference values per result:** expected value of uniform random choice on the frozen sample, value of always predicting the majority gold class (fixed-class tasks only), share of the model's most frequent prediction, and a constant-prediction flag when the model gives one class for every item. A constant-prediction result is a real measurement but carries no information about ability and is not used for comparisons.
51
+ - **Contamination by field role:** for flagged benchmarks, hit-free values are reported twice: without any hit, and without hits in answer-bearing fields (question, options, target); context-only hits (e.g. a Wikipedia passage) indicate exposure to the source text, not to the question and label.
52
+ - States per (model, benchmark): `clean`; `flagged` (reported on the full sample and on the hit-free subset, with hit rate; when no item of the sample is hit-free, the hit-free value is empty with n = 0 — this can happen for passage-based sets (e.g. built on Wikipedia); then only the answer-field variant can carry a number); `partially_scanned` (more than 5% unscannable); `unscanned` (not published); `unknown` (third-party model whose training data cannot be scanned — shown with the label "training data unknown").
53
+
54
+ ## 7. Data use
55
+
56
+ Evaluation only. Public outputs are limited to benchmark id, revision, licence, aggregate result, n and CI95. Questions, answers, few-shot examples and per-item outputs are not redistributed, and nothing from these datasets is used for training. Users fetch the data themselves from the pinned revisions under each dataset's own licence.
57
+
58
+ ## 8. Clarifications in v0.3.1
59
+
60
+ - **Script-only datasets** (PIQA, WSC273, LogiQA, MathQA, PubMedQA, Social IQa, PoQuAD, PolQA): benchmark identity stays at the pinned revision; data are read from the Hugging Face auto-converted parquet at the listed `refs/convert/parquet` commit. Columns must match what the task reads, otherwise the benchmark is blocked. PubMedQA additionally requires the parquet test split to equal the labeled test set of the pinned revision by id and label.
61
+ - **Duplicate documents** without a native id: identity = document hash + ordinal in pinned file order; bootstrap resamples identical documents as one cluster; counts are reported.
62
+ - **Likelihood vs generation:** 39 benchmarks are scored by likelihood or perplexity, 11 by generation (PolQA, PoQuAD, GSM8K, MATH, IFEval, SQuAD 2.0, DROP, CoQA, NQ-Open, TriviaQA, BBH). They may be run in separate windows; a benchmark not yet run is `not_run`.
63
+
64
+ - **Public results file:** exported from qualifying runs only (runner and runtime implement every rule above). Values, CIs and digests are copied unchanged, and the sources are listed by sha256 in `provenance`. Our own models' results without a completed contamination scan are published as `skipped` without a value.
README.md CHANGED
@@ -1,10 +1,39 @@
1
  ---
2
  title: Slayer1B Benchmarks
3
- emoji: 👀
4
- colorFrom: blue
5
- colorTo: yellow
6
  sdk: static
7
  pinned: false
 
8
  ---
9
 
10
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  ---
2
  title: Slayer1B Benchmarks
3
+ emoji: 📏
4
+ colorFrom: green
5
+ colorTo: blue
6
  sdk: static
7
  pinned: false
8
+ short_description: 50 distinct benchmarks, one protocol, contamination-checked
9
  ---
10
 
11
+ # Slayer1B Benchmarks
12
+
13
+ Fifty distinct public benchmarks (38 English, 12 Polish), run with one protocol on
14
+ [Slayer 1B](https://huggingface.co/spaces/SlayerLab/Slayer1B) and comparison models.
15
+ This Space is a static page: it shows the published result file and computes nothing itself.
16
+
17
+ ## What is on the page
18
+
19
+ - **One value per benchmark and model**, in the benchmark's own metric and unit. Every main value and every model-vs-model contrast has a 95% confidence interval; benchmarks scored by picking one answer also show reference points (random guess, always-majority class); values on items without contamination hits are shown without an interval.
20
+ - **No average over the fifty benchmarks** and no overall ranking.
21
+ - **Contamination:** for our own models the full training corpus is scanned against every scored item before a number is shown. Benchmarks with hits are labelled and shown on the full sample and on the items without hits. Models whose training data is not public are labelled *training data unknown*.
22
+ - **Better / worse** between two models is stated only from a paired permutation test with Holm correction over the whole comparison family; otherwise the result is *inconclusive*. Benchmarks where a model gives the same answer to every item are not compared.
23
+ - **Scoring corrections** made after the first run are labelled on the page and described in `METHOD.md`, together with when and why they were made.
24
+
25
+ ## Files
26
+
27
+ | file | content |
28
+ |---|---|
29
+ | `tasks_50.json` | benchmark list: sources, pinned revisions, metrics, licences |
30
+ | `METHOD.md` | protocol, sampling, uncertainty, contamination scan, corrections |
31
+ | `results.schema.json` | format of the result file |
32
+ | `contamination_field_roles.json` | which item fields count as context or as answer for the contamination variants |
33
+ | `results-feed.json` | pointer to the published result file and its SHA-256 |
34
+ | `results.json` | published results; the page checks every file against its pinned SHA-256 before showing anything |
35
+
36
+ Benchmark texts are not redistributed here; each benchmark keeps its own licence (see `tasks_50.json`).
37
+ Only aggregate results are published.
38
+
39
+ Fabryka AI · SlayerLab
app.js ADDED
@@ -0,0 +1,327 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ "use strict";
2
+ (() => {
3
+ const contract = window.BenchContract;
4
+ const T = {
5
+ en: {
6
+ search:"Search benchmark", language:"Language", show:"Show", all:"All", withResults:"With a published number", clear:"Clear filters",
7
+ benchmark:"Benchmark", results:"Results", notPublished:"Not published yet",
8
+ noPacket:"No results are published yet. The list below is the plan: 50 benchmarks, their sources and metrics. For models whose training data we have, a number appears only after a contamination scan.",
9
+ loadError:"A pinned file could not be verified, so nothing is shown.", rejected:"Results are hidden because the result file did not pass the checks",
10
+ empty:"No benchmark matches the filters.", shown:"Showing", of:"of", benchmarks:"benchmarks",
11
+ pills:{total:"benchmarks", langs:"38 EN · 12 PL", models:"models", published:"with a published number"},
12
+ higher:"higher is better", lower:"lower is better", ci:"95% CI", noCI:"no interval", random:"random", majority:"majority", delta:"difference",
13
+ majorityShare:"predicts its most common class in", none:"none", refMissing:"reference: not available",
14
+ scan:{clean:"clean", flagged:"flagged", partially_scanned:"scan incomplete", unscanned:"scan pending", unknown:"training data unknown"},
15
+ noNumber:{partially_scanned:"No number: the scan did not cover enough items.", unscanned:"No number until the contamination scan is done."},
16
+ hitFree:"Without items found in training data", hitFreeAnswer:"Without hits in question or answer fields", hits:"items with hits", n:"n",
17
+ noHitFree:"no items without hits", tooFew:"too few items for a number",
18
+ mostly:"fewer than 50 items without hits in training data", inSlayer:"in the Slayer training corpus", slayerSubset:"subsets defined by the Slayer training corpus", mostlyVerdict:"No better/worse from the full sample here: only a paired test on the items without answer-field hits can give one.",
19
+ pending:n => `${n} benchmarks are not measured yet; adding them cannot change the verdicts shown; it can settle rows now inconclusive and adds verdicts for the new rows.`,
20
+ constant:"constant answer", constantNote:"One class for all items: not compared between models.",
21
+ states:{ok:"Measured",not_run:"Not run",blocked_access:"Data access blocked",blocked_runtime:"Runtime blocked",blocked_security:"Blocked by security review",blocked_judge:"No accepted judge",unsupported:"Not supported",failed:"Run failed",skipped:"Skipped"},
22
+ verdicts:{better:"better than",worse:"worse than",inconclusive:"inconclusive vs"}, verdictNote:"paired test, Holm-adjusted", verdictNoteSubset:"paired test on items without answer-field hits, Holm-adjusted",
23
+ amendments:{answer_leading_space_strip:"Scoring corrected after first run (leading space), see METHOD.", other:"Scoring amended after first run, see METHOD."},
24
+ scoringNotes:{source_extractor_floor:"Floor: the source 0-shot extractor reads the text between the first and last $, so answers in \\boxed{} score 0. Not a comparison of ability, see METHOD.", other:"Scoring note, see METHOD."},
25
+ details:"Source and sample", population:"population / sample / scored", revision:"revision", licence:"licence (dataset card)", files:"Pinned files",
26
+ packet:"result file", run:"run", protocol:"protocol"
27
+ },
28
+ pl: {
29
+ search:"Szukaj benchmarku", language:"Język", show:"Pokaż", all:"Wszystkie", withResults:"Z opublikowaną liczbą", clear:"Wyczyść filtry",
30
+ benchmark:"Benchmark", results:"Wyniki", notPublished:"Jeszcze nie opublikowano",
31
+ noPacket:"Nie ma jeszcze opublikowanych wyników. Poniżej jest plan: 50 benchmarków, ich źródła i miary. Dla modeli, których dane treningowe mamy, liczba pojawia się dopiero po skanie kontaminacji.",
32
+ loadError:"Nie udało się zweryfikować przypiętego pliku, więc niczego nie pokazuję.", rejected:"Wyniki ukryte, bo plik wyników nie przeszedł kontroli",
33
+ empty:"Żaden benchmark nie pasuje do filtrów.", shown:"Pokazano", of:"z", benchmarks:"benchmarków",
34
+ pills:{total:"benchmarków", langs:"38 EN · 12 PL", models:"modele", published:"z opublikowaną liczbą"},
35
+ higher:"więcej = lepiej", lower:"mniej = lepiej", ci:"95% CI", noCI:"bez przedziału", random:"losowo", majority:"większość", delta:"różnica",
36
+ majorityShare:"najczęstsza własna klasa w", none:"brak", refMissing:"odniesienie: brak",
37
+ scan:{clean:"czysty", flagged:"trafienia", partially_scanned:"skan niepełny", unscanned:"skan w toku", unknown:"dane treningowe nieznane"},
38
+ noNumber:{partially_scanned:"Bez liczby: skan nie objął dość pozycji.", unscanned:"Bez liczby do czasu skanu kontaminacji."},
39
+ hitFree:"Bez pozycji znalezionych w danych treningowych", hitFreeAnswer:"Bez trafień w polach pytania i odpowiedzi", hits:"pozycji z trafieniem", n:"n",
40
+ noHitFree:"brak pozycji bez trafień", tooFew:"za mało pozycji na liczbę",
41
+ mostly:"mniej niż 50 pozycji bez trafień w danych treningowych", inSlayer:"w korpusie treningowym Slayera", slayerSubset:"podzbiory wyznaczone korpusem treningowym Slayera", mostlyVerdict:"Tu nie ma werdyktu lepszy/gorszy z całej próbki: może go dać tylko test sparowany na pozycjach bez trafień w polach odpowiedzi.",
42
+ pending:n => `${n} benchmarków nie jest jeszcze zmierzonych; ich dodanie nie zmieni pokazanych werdyktów; może rozstrzygnąć wiersze dziś nierozstrzygnięte i doda werdykty dla nowych wierszy.`,
43
+ constant:"stała odpowiedź", constantNote:"Jedna klasa dla wszystkich pozycji: nie porównujemy między modelami.",
44
+ states:{ok:"Pomiar",not_run:"Nie uruchomiono",blocked_access:"Brak dostępu do danych",blocked_runtime:"Blokada środowiska",blocked_security:"Zablokowane przez przegląd bezpieczeństwa",blocked_judge:"Brak przyjętego sędziego",unsupported:"Nieobsługiwane",failed:"Błąd biegu",skipped:"Pominięte"},
45
+ verdicts:{better:"lepszy niż",worse:"gorszy niż",inconclusive:"nierozstrzygnięte wobec"}, verdictNote:"test sparowany, poprawka Holma", verdictNoteSubset:"test sparowany na pozycjach bez trafień w polach odpowiedzi, poprawka Holma",
46
+ amendments:{answer_leading_space_strip:"Punktacja poprawiona po pierwszym biegu (spacja na początku), zob. METHOD.", other:"Punktacja zmieniona po pierwszym biegu, zob. METHOD."},
47
+ scoringNotes:{source_extractor_floor:"Podłoga: ekstraktor źródła (0-shot) czyta tekst między pierwszym a ostatnim $, więc odpowiedzi w \\boxed{} dostają 0. To nie jest porównanie umiejętności, zob. METHOD.", other:"Uwaga o punktacji, zob. METHOD."},
48
+ details:"Źródło i próbka", population:"populacja / próbka / ocenione", revision:"rewizja", licence:"licencja (karta zbioru)", files:"Przypięte pliki",
49
+ packet:"plik wyników", run:"bieg", protocol:"protokół"
50
+ }
51
+ };
52
+ const state = {lang:"en", tasks:null, packet:null, index:null, packetSHA:null, error:null, files:[], query:"", language:"all", show:"all"};
53
+
54
+ function el(tag, text, cls) {
55
+ const n = document.createElement(tag);
56
+ if (text !== undefined && text !== null) n.textContent = String(text);
57
+ if (cls) n.className = cls;
58
+ return n;
59
+ }
60
+ function fmt(v, unit) {
61
+ const digits = unit === "byte_ppl" ? 3 : unit === "percent" ? 1 : 3;
62
+ return new Intl.NumberFormat(state.lang === "pl" ? "pl-PL" : "en-GB", {minimumFractionDigits:digits, maximumFractionDigits:digits}).format(v);
63
+ }
64
+ const unitLabel = u => u === "percent" ? "%" : u === "byte_ppl" ? "byte-PPL" : "";
65
+ const pct = v => new Intl.NumberFormat(state.lang === "pl" ? "pl-PL" : "en-GB", {style:"percent", maximumFractionDigits:1}).format(v);
66
+ function modelName(m) { return m.repo.split("/").pop(); }
67
+
68
+ // Thresholds and the "most items found in training data" class come from the contract, which also guarantees that every
69
+ // non-withheld verdict in an accepted packet follows the display rules (binding rules 2026-10-29 16:55 and 17:07).
70
+ const MIN_HIT_FREE_N = contract.MIN_HIT_FREE_N;
71
+ const mostlyTrained = taskId => state.index ? contract.mostlyTrained(state.index.observations, taskId, state.packet.protocol_id) : null;
72
+ // Whether the cell carries a number at all, and why not otherwise.
73
+ function numberRule(o) {
74
+ if (o.state !== "ok") return {show:false, reason:null};
75
+ if (["clean","flagged","unknown"].includes(o.contamination)) return {show:true};
76
+ return {show:false, reason:o.contamination};
77
+ }
78
+ function hitFreeLine(label, value, n, rate, ci, unit, t) {
79
+ const tail = `${t.n} ${n}; ${pct(rate)} ${t.hits}`;
80
+ if (n === 0) return `${label}: ${t.noHitFree}`;
81
+ if (n < MIN_HIT_FREE_N) return `${label}: ${t.tooFew} (${tail})`;
82
+ const interval = ci ? `${t.ci} ${fmt(ci.lower, unit)} – ${fmt(ci.upper, unit)}` : t.noCI;
83
+ return `${label}: ${fmt(value, unit)}, ${interval} (${tail})`;
84
+ }
85
+
86
+ const isConstant = x => !!(x && x.reference && x.reference.constant_prediction === true);
87
+
88
+ function cell(task, model, t) {
89
+ const td = el("td");
90
+ const o = state.index && state.index.observations.get(contract.key(task.id, model.model_id, state.packet.protocol_id));
91
+ if (!o) { td.append(el("span", t.notPublished, "state")); return td; }
92
+ const mostly = mostlyTrained(task.id);
93
+ const rule = numberRule(o);
94
+ const tags = el("div", undefined, "tags");
95
+ if (o.state !== "ok") {
96
+ td.append(el("span", t.states[o.state], "state"));
97
+ if (o.reason) td.append(el("span", o.reason, "meta"));
98
+ } else if (!rule.show) {
99
+ td.append(el("span", t.noNumber[rule.reason], "state"));
100
+ } else {
101
+ const v = el("span", fmt(o.value, o.unit), mostly === null ? "value" : "value dim");
102
+ if (unitLabel(o.unit)) v.append(el("small", unitLabel(o.unit)));
103
+ td.append(v);
104
+ td.append(el("span", o.ci95 ? `${t.ci} ${fmt(o.ci95.lower, o.unit)} – ${fmt(o.ci95.upper, o.unit)}` : t.noCI, "meta"));
105
+ if (mostly !== null) td.append(el("span", `${t.mostly} (${pct(mostly)} ${t.hits}${o.contamination === "unknown" ? `, ${t.inSlayer}` : ""})`, "mostly"));
106
+ const hasA = Number.isInteger(o.n_hit_free), hasB = Number.isInteger(o.n_hit_free_answer_fields);
107
+ if (hasA) td.append(el("span", hitFreeLine(t.hitFree, o.value_hit_free, o.n_hit_free, o.hit_rate, o.ci95_hit_free, o.unit, t), "ref"));
108
+ if (hasB) td.append(el("span", hitFreeLine(t.hitFreeAnswer, o.value_hit_free_answer_fields, o.n_hit_free_answer_fields, o.hit_rate_answer_fields, o.ci95_hit_free_answer_fields, o.unit, t), "ref"));
109
+ if ((hasA || hasB) && o.contamination === "unknown") td.append(el("span", t.slayerSubset, "meta"));
110
+ const r = o.reference;
111
+ const refs = [];
112
+ if (r && r.chance_value !== null) refs.push(`${t.random} ${fmt(r.chance_value, o.unit)}`);
113
+ if (r && r.majority_value !== null) refs.push(`${t.majority} ${fmt(r.majority_value, o.unit)}`);
114
+ td.append(el("span", refs.length ? refs.join(" · ") : t.refMissing, "ref"));
115
+ if (r && r.majority_prediction_share !== null) td.append(el("span", `${t.majorityShare} ${pct(r.majority_prediction_share)}`, "meta"));
116
+ if (isConstant(o)) tags.append(el("span", t.constant, "tag constant"));
117
+ }
118
+ const scanClass = {clean:"clean", flagged:"flagged", unknown:"unknown"}[o.contamination] || "pending";
119
+ tags.append(el("span", t.scan[o.contamination], `tag ${scanClass}`));
120
+ td.append(tags);
121
+ if (rule.show && isConstant(o)) td.append(el("span", t.constantNote, "meta"));
122
+ if (rule.show && mostly !== null) td.append(el("span", t.mostlyVerdict, "meta"));
123
+ for (const c of state.index.contrasts) {
124
+ if (c.task_id !== task.id || c.model_id !== model.model_id || c.verdict === "withheld") continue;
125
+ const ref = state.index.models.get(c.model_ref);
126
+ const p = new Intl.NumberFormat(state.lang === "pl" ? "pl-PL" : "en-GB", {maximumSignificantDigits:2}).format(c.p_holm);
127
+ const note = c.subset === "full" ? t.verdictNote : `${t.verdictNoteSubset}, ${t.n} ${c.n}`;
128
+ const signed = v => `${v > 0 ? "+" : ""}${fmt(v, c.unit)}`;
129
+ const isNum = v => typeof v === "number" && Number.isFinite(v);
130
+ const diff = isNum(c.delta) ? `${t.delta} ${signed(c.delta)}${c.ci95 ? ` (${t.ci} ${signed(c.ci95.lower)} – ${signed(c.ci95.upper)})` : ""} · ` : "";
131
+ td.append(el("span", `${t.verdicts[c.verdict]} ${modelName(ref)}`, "verdict"), el("span", `${diff}${note}: p = ${p}`, "meta"));
132
+ }
133
+ const d = el("details");
134
+ d.append(el("summary", t.details));
135
+ d.append(el("p", `${t.population}: ${o.n_population ?? "—"} / ${o.n_selected ?? "—"} / ${o.n_scored}`));
136
+ d.append(el("p", `results_sha256 ${o.results_sha256 ?? "—"}`));
137
+ if (o.contamination_receipt_sha256) d.append(el("p", `scan receipt ${o.contamination_receipt_sha256}`));
138
+ td.append(d);
139
+ return td;
140
+ }
141
+
142
+ // Polish labels for the tasks_50 domain values; the English view shows the value itself.
143
+ const DOMAIN_PL = {
144
+ syntax:"składnia", science_reasoning:"rozumowanie naukowe", language_modeling:"modelowanie języka", morphosyntax:"morfoskładnia",
145
+ commonsense:"zdrowy rozsądek", physical_reasoning:"rozumowanie fizyczne", coreference:"koreferencja", science_knowledge:"wiedza naukowa",
146
+ reading:"czytanie", causal_reasoning:"rozumowanie przyczynowe", entailment:"wynikanie", word_sense:"znaczenie słowa",
147
+ adversarial_entailment:"wynikanie (adwersaryjne)", contextual_prediction:"przewidywanie z kontekstu", logical_reasoning:"rozumowanie logiczne",
148
+ mathematics_mc:"matematyka (wybór)", sentiment:"wydźwięk", topic_classification:"klasyfikacja tematu", question_relevance:"trafność pytania",
149
+ paraphrase:"parafraza", summary_matching:"dopasowanie streszczenia", toxicity_detection:"wykrywanie toksyczności",
150
+ sentence_entity_classification:"klasyfikacja zdań i encji", question_answering:"odpowiadanie na pytania", academic_knowledge:"wiedza akademicka",
151
+ mathematics_generation:"matematyka (generowanie)", competition_mathematics:"matematyka konkursowa", truthfulness:"prawdomówność",
152
+ instruction_following:"wykonywanie poleceń", native_exam_knowledge:"wiedza z egzaminów krajowych", unanswerable_reading:"czytanie z pytaniami bez odpowiedzi",
153
+ discrete_reading:"czytanie z liczeniem", conversational_reading:"czytanie w dialogu", closed_book_knowledge:"wiedza bez kontekstu",
154
+ biomedical_reading:"czytanie biomedyczne", medical_exam_knowledge:"wiedza z egzaminów medycznych", social_reasoning:"rozumowanie społeczne",
155
+ formal_reasoning:"rozumowanie formalne", adversarial_paraphrase:"parafraza (adwersaryjna)", acceptability:"poprawność zdania", entity_reading:"czytanie o encjach"
156
+ };
157
+ const domainLabel = d => (state.lang === "pl" && DOMAIN_PL[d]) || d.replace(/_/g, " ");
158
+
159
+ function taskHeader(task, t) {
160
+ const th = el("th", task.name, "task");
161
+ th.scope = "row";
162
+ th.append(el("span", `${task.language} · ${domainLabel(task.domain)}`, "meta"));
163
+ th.append(el("span", `${task.metric.split(",")[0]} · ${task.higher_is_better ? t.higher : t.lower}`, "meta"));
164
+ // Public scoring amendments are a property of the pinned benchmark list, never of a result file.
165
+ for (const code of task.scoring_amendments || []) th.append(el("span", t.amendments[code] || t.amendments.other, "amend"));
166
+ for (const code of task.scoring_notes || []) th.append(el("span", t.scoringNotes[code] || t.scoringNotes.other, "amend"));
167
+ const d = el("details");
168
+ d.append(el("summary", t.details));
169
+ for (const s of task.license.source_revisions) {
170
+ const p = el("p");
171
+ const a = el("a", s.repo_id);
172
+ a.href = `https://huggingface.co/datasets/${s.repo_id}`;
173
+ a.rel = "noopener";
174
+ p.append(a, document.createTextNode(` · ${t.revision} ${s.revision.slice(0, 8)}`));
175
+ d.append(p);
176
+ }
177
+ d.append(el("p", `${t.licence}: ${task.license.declared_tags.join(", ") || t.none}`));
178
+ d.append(el("p", `${task.split} · ${task.shots}-shot · ${task.instrument}`));
179
+ th.append(d);
180
+ return th;
181
+ }
182
+
183
+ function render() {
184
+ const t = T[state.lang];
185
+ const app = document.getElementById("app");
186
+ const pills = document.getElementById("pills");
187
+ pills.replaceChildren();
188
+ const pill = (b, txt) => { const p = el("span", undefined, "pill"); p.append(el("b", b), document.createTextNode(` ${txt}`)); pills.append(p); };
189
+ if (!state.tasks) {
190
+ app.replaceChildren(el("p", `${t.loadError} (${state.error})`, "notice error"));
191
+ return;
192
+ }
193
+ const rows = state.tasks.rows;
194
+ // Models whose training corpus was scanned come first; models with unknown training data follow, in packet order.
195
+ const scanned = m => state.index && [...state.index.observations.values()].some(o => o.model_id === m.model_id && o.contamination !== "unknown");
196
+ const models = state.packet ? [...state.packet.models].sort((a, b) => scanned(b) - scanned(a)) : [];
197
+ const published = new Set();
198
+ if (state.index) for (const o of state.index.observations.values()) if (numberRule(o).show) published.add(o.task_id);
199
+ pill(rows.length, t.pills.total);
200
+ pills.append(el("span", t.pills.langs, "pill"));
201
+ if (models.length) pill(models.length, t.pills.models);
202
+ pill(published.size, t.pills.published);
203
+ // Benchmarks where some model has no measurement yet (binding sentence 2026-10-29 20:18).
204
+ const pendingEl = document.getElementById("pending");
205
+ const unmeasured = state.index ? rows.filter(r => models.some(m => { const o = state.index.observations.get(contract.key(r.id, m.model_id, state.packet.protocol_id)); return !o || o.state !== "ok"; })).length : 0;
206
+ pendingEl.hidden = unmeasured === 0;
207
+ pendingEl.textContent = unmeasured ? t.pending(unmeasured) : "";
208
+
209
+ const nodes = [];
210
+ if (state.error && state.tasks) nodes.push(el("p", `${t.rejected}: ${state.error}`, "notice error"));
211
+ else if (!state.packet) nodes.push(el("p", t.noPacket, "notice"));
212
+
213
+ const controls = el("div", undefined, "controls");
214
+ const search = el("input"); search.type = "search"; search.value = state.query;
215
+ const lang = el("select");
216
+ for (const [v, txt] of [["all", t.all], ["EN", "EN"], ["PL", "PL"]]) { const op = el("option", txt); op.value = v; lang.append(op); }
217
+ lang.value = state.language;
218
+ const show = el("select");
219
+ for (const [v, txt] of [["all", t.all], ["published", t.withResults]]) { const op = el("option", txt); op.value = v; show.append(op); }
220
+ show.value = state.show;
221
+ show.disabled = !state.packet;
222
+ const clear = el("button", t.clear, "clear"); clear.type = "button";
223
+ const lab = (txt, input) => { const l = el("label", txt); l.append(input); return l; };
224
+ controls.append(lab(t.search, search), lab(t.language, lang), lab(t.show, show), clear);
225
+ const summary = el("p", undefined, "summary");
226
+ summary.setAttribute("role", "status");
227
+ const wrap = el("div", undefined, "wrap");
228
+ wrap.tabIndex = 0;
229
+ wrap.setAttribute("role", "region");
230
+ wrap.setAttribute("aria-label", t.results);
231
+ const table = el("table");
232
+ table.setAttribute("aria-labelledby", "results-title");
233
+ const head = el("tr");
234
+ const th0 = el("th", t.benchmark); th0.scope = "col"; head.append(th0);
235
+ if (models.length) for (const m of models) {
236
+ const th = el("th", modelName(m)); th.scope = "col";
237
+ th.append(el("span", m.revision ? `${t.revision} ${m.revision.slice(0, 8)}` : "", "meta"));
238
+ head.append(th);
239
+ } else { const th = el("th", t.results); th.scope = "col"; head.append(th); }
240
+ const thead = el("thead"); thead.append(head);
241
+ const tbody = el("tbody");
242
+ table.append(thead, tbody);
243
+ wrap.append(table);
244
+ const empty = el("p", t.empty, "summary");
245
+ nodes.push(controls, summary, wrap, empty);
246
+ app.replaceChildren(...nodes);
247
+
248
+ function fill() {
249
+ const q = state.query.trim().toLocaleLowerCase(state.lang);
250
+ const visible = rows.filter(r => (state.language === "all" || r.language === state.language) &&
251
+ (state.show === "all" || published.has(r.id)) &&
252
+ `${r.name} ${r.benchmark_id} ${r.domain}`.toLocaleLowerCase(state.lang).includes(q));
253
+ const frag = document.createDocumentFragment();
254
+ for (const r of visible) {
255
+ const tr = el("tr");
256
+ tr.append(taskHeader(r, t));
257
+ if (models.length) for (const m of models) tr.append(cell(r, m, t));
258
+ else tr.append(el("td", t.notPublished, "state"));
259
+ frag.append(tr);
260
+ }
261
+ tbody.replaceChildren(frag);
262
+ summary.textContent = `${t.shown} ${visible.length} ${t.of} ${rows.length} ${t.benchmarks}`;
263
+ empty.hidden = visible.length !== 0;
264
+ wrap.hidden = visible.length === 0;
265
+ }
266
+ search.addEventListener("input", () => { state.query = search.value; fill(); });
267
+ lang.addEventListener("change", () => { state.language = lang.value; fill(); });
268
+ show.addEventListener("change", () => { state.show = show.value; fill(); });
269
+ clear.addEventListener("click", () => { state.query = ""; state.language = "all"; state.show = "all"; search.value = ""; lang.value = "all"; show.value = "all"; fill(); search.focus(); });
270
+ fill();
271
+
272
+ const files = document.getElementById("files");
273
+ files.replaceChildren(el("p", t.files));
274
+ for (const f of state.files) { const p = el("p"); p.append(el("code", `${f.name} · sha256 ${f.sha}`)); files.append(p); }
275
+ if (state.packet) files.append(el("p", `${t.packet}: ${t.run} ${state.packet.run_id} · ${t.protocol} ${state.packet.protocol_id}`));
276
+ }
277
+
278
+ async function read(path, pin) {
279
+ const res = await fetch(path, {cache:"no-store"});
280
+ if (!res.ok) throw new Error(`${path}: HTTP ${res.status}`);
281
+ const bytes = await res.arrayBuffer();
282
+ const digest = await crypto.subtle.digest("SHA-256", bytes);
283
+ const sha = [...new Uint8Array(digest)].map(b => b.toString(16).padStart(2, "0")).join("");
284
+ if (pin && sha !== pin) throw new Error(`${path}: pinned bytes changed`);
285
+ state.files.push({name:path, sha});
286
+ return {bytes, sha};
287
+ }
288
+ const json = r => JSON.parse(new TextDecoder().decode(r.bytes));
289
+
290
+ function setLang(l) {
291
+ state.lang = l === "pl" ? "pl" : "en";
292
+ document.body.dataset.lang = state.lang;
293
+ document.documentElement.lang = state.lang;
294
+ document.querySelectorAll(".lang button").forEach(b => b.setAttribute("aria-pressed", String(b.dataset.set === state.lang)));
295
+ try { localStorage.setItem("slayer-lang", state.lang); } catch (e) {}
296
+ render();
297
+ }
298
+
299
+ async function start() {
300
+ try {
301
+ const tasks = await read("tasks_50.json", contract.PINS.tasks);
302
+ await read("results.schema.json", contract.PINS.schema);
303
+ await read("METHOD.md", contract.PINS.method);
304
+ await read("contamination_field_roles.json", contract.PINS.fieldRoles);
305
+ state.tasks = json(tasks);
306
+ if (state.tasks.rows.length !== 50) throw new Error("tasks_50.json: expected 50 rows");
307
+ } catch (e) { state.error = e.message; state.tasks = null; return; }
308
+ try {
309
+ const feed = json(await read("results-feed.json"));
310
+ if (feed.results !== null) {
311
+ if (feed.results !== "results.json") throw new Error("only results.json next to this page is allowed");
312
+ // The feed names the exact reviewed packet; any other bytes are refused.
313
+ if (!/^[0-9a-f]{64}$/.test(feed.sha256 || "")) throw new Error("results-feed.json: missing sha256 of results.json");
314
+ const res = await read("results.json", feed.sha256);
315
+ const packet = json(res);
316
+ state.index = contract.validate(packet, state.tasks);
317
+ state.packet = packet;
318
+ state.packetSHA = res.sha;
319
+ }
320
+ } catch (e) { state.error = e.message; state.packet = null; state.index = null; }
321
+ }
322
+
323
+ document.querySelectorAll(".lang button").forEach(b => b.addEventListener("click", () => setLang(b.dataset.set)));
324
+ let saved = null; try { saved = localStorage.getItem("slayer-lang"); } catch (e) {}
325
+ const q = new URLSearchParams(location.search).get("lang");
326
+ start().finally(() => setLang(q || saved || "en"));
327
+ })();
contamination_field_roles.json ADDED
@@ -0,0 +1,779 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "release": "bench50-v0.3.1",
3
+ "kind": "contamination_field_roles",
4
+ "scan": {
5
+ "receipt_sha256": "bc6c168cf6ef35bce80b70f3bf582853526b558cb7f37e30101e35f3c2342de7",
6
+ "benchmarks_section_sha256_prefix": "8be608af",
7
+ "scanner_sha256": "685fa9ef1fbd6e9a680be53da7fd7d943e3c1f2cde6ef69b24271027df74dad2"
8
+ },
9
+ "rule": {
10
+ "context": "a supporting document shown to the model but separate from the question and the answer (passage, context, story, article, support)",
11
+ "answer_bearing": "the question, the options, the gold answer or its explanation, or the scored text itself (items with no separate document: minimal pairs, sentence classification, continuation, perplexity pages)",
12
+ "metadata": "annotation tags that are not shown to the model as text; hits are ignored in every variant and listed with counts",
13
+ "variant_a": "items with no hit in any context or answer_bearing field",
14
+ "variant_b": "items with no hit in any answer_bearing field",
15
+ "extractive_qa": "answer span fields are answer_bearing even where the span is copied from the passage (SQuAD2, PoQuAD, CoQA, DROP): variant (b) is strict there and the report says so",
16
+ "assigned": "from the meaning of each field in the pinned task definition, before any variant value was computed"
17
+ },
18
+ "justification": {
19
+ "extractive_qa": "An answer span copied from the passage is still the gold answer; one rule for every task type is preferred to a type-dependent exception, so variant (b) is stricter for extractive QA and the report says so.",
20
+ "scored_text": "Where a benchmark has no separate document, the scored text is the item itself, so a hit there is a hit on the answer.",
21
+ "metadata": "Morphological tags are not shown to the model as text; their hits are exact-short matches of tag strings and do not indicate exposure."
22
+ },
23
+ "counts": {
24
+ "context": 12,
25
+ "answer_bearing": 93,
26
+ "metadata": 2
27
+ },
28
+ "roles": [
29
+ {
30
+ "task_id": "T44",
31
+ "benchmark_id": "pubmedqa",
32
+ "field": "CONTEXTS[]",
33
+ "hit_items": 4,
34
+ "role": "context"
35
+ },
36
+ {
37
+ "task_id": "T44",
38
+ "benchmark_id": "pubmedqa",
39
+ "field": "LONG_ANSWER",
40
+ "hit_items": 1,
41
+ "role": "answer_bearing"
42
+ },
43
+ {
44
+ "task_id": "T19",
45
+ "benchmark_id": "mathqa",
46
+ "field": "Problem",
47
+ "hit_items": 74,
48
+ "role": "answer_bearing"
49
+ },
50
+ {
51
+ "task_id": "T44",
52
+ "benchmark_id": "pubmedqa",
53
+ "field": "QUESTION",
54
+ "hit_items": 2,
55
+ "role": "answer_bearing"
56
+ },
57
+ {
58
+ "task_id": "T19",
59
+ "benchmark_id": "mathqa",
60
+ "field": "Rationale",
61
+ "hit_items": 14,
62
+ "role": "answer_bearing"
63
+ },
64
+ {
65
+ "task_id": "T28",
66
+ "benchmark_id": "cbd",
67
+ "field": "TEXT",
68
+ "hit_items": 26,
69
+ "role": "answer_bearing"
70
+ },
71
+ {
72
+ "task_id": "T41",
73
+ "benchmark_id": "coqa",
74
+ "field": "additional_answers.0.input_text[]",
75
+ "hit_items": 10,
76
+ "role": "answer_bearing"
77
+ },
78
+ {
79
+ "task_id": "T41",
80
+ "benchmark_id": "coqa",
81
+ "field": "additional_answers.0.span_text[]",
82
+ "hit_items": 39,
83
+ "role": "answer_bearing"
84
+ },
85
+ {
86
+ "task_id": "T41",
87
+ "benchmark_id": "coqa",
88
+ "field": "additional_answers.1.input_text[]",
89
+ "hit_items": 7,
90
+ "role": "answer_bearing"
91
+ },
92
+ {
93
+ "task_id": "T41",
94
+ "benchmark_id": "coqa",
95
+ "field": "additional_answers.1.span_text[]",
96
+ "hit_items": 28,
97
+ "role": "answer_bearing"
98
+ },
99
+ {
100
+ "task_id": "T41",
101
+ "benchmark_id": "coqa",
102
+ "field": "additional_answers.2.input_text[]",
103
+ "hit_items": 6,
104
+ "role": "answer_bearing"
105
+ },
106
+ {
107
+ "task_id": "T41",
108
+ "benchmark_id": "coqa",
109
+ "field": "additional_answers.2.span_text[]",
110
+ "hit_items": 22,
111
+ "role": "answer_bearing"
112
+ },
113
+ {
114
+ "task_id": "T25",
115
+ "benchmark_id": "dyk",
116
+ "field": "answer",
117
+ "hit_items": 799,
118
+ "role": "answer_bearing"
119
+ },
120
+ {
121
+ "task_id": "T43",
122
+ "benchmark_id": "triviaqa",
123
+ "field": "answer.aliases[]",
124
+ "hit_items": 1137,
125
+ "role": "answer_bearing"
126
+ },
127
+ {
128
+ "task_id": "T43",
129
+ "benchmark_id": "triviaqa",
130
+ "field": "answer.normalized_aliases[]",
131
+ "hit_items": 776,
132
+ "role": "answer_bearing"
133
+ },
134
+ {
135
+ "task_id": "T43",
136
+ "benchmark_id": "triviaqa",
137
+ "field": "answer.normalized_value",
138
+ "hit_items": 28,
139
+ "role": "answer_bearing"
140
+ },
141
+ {
142
+ "task_id": "T43",
143
+ "benchmark_id": "triviaqa",
144
+ "field": "answer.value",
145
+ "hit_items": 62,
146
+ "role": "answer_bearing"
147
+ },
148
+ {
149
+ "task_id": "T46",
150
+ "benchmark_id": "social_iqa",
151
+ "field": "answerA",
152
+ "hit_items": 2,
153
+ "role": "answer_bearing"
154
+ },
155
+ {
156
+ "task_id": "T46",
157
+ "benchmark_id": "social_iqa",
158
+ "field": "answerB",
159
+ "hit_items": 4,
160
+ "role": "answer_bearing"
161
+ },
162
+ {
163
+ "task_id": "T42",
164
+ "benchmark_id": "nq_open",
165
+ "field": "answer[]",
166
+ "hit_items": 64,
167
+ "role": "answer_bearing"
168
+ },
169
+ {
170
+ "task_id": "T41",
171
+ "benchmark_id": "coqa",
172
+ "field": "answers.input_text[]",
173
+ "hit_items": 4,
174
+ "role": "answer_bearing"
175
+ },
176
+ {
177
+ "task_id": "T41",
178
+ "benchmark_id": "coqa",
179
+ "field": "answers.span_text[]",
180
+ "hit_items": 36,
181
+ "role": "answer_bearing"
182
+ },
183
+ {
184
+ "task_id": "T31",
185
+ "benchmark_id": "poquad",
186
+ "field": "answers.text[]",
187
+ "hit_items": 731,
188
+ "role": "answer_bearing"
189
+ },
190
+ {
191
+ "task_id": "T38",
192
+ "benchmark_id": "squad2",
193
+ "field": "answers.text[]",
194
+ "hit_items": 34,
195
+ "role": "answer_bearing"
196
+ },
197
+ {
198
+ "task_id": "T30",
199
+ "benchmark_id": "polqa",
200
+ "field": "answers[]",
201
+ "hit_items": 2,
202
+ "role": "answer_bearing"
203
+ },
204
+ {
205
+ "task_id": "T37",
206
+ "benchmark_id": "llmzszl",
207
+ "field": "answers[]",
208
+ "hit_items": 555,
209
+ "role": "answer_bearing"
210
+ },
211
+ {
212
+ "task_id": "T40",
213
+ "benchmark_id": "race",
214
+ "field": "article",
215
+ "hit_items": 75,
216
+ "role": "context"
217
+ },
218
+ {
219
+ "task_id": "T04",
220
+ "benchmark_id": "multiblimp",
221
+ "field": "attractors[].xpos",
222
+ "hit_items": 3,
223
+ "role": "metadata"
224
+ },
225
+ {
226
+ "task_id": "T11",
227
+ "benchmark_id": "copa",
228
+ "field": "choice1",
229
+ "hit_items": 6,
230
+ "role": "answer_bearing"
231
+ },
232
+ {
233
+ "task_id": "T11",
234
+ "benchmark_id": "copa",
235
+ "field": "choice2",
236
+ "hit_items": 11,
237
+ "role": "answer_bearing"
238
+ },
239
+ {
240
+ "task_id": "T02",
241
+ "benchmark_id": "arc",
242
+ "field": "choices.text[]",
243
+ "hit_items": 33,
244
+ "role": "answer_bearing"
245
+ },
246
+ {
247
+ "task_id": "T08",
248
+ "benchmark_id": "openbookqa",
249
+ "field": "choices.text[]",
250
+ "hit_items": 48,
251
+ "role": "answer_bearing"
252
+ },
253
+ {
254
+ "task_id": "T32",
255
+ "benchmark_id": "mmlu",
256
+ "field": "choices[]",
257
+ "hit_items": 257,
258
+ "role": "answer_bearing"
259
+ },
260
+ {
261
+ "task_id": "T04",
262
+ "benchmark_id": "multiblimp",
263
+ "field": "congruent_attractors[].xpos",
264
+ "hit_items": 3,
265
+ "role": "metadata"
266
+ },
267
+ {
268
+ "task_id": "T31",
269
+ "benchmark_id": "poquad",
270
+ "field": "context",
271
+ "hit_items": 5764,
272
+ "role": "context"
273
+ },
274
+ {
275
+ "task_id": "T38",
276
+ "benchmark_id": "squad2",
277
+ "field": "context",
278
+ "hit_items": 3097,
279
+ "role": "context"
280
+ },
281
+ {
282
+ "task_id": "T05",
283
+ "benchmark_id": "hellaswag",
284
+ "field": "ctx",
285
+ "hit_items": 21,
286
+ "role": "answer_bearing"
287
+ },
288
+ {
289
+ "task_id": "T05",
290
+ "benchmark_id": "hellaswag",
291
+ "field": "ctx_a",
292
+ "hit_items": 22,
293
+ "role": "answer_bearing"
294
+ },
295
+ {
296
+ "task_id": "T05",
297
+ "benchmark_id": "hellaswag",
298
+ "field": "endings[]",
299
+ "hit_items": 28,
300
+ "role": "answer_bearing"
301
+ },
302
+ {
303
+ "task_id": "T45",
304
+ "benchmark_id": "medmcqa",
305
+ "field": "exp",
306
+ "hit_items": 33,
307
+ "role": "answer_bearing"
308
+ },
309
+ {
310
+ "task_id": "T27",
311
+ "benchmark_id": "psc",
312
+ "field": "extract_text",
313
+ "hit_items": 2,
314
+ "role": "answer_bearing"
315
+ },
316
+ {
317
+ "task_id": "T06",
318
+ "benchmark_id": "piqa",
319
+ "field": "goal",
320
+ "hit_items": 11,
321
+ "role": "answer_bearing"
322
+ },
323
+ {
324
+ "task_id": "T15",
325
+ "benchmark_id": "rte",
326
+ "field": "hypothesis",
327
+ "hit_items": 1,
328
+ "role": "answer_bearing"
329
+ },
330
+ {
331
+ "task_id": "T47",
332
+ "benchmark_id": "bbh",
333
+ "field": "input",
334
+ "hit_items": 22,
335
+ "role": "answer_bearing"
336
+ },
337
+ {
338
+ "task_id": "T35",
339
+ "benchmark_id": "truthfulqa",
340
+ "field": "mc1_targets.choices[]",
341
+ "hit_items": 35,
342
+ "role": "answer_bearing"
343
+ },
344
+ {
345
+ "task_id": "T35",
346
+ "benchmark_id": "truthfulqa",
347
+ "field": "mc2_targets.choices[]",
348
+ "hit_items": 48,
349
+ "role": "answer_bearing"
350
+ },
351
+ {
352
+ "task_id": "T04",
353
+ "benchmark_id": "multiblimp",
354
+ "field": "metadata.text",
355
+ "hit_items": 164,
356
+ "role": "answer_bearing"
357
+ },
358
+ {
359
+ "task_id": "T45",
360
+ "benchmark_id": "medmcqa",
361
+ "field": "opa",
362
+ "hit_items": 46,
363
+ "role": "answer_bearing"
364
+ },
365
+ {
366
+ "task_id": "T45",
367
+ "benchmark_id": "medmcqa",
368
+ "field": "opb",
369
+ "hit_items": 41,
370
+ "role": "answer_bearing"
371
+ },
372
+ {
373
+ "task_id": "T45",
374
+ "benchmark_id": "medmcqa",
375
+ "field": "opc",
376
+ "hit_items": 38,
377
+ "role": "answer_bearing"
378
+ },
379
+ {
380
+ "task_id": "T45",
381
+ "benchmark_id": "medmcqa",
382
+ "field": "opd",
383
+ "hit_items": 85,
384
+ "role": "answer_bearing"
385
+ },
386
+ {
387
+ "task_id": "T19",
388
+ "benchmark_id": "mathqa",
389
+ "field": "options",
390
+ "hit_items": 5,
391
+ "role": "answer_bearing"
392
+ },
393
+ {
394
+ "task_id": "T03",
395
+ "benchmark_id": "wikitext2",
396
+ "field": "page",
397
+ "hit_items": 21,
398
+ "role": "answer_bearing"
399
+ },
400
+ {
401
+ "task_id": "T10",
402
+ "benchmark_id": "boolq",
403
+ "field": "passage",
404
+ "hit_items": 637,
405
+ "role": "context"
406
+ },
407
+ {
408
+ "task_id": "T39",
409
+ "benchmark_id": "drop",
410
+ "field": "passage",
411
+ "hit_items": 2327,
412
+ "role": "context"
413
+ },
414
+ {
415
+ "task_id": "T50",
416
+ "benchmark_id": "record",
417
+ "field": "passage",
418
+ "hit_items": 189,
419
+ "role": "context"
420
+ },
421
+ {
422
+ "task_id": "T30",
423
+ "benchmark_id": "polqa",
424
+ "field": "passage_text",
425
+ "hit_items": 12667,
426
+ "role": "context"
427
+ },
428
+ {
429
+ "task_id": "T30",
430
+ "benchmark_id": "polqa",
431
+ "field": "passage_title",
432
+ "hit_items": 19,
433
+ "role": "context"
434
+ },
435
+ {
436
+ "task_id": "T30",
437
+ "benchmark_id": "polqa",
438
+ "field": "passage_wiki",
439
+ "hit_items": 13050,
440
+ "role": "context"
441
+ },
442
+ {
443
+ "task_id": "T04",
444
+ "benchmark_id": "multiblimp",
445
+ "field": "prefix",
446
+ "hit_items": 41,
447
+ "role": "answer_bearing"
448
+ },
449
+ {
450
+ "task_id": "T11",
451
+ "benchmark_id": "copa",
452
+ "field": "premise",
453
+ "hit_items": 9,
454
+ "role": "answer_bearing"
455
+ },
456
+ {
457
+ "task_id": "T15",
458
+ "benchmark_id": "rte",
459
+ "field": "premise",
460
+ "hit_items": 9,
461
+ "role": "answer_bearing"
462
+ },
463
+ {
464
+ "task_id": "T16",
465
+ "benchmark_id": "anli",
466
+ "field": "premise",
467
+ "hit_items": 19,
468
+ "role": "answer_bearing"
469
+ },
470
+ {
471
+ "task_id": "T34",
472
+ "benchmark_id": "math",
473
+ "field": "problem",
474
+ "hit_items": 34,
475
+ "role": "answer_bearing"
476
+ },
477
+ {
478
+ "task_id": "T40",
479
+ "benchmark_id": "race",
480
+ "field": "problems[].question",
481
+ "hit_items": 1,
482
+ "role": "answer_bearing"
483
+ },
484
+ {
485
+ "task_id": "T36",
486
+ "benchmark_id": "ifeval",
487
+ "field": "prompt",
488
+ "hit_items": 2,
489
+ "role": "answer_bearing"
490
+ },
491
+ {
492
+ "task_id": "T50",
493
+ "benchmark_id": "record",
494
+ "field": "query",
495
+ "hit_items": 36,
496
+ "role": "answer_bearing"
497
+ },
498
+ {
499
+ "task_id": "T02",
500
+ "benchmark_id": "arc",
501
+ "field": "question",
502
+ "hit_items": 15,
503
+ "role": "answer_bearing"
504
+ },
505
+ {
506
+ "task_id": "T09",
507
+ "benchmark_id": "sciq",
508
+ "field": "question",
509
+ "hit_items": 15,
510
+ "role": "answer_bearing"
511
+ },
512
+ {
513
+ "task_id": "T10",
514
+ "benchmark_id": "boolq",
515
+ "field": "question",
516
+ "hit_items": 1,
517
+ "role": "answer_bearing"
518
+ },
519
+ {
520
+ "task_id": "T30",
521
+ "benchmark_id": "polqa",
522
+ "field": "question",
523
+ "hit_items": 20,
524
+ "role": "answer_bearing"
525
+ },
526
+ {
527
+ "task_id": "T31",
528
+ "benchmark_id": "poquad",
529
+ "field": "question",
530
+ "hit_items": 563,
531
+ "role": "answer_bearing"
532
+ },
533
+ {
534
+ "task_id": "T32",
535
+ "benchmark_id": "mmlu",
536
+ "field": "question",
537
+ "hit_items": 405,
538
+ "role": "answer_bearing"
539
+ },
540
+ {
541
+ "task_id": "T35",
542
+ "benchmark_id": "truthfulqa",
543
+ "field": "question",
544
+ "hit_items": 16,
545
+ "role": "answer_bearing"
546
+ },
547
+ {
548
+ "task_id": "T37",
549
+ "benchmark_id": "llmzszl",
550
+ "field": "question",
551
+ "hit_items": 235,
552
+ "role": "answer_bearing"
553
+ },
554
+ {
555
+ "task_id": "T38",
556
+ "benchmark_id": "squad2",
557
+ "field": "question",
558
+ "hit_items": 9,
559
+ "role": "answer_bearing"
560
+ },
561
+ {
562
+ "task_id": "T39",
563
+ "benchmark_id": "drop",
564
+ "field": "question",
565
+ "hit_items": 4,
566
+ "role": "answer_bearing"
567
+ },
568
+ {
569
+ "task_id": "T42",
570
+ "benchmark_id": "nq_open",
571
+ "field": "question",
572
+ "hit_items": 13,
573
+ "role": "answer_bearing"
574
+ },
575
+ {
576
+ "task_id": "T43",
577
+ "benchmark_id": "triviaqa",
578
+ "field": "question",
579
+ "hit_items": 161,
580
+ "role": "answer_bearing"
581
+ },
582
+ {
583
+ "task_id": "T45",
584
+ "benchmark_id": "medmcqa",
585
+ "field": "question",
586
+ "hit_items": 34,
587
+ "role": "answer_bearing"
588
+ },
589
+ {
590
+ "task_id": "T46",
591
+ "benchmark_id": "social_iqa",
592
+ "field": "question",
593
+ "hit_items": 3,
594
+ "role": "answer_bearing"
595
+ },
596
+ {
597
+ "task_id": "T08",
598
+ "benchmark_id": "openbookqa",
599
+ "field": "question_stem",
600
+ "hit_items": 26,
601
+ "role": "answer_bearing"
602
+ },
603
+ {
604
+ "task_id": "T41",
605
+ "benchmark_id": "coqa",
606
+ "field": "questions.input_text[]",
607
+ "hit_items": 1,
608
+ "role": "answer_bearing"
609
+ },
610
+ {
611
+ "task_id": "T04",
612
+ "benchmark_id": "multiblimp",
613
+ "field": "sen",
614
+ "hit_items": 162,
615
+ "role": "answer_bearing"
616
+ },
617
+ {
618
+ "task_id": "T21",
619
+ "benchmark_id": "sst2",
620
+ "field": "sentence",
621
+ "hit_items": 6,
622
+ "role": "answer_bearing"
623
+ },
624
+ {
625
+ "task_id": "T22",
626
+ "benchmark_id": "polemo2",
627
+ "field": "sentence",
628
+ "hit_items": 27,
629
+ "role": "answer_bearing"
630
+ },
631
+ {
632
+ "task_id": "T23",
633
+ "benchmark_id": "8tags",
634
+ "field": "sentence",
635
+ "hit_items": 243,
636
+ "role": "answer_bearing"
637
+ },
638
+ {
639
+ "task_id": "T29",
640
+ "benchmark_id": "klej_ner",
641
+ "field": "sentence",
642
+ "hit_items": 138,
643
+ "role": "answer_bearing"
644
+ },
645
+ {
646
+ "task_id": "T49",
647
+ "benchmark_id": "cola",
648
+ "field": "sentence",
649
+ "hit_items": 44,
650
+ "role": "answer_bearing"
651
+ },
652
+ {
653
+ "task_id": "T13",
654
+ "benchmark_id": "wic",
655
+ "field": "sentence1",
656
+ "hit_items": 156,
657
+ "role": "answer_bearing"
658
+ },
659
+ {
660
+ "task_id": "T48",
661
+ "benchmark_id": "paws",
662
+ "field": "sentence1",
663
+ "hit_items": 14,
664
+ "role": "answer_bearing"
665
+ },
666
+ {
667
+ "task_id": "T13",
668
+ "benchmark_id": "wic",
669
+ "field": "sentence2",
670
+ "hit_items": 168,
671
+ "role": "answer_bearing"
672
+ },
673
+ {
674
+ "task_id": "T48",
675
+ "benchmark_id": "paws",
676
+ "field": "sentence2",
677
+ "hit_items": 16,
678
+ "role": "answer_bearing"
679
+ },
680
+ {
681
+ "task_id": "T26",
682
+ "benchmark_id": "ppc",
683
+ "field": "sentence_A",
684
+ "hit_items": 223,
685
+ "role": "answer_bearing"
686
+ },
687
+ {
688
+ "task_id": "T26",
689
+ "benchmark_id": "ppc",
690
+ "field": "sentence_B",
691
+ "hit_items": 185,
692
+ "role": "answer_bearing"
693
+ },
694
+ {
695
+ "task_id": "T01",
696
+ "benchmark_id": "blimp",
697
+ "field": "sentence_bad",
698
+ "hit_items": 138,
699
+ "role": "answer_bearing"
700
+ },
701
+ {
702
+ "task_id": "T01",
703
+ "benchmark_id": "blimp",
704
+ "field": "sentence_good",
705
+ "hit_items": 226,
706
+ "role": "answer_bearing"
707
+ },
708
+ {
709
+ "task_id": "T06",
710
+ "benchmark_id": "piqa",
711
+ "field": "sol1",
712
+ "hit_items": 48,
713
+ "role": "answer_bearing"
714
+ },
715
+ {
716
+ "task_id": "T06",
717
+ "benchmark_id": "piqa",
718
+ "field": "sol2",
719
+ "hit_items": 40,
720
+ "role": "answer_bearing"
721
+ },
722
+ {
723
+ "task_id": "T34",
724
+ "benchmark_id": "math",
725
+ "field": "solution",
726
+ "hit_items": 42,
727
+ "role": "answer_bearing"
728
+ },
729
+ {
730
+ "task_id": "T41",
731
+ "benchmark_id": "coqa",
732
+ "field": "story",
733
+ "hit_items": 67,
734
+ "role": "context"
735
+ },
736
+ {
737
+ "task_id": "T27",
738
+ "benchmark_id": "psc",
739
+ "field": "summary_text",
740
+ "hit_items": 5,
741
+ "role": "answer_bearing"
742
+ },
743
+ {
744
+ "task_id": "T09",
745
+ "benchmark_id": "sciq",
746
+ "field": "support",
747
+ "hit_items": 79,
748
+ "role": "context"
749
+ },
750
+ {
751
+ "task_id": "T14",
752
+ "benchmark_id": "wsc273",
753
+ "field": "text",
754
+ "hit_items": 4,
755
+ "role": "answer_bearing"
756
+ },
757
+ {
758
+ "task_id": "T17",
759
+ "benchmark_id": "lambada",
760
+ "field": "text",
761
+ "hit_items": 1,
762
+ "role": "answer_bearing"
763
+ },
764
+ {
765
+ "task_id": "T39",
766
+ "benchmark_id": "drop",
767
+ "field": "validated_answers.spans[][]",
768
+ "hit_items": 3,
769
+ "role": "answer_bearing"
770
+ },
771
+ {
772
+ "task_id": "T04",
773
+ "benchmark_id": "multiblimp",
774
+ "field": "wrong_sen",
775
+ "hit_items": 58,
776
+ "role": "answer_bearing"
777
+ }
778
+ ]
779
+ }
contract.js ADDED
@@ -0,0 +1,187 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ "use strict";
2
+ /* Acceptance checks for the public bench50-v0.3.1 result packet (results.schema.json, schema_version 2).
3
+ The exporter validates the full JSON Schema before publication; this file re-checks, in the browser,
4
+ every rule the page relies on to decide what may be shown. Anything unexpected rejects the whole packet. */
5
+ (() => {
6
+ const PINS = {
7
+ tasks: "fcfc45d805243e7ea4aa12bf836940ea086ecafe9fe3e592bf8850890ca8cf6b",
8
+ schema: "c133a37d4038912314b14d374cd3ae1ecc6d8bca3d88a465f7e1243437553eec",
9
+ method: "8709632a394a3d69fa56567404e6543f7305d49fc97c9d381fbfad46d86628ae",
10
+ fieldRoles: "de4280e9db5a947e4e569ad4e5dfcb048d6ee574014b640d254b6c8e1a604b35"
11
+ };
12
+ const HEX64 = /^[0-9a-f]{64}$/;
13
+ const STATES = ["ok","not_run","blocked_access","blocked_runtime","blocked_security","blocked_judge","unsupported","failed","skipped"];
14
+ const CONTAMINATION = ["clean","flagged","partially_scanned","unscanned","unknown"];
15
+ const UNITS = ["percent","score","byte_ppl"];
16
+ const VERDICTS = ["withheld","better","worse","inconclusive"];
17
+ const SUBSETS = ["full","hit_free","hit_free_answer_fields"];
18
+ const OBS_KEYS = ["task_id","model_id","protocol_id","metric","unit","higher_is_better","n_population","n_selected","n_scored","state","value","ci95",
19
+ "source_id_digest","results_sha256","runner_sha256","reason","contamination","contamination_receipt_sha256","value_hit_free","n_hit_free","hit_rate",
20
+ "value_hit_free_answer_fields","n_hit_free_answer_fields","hit_rate_answer_fields","ci95_hit_free","ci95_hit_free_answer_fields","reference"];
21
+ const REQUIRED_OBS = ["task_id","model_id","protocol_id","metric","unit","higher_is_better","n_population","n_selected","n_scored","state","value","ci95",
22
+ "source_id_digest","results_sha256","runner_sha256","contamination","contamination_receipt_sha256"];
23
+
24
+ function fail(message) { throw new Error(message); }
25
+ const isNum = v => typeof v === "number" && Number.isFinite(v);
26
+ const isShare = v => isNum(v) && v >= 0 && v <= 1;
27
+ function key(task, model, protocol) { return `${task}\u0000${model}\u0000${protocol}`; }
28
+
29
+ function checkCI(ci, where) {
30
+ if (ci === null) return;
31
+ if (typeof ci !== "object") fail(`${where}: ci95 must be an object or null`);
32
+ for (const k of Object.keys(ci)) if (!["lower","upper","level","method","replicates","seed"].includes(k)) fail(`${where}: unknown ci95 field ${k}`);
33
+ if (!isNum(ci.lower) || !isNum(ci.upper) || ci.lower > ci.upper) fail(`${where}: invalid ci95 bounds`);
34
+ if (ci.level !== 0.95 || ci.replicates !== 10000 || ci.seed !== 20261028) fail(`${where}: ci95 does not follow the protocol`);
35
+ if (!["paired_bootstrap","paired_cluster_bootstrap"].includes(ci.method)) fail(`${where}: unknown ci95 method`);
36
+ }
37
+
38
+ function checkReference(ref, where) {
39
+ if (ref === undefined || ref === null) return;
40
+ if (typeof ref !== "object") fail(`${where}: reference must be an object or null`);
41
+ for (const k of Object.keys(ref)) if (!["chance_value","majority_value","majority_prediction_share","constant_prediction"].includes(k)) fail(`${where}: unknown reference field ${k}`);
42
+ for (const k of ["chance_value","majority_value"]) if (!(k in ref) || !(ref[k] === null || isNum(ref[k]))) fail(`${where}: reference.${k} must be a number or null`);
43
+ if (!("majority_prediction_share" in ref) || !(ref.majority_prediction_share === null || isShare(ref.majority_prediction_share))) fail(`${where}: reference.majority_prediction_share must be 0..1 or null`);
44
+ if (!("constant_prediction" in ref) || !(ref.constant_prediction === null || typeof ref.constant_prediction === "boolean")) fail(`${where}: reference.constant_prediction must be boolean or null`);
45
+ }
46
+
47
+ function checkObservation(o, i, tasks, models, protocols) {
48
+ const where = `observation ${i}`;
49
+ if (!o || typeof o !== "object") fail(`${where}: not an object`);
50
+ for (const k of Object.keys(o)) if (!OBS_KEYS.includes(k)) fail(`${where}: unknown field ${k}`);
51
+ for (const k of REQUIRED_OBS) if (!(k in o)) fail(`${where}: missing ${k}`);
52
+ if (!tasks.has(o.task_id)) fail(`${where}: task ${o.task_id} is not in the benchmark list`);
53
+ if (!models.has(o.model_id)) fail(`${where}: model ${o.model_id} is not declared`);
54
+ if (!protocols.includes(o.protocol_id)) fail(`${where}: unknown protocol ${o.protocol_id}`);
55
+ if (!STATES.includes(o.state)) fail(`${where}: unknown state`);
56
+ if (!CONTAMINATION.includes(o.contamination)) fail(`${where}: unknown contamination state`);
57
+ if (!UNITS.includes(o.unit)) fail(`${where}: unknown unit`);
58
+ if (typeof o.higher_is_better !== "boolean") fail(`${where}: higher_is_better must be boolean`);
59
+ const task = tasks.get(o.task_id);
60
+ if (o.unit !== task.unit || o.higher_is_better !== task.higher_is_better) fail(`${where}: unit or direction differs from the benchmark list`);
61
+ if (!Number.isInteger(o.n_scored) || o.n_scored < 0) fail(`${where}: invalid n_scored`);
62
+ for (const k of ["n_population","n_selected"]) if (!(o[k] === null || (Number.isInteger(o[k]) && o[k] >= 0))) fail(`${where}: invalid ${k}`);
63
+ checkCI(o.ci95, where);
64
+ checkReference(o.reference, where);
65
+ if (o.state === "ok") {
66
+ if (!isNum(o.value) || o.n_scored < 1) fail(`${where}: ok without a value`);
67
+ for (const k of ["source_id_digest","results_sha256","runner_sha256"]) if (!HEX64.test(o[k] || "")) fail(`${where}: ok without ${k}`);
68
+ if (o.ci95 !== null && (o.value < o.ci95.lower || o.value > o.ci95.upper)) fail(`${where}: value outside its interval`);
69
+ } else if (o.value !== null || o.ci95 !== null) fail(`${where}: a non-ok state carries a value`);
70
+ if (["clean","flagged","partially_scanned"].includes(o.contamination) && !HEX64.test(o.contamination_receipt_sha256 || "")) fail(`${where}: scan state without a receipt`);
71
+ const variants = [["value_hit_free","n_hit_free","hit_rate","ci95_hit_free"], ["value_hit_free_answer_fields","n_hit_free_answer_fields","hit_rate_answer_fields","ci95_hit_free_answer_fields"]];
72
+ for (const [v, n, r, c] of variants) {
73
+ const ci = o[c] === undefined ? null : o[c];
74
+ checkCI(ci, `${where} ${c}`);
75
+ const given = [o[v], o[n], o[r]].some(x => x !== undefined && x !== null);
76
+ if (o.contamination === "flagged" && o.state === "ok" && !given) fail(`${where}: flagged without ${n}`);
77
+ if (!given) { if (ci !== null) fail(`${where}: ${c} without ${v}`); continue; }
78
+ if (!Number.isInteger(o[n]) || o[n] < 0 || !isShare(o[r])) fail(`${where}: invalid ${n} or ${r}`);
79
+ if ((o[n] === 0) !== (o[v] === null || o[v] === undefined)) fail(`${where}: ${v} must be empty exactly when ${n} is 0`);
80
+ if (o[n] > 0 && !isNum(o[v])) fail(`${where}: invalid ${v}`);
81
+ if (o.n_scored && o[n] > o.n_scored) fail(`${where}: ${n} exceeds n_scored`);
82
+ if (ci !== null && (o[n] === 0 || o[v] < ci.lower || o[v] > ci.upper)) fail(`${where}: ${v} outside ${c}`);
83
+ }
84
+ }
85
+
86
+ function validate(packet, taskList) {
87
+ if (!packet || typeof packet !== "object") fail("packet is not an object");
88
+ for (const k of Object.keys(packet)) if (!["schema_version","protocol_id","run_id","models","tasks","observations","contrasts","provenance"].includes(k)) fail(`unknown top-level field ${k}`);
89
+ if (packet.schema_version !== 2) fail("schema_version must be 2");
90
+ const protocols = ["bench50-v0.3.1-panel200","bench50-v0.3.1-fullB"];
91
+ if (!protocols.includes(packet.protocol_id)) fail("unknown protocol_id");
92
+ if (typeof packet.run_id !== "string" || !packet.run_id) fail("missing run_id");
93
+ const p = packet.provenance;
94
+ if (!p || p.kind !== "measurement") fail("only measurement packets are shown");
95
+ if (!/^[0-9a-f]{40}$/.test(p.inventory_commit || "")) fail("provenance.inventory_commit missing");
96
+ if (!Array.isArray(p.sources) || !p.sources.length || !p.sources.every(s => s && typeof s.run_id === "string" && HEX64.test(s.results_sha256 || ""))) fail("provenance.sources missing");
97
+ if (!Array.isArray(packet.models) || !packet.models.length) fail("no models");
98
+ const models = new Map();
99
+ for (const m of packet.models) {
100
+ if (!m || typeof m.model_id !== "string" || !m.model_id || typeof m.repo !== "string" || !m.repo) fail("invalid model entry");
101
+ if (models.has(m.model_id)) fail(`duplicate model ${m.model_id}`);
102
+ if (!(m.weights_sha256 === null || HEX64.test(m.weights_sha256))) fail(`invalid weights_sha256 for ${m.model_id}`);
103
+ models.set(m.model_id, m);
104
+ }
105
+ const tasks = new Map(taskList.rows.map(r => [r.id, r]));
106
+ if (!Array.isArray(packet.tasks)) fail("tasks must be a list");
107
+ for (const t of packet.tasks) {
108
+ const row = tasks.get(t && t.task_id);
109
+ if (!row) fail(`task ${t && t.task_id} is not in the benchmark list`);
110
+ if (t.language !== row.language) fail(`task ${t.task_id}: language differs from the benchmark list`);
111
+ }
112
+ if (!Array.isArray(packet.observations)) fail("observations must be a list");
113
+ const observations = new Map();
114
+ packet.observations.forEach((o, i) => {
115
+ checkObservation(o, i, tasks, models, protocols);
116
+ const k = key(o.task_id, o.model_id, o.protocol_id);
117
+ if (observations.has(k)) fail(`duplicate observation ${o.task_id} / ${o.model_id}`);
118
+ observations.set(k, o);
119
+ });
120
+ if (!Array.isArray(packet.contrasts)) fail("contrasts must be a list");
121
+ const contrasts = [];
122
+ packet.contrasts.forEach((c, i) => {
123
+ const where = `contrast ${i}`;
124
+ if (!c || !VERDICTS.includes(c.verdict)) fail(`${where}: unknown verdict`);
125
+ if (!SUBSETS.includes(c.subset)) fail(`${where}: unknown subset`);
126
+ if (!(c.n === null || (Number.isInteger(c.n) && c.n >= 0))) fail(`${where}: invalid n`);
127
+ if (typeof c.metric !== "string" || !c.metric || !UNITS.includes(c.unit)) fail(`${where}: missing metric or unit`);
128
+ const left = observations.get(key(c.task_id, c.model_id, c.protocol_id));
129
+ const right = observations.get(key(c.task_id, c.model_ref, c.protocol_id));
130
+ if (!left || !right) fail(`${where}: refers to a missing observation`);
131
+ if (c.unit !== left.unit) fail(`${where}: unit differs from its observation`);
132
+ checkCI(c.ci95, where);
133
+ if (c.verdict !== "withheld") {
134
+ const r = c.review || {};
135
+ if (r.status !== "accepted" || typeof r.actor !== "string" || !r.actor || !HEX64.test(r.artifact_sha256 || "")) fail(`${where}: verdict without an accepted review`);
136
+ if (!isNum(c.delta) || !isShare(c.p_holm) || !Number.isInteger(c.family_size) || c.family_size < 1) fail(`${where}: verdict without paired test numbers`);
137
+ if (!Number.isInteger(c.n) || c.n < 1) fail(`${where}: verdict without n`);
138
+ if (left.state !== "ok" || right.state !== "ok") fail(`${where}: verdict on a non-ok observation`);
139
+ checkVerdict(c, left, right, observations, where);
140
+ }
141
+ contrasts.push(c);
142
+ });
143
+ return {models, tasks, observations, contrasts};
144
+ }
145
+
146
+ // Hit-free values carry a number only with at least this many items (method rule, 2026-10-29).
147
+ const MIN_HIT_FREE_N = 50;
148
+ const ALPHA = 0.05;
149
+ const enough = n => Number.isInteger(n) && n >= MIN_HIT_FREE_N;
150
+ const SHOWN = ["clean","flagged","unknown"];
151
+ // Highest hit rate in a row where some flagged model keeps fewer than MIN_HIT_FREE_N items without any hits ("most items
152
+ // found in training data"); null outside that class.
153
+ function mostlyTrained(observations, taskId, protocolId) {
154
+ let rate = null;
155
+ for (const o of observations.values()) {
156
+ if (o.task_id === taskId && o.protocol_id === protocolId && o.state === "ok" && o.contamination === "flagged" && !enough(o.n_hit_free)) rate = Math.max(rate ?? 0, o.hit_rate);
157
+ }
158
+ return rate;
159
+ }
160
+ // One rule set with the exporter (_check_verdict, agents 31b34ca6), applied to every non-withheld verdict: no verdict
161
+ // against a constant answer or a cell without a number (the exporter publishes no contrast for such pairs); the
162
+ // verdict-bearing subset is full, or hit_free_answer_fields in the "most items in training data" row class, any other
163
+ // subset stays withheld; directional exactly when p_holm <= ALPHA and n >= MIN_HIT_FREE_N (on the answer-field subset
164
+ // also n_hit_free_answer_fields of model_id), with the sign of delta (model_id minus model_ref) matching the verdict and
165
+ // higher_is_better; otherwise inconclusive.
166
+ function checkVerdict(c, left, right, observations, where) {
167
+ for (const o of [left, right]) {
168
+ if (!SHOWN.includes(o.contamination)) fail(`${where}: verdict against a cell without a number`);
169
+ if (o.reference && o.reference.constant_prediction === true) fail(`${where}: verdict against a constant answer`);
170
+ }
171
+ const bearing = mostlyTrained(observations, c.task_id, c.protocol_id) !== null ? "hit_free_answer_fields" : "full";
172
+ if (c.subset !== bearing) fail(`${where}: subset ${c.subset} is a diagnostic in this row (verdicts only on ${bearing})`);
173
+ const nOk = enough(c.n) && (c.subset !== "hit_free_answer_fields" || enough(left.n_hit_free_answer_fields));
174
+ const significant = c.p_holm <= ALPHA && nOk;
175
+ if (c.verdict === "inconclusive") {
176
+ if (significant) fail(`${where}: inconclusive although p_holm ${c.p_holm} <= ${ALPHA} with n >= ${MIN_HIT_FREE_N}`);
177
+ return;
178
+ }
179
+ if (!significant) fail(`${where}: verdict ${c.verdict} needs p_holm <= ${ALPHA} and n >= ${MIN_HIT_FREE_N}`);
180
+ if (c.delta === 0) fail(`${where}: verdict without a delta`);
181
+ const better = (c.delta > 0) === left.higher_is_better;
182
+ if (c.verdict !== (better ? "better" : "worse")) fail(`${where}: verdict ${c.verdict} contradicts delta ${c.delta}`);
183
+ }
184
+
185
+ const api = {PINS, MIN_HIT_FREE_N, key, validate, mostlyTrained};
186
+ if (typeof module !== "undefined" && module.exports) module.exports = api; else window.BenchContract = api;
187
+ })();
index.html CHANGED
@@ -1,19 +1,64 @@
1
  <!doctype html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width" />
6
- <title>My static Space</title>
7
- <link rel="stylesheet" href="style.css" />
8
- </head>
9
- <body>
10
- <div class="card">
11
- <h1>Welcome to your static Space!</h1>
12
- <p>You can modify this app directly by editing <i>index.html</i> in the Files and versions tab.</p>
13
- <p>
14
- Also don't forget to check the
15
- <a href="https://huggingface.co/docs/hub/spaces" target="_blank">Spaces documentation</a>.
16
- </p>
17
- </div>
18
- </body>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
19
  </html>
 
1
  <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1">
6
+ <title>Slayer1B Benchmarks</title>
7
+ <meta name="description" content="Fifty distinct public benchmarks for Slayer 1B, with contamination scans, confidence intervals and reference baselines.">
8
+ <link rel="stylesheet" href="style.css">
9
+ <script src="contract.js" defer></script>
10
+ <script src="app.js" defer></script>
11
+ </head>
12
+ <body data-lang="en">
13
+ <nav class="lang" aria-label="Language"><button type="button" data-set="en" aria-pressed="true">EN</button><button type="button" data-set="pl" aria-pressed="false">PL</button></nav>
14
+ <main>
15
+ <header>
16
+ <p class="by">Fabryka AI · SlayerLab</p>
17
+ <h1>Slayer1B Benchmarks</h1>
18
+ <p class="lead l-en">Fifty distinct public benchmarks (38 English, 12 Polish) run with one protocol on Slayer 1B and comparison models. For models whose training data we have, a number appears only after a contamination scan; models with unpublished training data are shown with the label TRAINING DATA UNKNOWN. Every main value and every contrast has a 95% confidence interval; tasks scored by picking one answer also have a reference point; values on items without hits are shown without an interval. There is no average over the fifty.</p>
19
+ <p class="lead l-pl">Pięćdziesiąt różnych publicznych benchmarków (38 angielskich, 12 polskich), liczonych jednym protokołem na Slayerze 1B i modelach porównawczych. Dla modeli, których dane treningowe mamy, liczba pojawia się dopiero po skanie kontaminacji; modele z niepublikowanymi danymi treningowymi mają etykietę DANE TRENINGOWE NIEZNANE. Każda wartość główna i każdy kontrast ma 95% przedział ufności; zadania oceniane wyborem jednej odpowiedzi mają też punkt odniesienia; wartości na pozycjach bez trafień są bez przedziału. Nie liczymy średniej z pięćdziesięciu.</p>
20
+ <div class="pills" id="pills" aria-live="polite"></div>
21
+ <p class="pending" id="pending" hidden></p>
22
+ </header>
23
+
24
+ <section aria-labelledby="results-title">
25
+ <h2 id="results-title"><span class="l-en">Results</span><span class="l-pl">Wyniki</span></h2>
26
+ <div id="app"><p class="notice"><span class="l-en">Loading…</span><span class="l-pl">Wczytuję…</span></p><noscript>JavaScript is required to read the data files.</noscript></div>
27
+ </section>
28
+
29
+ <section aria-labelledby="legend-title">
30
+ <h2 id="legend-title"><span class="l-en">How to read a cell</span><span class="l-pl">Jak czytać komórkę</span></h2>
31
+ <div class="cards">
32
+ <div class="card">
33
+ <h3><span class="l-en">Value and interval</span><span class="l-pl">Wartość i przedział</span></h3>
34
+ <p class="l-en">The metric in its own unit, with a paired cluster bootstrap 95% interval. Arrows show whether higher or lower is better. Overlapping intervals do not mean the models are equal. A model is called better or worse only from a paired permutation test with Holm correction over the whole comparison family; otherwise the result is inconclusive.</p>
35
+ <p class="l-pl">Miara we własnej jednostce, z 95% przedziałem z bootstrapu klastrowego. Strzałka mówi, czy lepiej więcej, czy mniej. Nakładające się przedziały nie oznaczają, że modele są równe. Model nazywamy lepszym albo gorszym tylko na podstawie sparowanego testu permutacyjnego z poprawką Holma na całej rodzinie porównań; w innym razie wynik jest nierozstrzygnięty.</p>
36
+ </div>
37
+ <div class="card">
38
+ <h3><span class="l-en">Reference points</span><span class="l-pl">Punkty odniesienia</span></h3>
39
+ <p class="l-en"><b>Random</b> is the expected score of a uniform guess on the same sample. <b>Majority</b> is the score of always answering the most common correct class. A score below these says little about ability.</p>
40
+ <p class="l-pl"><b>Losowo</b> to oczekiwany wynik zgadywania na tej samej próbce. <b>Większość</b> to wynik zawsze tej samej, najczęstszej poprawnej klasy. Wynik poniżej tych poziomów niewiele mówi o zdolności.</p>
41
+ </div>
42
+ <div class="card">
43
+ <h3><span class="l-en">Contamination</span><span class="l-pl">Kontaminacja</span></h3>
44
+ <p class="l-en"><span class="tag clean">clean</span> no item found in the training data. <span class="tag flagged">flagged</span> some items were found; the score is shown on the full sample and on the items without hits. If fewer than 50 items remain without hits, that variant shows only the count. If fewer than 50 items remain without any hits, the full-sample score is greyed and gives no better/worse; the variant without hits in answer fields shows a number only if at least 50 items remain. <span class="tag unknown">training data unknown</span> the model's training data is not public. The score is shown, but it cannot be checked for contamination.</p>
45
+ <p class="l-pl"><span class="tag clean">czysty</span> żadnej pozycji nie znaleziono w danych treningowych. <span class="tag flagged">trafienia</span> część pozycji znaleziono; wynik podajemy na całej próbce i na pozycjach bez trafień. Gdy bez trafień zostaje mniej niż 50 pozycji, ten wariant pokazuje tylko liczbę pozycji. Gdy bez żadnych trafień zostaje mniej niż 50 pozycji, wynik z całej próbki jest wyszarzony i nie daje werdyktu lepszy/gorszy; wariant bez trafień w polach odpowiedzi ma liczbę tylko przy co najmniej 50 pozycjach. <span class="tag unknown">dane treningowe nieznane</span> dane treningowe modelu nie są publiczne. Wynik jest pokazany, ale nie da się go sprawdzić pod kątem kontaminacji.</p>
46
+ </div>
47
+ <div class="card">
48
+ <h3><span class="l-en">Constant answer</span><span class="l-pl">Stała odpowiedź</span></h3>
49
+ <p class="l-en"><span class="tag constant">constant answer</span> the model gave the same class to every item. The value is real but carries no information about ability, so it is not compared between models or versions.</p>
50
+ <p class="l-pl"><span class="tag constant">stała odpowiedź</span> model dał tę samą klasę każdej pozycji. Wartość jest prawdziwa, ale nie niesie informacji o zdolności, więc nie porównujemy jej między modelami ani wersjami.</p>
51
+ </div>
52
+ </div>
53
+ </section>
54
+
55
+ <section aria-labelledby="method-title">
56
+ <h2 id="method-title"><span class="l-en">Method and data</span><span class="l-pl">Metoda i dane</span></h2>
57
+ <p class="l-en">The full protocol is in <a href="METHOD.md">METHOD.md</a> (English). The benchmark list with sources, revisions and licences is <a href="tasks_50.json">tasks_50.json</a>; the result format is <a href="results.schema.json">results.schema.json</a>; the role of every scanned field (context, answer-bearing, metadata), fixed before the variants without hits were computed, is in <a href="contamination_field_roles.json">contamination_field_roles.json</a>. Every file below is checked against its pinned SHA-256 before anything is shown.</p>
58
+ <p class="l-pl">Pełny protokół jest w <a href="METHOD.md">METHOD.md</a> (po angielsku). Lista benchmarków ze źródłami, rewizjami i licencjami to <a href="tasks_50.json">tasks_50.json</a>; format wyników to <a href="results.schema.json">results.schema.json</a>; rola każdego skanowanego pola (kontekst, pole z odpowiedzią, metadane), ustalona przed policzeniem wariantów bez trafień, jest w <a href="contamination_field_roles.json">contamination_field_roles.json</a>. Każdy plik poniżej jest sprawdzany względem przypiętego SHA-256, zanim cokolwiek się pokaże.</p>
59
+ <div id="files" class="files"></div>
60
+ </section>
61
+ </main>
62
+ <footer><span class="l-en">Fabryka AI · static page, no tracking, no external scripts.</span><span class="l-pl">Fabryka AI · strona statyczna, bez śledzenia i zewnętrznych skryptów.</span></footer>
63
+ </body>
64
  </html>
results-feed.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"results": "results.json", "sha256": "1cf2b8bbf7fc3913dc9755940a8e8f1efb5f4f6ebee96af18d449de3e76af7c8"}
results.json ADDED
The diff for this file is too large to render. See raw diff
 
results.schema.json ADDED
@@ -0,0 +1,1129 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "urn:fabryka-ai:benchmark-results:2:protocol-0.3.1",
4
+ "type": "object",
5
+ "properties": {
6
+ "schema_version": {
7
+ "const": 2
8
+ },
9
+ "protocol_id": {
10
+ "enum": [
11
+ "bench50-v0.3.1-panel200",
12
+ "bench50-v0.3.1-fullB"
13
+ ]
14
+ },
15
+ "run_id": {
16
+ "type": "string",
17
+ "minLength": 1
18
+ },
19
+ "models": {
20
+ "type": "array",
21
+ "items": {
22
+ "type": "object",
23
+ "properties": {
24
+ "model_id": {
25
+ "type": "string",
26
+ "minLength": 1
27
+ },
28
+ "repo": {
29
+ "type": "string",
30
+ "minLength": 1
31
+ },
32
+ "revision": {
33
+ "type": [
34
+ "string",
35
+ "null"
36
+ ]
37
+ },
38
+ "weights_sha256": {
39
+ "anyOf": [
40
+ {
41
+ "type": "string",
42
+ "pattern": "^[0-9a-f]{64}$"
43
+ },
44
+ {
45
+ "type": "null"
46
+ }
47
+ ]
48
+ }
49
+ },
50
+ "required": [
51
+ "model_id",
52
+ "repo",
53
+ "revision",
54
+ "weights_sha256"
55
+ ],
56
+ "additionalProperties": false
57
+ }
58
+ },
59
+ "tasks": {
60
+ "type": "array",
61
+ "items": {
62
+ "type": "object",
63
+ "properties": {
64
+ "task_id": {
65
+ "type": "string",
66
+ "pattern": "^T(0[1-9]|[1-4][0-9]|50)$"
67
+ },
68
+ "task": {
69
+ "type": "string",
70
+ "minLength": 1
71
+ },
72
+ "family": {
73
+ "type": "string",
74
+ "minLength": 1
75
+ },
76
+ "language": {
77
+ "enum": [
78
+ "PL",
79
+ "EN"
80
+ ]
81
+ },
82
+ "split": {
83
+ "type": "string",
84
+ "minLength": 1
85
+ }
86
+ },
87
+ "required": [
88
+ "task_id",
89
+ "task",
90
+ "family",
91
+ "language",
92
+ "split"
93
+ ],
94
+ "additionalProperties": false
95
+ }
96
+ },
97
+ "observations": {
98
+ "type": "array",
99
+ "items": {
100
+ "$ref": "#/$defs/observation"
101
+ }
102
+ },
103
+ "contrasts": {
104
+ "type": "array",
105
+ "items": {
106
+ "$ref": "#/$defs/contrast"
107
+ }
108
+ },
109
+ "provenance": {
110
+ "type": "object",
111
+ "properties": {
112
+ "inventory_commit": {
113
+ "type": "string",
114
+ "pattern": "^[0-9a-f]{40}$"
115
+ },
116
+ "kind": {
117
+ "enum": [
118
+ "measurement",
119
+ "contract_example"
120
+ ]
121
+ },
122
+ "sources": {
123
+ "type": "array",
124
+ "minItems": 1,
125
+ "items": {
126
+ "type": "object",
127
+ "properties": {
128
+ "run_id": {
129
+ "type": "string",
130
+ "minLength": 1
131
+ },
132
+ "results_sha256": {
133
+ "type": "string",
134
+ "pattern": "^[0-9a-f]{64}$"
135
+ }
136
+ },
137
+ "required": [
138
+ "run_id",
139
+ "results_sha256"
140
+ ],
141
+ "additionalProperties": false
142
+ }
143
+ },
144
+ "qualification_sha256": {
145
+ "type": "string",
146
+ "pattern": "^[0-9a-f]{64}$"
147
+ },
148
+ "contamination_sha256": {
149
+ "type": "string",
150
+ "pattern": "^[0-9a-f]{64}$"
151
+ },
152
+ "references_sha256": {
153
+ "type": "string",
154
+ "pattern": "^[0-9a-f]{64}$"
155
+ },
156
+ "superseded": {
157
+ "type": "array",
158
+ "items": {
159
+ "type": "object",
160
+ "properties": {
161
+ "model_id": {
162
+ "type": "string",
163
+ "minLength": 1
164
+ },
165
+ "task_id": {
166
+ "type": "string",
167
+ "pattern": "^T(0[1-9]|[1-4][0-9]|50)$"
168
+ },
169
+ "by_results_sha256": {
170
+ "type": "string",
171
+ "pattern": "^[0-9a-f]{64}$"
172
+ },
173
+ "replaced": {
174
+ "type": "array",
175
+ "minItems": 1,
176
+ "items": {
177
+ "type": "object",
178
+ "properties": {
179
+ "state": {
180
+ "enum": [
181
+ "not_run",
182
+ "unsupported",
183
+ "blocked_access",
184
+ "blocked_runtime",
185
+ "blocked_security",
186
+ "blocked_judge"
187
+ ]
188
+ },
189
+ "results_sha256": {
190
+ "type": "string",
191
+ "pattern": "^[0-9a-f]{64}$"
192
+ }
193
+ },
194
+ "required": [
195
+ "state",
196
+ "results_sha256"
197
+ ],
198
+ "additionalProperties": false
199
+ }
200
+ }
201
+ },
202
+ "required": [
203
+ "model_id",
204
+ "task_id",
205
+ "by_results_sha256",
206
+ "replaced"
207
+ ],
208
+ "additionalProperties": false
209
+ }
210
+ },
211
+ "contrasts_sha256": {
212
+ "type": "string",
213
+ "pattern": "^[0-9a-f]{64}$"
214
+ },
215
+ "amendments": {
216
+ "type": "array",
217
+ "items": {
218
+ "type": "object",
219
+ "properties": {
220
+ "model_id": {
221
+ "type": "string",
222
+ "minLength": 1
223
+ },
224
+ "task_id": {
225
+ "type": "string",
226
+ "pattern": "^T(0[1-9]|[1-4][0-9]|50)$"
227
+ },
228
+ "code": {
229
+ "type": "string",
230
+ "minLength": 1
231
+ },
232
+ "base_items_sha256": {
233
+ "type": "string",
234
+ "pattern": "^[0-9a-f]{64}$"
235
+ },
236
+ "artifact_sha256": {
237
+ "type": "string",
238
+ "pattern": "^[0-9a-f]{64}$"
239
+ }
240
+ },
241
+ "required": [
242
+ "model_id",
243
+ "task_id",
244
+ "code",
245
+ "base_items_sha256",
246
+ "artifact_sha256"
247
+ ],
248
+ "additionalProperties": false
249
+ }
250
+ }
251
+ },
252
+ "required": [
253
+ "inventory_commit",
254
+ "kind"
255
+ ],
256
+ "additionalProperties": false,
257
+ "allOf": [
258
+ {
259
+ "if": {
260
+ "properties": {
261
+ "kind": {
262
+ "const": "measurement"
263
+ }
264
+ }
265
+ },
266
+ "then": {
267
+ "required": [
268
+ "sources",
269
+ "qualification_sha256",
270
+ "contamination_sha256",
271
+ "references_sha256"
272
+ ]
273
+ }
274
+ }
275
+ ]
276
+ }
277
+ },
278
+ "required": [
279
+ "schema_version",
280
+ "protocol_id",
281
+ "run_id",
282
+ "models",
283
+ "tasks",
284
+ "observations",
285
+ "contrasts",
286
+ "provenance"
287
+ ],
288
+ "additionalProperties": false,
289
+ "$defs": {
290
+ "ci95": {
291
+ "type": "object",
292
+ "properties": {
293
+ "lower": {
294
+ "type": "number"
295
+ },
296
+ "upper": {
297
+ "type": "number"
298
+ },
299
+ "level": {
300
+ "const": 0.95
301
+ },
302
+ "method": {
303
+ "enum": [
304
+ "paired_bootstrap",
305
+ "paired_cluster_bootstrap"
306
+ ]
307
+ },
308
+ "replicates": {
309
+ "const": 10000
310
+ },
311
+ "seed": {
312
+ "const": 20261028
313
+ }
314
+ },
315
+ "required": [
316
+ "lower",
317
+ "upper",
318
+ "level",
319
+ "method",
320
+ "replicates",
321
+ "seed"
322
+ ],
323
+ "additionalProperties": false
324
+ },
325
+ "observation": {
326
+ "type": "object",
327
+ "properties": {
328
+ "task_id": {
329
+ "type": "string",
330
+ "pattern": "^T(0[1-9]|[1-4][0-9]|50)$"
331
+ },
332
+ "model_id": {
333
+ "type": "string",
334
+ "minLength": 1
335
+ },
336
+ "protocol_id": {
337
+ "enum": [
338
+ "bench50-v0.3.1-panel200",
339
+ "bench50-v0.3.1-fullB"
340
+ ]
341
+ },
342
+ "metric": {
343
+ "type": "string",
344
+ "minLength": 1
345
+ },
346
+ "unit": {
347
+ "enum": [
348
+ "percent",
349
+ "score",
350
+ "byte_ppl"
351
+ ]
352
+ },
353
+ "higher_is_better": {
354
+ "type": "boolean"
355
+ },
356
+ "n_population": {
357
+ "type": [
358
+ "integer",
359
+ "null"
360
+ ],
361
+ "minimum": 0
362
+ },
363
+ "n_selected": {
364
+ "type": [
365
+ "integer",
366
+ "null"
367
+ ],
368
+ "minimum": 0
369
+ },
370
+ "n_scored": {
371
+ "type": "integer",
372
+ "minimum": 0
373
+ },
374
+ "state": {
375
+ "enum": [
376
+ "ok",
377
+ "not_run",
378
+ "blocked_access",
379
+ "blocked_runtime",
380
+ "blocked_security",
381
+ "blocked_judge",
382
+ "unsupported",
383
+ "failed",
384
+ "skipped"
385
+ ]
386
+ },
387
+ "value": {
388
+ "type": [
389
+ "number",
390
+ "null"
391
+ ]
392
+ },
393
+ "ci95": {
394
+ "anyOf": [
395
+ {
396
+ "type": "object",
397
+ "properties": {
398
+ "lower": {
399
+ "type": "number"
400
+ },
401
+ "upper": {
402
+ "type": "number"
403
+ },
404
+ "level": {
405
+ "const": 0.95
406
+ },
407
+ "method": {
408
+ "enum": [
409
+ "paired_bootstrap",
410
+ "paired_cluster_bootstrap"
411
+ ]
412
+ },
413
+ "replicates": {
414
+ "const": 10000
415
+ },
416
+ "seed": {
417
+ "const": 20261028
418
+ }
419
+ },
420
+ "required": [
421
+ "lower",
422
+ "upper",
423
+ "level",
424
+ "method",
425
+ "replicates",
426
+ "seed"
427
+ ],
428
+ "additionalProperties": false
429
+ },
430
+ {
431
+ "type": "null"
432
+ }
433
+ ]
434
+ },
435
+ "source_id_digest": {
436
+ "anyOf": [
437
+ {
438
+ "type": "string",
439
+ "pattern": "^[0-9a-f]{64}$"
440
+ },
441
+ {
442
+ "type": "null"
443
+ }
444
+ ]
445
+ },
446
+ "results_sha256": {
447
+ "anyOf": [
448
+ {
449
+ "type": "string",
450
+ "pattern": "^[0-9a-f]{64}$"
451
+ },
452
+ {
453
+ "type": "null"
454
+ }
455
+ ]
456
+ },
457
+ "runner_sha256": {
458
+ "anyOf": [
459
+ {
460
+ "type": "string",
461
+ "pattern": "^[0-9a-f]{64}$"
462
+ },
463
+ {
464
+ "type": "null"
465
+ }
466
+ ]
467
+ },
468
+ "reason": {
469
+ "type": [
470
+ "string",
471
+ "null"
472
+ ],
473
+ "maxLength": 200
474
+ },
475
+ "contamination": {
476
+ "enum": [
477
+ "clean",
478
+ "flagged",
479
+ "partially_scanned",
480
+ "unscanned",
481
+ "unknown"
482
+ ]
483
+ },
484
+ "contamination_receipt_sha256": {
485
+ "type": [
486
+ "string",
487
+ "null"
488
+ ],
489
+ "pattern": "^[0-9a-f]{64}$"
490
+ },
491
+ "value_hit_free": {
492
+ "type": [
493
+ "number",
494
+ "null"
495
+ ]
496
+ },
497
+ "n_hit_free": {
498
+ "type": [
499
+ "integer",
500
+ "null"
501
+ ],
502
+ "minimum": 0
503
+ },
504
+ "hit_rate": {
505
+ "type": [
506
+ "number",
507
+ "null"
508
+ ],
509
+ "minimum": 0,
510
+ "maximum": 1
511
+ },
512
+ "reference": {
513
+ "type": [
514
+ "object",
515
+ "null"
516
+ ],
517
+ "properties": {
518
+ "chance_value": {
519
+ "type": [
520
+ "number",
521
+ "null"
522
+ ],
523
+ "description": "expected metric of uniform random choice on the frozen sample (mean 1/n_options for accuracy); null if not defined"
524
+ },
525
+ "majority_value": {
526
+ "type": [
527
+ "number",
528
+ "null"
529
+ ],
530
+ "description": "same metric for always predicting the majority gold class of the frozen sample; null if classes are not fixed"
531
+ },
532
+ "majority_prediction_share": {
533
+ "type": [
534
+ "number",
535
+ "null"
536
+ ],
537
+ "minimum": 0,
538
+ "maximum": 1,
539
+ "description": "share of the model predictions falling on its most frequent predicted class"
540
+ },
541
+ "constant_prediction": {
542
+ "type": [
543
+ "boolean",
544
+ "null"
545
+ ],
546
+ "description": "true when the model predicts one class for every scored item"
547
+ }
548
+ },
549
+ "required": [
550
+ "chance_value",
551
+ "majority_value",
552
+ "majority_prediction_share",
553
+ "constant_prediction"
554
+ ],
555
+ "additionalProperties": false
556
+ },
557
+ "value_hit_free_answer_fields": {
558
+ "type": [
559
+ "number",
560
+ "null"
561
+ ]
562
+ },
563
+ "n_hit_free_answer_fields": {
564
+ "type": [
565
+ "integer",
566
+ "null"
567
+ ],
568
+ "minimum": 0
569
+ },
570
+ "hit_rate_answer_fields": {
571
+ "type": [
572
+ "number",
573
+ "null"
574
+ ],
575
+ "minimum": 0,
576
+ "maximum": 1
577
+ },
578
+ "ci95_hit_free": {
579
+ "anyOf": [
580
+ {
581
+ "type": "object",
582
+ "properties": {
583
+ "lower": {
584
+ "type": "number"
585
+ },
586
+ "upper": {
587
+ "type": "number"
588
+ },
589
+ "level": {
590
+ "const": 0.95
591
+ },
592
+ "method": {
593
+ "enum": [
594
+ "paired_bootstrap",
595
+ "paired_cluster_bootstrap"
596
+ ]
597
+ },
598
+ "replicates": {
599
+ "const": 10000
600
+ },
601
+ "seed": {
602
+ "const": 20261028
603
+ }
604
+ },
605
+ "required": [
606
+ "lower",
607
+ "upper",
608
+ "level",
609
+ "method",
610
+ "replicates",
611
+ "seed"
612
+ ],
613
+ "additionalProperties": false
614
+ },
615
+ {
616
+ "type": "null"
617
+ }
618
+ ]
619
+ },
620
+ "ci95_hit_free_answer_fields": {
621
+ "anyOf": [
622
+ {
623
+ "type": "object",
624
+ "properties": {
625
+ "lower": {
626
+ "type": "number"
627
+ },
628
+ "upper": {
629
+ "type": "number"
630
+ },
631
+ "level": {
632
+ "const": 0.95
633
+ },
634
+ "method": {
635
+ "enum": [
636
+ "paired_bootstrap",
637
+ "paired_cluster_bootstrap"
638
+ ]
639
+ },
640
+ "replicates": {
641
+ "const": 10000
642
+ },
643
+ "seed": {
644
+ "const": 20261028
645
+ }
646
+ },
647
+ "required": [
648
+ "lower",
649
+ "upper",
650
+ "level",
651
+ "method",
652
+ "replicates",
653
+ "seed"
654
+ ],
655
+ "additionalProperties": false
656
+ },
657
+ {
658
+ "type": "null"
659
+ }
660
+ ]
661
+ }
662
+ },
663
+ "required": [
664
+ "task_id",
665
+ "model_id",
666
+ "protocol_id",
667
+ "metric",
668
+ "unit",
669
+ "higher_is_better",
670
+ "n_population",
671
+ "n_selected",
672
+ "n_scored",
673
+ "state",
674
+ "value",
675
+ "ci95",
676
+ "source_id_digest",
677
+ "results_sha256",
678
+ "runner_sha256",
679
+ "contamination",
680
+ "contamination_receipt_sha256"
681
+ ],
682
+ "additionalProperties": false,
683
+ "allOf": [
684
+ {
685
+ "if": {
686
+ "properties": {
687
+ "state": {
688
+ "const": "ok"
689
+ }
690
+ }
691
+ },
692
+ "then": {
693
+ "properties": {
694
+ "value": {
695
+ "type": "number"
696
+ },
697
+ "n_scored": {
698
+ "type": "integer",
699
+ "minimum": 1
700
+ },
701
+ "source_id_digest": {
702
+ "type": "string",
703
+ "pattern": "^[0-9a-f]{64}$"
704
+ },
705
+ "results_sha256": {
706
+ "type": "string",
707
+ "pattern": "^[0-9a-f]{64}$"
708
+ },
709
+ "runner_sha256": {
710
+ "type": "string",
711
+ "pattern": "^[0-9a-f]{64}$"
712
+ }
713
+ }
714
+ },
715
+ "else": {
716
+ "properties": {
717
+ "value": {
718
+ "type": "null"
719
+ },
720
+ "ci95": {
721
+ "type": "null"
722
+ }
723
+ }
724
+ }
725
+ },
726
+ {
727
+ "if": {
728
+ "properties": {
729
+ "contamination": {
730
+ "const": "flagged"
731
+ },
732
+ "state": {
733
+ "const": "ok"
734
+ }
735
+ },
736
+ "required": [
737
+ "contamination",
738
+ "state"
739
+ ]
740
+ },
741
+ "then": {
742
+ "required": [
743
+ "value_hit_free",
744
+ "n_hit_free",
745
+ "hit_rate",
746
+ "value_hit_free_answer_fields",
747
+ "n_hit_free_answer_fields",
748
+ "hit_rate_answer_fields"
749
+ ],
750
+ "properties": {
751
+ "n_hit_free": {
752
+ "type": "integer"
753
+ },
754
+ "hit_rate": {
755
+ "type": "number"
756
+ },
757
+ "n_hit_free_answer_fields": {
758
+ "type": "integer"
759
+ },
760
+ "hit_rate_answer_fields": {
761
+ "type": "number"
762
+ }
763
+ }
764
+ }
765
+ },
766
+ {
767
+ "if": {
768
+ "properties": {
769
+ "contamination": {
770
+ "enum": [
771
+ "clean",
772
+ "flagged",
773
+ "partially_scanned"
774
+ ]
775
+ }
776
+ }
777
+ },
778
+ "then": {
779
+ "properties": {
780
+ "contamination_receipt_sha256": {
781
+ "type": "string"
782
+ }
783
+ }
784
+ }
785
+ },
786
+ {
787
+ "if": {
788
+ "properties": {
789
+ "n_hit_free": {
790
+ "const": 0
791
+ }
792
+ },
793
+ "required": [
794
+ "n_hit_free"
795
+ ]
796
+ },
797
+ "then": {
798
+ "properties": {
799
+ "value_hit_free": {
800
+ "type": "null"
801
+ }
802
+ }
803
+ },
804
+ "else": {
805
+ "if": {
806
+ "properties": {
807
+ "contamination": {
808
+ "const": "flagged"
809
+ },
810
+ "state": {
811
+ "const": "ok"
812
+ }
813
+ },
814
+ "required": [
815
+ "contamination",
816
+ "state"
817
+ ]
818
+ },
819
+ "then": {
820
+ "properties": {
821
+ "value_hit_free": {
822
+ "type": "number"
823
+ }
824
+ }
825
+ }
826
+ }
827
+ },
828
+ {
829
+ "if": {
830
+ "properties": {
831
+ "n_hit_free_answer_fields": {
832
+ "const": 0
833
+ }
834
+ },
835
+ "required": [
836
+ "n_hit_free_answer_fields"
837
+ ]
838
+ },
839
+ "then": {
840
+ "properties": {
841
+ "value_hit_free_answer_fields": {
842
+ "type": "null"
843
+ }
844
+ }
845
+ },
846
+ "else": {
847
+ "if": {
848
+ "properties": {
849
+ "contamination": {
850
+ "const": "flagged"
851
+ },
852
+ "state": {
853
+ "const": "ok"
854
+ }
855
+ },
856
+ "required": [
857
+ "contamination",
858
+ "state"
859
+ ]
860
+ },
861
+ "then": {
862
+ "properties": {
863
+ "value_hit_free_answer_fields": {
864
+ "type": "number"
865
+ }
866
+ }
867
+ }
868
+ }
869
+ }
870
+ ]
871
+ },
872
+ "contrast": {
873
+ "type": "object",
874
+ "properties": {
875
+ "task_id": {
876
+ "type": "string",
877
+ "pattern": "^T(0[1-9]|[1-4][0-9]|50)$"
878
+ },
879
+ "model_id": {
880
+ "type": "string",
881
+ "minLength": 1
882
+ },
883
+ "protocol_id": {
884
+ "enum": [
885
+ "bench50-v0.3.1-panel200",
886
+ "bench50-v0.3.1-fullB"
887
+ ]
888
+ },
889
+ "model_ref": {
890
+ "type": "string",
891
+ "minLength": 1
892
+ },
893
+ "delta": {
894
+ "type": [
895
+ "number",
896
+ "null"
897
+ ]
898
+ },
899
+ "ci95": {
900
+ "anyOf": [
901
+ {
902
+ "type": "object",
903
+ "properties": {
904
+ "lower": {
905
+ "type": "number"
906
+ },
907
+ "upper": {
908
+ "type": "number"
909
+ },
910
+ "level": {
911
+ "const": 0.95
912
+ },
913
+ "method": {
914
+ "enum": [
915
+ "paired_bootstrap",
916
+ "paired_cluster_bootstrap"
917
+ ]
918
+ },
919
+ "replicates": {
920
+ "const": 10000
921
+ },
922
+ "seed": {
923
+ "const": 20261028
924
+ }
925
+ },
926
+ "required": [
927
+ "lower",
928
+ "upper",
929
+ "level",
930
+ "method",
931
+ "replicates",
932
+ "seed"
933
+ ],
934
+ "additionalProperties": false
935
+ },
936
+ {
937
+ "type": "null"
938
+ }
939
+ ]
940
+ },
941
+ "p_raw": {
942
+ "type": [
943
+ "number",
944
+ "null"
945
+ ],
946
+ "minimum": 0,
947
+ "maximum": 1
948
+ },
949
+ "p_holm": {
950
+ "type": [
951
+ "number",
952
+ "null"
953
+ ],
954
+ "minimum": 0,
955
+ "maximum": 1
956
+ },
957
+ "family_size": {
958
+ "type": "integer",
959
+ "minimum": 1
960
+ },
961
+ "verdict": {
962
+ "enum": [
963
+ "withheld",
964
+ "better",
965
+ "worse",
966
+ "inconclusive"
967
+ ]
968
+ },
969
+ "review": {
970
+ "type": "object",
971
+ "properties": {
972
+ "status": {
973
+ "enum": [
974
+ "pending",
975
+ "accepted",
976
+ "rejected"
977
+ ]
978
+ },
979
+ "actor": {
980
+ "type": [
981
+ "string",
982
+ "null"
983
+ ]
984
+ },
985
+ "artifact_sha256": {
986
+ "anyOf": [
987
+ {
988
+ "type": "string",
989
+ "pattern": "^[0-9a-f]{64}$"
990
+ },
991
+ {
992
+ "type": "null"
993
+ }
994
+ ]
995
+ }
996
+ },
997
+ "required": [
998
+ "status",
999
+ "actor",
1000
+ "artifact_sha256"
1001
+ ],
1002
+ "additionalProperties": false,
1003
+ "allOf": [
1004
+ {
1005
+ "if": {
1006
+ "properties": {
1007
+ "status": {
1008
+ "const": "accepted"
1009
+ }
1010
+ }
1011
+ },
1012
+ "then": {
1013
+ "properties": {
1014
+ "actor": {
1015
+ "type": "string",
1016
+ "minLength": 1
1017
+ },
1018
+ "artifact_sha256": {
1019
+ "type": "string",
1020
+ "pattern": "^[0-9a-f]{64}$"
1021
+ }
1022
+ }
1023
+ }
1024
+ }
1025
+ ]
1026
+ },
1027
+ "subset": {
1028
+ "enum": [
1029
+ "full",
1030
+ "hit_free",
1031
+ "hit_free_answer_fields"
1032
+ ],
1033
+ "description": "items on which the paired contrast was computed; hit-free subsets are defined by the training corpus of model_id and are identical for both models"
1034
+ },
1035
+ "n": {
1036
+ "type": [
1037
+ "integer",
1038
+ "null"
1039
+ ],
1040
+ "minimum": 0
1041
+ },
1042
+ "metric": {
1043
+ "type": "string",
1044
+ "minLength": 1
1045
+ },
1046
+ "unit": {
1047
+ "type": "string",
1048
+ "minLength": 1
1049
+ }
1050
+ },
1051
+ "required": [
1052
+ "task_id",
1053
+ "model_id",
1054
+ "protocol_id",
1055
+ "model_ref",
1056
+ "delta",
1057
+ "ci95",
1058
+ "p_raw",
1059
+ "p_holm",
1060
+ "family_size",
1061
+ "verdict",
1062
+ "review",
1063
+ "subset",
1064
+ "n",
1065
+ "metric",
1066
+ "unit"
1067
+ ],
1068
+ "additionalProperties": false,
1069
+ "allOf": [
1070
+ {
1071
+ "if": {
1072
+ "properties": {
1073
+ "verdict": {
1074
+ "enum": [
1075
+ "better",
1076
+ "worse",
1077
+ "inconclusive"
1078
+ ]
1079
+ }
1080
+ }
1081
+ },
1082
+ "then": {
1083
+ "properties": {
1084
+ "review": {
1085
+ "properties": {
1086
+ "status": {
1087
+ "const": "accepted"
1088
+ }
1089
+ }
1090
+ },
1091
+ "delta": {
1092
+ "type": "number"
1093
+ },
1094
+ "p_raw": {
1095
+ "type": "number"
1096
+ },
1097
+ "p_holm": {
1098
+ "type": "number"
1099
+ }
1100
+ }
1101
+ }
1102
+ },
1103
+ {
1104
+ "if": {
1105
+ "properties": {
1106
+ "review": {
1107
+ "properties": {
1108
+ "status": {
1109
+ "enum": [
1110
+ "pending",
1111
+ "rejected"
1112
+ ]
1113
+ }
1114
+ }
1115
+ }
1116
+ }
1117
+ },
1118
+ "then": {
1119
+ "properties": {
1120
+ "verdict": {
1121
+ "const": "withheld"
1122
+ }
1123
+ }
1124
+ }
1125
+ }
1126
+ ]
1127
+ }
1128
+ }
1129
+ }
style.css CHANGED
@@ -1,28 +1,76 @@
1
- body {
2
- padding: 2rem;
3
- font-family: -apple-system, BlinkMacSystemFont, "Arial", sans-serif;
4
- }
5
-
6
- h1 {
7
- font-size: 16px;
8
- margin-top: 0;
9
- }
10
-
11
- p {
12
- color: rgb(107, 114, 128);
13
- font-size: 15px;
14
- margin-bottom: 10px;
15
- margin-top: 5px;
16
- }
17
-
18
- .card {
19
- max-width: 620px;
20
- margin: 0 auto;
21
- padding: 16px;
22
- border: 1px solid lightgray;
23
- border-radius: 16px;
24
- }
25
-
26
- .card p:last-child {
27
- margin-bottom: 0;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
28
  }
 
1
+ :root{--bg:#0b0d11;--card:#141821;--card2:#181d28;--line:#252b38;--line2:#323a4a;--fg:#eceef2;--soft:#c9ced8;--muted:#9aa3b2;--acc:#4fb477;--acc3:#6ea6e6;--warn:#e8c37a;--bad:#e0565b;--r:16px;color-scheme:dark}
2
+ *{box-sizing:border-box}
3
+ html{-webkit-text-size-adjust:100%}
4
+ body{margin:0;color:var(--fg);font:16px/1.6 ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;background:radial-gradient(900px 480px at 12% -80px,rgba(79,180,119,.14),transparent 70%),var(--bg);background-repeat:no-repeat}
5
+ body[data-lang="en"] .l-pl,body[data-lang="pl"] .l-en{display:none!important}
6
+ a{color:var(--acc3);text-underline-offset:3px}
7
+ a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,.wrap:focus-visible{outline:2px solid var(--acc3);outline-offset:2px}
8
+ .lang{position:absolute;top:14px;right:14px;z-index:5;display:flex;gap:4px;background:rgba(20,24,33,.9);border:1px solid var(--line2);border-radius:999px;padding:3px}
9
+ .lang button{background:none;border:0;color:var(--muted);font:inherit;font-size:.85rem;font-weight:700;padding:4px 12px;border-radius:999px;cursor:pointer}
10
+ .lang button[aria-pressed="true"]{background:var(--acc);color:#0b0d11}
11
+ main{max-width:1180px;margin:0 auto;padding:28px 20px 72px}
12
+ header{padding:44px 0 8px}
13
+ .by{color:var(--acc);font-size:.82rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;margin:0 0 18px}
14
+ h1{font-size:clamp(2.2rem,6vw,3.5rem);line-height:1.05;margin:0 0 14px;letter-spacing:-.035em;font-weight:800;text-wrap:balance}
15
+ .lead{font-size:1.12rem;line-height:1.7;max-width:70ch;color:var(--soft);margin:0}
16
+ .pills{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 0}
17
+ .pending{margin:12px 0 0;max-width:70ch;color:var(--muted);font-size:.92rem;line-height:1.55}
18
+ .pill{background:rgba(20,24,33,.8);border:1px solid var(--line2);border-radius:999px;padding:6px 14px;font-size:.9rem;color:var(--muted)}
19
+ .pill b{color:var(--fg);font-variant-numeric:tabular-nums}
20
+ section{margin-top:64px}
21
+ h2{display:flex;align-items:center;gap:12px;font-size:1.55rem;line-height:1.25;letter-spacing:-.02em;margin:0 0 18px}
22
+ h2::before{content:"";width:5px;height:1.15em;border-radius:3px;background:linear-gradient(var(--acc),var(--acc3));flex:none}
23
+ .notice{border-left:3px solid var(--warn);background:var(--card);color:var(--soft);padding:12px 16px;border-radius:0 10px 10px 0;max-width:82ch;margin:0 0 18px}
24
+ .notice.error{border-left-color:var(--bad)}
25
+ .controls{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:0 0 14px}
26
+ .controls label{display:grid;gap:6px;color:var(--muted);font-size:.88rem}
27
+ input,select,button.clear{font:inherit;color:var(--fg);background:var(--card);border:1px solid var(--line2);border-radius:10px;padding:9px 12px}
28
+ input{width:min(300px,100%)}
29
+ button.clear{cursor:pointer}
30
+ button.clear:hover{border-color:var(--acc3)}
31
+ .summary{color:var(--muted);font-size:.9rem;margin:0 0 10px}
32
+ .wrap{overflow:auto;max-height:76vh;border:1px solid var(--line);border-radius:12px;background:var(--card)}
33
+ table{border-collapse:separate;border-spacing:0;width:100%;min-width:760px}
34
+ th,td{text-align:left;vertical-align:top;padding:12px 14px;border-bottom:1px solid var(--line);font-size:.93rem}
35
+ thead th{position:sticky;top:0;z-index:2;background:var(--card2);color:var(--muted);font-weight:600;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase}
36
+ th.task,thead th:first-child{position:sticky;left:0;z-index:1;background:var(--card2);width:230px;min-width:200px}
37
+ thead th:first-child{z-index:3}
38
+ th.task{font-weight:650;color:var(--fg)}
39
+ tbody tr:last-child>*{border-bottom:0}
40
+ .meta{display:block;color:var(--muted);font-size:.8rem;line-height:1.5;margin-top:3px;font-weight:400;overflow-wrap:anywhere}
41
+ .value{display:block;font-size:1.12rem;font-weight:650;font-variant-numeric:tabular-nums;color:var(--fg)}
42
+ .value small{font-size:.75rem;font-weight:500;color:var(--muted);margin-left:4px}
43
+ .value.dim{color:var(--muted);font-weight:500}
44
+ .mostly{display:block;font-size:.8rem;color:var(--warn);margin-top:3px}
45
+ .amend{display:block;font-size:.78rem;line-height:1.4;color:var(--warn);margin-top:4px;font-weight:400;max-width:28ch}
46
+ .state{display:inline-block;color:var(--muted);font-size:.85rem}
47
+ .ref{display:block;color:var(--soft);font-size:.8rem;margin-top:4px;font-variant-numeric:tabular-nums}
48
+ .tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
49
+ .tag{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 9px;border-radius:999px;line-height:1.5;white-space:nowrap}
50
+ .tag.clean{background:rgba(79,180,119,.15);color:#8fe0ad;box-shadow:0 0 0 1px rgba(79,180,119,.35) inset}
51
+ .tag.flagged{background:rgba(232,195,122,.13);color:var(--warn);box-shadow:0 0 0 1px rgba(232,195,122,.35) inset}
52
+ .tag.unknown{background:rgba(110,166,230,.13);color:#a9cbf2;box-shadow:0 0 0 1px rgba(110,166,230,.35) inset}
53
+ .tag.pending{background:rgba(154,163,178,.12);color:var(--muted);box-shadow:0 0 0 1px rgba(154,163,178,.3) inset}
54
+ .tag.constant{background:rgba(224,86,91,.13);color:#f1a2a5;box-shadow:0 0 0 1px rgba(224,86,91,.35) inset}
55
+ .verdict{display:block;margin-top:8px;font-weight:650;font-size:.85rem}
56
+ details{margin-top:8px}
57
+ summary{cursor:pointer;color:var(--acc3);font-size:.8rem}
58
+ details p{margin:6px 0 0;color:var(--muted);font-size:.78rem;overflow-wrap:anywhere}
59
+ .cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}
60
+ .card{background:linear-gradient(180deg,var(--card2),var(--card));border:1px solid var(--line);border-radius:var(--r);padding:18px 20px}
61
+ .card h3{margin:0 0 8px;font-size:1.08rem}
62
+ .card p{margin:0;color:var(--soft);font-size:.95rem}
63
+ .files{display:grid;gap:6px;margin-top:14px}
64
+ .files p{margin:0;color:var(--muted);font-size:.85rem;overflow-wrap:anywhere}
65
+ .files code{font:.82rem/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--soft)}
66
+ footer{max-width:1180px;margin:0 auto;padding:24px 20px 40px;border-top:1px solid var(--line);color:var(--muted);font-size:.85rem}
67
+ [hidden]{display:none!important}
68
+ @media (max-width:640px){
69
+ main{padding:18px 14px 56px}
70
+ header{padding:40px 0 4px}
71
+ .controls{display:grid;grid-template-columns:1fr}
72
+ input,select,button.clear{width:100%}
73
+ th.task,thead th:first-child{width:150px;min-width:150px}
74
+ th,td{padding:10px 11px}
75
+ .wrap{max-height:70vh}
76
  }
tasks_50.json ADDED
@@ -0,0 +1,1902 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "schema_version": 2,
3
+ "protocol": "bench50-v0.3.1",
4
+ "status": "selected_source_registry_not_measurements_or_execution_approval",
5
+ "scope": "50 distinct upstream benchmark identities; variants, splits, translations, rounds and suite members are not extra benchmarks",
6
+ "counts": {
7
+ "rows": 50,
8
+ "distinct_benchmarks": 50,
9
+ "EN": 38,
10
+ "PL": 12,
11
+ "source_members": 204,
12
+ "dataset_repositories": 44
13
+ },
14
+ "distinctness": {
15
+ "key": "benchmark_id and reviewed upstream collection, not YAML task name",
16
+ "umbrella_suites_not_added_to_components": true,
17
+ "statistical_independence_claimed": false,
18
+ "language_balance": "source diversity first; original user directive did not impose25PL/25EN"
19
+ },
20
+ "sources": {
21
+ "lm_eval_commit": "6d2abda4fd171e68a8789330c4149e37c1ca0bda",
22
+ "openpl_commit": "21d0ea9cf4fd6153dfff4d84d6ad0aab5488f302",
23
+ "source_registry": "benchmark_sources_v03.json",
24
+ "origins": {
25
+ "en": "canonical pinned EN checkout",
26
+ "pl": "canonical pinned PL checkout",
27
+ "registry": "this release tasks/ definitions"
28
+ }
29
+ },
30
+ "selection": {
31
+ "seed": 20261028,
32
+ "max_documents_per_benchmark": 200,
33
+ "unit": "source document after the original process_docs; group member namespace included",
34
+ "ordering": "SHA256(UTF8(20261028|benchmark_id|member_task|source_id)); ties by canonical source bytes",
35
+ "when": "seal all requested benchmark/member data, source IDs, support and requests before loading model weights",
36
+ "group_allocation": "reserve min(2,eligible_population) per member; then allocate each remaining slot to the non-full member with largest (budget*source_weight - allocated), ties by member task name; never200 per member",
37
+ "group_weighting": "source macro/equal-member or eligible-population-size weights retained independently of sample quota; reaggregate member metrics with those fixed weights",
38
+ "support_policy": "configured source count; hash-selected disjoint support per member unless source supplies fixed examples, which retain source order; record every demo and exclude matching scored inputs",
39
+ "context_policy": "float32,batch1,max4096,no automaticBOS/chat; reserve task generation limit (default256); drop optional demos from end, never query/options; explicit failure if still over limit",
40
+ "wikitext": "full source test stream, canonical weighted byte_perplexity, not Glint conversion; descriptive comparison only",
41
+ "full_protocol_B": "separate full-data evaluation of these selected primary protocols; not the old23-definition OpenPL replication",
42
+ "harness_seed_tuple": {
43
+ "python": 0,
44
+ "numpy": 1234,
45
+ "torch": 1234,
46
+ "fewshot": 1234
47
+ },
48
+ "empty_group_member": "explicit failure; never silently remove or reweight a required source member"
49
+ },
50
+ "rows": [
51
+ {
52
+ "id": "T01",
53
+ "benchmark_id": "blimp",
54
+ "task": "blimp",
55
+ "name": "BLiMP",
56
+ "language": "EN",
57
+ "family": "blimp",
58
+ "domain": "syntax",
59
+ "metric": "acc,none",
60
+ "unit": "score",
61
+ "higher_is_better": true,
62
+ "instrument": "lm_eval_0.4.8",
63
+ "entrypoint_kind": "group",
64
+ "split": "train",
65
+ "shots": 0,
66
+ "rationale": "syntax",
67
+ "member_count": 67,
68
+ "source_record": "blimp",
69
+ "license": {
70
+ "declared_tags": [
71
+ "cc-by-4.0"
72
+ ],
73
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
74
+ "source_revisions": [
75
+ {
76
+ "repo_id": "nyu-mll/blimp",
77
+ "revision": "877fba0801ffb7cbd8c39c1ff314a46f053f6036",
78
+ "metadata_source": "https://huggingface.co/api/datasets/nyu-mll/blimp"
79
+ }
80
+ ]
81
+ },
82
+ "data_gate": "required_before_evaluation",
83
+ "notes": [],
84
+ "definition": "lm_eval/tasks/blimp/_blimp.yaml"
85
+ },
86
+ {
87
+ "id": "T02",
88
+ "benchmark_id": "arc",
89
+ "task": "arc_challenge",
90
+ "name": "ARC Challenge",
91
+ "language": "EN",
92
+ "family": "arc",
93
+ "domain": "science_reasoning",
94
+ "metric": "acc_norm,none",
95
+ "unit": "score",
96
+ "higher_is_better": true,
97
+ "instrument": "lm_eval_0.4.8",
98
+ "entrypoint_kind": "task",
99
+ "split": "test",
100
+ "shots": 0,
101
+ "rationale": "science reasoning",
102
+ "member_count": 1,
103
+ "source_record": "arc",
104
+ "license": {
105
+ "declared_tags": [
106
+ "cc-by-sa-4.0"
107
+ ],
108
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
109
+ "source_revisions": [
110
+ {
111
+ "repo_id": "allenai/ai2_arc",
112
+ "revision": "210d026faf9955653af8916fad021475a3f00453",
113
+ "metadata_source": "https://huggingface.co/api/datasets/allenai/ai2_arc"
114
+ }
115
+ ]
116
+ },
117
+ "data_gate": "required_before_evaluation",
118
+ "notes": [
119
+ "ARC Easy and Polish ARC translation are the same counted family, not extra main benchmarks."
120
+ ],
121
+ "definition": "lm_eval/tasks/arc/arc_challenge.yaml"
122
+ },
123
+ {
124
+ "id": "T03",
125
+ "benchmark_id": "wikitext2",
126
+ "task": "wikitext",
127
+ "name": "WikiText-2",
128
+ "language": "EN",
129
+ "family": "wikitext2",
130
+ "domain": "language_modeling",
131
+ "metric": "byte_perplexity,none",
132
+ "unit": "byte_ppl",
133
+ "higher_is_better": false,
134
+ "instrument": "lm_eval_0.4.8",
135
+ "entrypoint_kind": "task",
136
+ "split": "test",
137
+ "shots": 0,
138
+ "rationale": "language modeling",
139
+ "member_count": 1,
140
+ "source_record": "wikitext2",
141
+ "license": {
142
+ "declared_tags": [
143
+ "cc-by-sa-3.0"
144
+ ],
145
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
146
+ "source_revisions": [
147
+ {
148
+ "repo_id": "EleutherAI/wikitext_document_level",
149
+ "revision": "647234772b9554e208af6c826f23b99e3cac88c8",
150
+ "metadata_source": "https://huggingface.co/api/datasets/EleutherAI/wikitext_document_level"
151
+ }
152
+ ]
153
+ },
154
+ "data_gate": "required_before_evaluation",
155
+ "notes": [
156
+ "Canonical harness byte_perplexity, not the historical Glint tp^(N/B) conversion; full evaluation stream."
157
+ ],
158
+ "definition": "lm_eval/tasks/wikitext/wikitext.yaml"
159
+ },
160
+ {
161
+ "id": "T04",
162
+ "benchmark_id": "multiblimp",
163
+ "task": "multiblimp_pl",
164
+ "name": "MultiBLiMP-PL",
165
+ "language": "PL",
166
+ "family": "multiblimp",
167
+ "domain": "morphosyntax",
168
+ "metric": "accuracy",
169
+ "unit": "percent",
170
+ "higher_is_better": true,
171
+ "instrument": "custom_pl",
172
+ "entrypoint_kind": "custom",
173
+ "split": "pol/data.tsv",
174
+ "shots": 0,
175
+ "rationale": "morphosyntax",
176
+ "member_count": 1,
177
+ "source_record": "multiblimp",
178
+ "license": {
179
+ "declared_tags": [
180
+ "cc-by-4.0"
181
+ ],
182
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
183
+ "source_revisions": [
184
+ {
185
+ "repo_id": "jumelet/multiblimp",
186
+ "revision": "de923efa8d2483d6b13364ee68e65308e990a991",
187
+ "metadata_source": "https://huggingface.co/api/datasets/jumelet/multiblimp/revision/de923efa8d2483d6b13364ee68e65308e990a991"
188
+ }
189
+ ]
190
+ },
191
+ "data_gate": "required_before_evaluation",
192
+ "notes": [
193
+ "Independent UD/UniMorph construction, not BLiMP translation. Preserve the explicit historical space-prefix log-probability-sum instrument."
194
+ ]
195
+ },
196
+ {
197
+ "id": "T05",
198
+ "benchmark_id": "hellaswag",
199
+ "task": "hellaswag",
200
+ "name": "HellaSwag",
201
+ "language": "EN",
202
+ "family": "hellaswag",
203
+ "domain": "commonsense",
204
+ "metric": "acc_norm,none",
205
+ "unit": "score",
206
+ "higher_is_better": true,
207
+ "instrument": "lm_eval_0.4.8",
208
+ "entrypoint_kind": "task",
209
+ "split": "validation",
210
+ "shots": 0,
211
+ "rationale": "commonsense",
212
+ "member_count": 1,
213
+ "source_record": "hellaswag",
214
+ "license": {
215
+ "declared_tags": [
216
+ "unknown"
217
+ ],
218
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
219
+ "source_revisions": [
220
+ {
221
+ "repo_id": "Rowan/hellaswag",
222
+ "revision": "218ec52e09a7e7462a5400043bb9a69a41d06b76",
223
+ "metadata_source": "https://huggingface.co/api/datasets/Rowan/hellaswag/revision/218ec52e09a7e7462a5400043bb9a69a41d06b76"
224
+ }
225
+ ]
226
+ },
227
+ "data_gate": "required_before_evaluation",
228
+ "notes": [
229
+ "SWAG is excluded conservatively because the collections reuse ActivityNet context sources.",
230
+ "Undeclared/umbrella data terms are a gate, not an inferred permissive licence."
231
+ ],
232
+ "definition": "lm_eval/tasks/hellaswag/hellaswag.yaml"
233
+ },
234
+ {
235
+ "id": "T06",
236
+ "benchmark_id": "piqa",
237
+ "task": "piqa",
238
+ "name": "PIQA",
239
+ "language": "EN",
240
+ "family": "piqa",
241
+ "domain": "physical_reasoning",
242
+ "metric": "acc_norm,none",
243
+ "unit": "score",
244
+ "higher_is_better": true,
245
+ "instrument": "lm_eval_0.4.8",
246
+ "entrypoint_kind": "task",
247
+ "split": "validation",
248
+ "shots": 0,
249
+ "rationale": "physical reasoning",
250
+ "member_count": 1,
251
+ "source_record": "piqa",
252
+ "license": {
253
+ "declared_tags": [
254
+ "unknown"
255
+ ],
256
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
257
+ "source_revisions": [
258
+ {
259
+ "repo_id": "ybisk/piqa",
260
+ "revision": "2e8ac2dffd59bac8c3c6714948f4c551a0848bb0",
261
+ "metadata_source": "https://huggingface.co/api/datasets/ybisk/piqa/revision/2e8ac2dffd59bac8c3c6714948f4c551a0848bb0"
262
+ }
263
+ ]
264
+ },
265
+ "data_gate": "required_before_evaluation",
266
+ "notes": [
267
+ "Undeclared/umbrella data terms are a gate, not an inferred permissive licence."
268
+ ],
269
+ "definition": "lm_eval/tasks/piqa/piqa.yaml"
270
+ },
271
+ {
272
+ "id": "T07",
273
+ "benchmark_id": "winogrande",
274
+ "task": "winogrande",
275
+ "name": "WinoGrande",
276
+ "language": "EN",
277
+ "family": "winogrande",
278
+ "domain": "coreference",
279
+ "metric": "acc,none",
280
+ "unit": "score",
281
+ "higher_is_better": true,
282
+ "instrument": "lm_eval_0.4.8",
283
+ "entrypoint_kind": "task",
284
+ "split": "validation",
285
+ "shots": 0,
286
+ "rationale": "coreference",
287
+ "member_count": 1,
288
+ "source_record": "winogrande",
289
+ "license": {
290
+ "declared_tags": [
291
+ "unknown"
292
+ ],
293
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
294
+ "source_revisions": [
295
+ {
296
+ "repo_id": "allenai/winogrande",
297
+ "revision": "01e74176c63542e6b0bcb004dcdea22d94fb67b5",
298
+ "metadata_source": "https://huggingface.co/api/datasets/allenai/winogrande/revision/01e74176c63542e6b0bcb004dcdea22d94fb67b5"
299
+ }
300
+ ]
301
+ },
302
+ "data_gate": "required_before_evaluation",
303
+ "notes": [
304
+ "Undeclared/umbrella data terms are a gate, not an inferred permissive licence."
305
+ ],
306
+ "definition": "lm_eval/tasks/winogrande/default.yaml"
307
+ },
308
+ {
309
+ "id": "T08",
310
+ "benchmark_id": "openbookqa",
311
+ "task": "openbookqa",
312
+ "name": "OpenBookQA",
313
+ "language": "EN",
314
+ "family": "openbookqa",
315
+ "domain": "science_reasoning",
316
+ "metric": "acc_norm,none",
317
+ "unit": "score",
318
+ "higher_is_better": true,
319
+ "instrument": "lm_eval_0.4.8",
320
+ "entrypoint_kind": "task",
321
+ "split": "test",
322
+ "shots": 0,
323
+ "rationale": "science reasoning",
324
+ "member_count": 1,
325
+ "source_record": "openbookqa",
326
+ "license": {
327
+ "declared_tags": [
328
+ "unknown"
329
+ ],
330
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
331
+ "source_revisions": [
332
+ {
333
+ "repo_id": "allenai/openbookqa",
334
+ "revision": "388097ea7776314e93a529163e0fea805b8a6454",
335
+ "metadata_source": "https://huggingface.co/api/datasets/allenai/openbookqa/revision/388097ea7776314e93a529163e0fea805b8a6454"
336
+ }
337
+ ]
338
+ },
339
+ "data_gate": "required_before_evaluation",
340
+ "notes": [
341
+ "Undeclared/umbrella data terms are a gate, not an inferred permissive licence."
342
+ ],
343
+ "definition": "lm_eval/tasks/openbookqa/openbookqa.yaml"
344
+ },
345
+ {
346
+ "id": "T09",
347
+ "benchmark_id": "sciq",
348
+ "task": "sciq",
349
+ "name": "SciQ",
350
+ "language": "EN",
351
+ "family": "sciq",
352
+ "domain": "science_knowledge",
353
+ "metric": "acc_norm,none",
354
+ "unit": "score",
355
+ "higher_is_better": true,
356
+ "instrument": "lm_eval_0.4.8",
357
+ "entrypoint_kind": "task",
358
+ "split": "test",
359
+ "shots": 0,
360
+ "rationale": "science knowledge",
361
+ "member_count": 1,
362
+ "source_record": "sciq",
363
+ "license": {
364
+ "declared_tags": [
365
+ "cc-by-nc-3.0"
366
+ ],
367
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
368
+ "source_revisions": [
369
+ {
370
+ "repo_id": "allenai/sciq",
371
+ "revision": "2c94ad3e1aafab77146f384e23536f97a4849815",
372
+ "metadata_source": "https://huggingface.co/api/datasets/sciq"
373
+ }
374
+ ]
375
+ },
376
+ "data_gate": "required_before_evaluation",
377
+ "notes": [
378
+ "NC declaration observed: evaluation-use basis must be independently resolved; this is not training permission or run approval."
379
+ ],
380
+ "definition": "lm_eval/tasks/sciq/sciq.yaml"
381
+ },
382
+ {
383
+ "id": "T10",
384
+ "benchmark_id": "boolq",
385
+ "task": "boolq",
386
+ "name": "BoolQ",
387
+ "language": "EN",
388
+ "family": "boolq",
389
+ "domain": "reading",
390
+ "metric": "acc,none",
391
+ "unit": "score",
392
+ "higher_is_better": true,
393
+ "instrument": "lm_eval_0.4.8",
394
+ "entrypoint_kind": "task",
395
+ "split": "validation",
396
+ "shots": 0,
397
+ "rationale": "reading",
398
+ "member_count": 1,
399
+ "source_record": "boolq",
400
+ "license": {
401
+ "declared_tags": [
402
+ "other"
403
+ ],
404
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
405
+ "source_revisions": [
406
+ {
407
+ "repo_id": "aps/super_glue",
408
+ "revision": "3de24cf8022e94f4ee4b9d55a6f539891524d646",
409
+ "metadata_source": "https://huggingface.co/api/datasets/super_glue"
410
+ }
411
+ ]
412
+ },
413
+ "data_gate": "required_before_evaluation",
414
+ "notes": [
415
+ "Undeclared/umbrella data terms are a gate, not an inferred permissive licence."
416
+ ],
417
+ "definition": "lm_eval/tasks/super_glue/boolq/default.yaml"
418
+ },
419
+ {
420
+ "id": "T11",
421
+ "benchmark_id": "copa",
422
+ "task": "copa",
423
+ "name": "COPA",
424
+ "language": "EN",
425
+ "family": "copa",
426
+ "domain": "causal_reasoning",
427
+ "metric": "acc,none",
428
+ "unit": "score",
429
+ "higher_is_better": true,
430
+ "instrument": "lm_eval_0.4.8",
431
+ "entrypoint_kind": "task",
432
+ "split": "validation",
433
+ "shots": 0,
434
+ "rationale": "causal reasoning",
435
+ "member_count": 1,
436
+ "source_record": "copa",
437
+ "license": {
438
+ "declared_tags": [
439
+ "other"
440
+ ],
441
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
442
+ "source_revisions": [
443
+ {
444
+ "repo_id": "aps/super_glue",
445
+ "revision": "3de24cf8022e94f4ee4b9d55a6f539891524d646",
446
+ "metadata_source": "https://huggingface.co/api/datasets/super_glue"
447
+ }
448
+ ]
449
+ },
450
+ "data_gate": "required_before_evaluation",
451
+ "notes": [
452
+ "Undeclared/umbrella data terms are a gate, not an inferred permissive licence."
453
+ ],
454
+ "definition": "lm_eval/tasks/super_glue/copa/default.yaml"
455
+ },
456
+ {
457
+ "id": "T12",
458
+ "benchmark_id": "cb",
459
+ "task": "cb",
460
+ "name": "CommitmentBank",
461
+ "language": "EN",
462
+ "family": "cb",
463
+ "domain": "entailment",
464
+ "metric": "acc,none",
465
+ "unit": "score",
466
+ "higher_is_better": true,
467
+ "instrument": "lm_eval_0.4.8",
468
+ "entrypoint_kind": "task",
469
+ "split": "validation",
470
+ "shots": 0,
471
+ "rationale": "entailment",
472
+ "member_count": 1,
473
+ "source_record": "cb",
474
+ "license": {
475
+ "declared_tags": [
476
+ "other"
477
+ ],
478
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
479
+ "source_revisions": [
480
+ {
481
+ "repo_id": "aps/super_glue",
482
+ "revision": "3de24cf8022e94f4ee4b9d55a6f539891524d646",
483
+ "metadata_source": "https://huggingface.co/api/datasets/super_glue"
484
+ }
485
+ ]
486
+ },
487
+ "data_gate": "required_before_evaluation",
488
+ "notes": [
489
+ "Undeclared/umbrella data terms are a gate, not an inferred permissive licence."
490
+ ],
491
+ "definition": "lm_eval/tasks/super_glue/cb/default.yaml"
492
+ },
493
+ {
494
+ "id": "T13",
495
+ "benchmark_id": "wic",
496
+ "task": "wic",
497
+ "name": "WiC",
498
+ "language": "EN",
499
+ "family": "wic",
500
+ "domain": "word_sense",
501
+ "metric": "acc,none",
502
+ "unit": "score",
503
+ "higher_is_better": true,
504
+ "instrument": "lm_eval_0.4.8",
505
+ "entrypoint_kind": "task",
506
+ "split": "validation",
507
+ "shots": 0,
508
+ "rationale": "word sense",
509
+ "member_count": 1,
510
+ "source_record": "wic",
511
+ "license": {
512
+ "declared_tags": [
513
+ "other"
514
+ ],
515
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
516
+ "source_revisions": [
517
+ {
518
+ "repo_id": "aps/super_glue",
519
+ "revision": "3de24cf8022e94f4ee4b9d55a6f539891524d646",
520
+ "metadata_source": "https://huggingface.co/api/datasets/super_glue"
521
+ }
522
+ ]
523
+ },
524
+ "data_gate": "required_before_evaluation",
525
+ "notes": [
526
+ "Undeclared/umbrella data terms are a gate, not an inferred permissive licence."
527
+ ],
528
+ "definition": "lm_eval/tasks/super_glue/wic/default.yaml"
529
+ },
530
+ {
531
+ "id": "T14",
532
+ "benchmark_id": "wsc273",
533
+ "task": "wsc273",
534
+ "name": "Winograd Schema Challenge",
535
+ "language": "EN",
536
+ "family": "wsc273",
537
+ "domain": "coreference",
538
+ "metric": "acc,none",
539
+ "unit": "score",
540
+ "higher_is_better": true,
541
+ "instrument": "lm_eval_0.4.8",
542
+ "entrypoint_kind": "task",
543
+ "split": "test",
544
+ "shots": 0,
545
+ "rationale": "coreference",
546
+ "member_count": 1,
547
+ "source_record": "wsc273",
548
+ "license": {
549
+ "declared_tags": [
550
+ "cc-by-4.0"
551
+ ],
552
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
553
+ "source_revisions": [
554
+ {
555
+ "repo_id": "ErnestSDavis/winograd_wsc",
556
+ "revision": "8052c534a4cecd8328c0bc879f6a5aa07404c4da",
557
+ "metadata_source": "https://huggingface.co/api/datasets/winograd_wsc"
558
+ }
559
+ ]
560
+ },
561
+ "data_gate": "required_before_evaluation",
562
+ "notes": [],
563
+ "definition": "lm_eval/tasks/wsc273/default.yaml"
564
+ },
565
+ {
566
+ "id": "T15",
567
+ "benchmark_id": "rte",
568
+ "task": "sglue_rte",
569
+ "name": "RTE",
570
+ "language": "EN",
571
+ "family": "rte",
572
+ "domain": "entailment",
573
+ "metric": "acc,none",
574
+ "unit": "score",
575
+ "higher_is_better": true,
576
+ "instrument": "lm_eval_0.4.8",
577
+ "entrypoint_kind": "task",
578
+ "split": "validation",
579
+ "shots": 0,
580
+ "rationale": "entailment",
581
+ "member_count": 1,
582
+ "source_record": "rte",
583
+ "license": {
584
+ "declared_tags": [
585
+ "other"
586
+ ],
587
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
588
+ "source_revisions": [
589
+ {
590
+ "repo_id": "aps/super_glue",
591
+ "revision": "3de24cf8022e94f4ee4b9d55a6f539891524d646",
592
+ "metadata_source": "https://huggingface.co/api/datasets/super_glue"
593
+ }
594
+ ]
595
+ },
596
+ "data_gate": "required_before_evaluation",
597
+ "notes": [
598
+ "Undeclared/umbrella data terms are a gate, not an inferred permissive licence."
599
+ ],
600
+ "definition": "lm_eval/tasks/super_glue/rte/default.yaml"
601
+ },
602
+ {
603
+ "id": "T16",
604
+ "benchmark_id": "anli",
605
+ "task": "anli_r3",
606
+ "name": "ANLI (R3 primary)",
607
+ "language": "EN",
608
+ "family": "anli",
609
+ "domain": "adversarial_entailment",
610
+ "metric": "acc,none",
611
+ "unit": "score",
612
+ "higher_is_better": true,
613
+ "instrument": "lm_eval_0.4.8",
614
+ "entrypoint_kind": "task",
615
+ "split": "test_r3",
616
+ "shots": 0,
617
+ "rationale": "adversarial entailment",
618
+ "member_count": 1,
619
+ "source_record": "anli",
620
+ "license": {
621
+ "declared_tags": [
622
+ "cc-by-nc-4.0"
623
+ ],
624
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
625
+ "source_revisions": [
626
+ {
627
+ "repo_id": "facebook/anli",
628
+ "revision": "8e4813d81f46d313dac7892e1c28076917cfcdf9",
629
+ "metadata_source": "https://huggingface.co/api/datasets/anli"
630
+ }
631
+ ]
632
+ },
633
+ "data_gate": "required_before_evaluation",
634
+ "notes": [
635
+ "R3 is the primary protocol; R1/R2 do not increase benchmark count.",
636
+ "NC declaration observed: evaluation-use basis must be independently resolved; this is not training permission or run approval."
637
+ ],
638
+ "definition": "lm_eval/tasks/anli/anli_r3.yaml"
639
+ },
640
+ {
641
+ "id": "T17",
642
+ "benchmark_id": "lambada",
643
+ "task": "lambada_openai",
644
+ "name": "LAMBADA",
645
+ "language": "EN",
646
+ "family": "lambada",
647
+ "domain": "contextual_prediction",
648
+ "metric": "acc,none",
649
+ "unit": "score",
650
+ "higher_is_better": true,
651
+ "instrument": "lm_eval_0.4.8",
652
+ "entrypoint_kind": "task",
653
+ "split": "test",
654
+ "shots": 0,
655
+ "rationale": "contextual prediction",
656
+ "member_count": 1,
657
+ "source_record": "lambada",
658
+ "license": {
659
+ "declared_tags": [
660
+ "mit"
661
+ ],
662
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
663
+ "source_revisions": [
664
+ {
665
+ "repo_id": "EleutherAI/lambada_openai",
666
+ "revision": "900124bf3b8235c6daf21033af9948b3f07346c4",
667
+ "metadata_source": "https://huggingface.co/api/datasets/EleutherAI/lambada_openai"
668
+ }
669
+ ]
670
+ },
671
+ "data_gate": "required_before_evaluation",
672
+ "notes": [],
673
+ "definition": "lm_eval/tasks/lambada/lambada_openai.yaml"
674
+ },
675
+ {
676
+ "id": "T18",
677
+ "benchmark_id": "logiqa",
678
+ "task": "logiqa",
679
+ "name": "LogiQA",
680
+ "language": "EN",
681
+ "family": "logiqa",
682
+ "domain": "logical_reasoning",
683
+ "metric": "acc_norm,none",
684
+ "unit": "score",
685
+ "higher_is_better": true,
686
+ "instrument": "lm_eval_0.4.8",
687
+ "entrypoint_kind": "task",
688
+ "split": "test",
689
+ "shots": 0,
690
+ "rationale": "logical reasoning",
691
+ "member_count": 1,
692
+ "source_record": "logiqa",
693
+ "license": {
694
+ "declared_tags": [
695
+ "other"
696
+ ],
697
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
698
+ "source_revisions": [
699
+ {
700
+ "repo_id": "EleutherAI/logiqa",
701
+ "revision": "c1eee1b2fd0ddc87777e36490f7ad54d0b97d141",
702
+ "metadata_source": "https://huggingface.co/api/datasets/EleutherAI/logiqa"
703
+ }
704
+ ]
705
+ },
706
+ "data_gate": "required_before_evaluation",
707
+ "notes": [
708
+ "Undeclared/umbrella data terms are a gate, not an inferred permissive licence."
709
+ ],
710
+ "definition": "lm_eval/tasks/logiqa/logiqa.yaml"
711
+ },
712
+ {
713
+ "id": "T19",
714
+ "benchmark_id": "mathqa",
715
+ "task": "mathqa",
716
+ "name": "MathQA",
717
+ "language": "EN",
718
+ "family": "mathqa",
719
+ "domain": "mathematics_mc",
720
+ "metric": "acc_norm,none",
721
+ "unit": "score",
722
+ "higher_is_better": true,
723
+ "instrument": "lm_eval_0.4.8",
724
+ "entrypoint_kind": "task",
725
+ "split": "test",
726
+ "shots": 0,
727
+ "rationale": "mathematics mc",
728
+ "member_count": 1,
729
+ "source_record": "mathqa",
730
+ "license": {
731
+ "declared_tags": [
732
+ "apache-2.0"
733
+ ],
734
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
735
+ "source_revisions": [
736
+ {
737
+ "repo_id": "allenai/math_qa",
738
+ "revision": "c4f1cc784c04c4957b50c97858f23893b633eea6",
739
+ "metadata_source": "https://huggingface.co/api/datasets/math_qa"
740
+ }
741
+ ]
742
+ },
743
+ "data_gate": "required_before_evaluation",
744
+ "notes": [],
745
+ "definition": "lm_eval/tasks/mathqa/mathqa.yaml"
746
+ },
747
+ {
748
+ "id": "T20",
749
+ "benchmark_id": "prost",
750
+ "task": "prost",
751
+ "name": "PROST",
752
+ "language": "EN",
753
+ "family": "prost",
754
+ "domain": "physical_reasoning",
755
+ "metric": "acc_norm,none",
756
+ "unit": "score",
757
+ "higher_is_better": true,
758
+ "instrument": "lm_eval_0.4.8",
759
+ "entrypoint_kind": "task",
760
+ "split": "test",
761
+ "shots": 0,
762
+ "rationale": "physical reasoning",
763
+ "member_count": 1,
764
+ "source_record": "prost",
765
+ "license": {
766
+ "declared_tags": [
767
+ "apache-2.0"
768
+ ],
769
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
770
+ "source_revisions": [
771
+ {
772
+ "repo_id": "corypaik/prost",
773
+ "revision": "b3efebf08969fc19335ba894353316878b6fa493",
774
+ "metadata_source": "https://huggingface.co/api/datasets/corypaik/prost"
775
+ }
776
+ ]
777
+ },
778
+ "data_gate": "required_before_evaluation",
779
+ "notes": [],
780
+ "definition": "lm_eval/tasks/prost/corypaik_prost.yaml"
781
+ },
782
+ {
783
+ "id": "T21",
784
+ "benchmark_id": "sst2",
785
+ "task": "sst2",
786
+ "name": "SST-2",
787
+ "language": "EN",
788
+ "family": "sst2",
789
+ "domain": "sentiment",
790
+ "metric": "acc,none",
791
+ "unit": "score",
792
+ "higher_is_better": true,
793
+ "instrument": "lm_eval_0.4.8",
794
+ "entrypoint_kind": "task",
795
+ "split": "validation",
796
+ "shots": 0,
797
+ "rationale": "sentiment",
798
+ "member_count": 1,
799
+ "source_record": "sst2",
800
+ "license": {
801
+ "declared_tags": [
802
+ "other"
803
+ ],
804
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
805
+ "source_revisions": [
806
+ {
807
+ "repo_id": "nyu-mll/glue",
808
+ "revision": "bcdcba79d07bc864c1c254ccfcedcce55bcc9a8c",
809
+ "metadata_source": "https://huggingface.co/api/datasets/glue"
810
+ }
811
+ ]
812
+ },
813
+ "data_gate": "required_before_evaluation",
814
+ "notes": [
815
+ "Undeclared/umbrella data terms are a gate, not an inferred permissive licence."
816
+ ],
817
+ "definition": "lm_eval/tasks/glue/sst2/default.yaml"
818
+ },
819
+ {
820
+ "id": "T22",
821
+ "benchmark_id": "polemo2",
822
+ "task": "polemo2_in_multiple_choice",
823
+ "name": "PoLEMo2 (in-domain MC)",
824
+ "language": "PL",
825
+ "family": "polemo2",
826
+ "domain": "sentiment",
827
+ "metric": "acc,none",
828
+ "unit": "score",
829
+ "higher_is_better": true,
830
+ "instrument": "openpl_polish4",
831
+ "entrypoint_kind": "task",
832
+ "split": "test",
833
+ "shots": 5,
834
+ "rationale": "sentiment",
835
+ "member_count": 1,
836
+ "source_record": "polemo2",
837
+ "license": {
838
+ "declared_tags": [
839
+ "cc-by-sa-4.0"
840
+ ],
841
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
842
+ "source_revisions": [
843
+ {
844
+ "repo_id": "allegro/klej-polemo2-in",
845
+ "revision": "9843af31facd613eb091deaa4141df4331d4f918",
846
+ "metadata_source": "https://huggingface.co/api/datasets/allegro/klej-polemo2-in"
847
+ }
848
+ ]
849
+ },
850
+ "data_gate": "required_before_evaluation",
851
+ "notes": [
852
+ "Other response-format, domain or language protocols of this source are not extra main benchmarks."
853
+ ],
854
+ "definition": "lm_eval/tasks/polemo2/polemo2_in_mc.yaml"
855
+ },
856
+ {
857
+ "id": "T23",
858
+ "benchmark_id": "8tags",
859
+ "task": "polish_8tags_multiple_choice",
860
+ "name": "8tags",
861
+ "language": "PL",
862
+ "family": "8tags",
863
+ "domain": "topic_classification",
864
+ "metric": "acc,none",
865
+ "unit": "score",
866
+ "higher_is_better": true,
867
+ "instrument": "openpl_polish4",
868
+ "entrypoint_kind": "task",
869
+ "split": "test",
870
+ "shots": 5,
871
+ "rationale": "topic classification",
872
+ "member_count": 1,
873
+ "source_record": "8tags",
874
+ "license": {
875
+ "declared_tags": [
876
+ "cc-by-nc-sa-4.0"
877
+ ],
878
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
879
+ "source_revisions": [
880
+ {
881
+ "repo_id": "sdadas/8tags",
882
+ "revision": "82ddf9c0d06ffc982aeccf2473b7ce31f2167adf",
883
+ "metadata_source": "https://huggingface.co/api/datasets/sdadas/8tags"
884
+ }
885
+ ]
886
+ },
887
+ "data_gate": "required_before_evaluation",
888
+ "notes": [
889
+ "Other response-format, domain or language protocols of this source are not extra main benchmarks.",
890
+ "NC declaration observed: evaluation-use basis must be independently resolved; this is not training permission or run approval."
891
+ ],
892
+ "definition": "lm_eval/tasks/polish_8tags/8tags_mc.yaml"
893
+ },
894
+ {
895
+ "id": "T24",
896
+ "benchmark_id": "belebele",
897
+ "task": "polish_belebele_mc",
898
+ "name": "Belebele-PL",
899
+ "language": "PL",
900
+ "family": "belebele",
901
+ "domain": "reading",
902
+ "metric": "acc,none",
903
+ "unit": "score",
904
+ "higher_is_better": true,
905
+ "instrument": "openpl_polish4",
906
+ "entrypoint_kind": "task",
907
+ "split": "test",
908
+ "shots": 5,
909
+ "rationale": "reading",
910
+ "member_count": 1,
911
+ "source_record": "belebele",
912
+ "license": {
913
+ "declared_tags": [
914
+ "cc-by-sa-4.0"
915
+ ],
916
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
917
+ "source_revisions": [
918
+ {
919
+ "repo_id": "facebook/belebele",
920
+ "revision": "7899cdfa4e1e0d733fd77c848e2c273cb1d32be2",
921
+ "metadata_source": "https://huggingface.co/api/datasets/facebook/belebele/revision/7899cdfa4e1e0d733fd77c848e2c273cb1d32be2"
922
+ }
923
+ ]
924
+ },
925
+ "data_gate": "required_before_evaluation",
926
+ "notes": [
927
+ "Other response-format, domain or language protocols of this source are not extra main benchmarks."
928
+ ],
929
+ "definition": "lm_eval/tasks/polish_belebele/belebele_mc.yaml"
930
+ },
931
+ {
932
+ "id": "T25",
933
+ "benchmark_id": "dyk",
934
+ "task": "polish_dyk_multiple_choice",
935
+ "name": "CzyWiesz / DYK",
936
+ "language": "PL",
937
+ "family": "dyk",
938
+ "domain": "question_relevance",
939
+ "metric": "f1,none",
940
+ "unit": "score",
941
+ "higher_is_better": true,
942
+ "instrument": "openpl_polish4",
943
+ "entrypoint_kind": "task",
944
+ "split": "test",
945
+ "shots": 5,
946
+ "rationale": "question relevance",
947
+ "member_count": 1,
948
+ "source_record": "dyk",
949
+ "license": {
950
+ "declared_tags": [
951
+ "cc-by-sa-3.0"
952
+ ],
953
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
954
+ "source_revisions": [
955
+ {
956
+ "repo_id": "allegro/klej-dyk",
957
+ "revision": "dd7c3c3bb336738c853ea17c64b85d876e6714a9",
958
+ "metadata_source": "https://huggingface.co/api/datasets/allegro/klej-dyk"
959
+ }
960
+ ]
961
+ },
962
+ "data_gate": "required_before_evaluation",
963
+ "notes": [
964
+ "Other response-format, domain or language protocols of this source are not extra main benchmarks."
965
+ ],
966
+ "definition": "lm_eval/tasks/polish_dyk/dyk_mc.yaml"
967
+ },
968
+ {
969
+ "id": "T26",
970
+ "benchmark_id": "ppc",
971
+ "task": "polish_ppc_multiple_choice",
972
+ "name": "Polish Paraphrase Corpus",
973
+ "language": "PL",
974
+ "family": "ppc",
975
+ "domain": "paraphrase",
976
+ "metric": "acc,none",
977
+ "unit": "score",
978
+ "higher_is_better": true,
979
+ "instrument": "openpl_polish4",
980
+ "entrypoint_kind": "task",
981
+ "split": "test",
982
+ "shots": 5,
983
+ "rationale": "paraphrase",
984
+ "member_count": 1,
985
+ "source_record": "ppc",
986
+ "license": {
987
+ "declared_tags": [
988
+ "cc-by-nc-sa-4.0"
989
+ ],
990
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
991
+ "source_revisions": [
992
+ {
993
+ "repo_id": "sdadas/ppc",
994
+ "revision": "073012dc81efb47b0fd66b0ab48bf06ddb62f528",
995
+ "metadata_source": "https://huggingface.co/api/datasets/sdadas/ppc"
996
+ }
997
+ ]
998
+ },
999
+ "data_gate": "required_before_evaluation",
1000
+ "notes": [
1001
+ "Other response-format, domain or language protocols of this source are not extra main benchmarks.",
1002
+ "NC declaration observed: evaluation-use basis must be independently resolved; this is not training permission or run approval."
1003
+ ],
1004
+ "definition": "lm_eval/tasks/polish_ppc/ppc_mc.yaml"
1005
+ },
1006
+ {
1007
+ "id": "T27",
1008
+ "benchmark_id": "psc",
1009
+ "task": "polish_psc_multiple_choice",
1010
+ "name": "Polish Summaries Corpus (matching)",
1011
+ "language": "PL",
1012
+ "family": "psc",
1013
+ "domain": "summary_matching",
1014
+ "metric": "f1,none",
1015
+ "unit": "score",
1016
+ "higher_is_better": true,
1017
+ "instrument": "openpl_polish4",
1018
+ "entrypoint_kind": "task",
1019
+ "split": "test",
1020
+ "shots": 5,
1021
+ "rationale": "summary matching",
1022
+ "member_count": 1,
1023
+ "source_record": "psc",
1024
+ "license": {
1025
+ "declared_tags": [
1026
+ "cc-by-sa-3.0"
1027
+ ],
1028
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1029
+ "source_revisions": [
1030
+ {
1031
+ "repo_id": "allegro/klej-psc",
1032
+ "revision": "9585582aef37e7747ef174b0ec3b74855da8bad2",
1033
+ "metadata_source": "https://huggingface.co/api/datasets/allegro/klej-psc"
1034
+ }
1035
+ ]
1036
+ },
1037
+ "data_gate": "required_before_evaluation",
1038
+ "notes": [
1039
+ "Other response-format, domain or language protocols of this source are not extra main benchmarks."
1040
+ ],
1041
+ "definition": "lm_eval/tasks/polish_psc/psc_mc.yaml"
1042
+ },
1043
+ {
1044
+ "id": "T28",
1045
+ "benchmark_id": "cbd",
1046
+ "task": "polish_cbd_multiple_choice",
1047
+ "name": "Polish Cyberbullying Dataset",
1048
+ "language": "PL",
1049
+ "family": "cbd",
1050
+ "domain": "toxicity_detection",
1051
+ "metric": "f1,none",
1052
+ "unit": "score",
1053
+ "higher_is_better": true,
1054
+ "instrument": "openpl_polish4",
1055
+ "entrypoint_kind": "task",
1056
+ "split": "test",
1057
+ "shots": 5,
1058
+ "rationale": "toxicity detection",
1059
+ "member_count": 1,
1060
+ "source_record": "cbd",
1061
+ "license": {
1062
+ "declared_tags": [
1063
+ "cc-by-4.0"
1064
+ ],
1065
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1066
+ "source_revisions": [
1067
+ {
1068
+ "repo_id": "ptaszynski/PolishCyberbullyingDataset",
1069
+ "revision": "be3b1236598a02eff6db05ea7ac386afaabc33e8",
1070
+ "metadata_source": "https://huggingface.co/api/datasets/ptaszynski/PolishCyberbullyingDataset"
1071
+ }
1072
+ ]
1073
+ },
1074
+ "data_gate": "required_before_evaluation",
1075
+ "notes": [
1076
+ "Other response-format, domain or language protocols of this source are not extra main benchmarks."
1077
+ ],
1078
+ "definition": "lm_eval/tasks/polish_cbd/cbd_mc.yaml"
1079
+ },
1080
+ {
1081
+ "id": "T29",
1082
+ "benchmark_id": "klej_ner",
1083
+ "task": "polish_klej_ner_multiple_choice",
1084
+ "name": "KLEJ NKJP-NER (sentence-level)",
1085
+ "language": "PL",
1086
+ "family": "klej_ner",
1087
+ "domain": "sentence_entity_classification",
1088
+ "metric": "acc,none",
1089
+ "unit": "score",
1090
+ "higher_is_better": true,
1091
+ "instrument": "openpl_polish4",
1092
+ "entrypoint_kind": "task",
1093
+ "split": "test",
1094
+ "shots": 5,
1095
+ "rationale": "entity recognition",
1096
+ "member_count": 1,
1097
+ "source_record": "klej_ner",
1098
+ "license": {
1099
+ "declared_tags": [
1100
+ "unknown"
1101
+ ],
1102
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1103
+ "source_revisions": [
1104
+ {
1105
+ "repo_id": "allegro/klej-nkjp-ner",
1106
+ "revision": "bfae4047738b985bc2ad533d339dd89c3f7de00d",
1107
+ "metadata_source": "https://huggingface.co/api/datasets/allegro/klej-nkjp-ner/revision/bfae4047738b985bc2ad533d339dd89c3f7de00d"
1108
+ }
1109
+ ]
1110
+ },
1111
+ "data_gate": "required_before_evaluation",
1112
+ "notes": [
1113
+ "Other response-format, domain or language protocols of this source are not extra main benchmarks.",
1114
+ "Undeclared/umbrella data terms are a gate, not an inferred permissive licence."
1115
+ ],
1116
+ "definition": "lm_eval/tasks/polish_klej_ner/klej_ner_mc.yaml"
1117
+ },
1118
+ {
1119
+ "id": "T30",
1120
+ "benchmark_id": "polqa",
1121
+ "task": "polish_polqa_open_book",
1122
+ "name": "PolQA (open book)",
1123
+ "language": "PL",
1124
+ "family": "polqa",
1125
+ "domain": "question_answering",
1126
+ "metric": "levenshtein,none",
1127
+ "unit": "score",
1128
+ "higher_is_better": true,
1129
+ "instrument": "openpl_polish4",
1130
+ "entrypoint_kind": "task",
1131
+ "split": "test",
1132
+ "shots": 5,
1133
+ "rationale": "question answering",
1134
+ "member_count": 1,
1135
+ "source_record": "polqa",
1136
+ "license": {
1137
+ "declared_tags": [
1138
+ "cc-by-sa-4.0"
1139
+ ],
1140
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1141
+ "source_revisions": [
1142
+ {
1143
+ "repo_id": "ipipan/polqa",
1144
+ "revision": "d78d036ef08ab3b9f4d85a2893f4d3a0c95a6f37",
1145
+ "metadata_source": "https://huggingface.co/api/datasets/ipipan/polqa"
1146
+ }
1147
+ ]
1148
+ },
1149
+ "data_gate": "required_before_evaluation",
1150
+ "notes": [
1151
+ "Other response-format, domain or language protocols of this source are not extra main benchmarks."
1152
+ ],
1153
+ "definition": "lm_eval/tasks/polish_polqa/polqa_open_book.yaml"
1154
+ },
1155
+ {
1156
+ "id": "T31",
1157
+ "benchmark_id": "poquad",
1158
+ "task": "polish_poquad_open_book",
1159
+ "name": "PoQuAD",
1160
+ "language": "PL",
1161
+ "family": "poquad",
1162
+ "domain": "question_answering",
1163
+ "metric": "levenshtein,none",
1164
+ "unit": "score",
1165
+ "higher_is_better": true,
1166
+ "instrument": "openpl_polish4",
1167
+ "entrypoint_kind": "task",
1168
+ "split": "validation",
1169
+ "shots": 5,
1170
+ "rationale": "question answering",
1171
+ "member_count": 1,
1172
+ "source_record": "poquad",
1173
+ "license": {
1174
+ "declared_tags": [
1175
+ "cc-by-4.0"
1176
+ ],
1177
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1178
+ "source_revisions": [
1179
+ {
1180
+ "repo_id": "clarin-pl/poquad",
1181
+ "revision": "a60f228d836fbbf990d11b4590c60b3e7f2aec2d",
1182
+ "metadata_source": "https://huggingface.co/api/datasets/clarin-pl/poquad"
1183
+ }
1184
+ ]
1185
+ },
1186
+ "data_gate": "required_before_evaluation",
1187
+ "notes": [
1188
+ "Other response-format, domain or language protocols of this source are not extra main benchmarks."
1189
+ ],
1190
+ "definition": "lm_eval/tasks/polish_poquad/poquad_open_book.yaml"
1191
+ },
1192
+ {
1193
+ "id": "T32",
1194
+ "benchmark_id": "mmlu",
1195
+ "task": "mmlu",
1196
+ "name": "MMLU",
1197
+ "language": "EN",
1198
+ "family": "mmlu",
1199
+ "domain": "academic_knowledge",
1200
+ "metric": "acc,none",
1201
+ "unit": "score",
1202
+ "higher_is_better": true,
1203
+ "instrument": "lm_eval_0.4.8",
1204
+ "entrypoint_kind": "group",
1205
+ "split": "test",
1206
+ "shots": 5,
1207
+ "rationale": "academic knowledge",
1208
+ "member_count": 57,
1209
+ "source_record": "mmlu",
1210
+ "license": {
1211
+ "declared_tags": [
1212
+ "mit"
1213
+ ],
1214
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1215
+ "source_revisions": [
1216
+ {
1217
+ "repo_id": "hails/mmlu_no_train",
1218
+ "revision": "b2e1ec9aa795adafe68e8e983248dbd4b52a1c60",
1219
+ "metadata_source": "https://huggingface.co/api/datasets/hails/mmlu_no_train"
1220
+ }
1221
+ ]
1222
+ },
1223
+ "data_gate": "required_before_evaluation",
1224
+ "notes": [
1225
+ "57 subjects count as one benchmark; MMLU-Pro and translations are not additional sources."
1226
+ ],
1227
+ "definition": "lm_eval/tasks/mmlu/default/_mmlu.yaml"
1228
+ },
1229
+ {
1230
+ "id": "T33",
1231
+ "benchmark_id": "gsm8k",
1232
+ "task": "gsm8k",
1233
+ "name": "GSM8K",
1234
+ "language": "EN",
1235
+ "family": "gsm8k",
1236
+ "domain": "mathematics_generation",
1237
+ "metric": "exact_match,strict-match",
1238
+ "unit": "score",
1239
+ "higher_is_better": true,
1240
+ "instrument": "lm_eval_0.4.8",
1241
+ "entrypoint_kind": "task",
1242
+ "split": "test",
1243
+ "shots": 5,
1244
+ "rationale": "mathematics generation",
1245
+ "member_count": 1,
1246
+ "source_record": "gsm8k",
1247
+ "license": {
1248
+ "declared_tags": [
1249
+ "mit"
1250
+ ],
1251
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1252
+ "source_revisions": [
1253
+ {
1254
+ "repo_id": "openai/gsm8k",
1255
+ "revision": "740312add88f781978c0658806c59bc2815b9866",
1256
+ "metadata_source": "https://huggingface.co/api/datasets/gsm8k"
1257
+ }
1258
+ ]
1259
+ },
1260
+ "data_gate": "required_before_evaluation",
1261
+ "notes": [],
1262
+ "definition": "lm_eval/tasks/gsm8k/gsm8k.yaml"
1263
+ },
1264
+ {
1265
+ "id": "T34",
1266
+ "benchmark_id": "math",
1267
+ "task": "hendrycks_math",
1268
+ "name": "MATH",
1269
+ "language": "EN",
1270
+ "family": "math",
1271
+ "domain": "competition_mathematics",
1272
+ "metric": "exact_match,none",
1273
+ "unit": "score",
1274
+ "higher_is_better": true,
1275
+ "instrument": "lm_eval_0.4.8",
1276
+ "entrypoint_kind": "group",
1277
+ "split": "test",
1278
+ "shots": 0,
1279
+ "rationale": "competition mathematics",
1280
+ "member_count": 7,
1281
+ "source_record": "math",
1282
+ "license": {
1283
+ "declared_tags": [
1284
+ "mit"
1285
+ ],
1286
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1287
+ "source_revisions": [
1288
+ {
1289
+ "repo_id": "EleutherAI/hendrycks_math",
1290
+ "revision": "21a5633873b6a120296cce3e2df9d5550074f4a3",
1291
+ "metadata_source": "https://huggingface.co/api/datasets/EleutherAI/hendrycks_math"
1292
+ }
1293
+ ]
1294
+ },
1295
+ "data_gate": "required_before_evaluation",
1296
+ "notes": [],
1297
+ "definition": "lm_eval/tasks/hendrycks_math/hendrycks_math.yaml",
1298
+ "scoring_notes": [
1299
+ "source_extractor_floor"
1300
+ ]
1301
+ },
1302
+ {
1303
+ "id": "T35",
1304
+ "benchmark_id": "truthfulqa",
1305
+ "task": "truthfulqa_mc2",
1306
+ "name": "TruthfulQA (MC2)",
1307
+ "language": "EN",
1308
+ "family": "truthfulqa",
1309
+ "domain": "truthfulness",
1310
+ "metric": "acc,none",
1311
+ "unit": "score",
1312
+ "higher_is_better": true,
1313
+ "instrument": "lm_eval_0.4.8",
1314
+ "entrypoint_kind": "task",
1315
+ "split": "validation",
1316
+ "shots": 0,
1317
+ "rationale": "truthfulness",
1318
+ "member_count": 1,
1319
+ "source_record": "truthfulqa",
1320
+ "license": {
1321
+ "declared_tags": [
1322
+ "apache-2.0"
1323
+ ],
1324
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1325
+ "source_revisions": [
1326
+ {
1327
+ "repo_id": "truthfulqa/truthful_qa",
1328
+ "revision": "741b8276f2d1982aa3d5b832d3ee81ed3b896490",
1329
+ "metadata_source": "https://huggingface.co/api/datasets/truthful_qa"
1330
+ }
1331
+ ]
1332
+ },
1333
+ "data_gate": "required_before_evaluation",
1334
+ "notes": [
1335
+ "MC2 is normalized probability mass on true answers, not MC1 classification accuracy; source fixed QA preamble retained."
1336
+ ],
1337
+ "definition": "lm_eval/tasks/truthfulqa/truthfulqa_mc2.yaml"
1338
+ },
1339
+ {
1340
+ "id": "T36",
1341
+ "benchmark_id": "ifeval",
1342
+ "task": "ifeval",
1343
+ "name": "IFEval",
1344
+ "language": "EN",
1345
+ "family": "ifeval",
1346
+ "domain": "instruction_following",
1347
+ "metric": "prompt_level_strict_acc,none",
1348
+ "unit": "score",
1349
+ "higher_is_better": true,
1350
+ "instrument": "lm_eval_0.4.8",
1351
+ "entrypoint_kind": "task",
1352
+ "split": "train",
1353
+ "shots": 0,
1354
+ "rationale": "instruction following",
1355
+ "member_count": 1,
1356
+ "source_record": "ifeval",
1357
+ "license": {
1358
+ "declared_tags": [
1359
+ "apache-2.0"
1360
+ ],
1361
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1362
+ "source_revisions": [
1363
+ {
1364
+ "repo_id": "google/IFEval",
1365
+ "revision": "966cd89545d6b6acfd7638bc708b98261ca58e84",
1366
+ "metadata_source": "https://huggingface.co/api/datasets/google/IFEval"
1367
+ }
1368
+ ]
1369
+ },
1370
+ "data_gate": "required_before_evaluation",
1371
+ "notes": [],
1372
+ "definition": "lm_eval/tasks/ifeval/ifeval.yaml"
1373
+ },
1374
+ {
1375
+ "id": "T37",
1376
+ "benchmark_id": "llmzszl",
1377
+ "task": "n05_llmzszl",
1378
+ "name": "LLMzSzŁ",
1379
+ "language": "PL",
1380
+ "family": "llmzszl",
1381
+ "domain": "native_exam_knowledge",
1382
+ "metric": "acc,none",
1383
+ "unit": "score",
1384
+ "higher_is_better": true,
1385
+ "instrument": "n05_static_yaml",
1386
+ "entrypoint_kind": "local_yaml",
1387
+ "split": "test",
1388
+ "shots": 0,
1389
+ "rationale": "native exam knowledge",
1390
+ "member_count": 1,
1391
+ "source_record": "llmzszl",
1392
+ "license": {
1393
+ "declared_tags": [
1394
+ "unknown"
1395
+ ],
1396
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1397
+ "source_revisions": [
1398
+ {
1399
+ "repo_id": "amu-cai/llmzszl-dataset",
1400
+ "revision": "9c11d52a415147f1e2c44038a9d4d4155f064e1a",
1401
+ "metadata_source": "https://huggingface.co/api/datasets/amu-cai/llmzszl-dataset"
1402
+ }
1403
+ ]
1404
+ },
1405
+ "data_gate": "required_before_evaluation",
1406
+ "notes": [
1407
+ "Dataset card has no license tag: internal evaluation and aggregate export only, per the data-use review. Known training overlap requires revision/ID-bound audit and common clean-subset decision.",
1408
+ "Undeclared/umbrella data terms are a gate, not an inferred permissive licence."
1409
+ ],
1410
+ "definition": "tasks/llmzszl.yaml",
1411
+ "contamination_status": "known overlap reported; exact current revision and ID-bound clean-cohort audit required"
1412
+ },
1413
+ {
1414
+ "id": "T38",
1415
+ "benchmark_id": "squad2",
1416
+ "task": "squadv2",
1417
+ "name": "SQuAD 2.0",
1418
+ "language": "EN",
1419
+ "family": "squad2",
1420
+ "domain": "unanswerable_reading",
1421
+ "metric": "f1,none",
1422
+ "unit": "percent",
1423
+ "higher_is_better": true,
1424
+ "instrument": "lm_eval_0.4.8",
1425
+ "entrypoint_kind": "legacy_task",
1426
+ "split": "validation",
1427
+ "shots": 0,
1428
+ "rationale": "unanswerable reading",
1429
+ "member_count": 1,
1430
+ "source_record": "squad2",
1431
+ "license": {
1432
+ "declared_tags": [
1433
+ "cc-by-sa-4.0"
1434
+ ],
1435
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1436
+ "source_revisions": [
1437
+ {
1438
+ "repo_id": "rajpurkar/squad_v2",
1439
+ "revision": "3ffb306f725f7d2ce8394bc1873b24868140c412",
1440
+ "metadata_source": "https://huggingface.co/api/datasets/squad_v2"
1441
+ }
1442
+ ]
1443
+ },
1444
+ "data_gate": "required_before_evaluation",
1445
+ "notes": [
1446
+ "Do not also count QNLI, XQuAD or SQuAD completion. Preserve the legacy Task and pinned squad_v2 metric, not a fabricated ConfigurableTask replacement."
1447
+ ],
1448
+ "definition": "lm_eval/tasks/squadv2/task.py"
1449
+ },
1450
+ {
1451
+ "id": "T39",
1452
+ "benchmark_id": "drop",
1453
+ "task": "drop",
1454
+ "name": "DROP",
1455
+ "language": "EN",
1456
+ "family": "drop",
1457
+ "domain": "discrete_reading",
1458
+ "metric": "f1,none",
1459
+ "unit": "score",
1460
+ "higher_is_better": true,
1461
+ "instrument": "lm_eval_0.4.8",
1462
+ "entrypoint_kind": "task",
1463
+ "split": "validation",
1464
+ "shots": 0,
1465
+ "rationale": "discrete reading",
1466
+ "member_count": 1,
1467
+ "source_record": "drop",
1468
+ "license": {
1469
+ "declared_tags": [
1470
+ "cc-by-4.0"
1471
+ ],
1472
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1473
+ "source_revisions": [
1474
+ {
1475
+ "repo_id": "EleutherAI/drop",
1476
+ "revision": "619386fc7ffe6dace3cc6d3483c69b164ebf6bf3",
1477
+ "metadata_source": "https://huggingface.co/api/datasets/EleutherAI/drop"
1478
+ }
1479
+ ]
1480
+ },
1481
+ "data_gate": "required_before_evaluation",
1482
+ "notes": [],
1483
+ "definition": "lm_eval/tasks/drop/default.yaml"
1484
+ },
1485
+ {
1486
+ "id": "T40",
1487
+ "benchmark_id": "race",
1488
+ "task": "race",
1489
+ "name": "RACE (high primary)",
1490
+ "language": "EN",
1491
+ "family": "race",
1492
+ "domain": "reading",
1493
+ "metric": "acc,none",
1494
+ "unit": "score",
1495
+ "higher_is_better": true,
1496
+ "instrument": "lm_eval_0.4.8",
1497
+ "entrypoint_kind": "task",
1498
+ "split": "test",
1499
+ "shots": 0,
1500
+ "rationale": "reading",
1501
+ "member_count": 1,
1502
+ "source_record": "race",
1503
+ "license": {
1504
+ "declared_tags": [
1505
+ "other"
1506
+ ],
1507
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1508
+ "source_revisions": [
1509
+ {
1510
+ "repo_id": "EleutherAI/race",
1511
+ "revision": "66ca2e6374282f5e35b11559e87185db911a6900",
1512
+ "metadata_source": "https://huggingface.co/api/datasets/EleutherAI/race"
1513
+ }
1514
+ ]
1515
+ },
1516
+ "data_gate": "required_before_evaluation",
1517
+ "notes": [
1518
+ "Undeclared/umbrella data terms are a gate, not an inferred permissive licence.",
1519
+ "Pinned harness high protocol includes earlier article Q/A context; not a claim of full original RACE middle+high paper parity."
1520
+ ],
1521
+ "definition": "lm_eval/tasks/race/race.yaml"
1522
+ },
1523
+ {
1524
+ "id": "T41",
1525
+ "benchmark_id": "coqa",
1526
+ "task": "coqa",
1527
+ "name": "CoQA",
1528
+ "language": "EN",
1529
+ "family": "coqa",
1530
+ "domain": "conversational_reading",
1531
+ "metric": "f1,none",
1532
+ "unit": "score",
1533
+ "higher_is_better": true,
1534
+ "instrument": "lm_eval_0.4.8",
1535
+ "entrypoint_kind": "task",
1536
+ "split": "validation",
1537
+ "shots": 0,
1538
+ "rationale": "conversational reading",
1539
+ "member_count": 1,
1540
+ "source_record": "coqa",
1541
+ "license": {
1542
+ "declared_tags": [
1543
+ "other"
1544
+ ],
1545
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1546
+ "source_revisions": [
1547
+ {
1548
+ "repo_id": "EleutherAI/coqa",
1549
+ "revision": "82e11af842af6c1396f5e9a5c7de260107c50cf1",
1550
+ "metadata_source": "https://huggingface.co/api/datasets/EleutherAI/coqa"
1551
+ }
1552
+ ]
1553
+ },
1554
+ "data_gate": "required_before_evaluation",
1555
+ "notes": [
1556
+ "Undeclared/umbrella data terms are a gate, not an inferred permissive licence."
1557
+ ],
1558
+ "definition": "lm_eval/tasks/coqa/default.yaml"
1559
+ },
1560
+ {
1561
+ "id": "T42",
1562
+ "benchmark_id": "nq_open",
1563
+ "task": "nq_open",
1564
+ "name": "Natural Questions Open",
1565
+ "language": "EN",
1566
+ "family": "nq_open",
1567
+ "domain": "closed_book_knowledge",
1568
+ "metric": "exact_match,remove_whitespace",
1569
+ "unit": "score",
1570
+ "higher_is_better": true,
1571
+ "instrument": "lm_eval_0.4.8",
1572
+ "entrypoint_kind": "task",
1573
+ "split": "validation",
1574
+ "shots": 0,
1575
+ "rationale": "closed book knowledge",
1576
+ "member_count": 1,
1577
+ "source_record": "nq_open",
1578
+ "license": {
1579
+ "declared_tags": [
1580
+ "cc-by-sa-3.0"
1581
+ ],
1582
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1583
+ "source_revisions": [
1584
+ {
1585
+ "repo_id": "google-research-datasets/nq_open",
1586
+ "revision": "5dd9790a83002ad084ddeb7c420dc716852c6f28",
1587
+ "metadata_source": "https://huggingface.co/api/datasets/nq_open"
1588
+ }
1589
+ ]
1590
+ },
1591
+ "data_gate": "required_before_evaluation",
1592
+ "notes": [],
1593
+ "definition": "lm_eval/tasks/nq_open/nq_open.yaml"
1594
+ },
1595
+ {
1596
+ "id": "T43",
1597
+ "benchmark_id": "triviaqa",
1598
+ "task": "triviaqa",
1599
+ "name": "TriviaQA",
1600
+ "language": "EN",
1601
+ "family": "triviaqa",
1602
+ "domain": "closed_book_knowledge",
1603
+ "metric": "exact_match,remove_whitespace",
1604
+ "unit": "score",
1605
+ "higher_is_better": true,
1606
+ "instrument": "lm_eval_0.4.8",
1607
+ "entrypoint_kind": "task",
1608
+ "split": "validation",
1609
+ "shots": 0,
1610
+ "rationale": "closed book knowledge",
1611
+ "member_count": 1,
1612
+ "source_record": "triviaqa",
1613
+ "license": {
1614
+ "declared_tags": [
1615
+ "unknown"
1616
+ ],
1617
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1618
+ "source_revisions": [
1619
+ {
1620
+ "repo_id": "mandarjoshi/trivia_qa",
1621
+ "revision": "0f7faf33a3908546c6fd5b73a660e0f8ff173c2f",
1622
+ "metadata_source": "https://huggingface.co/api/datasets/mandarjoshi/trivia_qa/revision/0f7faf33a3908546c6fd5b73a660e0f8ff173c2f"
1623
+ }
1624
+ ]
1625
+ },
1626
+ "data_gate": "required_before_evaluation",
1627
+ "notes": [
1628
+ "Undeclared/umbrella data terms are a gate, not an inferred permissive licence."
1629
+ ],
1630
+ "definition": "lm_eval/tasks/triviaqa/default.yaml"
1631
+ },
1632
+ {
1633
+ "id": "T44",
1634
+ "benchmark_id": "pubmedqa",
1635
+ "task": "pubmedqa",
1636
+ "name": "PubMedQA",
1637
+ "language": "EN",
1638
+ "family": "pubmedqa",
1639
+ "domain": "biomedical_reading",
1640
+ "metric": "acc,none",
1641
+ "unit": "score",
1642
+ "higher_is_better": true,
1643
+ "instrument": "lm_eval_0.4.8",
1644
+ "entrypoint_kind": "task",
1645
+ "split": "test",
1646
+ "shots": 0,
1647
+ "rationale": "biomedical reading",
1648
+ "member_count": 1,
1649
+ "source_record": "pubmedqa",
1650
+ "license": {
1651
+ "declared_tags": [
1652
+ "mit"
1653
+ ],
1654
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1655
+ "source_revisions": [
1656
+ {
1657
+ "repo_id": "bigbio/pubmed_qa",
1658
+ "revision": "15578e80ef02c2c9636d33fdd7eb6b05b987ba60",
1659
+ "metadata_source": "https://huggingface.co/api/datasets/bigbio/pubmed_qa"
1660
+ }
1661
+ ]
1662
+ },
1663
+ "data_gate": "required_before_evaluation",
1664
+ "notes": [],
1665
+ "definition": "lm_eval/tasks/pubmedqa/pubmedqa.yaml"
1666
+ },
1667
+ {
1668
+ "id": "T45",
1669
+ "benchmark_id": "medmcqa",
1670
+ "task": "medmcqa",
1671
+ "name": "MedMCQA",
1672
+ "language": "EN",
1673
+ "family": "medmcqa",
1674
+ "domain": "medical_exam_knowledge",
1675
+ "metric": "acc,none",
1676
+ "unit": "score",
1677
+ "higher_is_better": true,
1678
+ "instrument": "lm_eval_0.4.8",
1679
+ "entrypoint_kind": "task",
1680
+ "split": "validation",
1681
+ "shots": 0,
1682
+ "rationale": "medical exam knowledge",
1683
+ "member_count": 1,
1684
+ "source_record": "medmcqa",
1685
+ "license": {
1686
+ "declared_tags": [
1687
+ "apache-2.0"
1688
+ ],
1689
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1690
+ "source_revisions": [
1691
+ {
1692
+ "repo_id": "openlifescienceai/medmcqa",
1693
+ "revision": "91c6572c454088bf71b679ad90aa8dffcd0d5868",
1694
+ "metadata_source": "https://huggingface.co/api/datasets/medmcqa"
1695
+ }
1696
+ ]
1697
+ },
1698
+ "data_gate": "required_before_evaluation",
1699
+ "notes": [],
1700
+ "definition": "lm_eval/tasks/medmcqa/medmcqa.yaml"
1701
+ },
1702
+ {
1703
+ "id": "T46",
1704
+ "benchmark_id": "social_iqa",
1705
+ "task": "social_iqa",
1706
+ "name": "Social IQa",
1707
+ "language": "EN",
1708
+ "family": "social_iqa",
1709
+ "domain": "social_reasoning",
1710
+ "metric": "acc,none",
1711
+ "unit": "score",
1712
+ "higher_is_better": true,
1713
+ "instrument": "lm_eval_0.4.8",
1714
+ "entrypoint_kind": "task",
1715
+ "split": "validation",
1716
+ "shots": 0,
1717
+ "rationale": "social reasoning",
1718
+ "member_count": 1,
1719
+ "source_record": "social_iqa",
1720
+ "license": {
1721
+ "declared_tags": [
1722
+ "unknown"
1723
+ ],
1724
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1725
+ "source_revisions": [
1726
+ {
1727
+ "repo_id": "allenai/social_i_qa",
1728
+ "revision": "8835ceb9141d7896d9d968634a9b21ae440e3ec5",
1729
+ "metadata_source": "https://huggingface.co/api/datasets/allenai/social_i_qa/revision/8835ceb9141d7896d9d968634a9b21ae440e3ec5"
1730
+ }
1731
+ ]
1732
+ },
1733
+ "data_gate": "required_before_evaluation",
1734
+ "notes": [
1735
+ "Undeclared/umbrella data terms are a gate, not an inferred permissive licence."
1736
+ ],
1737
+ "definition": "lm_eval/tasks/siqa/siqa.yaml"
1738
+ },
1739
+ {
1740
+ "id": "T47",
1741
+ "benchmark_id": "bbh",
1742
+ "task": "bbh_fewshot",
1743
+ "name": "BIG-Bench Hard (direct)",
1744
+ "language": "EN",
1745
+ "family": "bbh",
1746
+ "domain": "formal_reasoning",
1747
+ "metric": "exact_match,none",
1748
+ "unit": "score",
1749
+ "higher_is_better": true,
1750
+ "instrument": "lm_eval_0.4.8",
1751
+ "entrypoint_kind": "group",
1752
+ "split": "test",
1753
+ "shots": 3,
1754
+ "rationale": "formal reasoning",
1755
+ "member_count": 27,
1756
+ "source_record": "bbh",
1757
+ "license": {
1758
+ "declared_tags": [
1759
+ "unknown"
1760
+ ],
1761
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1762
+ "source_revisions": [
1763
+ {
1764
+ "repo_id": "lukaemon/bbh",
1765
+ "revision": "982bb89fd79532a8ac676a61fc42eb1aeec63f99",
1766
+ "metadata_source": "https://huggingface.co/api/datasets/lukaemon/bbh/revision/982bb89fd79532a8ac676a61fc42eb1aeec63f99"
1767
+ }
1768
+ ]
1769
+ },
1770
+ "data_gate": "required_before_evaluation",
1771
+ "notes": [
1772
+ "27 subtasks count once; direct source-provided fixed examples, not an additional CoT benchmark.",
1773
+ "Undeclared/umbrella data terms are a gate, not an inferred permissive licence."
1774
+ ],
1775
+ "definition": "lm_eval/tasks/bbh/fewshot/_bbh_fewshot.yaml",
1776
+ "scoring_amendments": [
1777
+ "answer_leading_space_strip"
1778
+ ]
1779
+ },
1780
+ {
1781
+ "id": "T48",
1782
+ "benchmark_id": "paws",
1783
+ "task": "paws_en",
1784
+ "name": "PAWS (English PAWS-X protocol)",
1785
+ "language": "EN",
1786
+ "family": "paws",
1787
+ "domain": "adversarial_paraphrase",
1788
+ "metric": "acc,none",
1789
+ "unit": "score",
1790
+ "higher_is_better": true,
1791
+ "instrument": "lm_eval_0.4.8",
1792
+ "entrypoint_kind": "task",
1793
+ "split": "test",
1794
+ "shots": 0,
1795
+ "rationale": "adversarial paraphrase",
1796
+ "member_count": 1,
1797
+ "source_record": "paws",
1798
+ "license": {
1799
+ "declared_tags": [
1800
+ "other"
1801
+ ],
1802
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1803
+ "source_revisions": [
1804
+ {
1805
+ "repo_id": "google-research-datasets/paws-x",
1806
+ "revision": "4cd8187c404bda33cb1f62b49b001115862acf37",
1807
+ "metadata_source": "https://huggingface.co/api/datasets/paws-x"
1808
+ }
1809
+ ]
1810
+ },
1811
+ "data_gate": "required_before_evaluation",
1812
+ "notes": [
1813
+ "Undeclared/umbrella data terms are a gate, not an inferred permissive licence."
1814
+ ],
1815
+ "definition": "lm_eval/tasks/paws-x/paws_en.yaml"
1816
+ },
1817
+ {
1818
+ "id": "T49",
1819
+ "benchmark_id": "cola",
1820
+ "task": "cola",
1821
+ "name": "CoLA",
1822
+ "language": "EN",
1823
+ "family": "cola",
1824
+ "domain": "acceptability",
1825
+ "metric": "mcc,none",
1826
+ "unit": "score",
1827
+ "higher_is_better": true,
1828
+ "instrument": "lm_eval_0.4.8",
1829
+ "entrypoint_kind": "task",
1830
+ "split": "validation",
1831
+ "shots": 0,
1832
+ "rationale": "acceptability",
1833
+ "member_count": 1,
1834
+ "source_record": "cola",
1835
+ "license": {
1836
+ "declared_tags": [
1837
+ "other"
1838
+ ],
1839
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1840
+ "source_revisions": [
1841
+ {
1842
+ "repo_id": "nyu-mll/glue",
1843
+ "revision": "bcdcba79d07bc864c1c254ccfcedcce55bcc9a8c",
1844
+ "metadata_source": "https://huggingface.co/api/datasets/glue"
1845
+ }
1846
+ ]
1847
+ },
1848
+ "data_gate": "required_before_evaluation",
1849
+ "notes": [
1850
+ "MCC may be negative; do not clamp to accuracy0..1.",
1851
+ "Undeclared/umbrella data terms are a gate, not an inferred permissive licence."
1852
+ ],
1853
+ "definition": "lm_eval/tasks/glue/cola/default.yaml"
1854
+ },
1855
+ {
1856
+ "id": "T50",
1857
+ "benchmark_id": "record",
1858
+ "task": "record",
1859
+ "name": "ReCoRD",
1860
+ "language": "EN",
1861
+ "family": "record",
1862
+ "domain": "entity_reading",
1863
+ "metric": "f1,none",
1864
+ "unit": "score",
1865
+ "higher_is_better": true,
1866
+ "instrument": "lm_eval_0.4.8",
1867
+ "entrypoint_kind": "task",
1868
+ "split": "validation",
1869
+ "shots": 0,
1870
+ "rationale": "entity reading",
1871
+ "member_count": 1,
1872
+ "source_record": "record",
1873
+ "license": {
1874
+ "declared_tags": [
1875
+ "other"
1876
+ ],
1877
+ "basis": "revision-bound dataset-card metadata, not legal or execution approval",
1878
+ "source_revisions": [
1879
+ {
1880
+ "repo_id": "aps/super_glue",
1881
+ "revision": "3de24cf8022e94f4ee4b9d55a6f539891524d646",
1882
+ "metadata_source": "https://huggingface.co/api/datasets/super_glue"
1883
+ }
1884
+ ]
1885
+ },
1886
+ "data_gate": "required_before_evaluation",
1887
+ "notes": [
1888
+ "News passages may overlap broad media sources of CoQA/RACE; the curated entity-cloze questions are a distinct benchmark, not a translation or answer-format variant.",
1889
+ "Undeclared/umbrella data terms are a gate, not an inferred permissive licence."
1890
+ ],
1891
+ "definition": "lm_eval/tasks/super_glue/record/default.yaml"
1892
+ }
1893
+ ],
1894
+ "verification": {
1895
+ "source_identities": 50,
1896
+ "source_members": 204,
1897
+ "repository_revision_metadata": 44,
1898
+ "declaration_files": 218,
1899
+ "execution_ready": false,
1900
+ "model_quality_measured": false
1901
+ }
1902
+ }