You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Extend the Stage 10 event vocabulary with tool.call_start and
tool.call_complete so host-side log consumers can render per-call
input, outcome, and latency without reaching into pipeline state
or re-parsing the Anthropic response.
Additive: existing tool.execute_start / tool.execute_complete
summary events are preserved byte-for-byte; the new on_event
kwarg on ToolExecutor.execute_all is keyword-only and optional
(default None matches 0.22.1 semantics). Third-party ToolExecutor
implementations continue to work unchanged.
Changes:
- interface.py: ToolExecutor.execute_all gains on_event kwarg;
export ToolEventCallback type alias.
- executors.py: SequentialExecutor + ParallelExecutor emit
call_start before dispatch and call_complete after, with
{tool_use_id, name, input} and {tool_use_id, name, is_error,
duration_ms} payloads respectively.
- stage.py: ToolStage wires on_event=state.add_event so the new
events flow through the existing event-listener path.
- 6-test suite validating sequential ordering, parallel pairing
by tool_use_id, is_error propagation, on_event=None no-op, and
nesting inside tool.execute_* brackets.
Full suite: 1015 passed, 18 skipped. Ruff + format clean.
Plan ref: Geny/dev_docs/20260420_3/plan/01_immediate_fixes.md PR II.
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
0 commit comments