diff --git a/src/lib/twitter-client-tweet-detail.ts b/src/lib/twitter-client-tweet-detail.ts index c9cb016..fa3ba2b 100644 --- a/src/lib/twitter-client-tweet-detail.ts +++ b/src/lib/twitter-client-tweet-detail.ts @@ -216,7 +216,14 @@ export function withTweetDetails 0) { - return { success: false as const, error: data.errors.map((e) => e.message).join(', ') }; + // Check if we still have usable data despite errors. + // Twitter API sometimes returns partial errors (e.g., is_translatable field failures) + // alongside valid thread data. Only fail if no usable data is present. + const hasUsableData = data.data?.threaded_conversation_with_injections_v2?.instructions?.length; + if (!hasUsableData) { + return { success: false as const, error: data.errors.map((e) => e.message).join(', ') }; + } + // Continue with partial data despite non-fatal errors } return { success: true as const, data: data.data ?? {} };