fix(sweetistics): improve media upload errors

This commit is contained in:
Peter Steinberger
2025-12-26 13:10:54 +01:00
parent 8257d52532
commit 4730267c2a
2 changed files with 10 additions and 1 deletions
+6
View File
@@ -277,6 +277,9 @@ program
process.exit(1);
} catch (error) {
console.error(`❌ Sweetistics error: ${error instanceof Error ? error.message : String(error)}`);
if (error instanceof Error && /(^|\\b)INTERNAL_ERROR(\\b|$)|An unexpected error occurred/.test(error.message)) {
console.error('ℹ️ Hint: Sweetistics media upload likely needs Twitter OAuth with `media.write` scope.');
}
process.exit(1);
}
}
@@ -401,6 +404,9 @@ program
process.exit(1);
} catch (error) {
console.error(`❌ Sweetistics error: ${error instanceof Error ? error.message : String(error)}`);
if (error instanceof Error && /(^|\\b)INTERNAL_ERROR(\\b|$)|An unexpected error occurred/.test(error.message)) {
console.error('ℹ️ Hint: Sweetistics media upload likely needs Twitter OAuth with `media.write` scope.');
}
process.exit(1);
}
}
+4 -1
View File
@@ -498,9 +498,12 @@ export class SweetisticsClient {
: undefined;
const errorMessage =
typeof (body as { error?: unknown })?.error === 'string' ? (body as { error: string }).error : undefined;
const errorCode =
typeof (body as { code?: unknown })?.code === 'string' ? (body as { code: string }).code : undefined;
if (!response.ok || !mediaId) {
return { success: false, error: errorMessage ?? `HTTP ${response.status}` };
const details = [errorCode, errorMessage].filter(Boolean).join(': ');
return { success: false, error: details.length > 0 ? details : `HTTP ${response.status}` };
}
return { success: true, mediaId };
} catch (error) {