CONSTRAINT / ROTATIONS

Rotations

Orientation is restricted per axis, not as a single on/off switch, and 'this side up' is expressible on the item that needs it.

EXPRESSED WITHallowed_rotations · keep_upright

Why it exists

Real goods have orientations they must not take. An engine that silently tries all six orientations answers a different question from the one that was asked.

What a useful refusal looks like

The engine returns the rule that refused, the item it refused, and the measured value against the configured threshold. It also states how strongly that is backed: proven, observed, inferred, or unknown because a search limit was reached first.

See the fixtures for this rule ↗