From 2dab3f2afee9c20892ce738654cc68178c1e0e3c Mon Sep 17 00:00:00 2001 From: Ashwin Bhat Date: Mon, 16 Jun 2025 16:52:07 -0700 Subject: [PATCH] =?UTF-8?q?Revert=20"feat:=20enhance=20error=20reporting?= =?UTF-8?q?=20with=20specific=20error=20types=20from=20Claude=20e=E2=80=A6?= =?UTF-8?q?"=20(#179)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 1b94b9e5a85d066d540e74f2b5f616919a874336. --- src/entrypoints/update-comment-link.ts | 36 +++++++------------------- src/github/operations/comment-logic.ts | 19 ++------------ 2 files changed, 11 insertions(+), 44 deletions(-) diff --git a/src/entrypoints/update-comment-link.ts b/src/entrypoints/update-comment-link.ts index c29edf4..9090373 100644 --- a/src/entrypoints/update-comment-link.ts +++ b/src/entrypoints/update-comment-link.ts @@ -147,7 +147,6 @@ async function run() { } | null = null; let actionFailed = false; let errorDetails: string | undefined; - let errorSubtype: string | undefined; // First check if prepare step failed const prepareSuccess = process.env.PREPARE_SUCCESS !== "false"; @@ -167,40 +166,23 @@ async function run() { // Output file is an array, get the last element which contains execution details if (Array.isArray(outputData) && outputData.length > 0) { const lastElement = outputData[outputData.length - 1]; - if (lastElement.type === "result") { - // Extract execution details + if ( + lastElement.type === "result" && + "cost_usd" in lastElement && + "duration_ms" in lastElement + ) { executionDetails = { - cost_usd: lastElement.total_cost_usd, + cost_usd: lastElement.cost_usd, duration_ms: lastElement.duration_ms, duration_api_ms: lastElement.duration_api_ms, }; - - // Check if this is an error result based on subtype - switch (lastElement.subtype) { - case "error_during_execution": - errorSubtype = "Error during execution"; - // Override the actionFailed flag based on the result - actionFailed = true; - break; - case "error_max_turns": - errorSubtype = "Maximum turns exceeded"; - actionFailed = true; - break; - } } } } - // Check if the Claude action failed (only if not already determined from result) - if (!actionFailed) { - const claudeSuccess = process.env.CLAUDE_SUCCESS !== "false"; - actionFailed = !claudeSuccess; - } - - // Use errorSubtype as errorDetails if no other error details are available - if (actionFailed && !errorDetails && errorSubtype) { - errorDetails = errorSubtype; - } + // Check if the Claude action failed + const claudeSuccess = process.env.CLAUDE_SUCCESS !== "false"; + actionFailed = !claudeSuccess; } catch (error) { console.error("Error reading output file:", error); // If we can't read the file, check for any failure markers diff --git a/src/github/operations/comment-logic.ts b/src/github/operations/comment-logic.ts index 95a612e..6a4551a 100644 --- a/src/github/operations/comment-logic.ts +++ b/src/github/operations/comment-logic.ts @@ -114,16 +114,6 @@ export function updateCommentBody(input: CommentUpdateInput): string { if (actionFailed) { header = "**Claude encountered an error"; - - // Add error type to header if available - if (errorDetails) { - if (errorDetails === "Error during execution") { - header = "**Claude encountered an error during execution"; - } else if (errorDetails === "Maximum turns exceeded") { - header = "**Claude exceeded the maximum number of turns"; - } - } - if (durationStr) { header += ` after ${durationStr}`; } @@ -191,13 +181,8 @@ export function updateCommentBody(input: CommentUpdateInput): string { // Build the new body with blank line between header and separator let newBody = `${header}${links}`; - // Add error details if available (but not if it's just the error type we already showed in header) - if ( - actionFailed && - errorDetails && - errorDetails !== "Error during execution" && - errorDetails !== "Maximum turns exceeded" - ) { + // Add error details if available + if (actionFailed && errorDetails) { newBody += `\n\n\`\`\`\n${errorDetails}\n\`\`\``; }