eee9d1441c
An item record's answer ran its callbacks from hand-placed hooks. The equip replays ran in the drain, the quest log's refire at the frame's end, and the tooltip rebuilds at the tick, so a replay's send followed later packets' sends. A refused record also replayed every frame. Reference: `ItemCacheReceive` (`0x55bdb0`) stores the record, then walks one callback list per record, oldest first, filled by each lookup's miss (`0x55ba30`). A refusal calls each callback with found 0 and frees the list (`0x55bea8`, `0x55bed2`). Changed: - `Items` keeps that list, registered at each miss and walked at the answer's handler; - a deferred stretch's calls apply at once and its signals park. The late callbacks stay named in the `Items` row. Tests: an equip replay sends before a later packet's send; two parked swaps keep their order; a refused record sends nothing. Part of #2168. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>