When level_fix alone displaces a required room (e.g. t3) it triggers 5
oracle fails for the missing room — far worse than the starting 2 fails,
so lex always rejects it. level_compound_fix atomically: moves the
constrained room to its required floor AND re-inserts the displaced room
by splitting the sibling of the largest C leaf on that floor. The C
sibling is guaranteed adjacent to C (shared parent split), so the
displaced room keeps its required C-adjacency.
On programme-house this jumps the warmstart from 2 fails (l1 wrong
level + t3 size) to 1 fail (staircase volume), which lex accepts as an
improvement and provides a new base for further mutation.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>