Skip to content

Preserve original error in handleFailure for monitoring and logging#98

Merged
s8sg merged 2 commits intocode_cleanupfrom
copilot/sub-pr-97
Feb 18, 2026
Merged

Preserve original error in handleFailure for monitoring and logging#98
s8sg merged 2 commits intocode_cleanupfrom
copilot/sub-pr-97

Conversation

Copy link
Copy Markdown

Copilot AI commented Feb 18, 2026

The handleFailure function was overwriting the original error with the failure handler's return value, causing monitoring and logging to report incorrect errors when handlers returned nil or different errors.

Changes

  • Preserve original error in originalErr variable before calling failure handler
  • Capture failure handler's error return in separate handlerErr variable
  • Use originalErr for ReportRequestFailure and final failure log
  • Log failure handler errors separately when present

Example

Before:

if fexec.flow.FailureHandler != nil {
    data, err = fexec.flow.FailureHandler(err)  // Overwrites original err
}
// Later: monitoring and logging use potentially modified err
fexec.eventHandler.ReportRequestFailure(fexec.id, err)

After:

originalErr := err
if fexec.flow.FailureHandler != nil {
    var handlerErr error
    data, handlerErr = fexec.flow.FailureHandler(originalErr)
    if handlerErr != nil {
        fexec.log("[request `%s`] failure handler returned error: %v\n", fexec.id, handlerErr)
    }
}
// Monitoring and logging use original error
fexec.eventHandler.ReportRequestFailure(fexec.id, originalErr)

💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Co-authored-by: s8sg <7374058+s8sg@users.noreply.github.com>
Copilot AI changed the title [WIP] Update code cleanup and error handling improvements Preserve original error in handleFailure for monitoring and logging Feb 18, 2026
Copilot AI requested a review from s8sg February 18, 2026 02:14
@s8sg s8sg marked this pull request as ready for review February 18, 2026 02:34
@s8sg s8sg merged commit 5146465 into code_cleanup Feb 18, 2026
1 check passed
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.

2 participants