✅ Focus status expires end of main phase
| Category | Regression |
| Status | Passing |
| Test | tests/test_abilities_complex.py::TestFocalorFocus::test_focus_status_expires_end_of_main_phase |
Regression: Confusion #9 — status effects are temporary, expire end of main phase.
Preconditions
- P1 Main Phase, Focalor has +3 PWR status from Focus
Action
- Advance phase_counter and call expire_status_effects
state = handler(state, focalor_p, [], {}, None)
# Advance and expire
state.phase_counter += 1
state = expire_status_effects(state)
focalor_after = next(d for d in state.demons if d.unit_id == "069")
Expected Postconditions
-
No active +3 PWR status remains on Focalor
-
Focalor effective PWR returns to base 2
Assertions
assert get_effective_pwr(state, focalor_after) == 2, (
f"Focalor PWR must return to base 2 after status expires. Got {get_effective_pwr(state, focalor_after)}."
)