Skip to content

fix(agents): retry transient executable conflicts - #29

Merged
tee8z merged 1 commit into
mainfrom
fix/buzz-provider-spawn-ci
Oct 21, 2026
Merged

tee8z merged 1 commit into
mainfrom
fix/buzz-provider-spawn-ci

Conversation

@tee8z

@tee8z tee8z commented Oct 20, 2026 •

Copy link
Copy Markdown
Collaborator

Provider launches and adapter version probes could fail when a concurrent fork briefly kept the executable open for writing. Share a bounded retry for ExecutableFileBusy: ten retries at 10 ms intervals. Other launch errors propagate immediately, and version probes include retries within their existing five-second deadline.

Validation: the new regression test reproduced the missing-version result before the fix. After the fix, eight version-probe tests, three provider-launch tests, and 40 repeated writer-conflict cases passed. The full native suite passed 3,453 tests with 19 ignored. Native Clippy, Rust formatting, and the file-size checks passed.

Stack: layer 1 of 24. Base: main. Next: #24. One signed commit per layer. Fresh GitHub CI is running across the stack. No human runtime acceptance is claimed.

Summary by CodeRabbit

  • Bug Fixes

    • Improved provider startup and version detection reliability by retrying launches when executables are temporarily busy.
    • Preserved immediate failure reporting for missing providers and persistent launch conflicts.
    • Ensured provider detection respects its full timeout, including process startup time.
  • Tests

    • Added coverage for transient and persistent executable conflicts, missing providers, and provider version detection.

@coderabbitai

coderabbitai Bot commented Oct 20, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Important

Review skipped

Review was skipped as selected files did not have any reviewable changes.

⚙️ Run configuration
  • Configuration used: Repository: voltagecloud/buzz/.coderabbit.yaml
  • Review profile: CHILL
  • Plan: Essentials
  • Run ID: b6dc1630-ae8c-41e4-8464-b02fa0ee25cb
📥 Commits

Reviewing files that changed from the base of the PR and between 67e4d4c and 67e4d4c.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: Repository: voltagecloud/buzz/.coderabbit.yaml
  • Review profile: CHILL
  • Plan: Essentials
  • Run ID: 28aec598-a367-40ff-a187-cf608938cdf6
📥 Commits

Reviewing files that changed from the base of the PR and between 90fb9dd and 67e4d4c.

📒 Files selected for processing: 6
  • desktop/src-tauri/src/managed_agents/backend.rs
  • desktop/src-tauri/src/managed_agents/backend_tests.rs
  • desktop/src-tauri/src/managed_agents/discovery.rs
  • desktop/src-tauri/src/managed_agents/discovery/tests/codex_version.rs
  • desktop/src-tauri/src/managed_agents/mod.rs
  • desktop/src-tauri/src/managed_agents/process_spawn.rs

Included review availability: This review used your included allowance. 0 included reviews remain after this review. Your included PR review attempts over the past 7 days set your current allowance at 3 reviews per hour.

📝 Walkthrough

Provider launch paths now configure stdio before using a shared spawn helper. The helper retries ExecutableFileBusy errors up to ten times with 10 ms delays. Provider and version-probe tests cover transient recovery, persistent conflicts, and preserved launch errors.

Changes: Provider process launch

Layer / File(s) Summary
Retry busy provider launches
desktop/src-tauri/src/managed_agents/backend.rs, desktop/src-tauri/src/managed_agents/process_spawn.rs, desktop/src-tauri/src/managed_agents/mod.rs, desktop/src-tauri/src/managed_agents/backend_tests.rs
invoke_provider configures stdio before calling the shared spawn helper. The helper retries ExecutableFileBusy errors and performs a final spawn attempt after ten retries. Tests cover transient recovery, persistent conflicts, and preservation of missing-provider NotFound errors.
Retry version-probe launches
desktop/src-tauri/src/managed_agents/discovery.rs, desktop/src-tauri/src/managed_agents/discovery/tests/codex_version.rs
The Codex version probe uses the shared spawn helper within its five-second deadline. Tests cover transient executable-busy recovery and persistent writer conflicts.

Priority: ⬆️ High

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Bug fix · Unblocks: 22 PRs

Suggested reviewers: wpfleger96, tlongwell-block

Merge Risk: ⚪ Minimal · up to 67e4d

This change retries transient executable-busy launch failures for provider launches and version probes, with bounded retries and unchanged handling of other errors. No actionable merge-blocking risk is evident.

Pre-merge checks: Passed 5
Check name Status Explanation
Description Check Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check Passed The title clearly and concisely describes the main change: retrying transient executable conflicts during agent process launches and version probes.
Docstring Coverage Passed Docstring coverage is 81.82% which is sufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 11 functions across 6 files.
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@tee8z
tee8z force-pushed the fix/buzz-provider-spawn-ci branch from 411e778 to 88f01fe Compare October 20, 2026 17:22
@tee8z
tee8z added this pull request to stack #30 October 20, 2026 17:22
@tee8z

tee8z commented Oct 20, 2026

Copy link
Copy Markdown
Collaborator Author

@coderabbitai full review

@coderabbitai

coderabbitai Bot commented Oct 20, 2026 •

Copy link
Copy Markdown
✅ Action performed

Full review finished.

@tee8z

tee8z commented Oct 20, 2026

Copy link
Copy Markdown
Collaborator Author

Agent review of 88f01fe57837a194ccb17c7e797b80c61426be8c against #27.

Minimalism: 9/10. Elegance: 9/10. Correctness: 9/10. No blocking findings in the current diff. Only executable-busy spawn failures retry, for ten 10-millisecond waits. No provider request is written before successful spawn; protocol negotiation and deployment retain the same staged bytes. Persistent write conflicts and unrelated launch errors still fail.

Validation: the transient-writer regression failed against the original spawn path; all three added cases pass. The integrated desktop native suite passed 3,445 tests. Thirty parallel runs of the 13 provider tests passed (390 executions), including protocol mismatch and staged-source replacement checks. Native Clippy with warnings denied passed. The complete local CI command has not passed in one run; unrelated mobile timeout cases passed in isolation and the terminal unit suite passed in an isolated Linux container with standard tools. Human workflow confirmation remains pending under AGENTS.md.

This was referenced Oct 20, 2026
@tee8z
tee8z force-pushed the fix/buzz-provider-spawn-ci branch from 88f01fe to aebb2ee Compare October 20, 2026 17:51
@tee8z

tee8z commented Oct 21, 2026

Copy link
Copy Markdown
Collaborator Author

@coderabbitai full review

@coderabbitai

coderabbitai Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
✅ Action performed

Full review finished.

@tee8z
tee8z marked this pull request as ready for review October 21, 2026 01:19
@tee8z
tee8z requested a review from thebrandonlucas October 21, 2026 01:19
@tee8z

tee8z commented Oct 21, 2026

Copy link
Copy Markdown
Collaborator Author

@thebrandonlucas please review this PR, layer 1 of 23 in the remote-agent stack. Assigned to @tee8z.

CodeRabbit's review has no outstanding actionable findings at 67e4d4c7a838d5d02617c1957b7dd681055050a5. CI and runtime acceptance remain separate checks.

@tee8z
tee8z removed this pull request from stack #32 October 21, 2026 12:21
@tee8z
tee8z added this pull request to stack #34 October 21, 2026 12:21
@tee8z

tee8z commented Oct 21, 2026

Copy link
Copy Markdown
Collaborator Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
⚠️ Action not completed

Review rate limited.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@tee8z

tee8z commented Oct 21, 2026

Copy link
Copy Markdown
Collaborator Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
⚠️ Action not completed

Review rate limited.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@tee8z tee8z added the human review wanted Request human review label Oct 21, 2026
@tee8z

tee8z commented Oct 21, 2026

Copy link
Copy Markdown
Collaborator Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
⚠️ Action not completed

No files to review.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@tee8z

tee8z commented Oct 21, 2026

Copy link
Copy Markdown
Collaborator Author

CI note: this stack still hits flaky tests in code it does not change. When one of these fails here, the failure is unrelated to this PR, and a re-run usually passes.

Summary jobs from cancelled runs also stay red until the replacement run finishes. A failure in this PR's own code gets a fix in this PR.

@thebrandonlucas it's fine to approve without CI fully passing.

@tee8z tee8z added human review wanted Request human review and removed human review wanted Request human review labels Oct 21, 2026
@tee8z

tee8z commented Oct 21, 2026

Copy link
Copy Markdown
Collaborator Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
⚠️ Action not completed

Already reviewed the last commit. Use @coderabbitai full review to rerun a review of the entire changeset.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@tee8z
tee8z merged commit b2e0f23 into main Oct 21, 2026
78 checks passed
@tee8z
tee8z deleted the fix/buzz-provider-spawn-ci branch October 21, 2026 13:27
@tee8z

tee8z commented Oct 21, 2026

Copy link
Copy Markdown
Collaborator Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
⚠️ Action not completed

Pull request is closed.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@tee8z

tee8z commented Oct 21, 2026

Copy link
Copy Markdown
Collaborator Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
⚠️ Action not completed

Pull request is closed.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@tee8z

tee8z commented Oct 21, 2026

Copy link
Copy Markdown
Collaborator Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
⚠️ Action not completed

Pull request is closed.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@tee8z

tee8z commented Oct 21, 2026

Copy link
Copy Markdown
Collaborator Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
⚠️ Action not completed

Pull request is closed.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

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

Labels

human review wanted Request human review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants