✅ Nyx cannot ready status expires end of phase
| Category | Regression |
| Status | Passing |
| Test | tests/test_abilities_complex.py::TestNyxFearOfTheDark::test_nyx_cannot_ready_status_expires_end_of_phase |
Regression: Confusion #9 — Fear of the Dark's "cannot be readied" is 1 phase only, not permanent.
Preconditions
- Duban has active "cannot_ready" status from Nyx's Fear of the Dark
Action
- Advance phase counter → expire status effects
result = execute_ability(state, nyx_p, ability_idx=1, targets=[duban_p])
duban_after = next(d for d in result.demons if d.unit_id == "001")
effects_before = get_active_effects_on(result, duban_after)
# Advance phase and expire
result.phase_counter += 1
result2 = expire_status_effects(result)
duban_final = next(d for d in result2.demons if d.unit_id == "001")
effects_after = get_active_effects_on(result2, duban_final)
Expected Postconditions
- Duban has NO "cannot_ready" status after phase expires
Assertions
assert any(e.stat == "cannot_ready" for e in effects_before), "Status must be active"
assert not any(e.stat == "cannot_ready" for e in effects_after), "Status must expire"