# Entity weapon dispatcher and unresolved handler inventory RE-597. Reproduce with `python3 scripts/analyze_qvm_server_fire_dispatch.py`; check with `python3 scripts/test_qvm_server_fire_dispatch.py`. The [machine report](qvm-server-fire-dispatch.json) retains source identity and bounded fixtures. The dispatcher reads entity+192, rejects values outside1..27, then jumps through32688+4×id. It is independent of selected packed slot ID. Table groups are retained in the machine report, including direct returns for12/18 and the two-call286473→193620 sequence for11. No opaque handler block is executed merely to make dispatch complete. 124 fixtures vary entity IDs, slot0/15 and packed IDs1/22. All dispatch observations retain game state and stop before the first unresolved handler, or reach actual return289592. The initialized ID27 table word is included explicitly; no missing value is treated as0. Prepared basis and actual muzzle child hand off into dispatch with exact state. Table returns for12/18 do not prove those weapons lack firing behavior elsewhere. Next: recover temporary event construction, selected285840/285971 setup paths and base-dependent288903 gates while keeping allocation/collision/damage/native effects explicit. 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.