2.8 KiB
2.8 KiB
name, description
| name | description |
|---|---|
| llm-bench-harness-fault-census | Diagnose implausible LLM benchmark scores in frank-intelligence-bench: failure-signature census, harness-fault signatures (target NameError, scicode ModuleNotFound, markdown-fence SyntaxError), and official-protocol grading law. |
Use when benchmark scores look impossible (0% across the board, sudden cliffs) in frank-intelligence-bench.
Law
Scores are untrusted until bun run src/cli.ts analyze <run-id> shows a failure-signature census with ZERO harness suspects. Model-side signatures (AssertionError on real values, AxisError, model's own NameErrors) are fine; harness signatures indict the engine.
Census
- Reads
runs/<id>/ledger.jsonlgrade rows, extracts last*Error: name 'X'/No module named 'X'per failing row, aggregates per eval. harnessSuspects()flags:NameError: target(s)(gold target binding missing),ModuleNotFoundError: scicode(pinned pkg absent from sandbox image), >50% shared signature ≥10 samples (systematic fault), >50% gen failures (endpoint fault).
Known harness faults (friction-earned, 2026-10-10)
- SciCode gold values live ONLY in
test_data.h5(authors' Drive folder1W5GZW6_bdiDAiipuFMqdUhvUaHIj6-pR); tests reference baretarget. Fix =stageH5()(sha256-gated upload to Dankclaw, mounted/w-data/test_data.h5:ro) +process_hdf5_to_tuple(step, n_cases, h5py_file=...)per officialeval/scripts/test_generated_code.py. - Sandbox image must contain
h5py+scicode @ git+https://github.com/scicode-bench/SciCode.git@<pin>(+gitin python:3.12-slim for pip-git). Image tag carries the fix epoch:frank-bench-py:3.12-scicode1. - Official extractor
get_function_from_codeexecs raw submission text → markdown fences are guaranteed SyntaxError. Official pipelines store CLEAN code: strip fences (stripFences(): join all ``` blocks) before extraction, for submissions AND prior-step context. - Gold CODE ships only for the dev split (50 steps) on HF
AI-SCODE/SciCode;problems_test.jsonlgold=None; GitHub pinned tree ships no gold jsonl; scicode pip package ships no data. Leaderboard (AA) SciCode uses reference-solution context — compare only against the gold-context slice, never the self-cumulative test split. - Quarantine poisoned ledgers to
.AGENTTRASH/(never blend void rows into reports), resetruns/queue.jsonto{"active": null, "runs": []}(active must benull, not"").
Verification gates
- Real-infra proof:
FIB_INTEGRATION=1 bun test tests/integration.test.ts(gold solution must PASS official protocol;process_hdf5_to_tuple("77.1", 3)→ 3 targets). Integration files mustdelete process.env.DRY_RUNand pointFIB_DATA_CACHEat the real cache (preload isolates it to TMP fixtures). - After a protocol fix, fresh live run must show mixed PASS/FAIL with model-side-only signatures before any score is reported.