pub fn slot_promotion_needed(fight: &ActiveFight) -> boolExpand description
Slot-model promotion predicate (docs/combat-grid-migration-plan.md §2.2):
the ally formation steps one column forward when the near (melee) column
holds no living enemy while the far column does. An enemy’s effective
column is where it stands or is running to (move_target); units still
parked beyond the far column (waiting out their exit cooldown behind the
screen edge) do not count — stepping toward them would drag the hero to
the spawn edge. Recursion needs no special code: after a step the old far
column IS the near column, and the next death/landing re-checks.