How to gate orientation-preference changes in the nesting heuristic without losing fit behavior or determinism
Use this when a nesting or packing heuristic changes orientation preference, tie-break ordering, or rotation defaults.
Separate the preference case from the necessity case.
Prove the rule on the real service path.
Rotated90, not just a helper-level fit decision.Add a preserved-rotation counterexample.
Re-run the same request twice and compare placement order, coordinates, dimensions, and rotation flags.
Keep one no-fit regression check.
Prefer a narrow priority key over a heuristic rewrite.
Success/Fits without checking Rotated90