Transcript indexing was rewritten to update incrementally instead of recomputing from scratch each time
The internal functions that build lookup maps from a conversation transcript — matching sibling tool uses, tool results, and hook progress counts — were rewritten. They used to be one-shot functions that recomputed everything from scratch each time; they're now stateful classes (an accumulator, an incremental builder, a tool-use-id tracker, and a transcript/progress splitter) that reuse prior work instead.
This is an internal performance change: as a transcript grows, Claude Code no longer has to redo all of the previous indexing work every time it needs updated lookup data.