Skip to content

Conversation

@edenreich
Copy link
Contributor

Adds activeToolCallID field to ChatEventHandler to track currently executing tools. Prevents status display conflicts when multiple tool calls occur by ensuring only the active tool's status updates. Also resets the tracking field on chat start, error, completion, and cancellation.

Changes:

  • Added activeToolCallID field to track currently executing tool
  • Modified handleToolExecutionProgress to update status only for active tool
  • Ensures proper cleanup by resetting activeToolCallID in multiple handlers
  • Prevents status display issues during concurrent tool executions

Key Benefits:

  1. Status Accuracy: Only shows status updates for the currently executing tool
  2. Concurrency Safety: Prevents status conflicts when multiple tools run in parallel
  3. Clean State Management: Properly resets tracking on chat lifecycle events
  4. Better User Experience: Users see accurate tool execution status without confusion

@edenreich edenreich merged commit 95f71cd into main Dec 11, 2025
5 checks passed
@edenreich edenreich deleted the fix/tool-status-tracking branch December 11, 2025 16:31
ig-semantic-release-bot bot pushed a commit that referenced this pull request Dec 11, 2025
## [0.88.0](v0.87.0...v0.88.0) (2025-12-11)

### 🚀 Features

* Add persistent storage for agent mode conversations ([#333](#333)) ([cba596a](cba596a))
* **agent:** Add session resumption support ([#335](#335)) ([a8942f7](a8942f7))

### 🐛 Bug Fixes

* Improve tool execution status tracking ([#334](#334)) ([95f71cd](95f71cd))
@ig-semantic-release-bot
Copy link

🎉 This PR is included in version 0.88.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants