Skip to content

fix(channels): make tool feedback edit throttle configurable#2789

Open
bogdanovich wants to merge 2 commits intosipeed:mainfrom
bogdanovich:fix/tool-feedback-throttle-config
Open

fix(channels): make tool feedback edit throttle configurable#2789
bogdanovich wants to merge 2 commits intosipeed:mainfrom
bogdanovich:fix/tool-feedback-throttle-config

Conversation

@bogdanovich
Copy link
Copy Markdown

Summary

Make editable tool feedback progress throttling configurable instead of hard-coding a new behavior into all channels.

This adds two agents.defaults.tool_feedback settings:

  • animation_interval_secs controls the progress animation edit interval. It defaults to 3, preserving the existing animation cadence.
  • edit_min_interval_seconds controls the minimum interval between edits of the same tracked progress message. It defaults to 0, preserving legacy behavior with no edit throttle.

When edit_min_interval_seconds is enabled, the animator coalesces rapid updates into its tracked state instead of immediately editing the same message again. It also honors Telegram-style retry after N / 429 rate-limit errors by temporarily pausing edits for that tracked message.

Why

Some chat platforms share message send/edit limits. Long-running tool feedback, especially with concurrent turns or subagents, can otherwise hit platform rate limits and delay or orphan progress cleanup. Making the throttle configurable lets deployments opt in without changing default behavior for existing channels.

Backward compatibility

Defaults preserve existing behavior:

{
  "agents": {
    "defaults": {
      "tool_feedback": {
        "animation_interval_secs": 3,
        "edit_min_interval_seconds": 0
      }
    }
  }
}

Testing

  • go test ./pkg/channels
  • go test ./pkg/channels/telegram ./pkg/channels/discord ./pkg/channels/pico
  • go test ./pkg/channels/feishu
  • go test ./pkg/config
  • go test ./pkg/agent
  • make build

Note: direct go test ./pkg/channels/matrix cannot run in this environment because the system olm/olm.h header is unavailable, but make build succeeds.

@bogdanovich bogdanovich force-pushed the fix/tool-feedback-throttle-config branch from 743e4d6 to c8611f0 Compare May 8, 2026 06:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant