Skip to content

fix(telemetry): stop reporting user-stopped tools as tool errors - #1620

Draft
altimate-software-factory[bot] wants to merge 1 commit into
mainfrom
factory/altimate_code/run-40850231542-1
Draft

altimate-software-factory[bot] wants to merge 1 commit into
mainfrom
factory/altimate_code/run-40850231542-1

Conversation

@altimate-software-factory

@altimate-software-factory altimate-software-factory Bot commented Oct 29, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Automated fix proposed by the Altimate software factory; a maintainer reviews every change.

The problem, fix and criteria below are the agent's own account; check them against the diff.

Problem

When the user stops a session while a tool is pending or running, the processor closes the tool part with 'Tool execution aborted' and the prompt loop counted that requested cancellation as a tool failure, sending an error_fingerprint event.

Fix

Tools closed with 'Tool execution aborted' after the session's own abort signal fired are no longer sent as error_fingerprint tool errors, while unrequested aborts and other tool errors are still reported.

Acceptance criteria

  • isRequestedToolAbort returns true only when the session abort signal fired and the error is exactly 'Tool execution aborted'
  • An aborted tool part without a session abort is still recorded as a tool error fingerprint
  • Other tool errors after a session abort are still recorded

Changes

4 files changed, 43 lines added, 1 lines removed.

  • packages/opencode/src/altimate/telemetry/error-detail.ts
  • packages/opencode/src/session/processor.ts
  • packages/opencode/src/session/prompt.ts
  • packages/opencode/test/telemetry/requested-tool-abort.test.ts

New tests

  • packages/opencode/test/telemetry/requested-tool-abort.test.ts

Independent review: accepted, confidence 0.86

Verification

  • Verify job: passed

Summary by cubic

Stops the prompt loop from reporting tools interrupted by the user's own stop action as tool error fingerprints. When the session's abort signal fired and the tool's error is exactly 'Tool execution aborted', the tool part is now skipped; unrequested aborts and other tool errors are still reported as before.

Bug Fixes

  • Extracts the abort message into a shared TOOL_ABORTED_ERROR constant used by the processor and the new isRequestedToolAbort helper.
  • Adds tests for the requested-abort exclusion and for the cases that must still be reported.

Written for commit 05b96b8. Summary will update on new commits.

View guided diff Turn on auto-fix

Factory lane: altimate_code.
Agent-Authored-By: altimate-factory
@altimate-software-factory altimate-software-factory Bot added the agent-authored Opened by the software factory label Oct 29, 2026
@coderabbitai

coderabbitai Bot commented Oct 29, 2026

Copy link
Copy Markdown

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Repository UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: f44010fa-5946-4c0b-b663-33cbc3a25c89

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
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@github-actions

Copy link
Copy Markdown

This PR doesn't fully meet our contributing guidelines and PR template.

What needs to be fixed:

  • PR description is missing required template sections. Please use the PR template.
  • "Cost side effects" section is missing or empty. Describe any model calls, queries or cloud resources whose cost grows with user data, or write "None".

Please edit this PR description to address the above within 2 hours, or it will be automatically closed.

If you believe this was flagged incorrectly, please let a maintainer know.

@github-actions

Copy link
Copy Markdown

Thanks for your contribution!

This PR doesn't have a linked issue. All PRs must reference an existing issue.

Please:

  1. Open an issue describing the bug/feature (if one doesn't exist)
  2. Add Fixes #<number> or Closes #<number> to this PR description

See CONTRIBUTING.md for details.

@github-actions

Copy link
Copy Markdown

👋 This PR was automatically closed by our quality checks.

Common reasons:

  • New GitHub account with limited contribution history
  • PR description doesn't meet our guidelines
  • Contribution appears to be AI-generated without meaningful review

If you believe this was a mistake, please open an issue explaining your intended contribution and a maintainer will help you.

This branch has not been deployed

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants