drain Invalidations
Removes and returns queued state invalidations after ancestor compaction.
Draining does not make scopes clean; the next root composition consumes their dirty state.
Return
invalidated scopes in effective insertion order, excluding covered descendants