Some tool calls run on a remote or background machine rather than locally, and Claude Code can lose track of them if that machine stops responding in time. Previously such a call would just be abandoned. Now a new tracker keeps a record of these given-up-on calls and periodically checks back with the remote host to see what became of them.
If the host eventually answers, Claude Code injects a "Correction:" message into the conversation telling the model the real outcome, for example that the call:
- was actually still running on the remote machine
- ended with its state unknown because that machine stopped answering
This is tracked internally through a telemetry event called tengu_remote_tool_targets, which now records stages like given_up, late_outcome, given_up_expired, and correction_emitted.
Without this, the model could keep acting on the wrong assumption that an abandoned remote tool call simply failed or vanished, when it may have finished or kept running elsewhere. Getting a late correction lets the model adjust its understanding of what actually happened instead of working from stale information.