A love letter to ERPBench and its Anchor method: 300 verifiable, long-horizon agent tasks inside a real ERP, where the instruction, the environment, the solution, and the grader are all compiled from a single CP-SAT spec, so they can never disagree.
Write the workflow once as a parametric constraint program. The solver certifies an optimum per sample; deterministic compilers emit everything else. The instruction, the environment, the solution, and the grader all descend from the same source, so they are aligned by construction.
When a task's parts are written by hand, separately, they drift: unsolvable tasks, broken grading, reward hacks. Anchor's single-source compilation is the fix. Watch the two sides.
Procurement, manufacturing, sales, and finance are not four separate puzzles. They are one coupled system, and the constraint program treats them that way. A stock decision ripples into build schedules, invoices, and cash. Constraints propagate across the whole board at once.
Verifiable. A solver-certified optimum exists for every instance, so correctness is not a judgment call.
Open-ended. Many valid end-states satisfy the constraints, not a single scripted answer.
Consistent, tunable, scalable. One spec means no drift; parameters tune difficulty; mint fresh instances at will.
These tasks run inside Odoo 19, a production-grade open-source ERP, across procurement, manufacturing, sales, and finance. The agent works against the same messy, stateful system a human operator does, with 40+ widgets, stock levels, open orders, and due dates.
That realism is the point. A benchmark in a toy sandbox measures toy competence. A benchmark in a real ERP measures the thing we actually need agents to do.
Because the solver certifies the optimum, a solution can be scored on a continuum: how close to perfect, given the constraints. That is a fundamentally richer signal than binary grading, and it is only possible because the optimum is known.
ERPBench is the business-process analog of AssetOpsBench's industrial domain, and it lands exactly where this body of work needs it.
Anchor formalizes a real business process pulled from an ERP as a constraint model. That is the process-mining substrate the Cooperative AI work proposed: extract organizational ground truth from the systems that already run the business, and turn it into something agents can be measured, and eventually controlled, against.
ERPs and CRMs are the boring tools that already hold the process data. ERPBench treats them as the source of truth, not as plumbing.
Applying constraints across the entire board is what makes extremely long-horizon tasks tractable and gradable. It is the same principle as the validation cascade and SHACL shapes: deterministic, formal constraints do the heavy lifting so that expensive, fallible reasoning only spends its budget where it matters.
Anchor is that idea at benchmark scale, and it is the cleanest demonstration of why constraints, not bigger models, are what push agents past the reliability wall.
| domain | benchmark | what it formalizes |
|---|---|---|
| Industrial asset operations | AssetOpsBench | sensor/FMEA/work-order control loop |
| Business processes (ERP) | ERPBench / Anchor | procurement/manufacturing/sales/finance as one constraint program |