# Ready weapon refill cadence and interaction re-entry RE-577. Reproduce with `python3 scripts/analyze_qvm_weapon_ready.py`; check with `python3 scripts/test_qvm_weapon_ready.py`. The [machine report](qvm-weapon-ready.json) retains source identity and bounded fixtures. Ready-entry51207 first handles selectedID27 by replacing magazine bits8..15 with configured capacity&255, preserving ID/mode/reserve. Then nonpositive PS204 plus state32 plus mode flags bit1 resets weapon timer/state to0 and exits. This cadence predicate precedes state1 handling. If state1 is set, it clears before testing button64. With button64, actual49918 interaction runs and observes bit1 already clear; without it no child runs. Both paths exit53046. Otherwise execution reaches51365. The interaction child still enforces its own weapon-state/timer/action guards and supplied native trace behavior; clearing bit1 does not imply successful interaction. 88 finite fixtures use explicitly supplied entry locals and mode flags to isolate these conditions; they do not run earlier prefix/timer guards. ID27 special refill is not generalized to other weapons. Remaining: actual reload completion and ammo-unit accounting, lowering/raising completion, and full parent composition across these boundaries. No original executable/full QVM/native collision/physics/rendering executes. Native responses and legal input domains are supplied or unverified where stated; full runtime/macOS/Linux Rust/Bevy/Solari gameplay remains open.