Skip to content

Conversation

@roomote
Copy link
Collaborator

@roomote roomote commented Jun 30, 2025

This PR addresses issue #5189 by adding configurable minimum and maximum retry delay bounds to prevent exponential backoff from reaching excessive wait times that severely impact user productivity.

Key changes:

  • Added minRetryDelaySeconds and maxRetryDelaySeconds settings
  • Updated retry logic to respect min/max bounds (default: 5s min, 100s max)
  • Replaced single retry delay slider with separate min/max controls
  • Added proper validation and UI descriptions
  • Updated all type definitions and message handlers

The exponential delay calculation now applies bounds to ensure delays stay within user-configured limits.

Fixes #5189


Important

Adds configurable min/max retry delay settings to control exponential backoff, updating logic, UI, and type definitions.

  • Behavior:
    • Adds minRetryDelaySeconds and maxRetryDelaySeconds settings to control retry delay bounds in Task.ts.
    • Updates retry logic in Task.ts to respect new min/max bounds (default: 5s min, 100s max).
    • Replaces single retry delay slider with separate min/max controls in AutoApproveSettings.tsx.
    • Adds validation and UI descriptions for new settings in AutoApproveSettings.tsx.
  • UI Components:
    • Updates AutoApproveSettings.tsx to include sliders for minRetryDelaySeconds and maxRetryDelaySeconds.
    • Updates SettingsView.tsx to handle new settings.
  • Message Handling:
    • Adds handling for minRetryDelaySeconds and maxRetryDelaySeconds in webviewMessageHandler.ts.
  • Type Definitions:
    • Updates ExtensionMessage.ts and WebviewMessage.ts to include new settings.
    • Updates ExtensionStateContext.tsx to manage new settings.
  • Localization:
    • Adds new strings for retry delay settings in settings.json.

This description was created by Ellipsis for a3c85b5. You can customize this summary. It will automatically update as commits are pushed.

roomote added 3 commits June 30, 2025 16:56
- Add minRetryDelaySeconds and maxRetryDelaySeconds settings to global schema
- Replace single retry delay slider with separate min/max controls in UI
- Implement bounded exponential backoff in Task.ts retry logic
- Add translation keys for new settings labels and descriptions
- Update all type definitions and message handlers
- Fix test file to include new required properties

Fixes #5189: Prevents excessive retry delays (20+ minutes) by allowing users to configure minimum (1-60s) and maximum (10-300s) delay bounds for exponential backoff retry behavior.
- Add minRetryDelaySeconds and maxRetryDelaySeconds settings (default 5s-100s)
- Replace single retry delay slider with separate min/max controls
- Apply bounds to exponential backoff calculation in Task.ts
- Add translation keys for new UI labels
- Update all type definitions and message handlers
- Fix TypeScript compilation errors in test files

Fixes #5189
- Set default values in Task.ts parameter destructuring (5s min, 100s max)
- Add fallback defaults in ClineProvider.ts getStateToPostToWebview method
- Ensures consistent behavior when settings are undefined
@roomote roomote requested review from cte, jr and mrubens as code owners June 30, 2025 17:04
@dosubot dosubot bot added the size:L This PR changes 100-499 lines, ignoring generated files. label Jun 30, 2025
@delve-auditor
Copy link

delve-auditor bot commented Jun 30, 2025

No security or compliance issues detected. Reviewed everything up to a3c85b5.

Security Overview
  • 🔎 Scanned files: 12 changed file(s)
Detected Code Changes

The diff is too large to display a summary of code changes.

Reply to this PR with @delve-auditor followed by a description of what change you want and we'll auto-submit a change to this PR to implement it.

@hannesrudolph hannesrudolph added the Issue/PR - Triage New issue. Needs quick review to confirm validity and assign labels. label Jun 30, 2025
@github-project-automation github-project-automation bot moved this from Triage to Done in Roo Code Roadmap Jul 7, 2025
@github-project-automation github-project-automation bot moved this from New to Done in Roo Code Roadmap Jul 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Issue/PR - Triage New issue. Needs quick review to confirm validity and assign labels. size:L This PR changes 100-499 lines, ignoring generated files.

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

Exponential backoff retry delays can reach excessive wait times (20+ minutes) without user control

3 participants