Refactor error handling in chatCore.js and update formatProviderError function to include status code. This improves error message clarity by incorporating HTTP status codes in the formatted output.

This commit is contained in:
decolua
2026-01-05 10:57:45 +07:00
parent e35421beb1
commit f0698eee9d
2 changed files with 7 additions and 4 deletions

View File

@@ -115,7 +115,7 @@ export async function handleChatCore({ body, modelInfo, credentials, log, onCred
streamController.handleError(error);
return createErrorResult(499, "Request aborted");
}
const errMsg = formatProviderError(error, provider, model);
const errMsg = formatProviderError(error, provider, model, 502);
console.log(`${COLORS.red}[ERROR] ${errMsg}${COLORS.reset}`);
return createErrorResult(502, errMsg);
}
@@ -205,7 +205,7 @@ export async function handleChatCore({ body, modelInfo, credentials, log, onCred
// Check provider response - return error info for fallback handling
if (!providerResponse.ok) {
const { statusCode, message } = await parseUpstreamError(providerResponse);
const errMsg = formatProviderError(new Error(message), provider, model);
const errMsg = formatProviderError(new Error(message), provider, model, statusCode);
console.log(`${COLORS.red}[ERROR] ${errMsg}${COLORS.reset}`);
// Log error with full request body for debugging

View File

@@ -126,8 +126,11 @@ export function createErrorResult(statusCode, message) {
* @param {Error} error - Original error
* @param {string} provider - Provider name
* @param {string} model - Model name
* @param {number|string} statusCode - HTTP status code or error code
* @returns {string} Formatted error message
*/
export function formatProviderError(error, provider, model) {
return error.message || "Unknown error";
export function formatProviderError(error, provider, model, statusCode) {
const code = statusCode || error.code || 'FETCH_FAILED';
const message = error.message || "Unknown error";
return `[${code}]: ${message}`;
}