ESAC

EcoWestern Short and Cheap Benchmark

ESAC-GI

General Intelligence. 42 items, 75 points, eight categories. Released as v1.0.0.

ESAC-GI is the first suite in the ESAC program and the only one implemented. It measures general cognitive capability in the compressed-difficulty style: every prompt is short, every answer is short, and none of the items can be answered by recalling the shape of the question.

What it measures

Category Items Points Grading What the items are
Logic and deduction 5 10 deterministic Constraint satisfaction, knight and knave reasoning, formal entailment, transitive ordering, joint constraint solving.
Math reasoning 5 10 deterministic Simultaneous congruences, modular exponentiation, divisor enumeration, two-phase rates, and a small integer program where the greedy answer is wrong.
Factual knowledge 10 10 deterministic Uncontested facts across domains, graded so that formatting never decides the point.
Reading comprehension 5 10 deterministic Short passages, with the work in locating and combining the relevant material rather than in the reading.
Abstraction and pattern recognition 5 10 deterministic Grid rules, analogies, second-order sequences, odd-one-out by property, and two-axis matrices.
Instruction-following 5 10 deterministic Joint constraints with partial credit per constraint, including prohibitions, where the tested behaviour is omission.
Writing quality 2 10 judge Register control under a hard constraint, and committed argumentation that concedes a real objection.
Response-depth calibration 5 5 judge Whether the model infers how much answer a situation needs, in both directions, with no prompt saying so.

Sixty of the 75 points are graded programmatically. The remaining 15, one rubric-graded category and one of two writing tasks, are scored by the judge pinned for the release, xiaomi/mimo-v2.6-pro, an open-weight model.

How it is scored

How it resists contamination

The public pool is disclosed on purpose and carries a canary string so that leakage into training data can be detected. What protects the measurement is that items are generators: the same item is a different problem under a different seed.

The public and held-out pools are the same 42 templates instantiated under different dataset seeds. The public seed ships with the repository. The held-out seed is generated locally by the evaluator and never committed, and a held-out run refuses to start rather than inventing one, because a run nobody can repeat is worth nothing.

The consequence worth stating plainly: two held-out runs are item-identical only when they share a seed. Publish the fingerprint recorded in the report, not the seed, and treat comparison across different seeds as distributional rather than exact.

What it does not claim

Running it

Node 22.6 or newer, no runtime dependencies, no build step:

git clone https://github.com/EcoWestern/ESAC-GI
cd ESAC-GI
npm install
npm run auto

npm run auto asks for the model, the judge, the pool, and the categories, then runs the suite and reports each section as it completes. The client is OpenAI-compatible, so any chat-completions endpoint works, and an aggregator such as OpenRouter is the recommended route because it serves the open-weight judge and the model under test behind one key.