Self-contained, not a wrapper
A capability belongs in the public model, the solver portfolio, the validator and the conformance fixtures together. If an engine cannot honour a rule, it rejects it explicitly instead of silently ignoring it.
The goal is not to be another packer with a different heuristic. It is to make the same capabilities the mature engines have expressible in one contract, and then to prove them harder than anyone else does.
A capability belongs in the public model, the solver portfolio, the validator and the conformance fixtures together. If an engine cannot honour a rule, it rejects it explicitly instead of silently ignoring it.
Per-axis rotation control, stack density checked at every level, contact graphs, centre of mass, axle load and loading order are all in the public contract, so nobody has to maintain a private fork to express them.
Four runtimes, one corpus, and a validator that shares no code with any solver. No audited competitor validates its own output this way.
One capability gap, uneven quality between the reference engines and the native ones, and no measured speed comparison yet. All three are named in the docs and owned by work items.
The schema, the fixtures, the validator and the release gate are in the open. Reading them is the fastest way to decide whether this project's claims are worth anything.
Open the repository ↗