✅ Hebe imperfect ambrosia exhausts target removes damage applies status
| Category | Regression |
| Status | Passing |
| Test | tests/test_abilities_complex.py::TestHebe::test_hebe_imperfect_ambrosia_exhausts_target_removes_damage_applies_status |
Hebe's Imperfect Ambrosia: Exhaust target, remove all damage, apply -5 PWR -3 DEF status (expires end of phase).
Preconditions
-
P1 Main Phase, P1 has 2 AP
-
Lane 0: P1's Hebe (#060), READIED
-
Lane 0: P1's Murmur (#002, HP=9, damage=6), READIED (target)
Action
- Hebe uses Imperfect Ambrosia (0 AP, exhaust) targeting Murmur
result = execute_ability(state, hebe_p, ability_idx=2, targets=[murmur_p])
hebe_after = next(d for d in result.demons if d.unit_id == "060")
murmur_after = next(d for d in result.demons if d.unit_id == "002")
Expected Postconditions
-
Murmur: EXHAUSTED (Ambrosia exhausts the target)
-
Murmur: damage = 0 (all damage removed)
-
Murmur: -5 PWR status, -3 DEF status (expires end of phase)
-
Hebe: EXHAUSTED (ability cost is exhaust)
-
P1 AP: 2 (0 AP cost)
Assertions
assert murmur_after.state == DemonState.EXHAUSTED
assert murmur_after.damage == 0
assert hebe_after.state == DemonState.EXHAUSTED
assert result.players[Side.PLAYER_1].ap == 2