nx_paperbench.nx
buildroot/runtime/nx_paperbench.nx
about
nx_paperbench.nx -- SOVEREIGN deterministic MANUSCRIPT GRADER (AS-0: the ruler).
WHY THIS EXISTS FIRST: the lane already emits papers (nx_paper_gen) and indexes them
(nx_papers_index), but NOTHING measures whether a manuscript meets a real publication
standard. Measurement-first doctrine: no rung may claim "arXiv-level" until a ruler
exists that could have said NO. This organ is that ruler.
GROUNDING (both machine-fetched over sovereign TLS 2026-07-25, not asserted from memory):
REFORMS -- Kapoor et al., arXiv:2308.07832v2, "Reporting Standards For Machine Learning
Based Science": 32 questions, consensus of 19 researchers across CS/stats/social/biomed.
Explicitly intended "for referees when reviewing papers".
Pineau et al., arXiv:2003.12206v4 (JMLR), "Improving Reproducibility in Machine Learning
Research": the NeurIPS 2019 reproducibility program + the ML Reproducibility Checklist,
which is the PROVENANCE of the modern NeurIPS paper checklist.
Shape of the composite borrows DRBench's central finding (arXiv:2510.00172): a metric is
only useful if a cheap axis CANNOT mask a zero on the binding axis.
HONEST: neurips.cc itself REJECTED our TLS handshake (verdict=5), so the NeurIPS checklist
was NOT machine-fetched; we cite its peer-reviewed provenance (Pineau) instead of
claiming to have read the conference page. Refuse > fabricate.
THE SEVEN AXES (caller supplies each as permille; canonical order):
0 claim_evidence every quantitative claim traces to a re-runnable source [INTEGRITY]
1 reproducibility code + data + exact command + determinism/seed + environment
2 controls negative controls / falsification tests that COULD have failed [INTEGRITY]
3 limitations named scope + what this is NOT
4 baseline comparison against an independent external reference
5 data_provenance source named, train/test separation stated, leakage addressed
6 stat_honesty n reported, no n=1 headline, uncertainty stated [INTEGRITY]
Integer, deterministic, bit-reproducible. Imports ONLY nx_syscalls = drift-immune.
No hw writes (Rule 26). Thresholds are PARAMETERS, never baked (Rule 11).
module: nishi-core.research.paperbench
depends: nx_syscalls.nx
genealogy_id: reforms_2308_07832 + pineau_2003_12206 + drbench_nongameable_composite
dependencies 1 imports · 3 importers
imports: nx_syscalls.nx
imported by: nx_paper_forge.nxnx_paperbench_cli.nxnx_paperbench_gate.nx
structs
| none |
consts
| none |
functions
| 43 | func pb_axis(present: i64, total: i64) -> i64 |
| 52 | func pb_weighted(axes: *i64, weights: *i64, n: i64) -> i64 |
| 66 | func pb_min_masked(axes: *i64, mask: *i64, n: i64) -> i64 |
| 82 | func pb_weakest(axes: *i64, n: i64) -> i64 |
| 99 | func pb_composite(axes: *i64, weights: *i64, mask: *i64, n: i64, slack: i64) -> i64 |
| 118 | func pb_tier(composite: i64, bars: *i64, nbars: i64) -> i64 |
| 129 | func pb_publishable(axes: *i64, weights: *i64, mask: *i64, n: i64, slack: i64, bar: i64) -> i64 |
| 140 | func pb_find(hay: *u8, n: i64, pat: *u8) -> i64 |
| 164 | func pb_is_scan(v: *u8) -> i64 |
| 177 | func pb_offset(hay: *u8, n: i64, pat: *u8) -> i64 |
| 200 | func pb_claims(buf: *u8, n: i64) -> i64 |
| 234 | func pb_digit_runs(buf: *u8, n: i64) -> i64 called by 1: main |