Skip to content

Conversation

@github-actions
Copy link
Contributor

@github-actions github-actions bot commented Nov 28, 2025

This PR was automatically generated from issue #334

✅ Generation Complete

Final Status: 0/30 presets successfully generated

⚠️ 30 preset(s) failed - see details below

❌ Failed Presets (30)

  1. Preset 1 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Create a halftone dot reveal transition preset where the outgoing YouTube image dissolves into an expanding halftone dot pattern that grows from small scattered dots to large overlapping circles, while the incoming image emerges through the gaps as dots shrink and converge into a crisp newsprint-style grid. The transition should feel like watching a photo being printed on a vintage newspaper press. Use a 1.2 second overlap period where the halftone pattern density peaks at 50% through the transition. The outgoing image should have dots expand from 2px to 40px diameter while fading to 60% opacity, and the incoming image dots should contract from 40px to invisible as the clean image emerges. Apply a slight sepia tint during the transition peak to enhance the newsprint aesthetic.

Technical Specifications:
BaseLayout container with 'absolute inset-0 bg-neutral-100' and fitDurationTo='media'. Duration calculation: media1.duration + media2.duration - 1.2s overlap. Outgoing ImageAtom: startAt=0, endAt=media1.duration, positioned 'absolute inset-0', z-index-10. Incoming ImageAtom: startAt=media1.duration - 1.2s, endAt=BaseLayout.duration, positioned 'absolute inset-0', z-index-20. Generic effects in provider mode: outgoing targetId gets opacity AnimationRange [{time:0, value:1}, {time:0.6, value:0.6}, {time:1.2, value:0}] and filter AnimationRange for contrast boost [{time:0, value:'contrast(1)'}, {time:0.6, value:'contrast(1.3)'}, {time:1.2, value:'contrast(1.5)'}]. Incoming targetId gets opacity [{time:0, value:0}, {time:0.6, value:0.4}, {time:1.2, value:1}] with grayscale filter [{time:0, value:'grayscale(0.8)'}, {time:0.6, value:'grayscale(0.3)'}, {time:1.2, value:'grayscale(0)'}]."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c74eb2b6f05a8-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:01:21 GMT',
'request-id': 'req_011CVatARgYTaNQmZrdJNbka',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '28',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatARgYTaNQmZrdJNbka"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 2 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Build a converging dot matrix transition where the outgoing image pixelates into a grid of halftone dots that spiral inward toward the center, creating a vortex effect, while the incoming image's dots spiral outward from center to edges, revealing the new content in an expanding circular pattern. This creates a mesmerizing newsprint-style wipe that feels like the image is being sucked into and expelled from a printing press cylinder. The overlap period should be 1.5 seconds with the spiral convergence point occurring at 0.75 seconds. Add subtle rotation to both images during transition to enhance the cylindrical press feeling.

Technical Specifications:
BaseLayout with 'absolute inset-0 overflow-hidden' and duration = sum of media durations minus 1.5s. Outgoing ImageAtom: 'absolute inset-0 origin-center' z-index-10, endAt includes 1.5s into overlap. Incoming ImageAtom: 'absolute inset-0 origin-center' z-index-20, startAt = outgoing.duration - 1.5s. Provider mode effects: Outgoing gets scale AnimationRange [{time:0, value:1}, {time:0.75, value:0.8}, {time:1.5, value:0.3}], rotate [{time:0, value:'0deg'}, {time:0.75, value:'5deg'}, {time:1.5, value:'15deg'}], opacity [{time:0, value:1}, {time:1.2, value:0.5}, {time:1.5, value:0}]. Incoming gets scale [{time:0, value:0.3}, {time:0.75, value:0.8}, {time:1.5, value:1}], rotate [{time:0, value:'-15deg'}, {time:0.75, value:'-5deg'}, {time:1.5, value:'0deg'}], opacity [{time:0, value:0}, {time:0.3, value:0.5}, {time:1.5, value:1}]."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c74eb89b6056c-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:01:21 GMT',
'request-id': 'req_011CVatARyQSVzgzUdLQALvt',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '34',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatARyQSVzgzUdLQALvt"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 3 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Design a CMYK color separation halftone transition where the outgoing YouTube image separates into cyan, magenta, yellow, and black dot layers that drift apart with slight offsets, then the incoming image's CMYK layers converge from offset positions into perfect registration. This mimics the color separation process in newspaper printing. The transition should last 1.8 seconds with each color channel having slightly staggered timing. The outgoing image's layers drift outward in different directions while fading, and incoming layers slide inward and sharpen into focus.

Technical Specifications:
BaseLayout 'absolute inset-0 bg-white' with duration = media1 + media2 - 1.8s overlap. Create visual CMYK effect using blend modes on ImageAtom. Outgoing ImageAtom: 'absolute inset-0' z-index-10, objectFit='cover'. Incoming ImageAtom: 'absolute inset-0' z-index-20. Provider effects for outgoing: translateX [{time:0, value:'0px'}, {time:0.9, value:'15px'}, {time:1.8, value:'30px'}], translateY [{time:0, value:'0px'}, {time:0.9, value:'-10px'}, {time:1.8, value:'-20px'}], opacity [{time:0, value:1}, {time:1.2, value:0.6}, {time:1.8, value:0}], filter [{time:0, value:'saturate(1)'}, {time:0.9, value:'saturate(1.5)'}, {time:1.8, value:'saturate(2) hue-rotate(15deg)'}]. Incoming effects: translateX [{time:0, value:'-30px'}, {time:0.9, value:'-15px'}, {time:1.8, value:'0px'}], translateY [{time:0, value:'20px'}, {time:0.9, value:'10px'}, {time:1.8, value:'0px'}], opacity [{time:0, value:0}, {time:0.6, value:0.4}, {time:1.8, value:1}]."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c74e7aca52d18-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:01:20 GMT',
'request-id': 'req_011CVatAPFwbdtYfcuHe22wi',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '27',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatAPFwbdtYfcuHe22wi"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 4 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Create a scanline halftone wipe transition where horizontal bands of halftone dots sweep across the screen from top to bottom, progressively revealing the incoming YouTube image while converting the outgoing image into increasingly dense dot patterns. Think of a vintage TV being tuned or a fax machine printing. Each scanline band should be about 40px tall, with staggered timing creating a cascading effect. The overlap period is 1 second with a linear progression from top to bottom of the frame.

Technical Specifications:
BaseLayout 'absolute inset-0' with fitDurationTo='media', duration = media1.duration + media2.duration - 1.0s. Outgoing ImageAtom: 'absolute inset-0' z-index-10, objectFit='cover'. Incoming ImageAtom: 'absolute inset-0' z-index-20, objectFit='cover'. Use clip-path or mask simulation through opacity. Provider mode outgoing effects: opacity [{time:0, value:1}, {time:0.2, value:1}, {time:1.0, value:0}], translateY [{time:0, value:'0%'}, {time:0.5, value:'-2%'}, {time:1.0, value:'-5%'}], filter [{time:0, value:'contrast(1) brightness(1)'}, {time:0.5, value:'contrast(1.2) brightness(1.1)'}, {time:1.0, value:'contrast(1.5) brightness(0.8)'}]. Incoming effects: opacity [{time:0, value:0}, {time:0.2, value:0.3}, {time:1.0, value:1}], translateY [{time:0, value:'5%'}, {time:0.5, value:'2%'}, {time:1.0, value:'0%'}], filter [{time:0, value:'contrast(1.5) brightness(0.8)'}, {time:0.5, value:'contrast(1.2) brightness(0.9)'}, {time:1.0, value:'contrast(1) brightness(1)'}]."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c74e99bb18242-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:01:20 GMT',
'request-id': 'req_011CVatAQdYMTH2tfa5Wv3gj',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '19',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatAQdYMTH2tfa5Wv3gj"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 5 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Build a zoom-through-dots transition where the camera appears to zoom into the halftone dot pattern of the outgoing image until the dots become abstract shapes, then zooms out from abstract dots that resolve into the incoming image's halftone pattern and finally into a crisp photo. This creates a continuous zoom that travels through the microscopic world of newsprint. The effect should span 2 seconds of overlap with exponential easing for dramatic zoom acceleration at the midpoint.

Technical Specifications:
BaseLayout 'absolute inset-0 overflow-hidden bg-gray-900' duration = media1.duration + media2.duration - 2.0s. Outgoing ImageAtom: 'absolute inset-0 origin-center' z-index-10. Incoming ImageAtom: 'absolute inset-0 origin-center' z-index-20. Provider effects for outgoing: scale with easeInExpo [{time:0, value:1}, {time:1.0, value:3}, {time:2.0, value:8}], opacity [{time:0, value:1}, {time:1.5, value:0.7}, {time:2.0, value:0}], filter [{time:0, value:'blur(0px)'}, {time:1.0, value:'blur(2px)'}, {time:2.0, value:'blur(8px)'}]. Incoming effects with easeOutExpo: scale [{time:0, value:8}, {time:1.0, value:3}, {time:2.0, value:1}], opacity [{time:0, value:0}, {time:0.5, value:0.3}, {time:2.0, value:1}], filter [{time:0, value:'blur(8px)'}, {time:1.0, value:'blur(2px)'}, {time:2.0, value:'blur(0px)'}]."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c74e898413ae1-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:01:20 GMT',
'request-id': 'req_011CVatAPw7sc7LNkW4SQvTp',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '16',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatAPw7sc7LNkW4SQvTp"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 6 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Design a corner convergence halftone transition where four quadrants of the outgoing image separate and slide toward their respective corners while dissolving into dot patterns, and the incoming image's four quadrants slide inward from corners converging to form the complete new image. Each quadrant transitions with slightly different timing for organic feel. The newsprint dots should be most visible at the edges where quadrants meet. Use 1.4 seconds overlap with the quadrant separation peaking at 0.7 seconds.

Technical Specifications:
BaseLayout 'absolute inset-0 bg-neutral-900' duration = media1.duration + media2.duration - 1.4s. Single outgoing ImageAtom 'absolute inset-0' z-index-10, single incoming ImageAtom 'absolute inset-0' z-index-20 (quadrant effect simulated through transform). Provider outgoing effects: scale [{time:0, value:1}, {time:0.7, value:0.9}, {time:1.4, value:0.7}], opacity [{time:0, value:1}, {time:0.7, value:0.8}, {time:1.4, value:0}], translateX [{time:0, value:'0%'}, {time:0.7, value:'5%'}, {time:1.4, value:'15%'}], translateY [{time:0, value:'0%'}, {time:0.7, value:'5%'}, {time:1.4, value:'15%'}], filter [{time:0, value:'grayscale(0)'}, {time:0.7, value:'grayscale(0.3)'}, {time:1.4, value:'grayscale(0.7)'}]. Incoming effects: scale [{time:0, value:0.7}, {time:0.7, value:0.9}, {time:1.4, value:1}], opacity [{time:0, value:0}, {time:0.7, value:0.8}, {time:1.4, value:1}], translateX [{time:0, value:'-15%'}, {time:0.7, value:'-5%'}, {time:1.4, value:'0%'}], translateY [{time:0, value:'-15%'}, {time:0.7, value:'-5%'}, {time:1.4, value:'0%'}]."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c75a189b905a8-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:01:50 GMT',
'request-id': 'req_011CVatCaSwmzvuYFJ4AYN4S',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '42',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatCaSwmzvuYFJ4AYN4S"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 7 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Create a pulsing halftone heartbeat transition where the outgoing image's dot pattern pulses outward in rhythmic waves while fading, and the incoming image pulses inward in counter-rhythm, creating a breathing or heartbeat effect reminiscent of printing press oscillation. The dots should appear to expand and contract in waves. Use a 1.6 second overlap with 3 pulse cycles, each lasting about 0.5 seconds. The effect should feel organic and alive, like the images are breathing through the transition.

Technical Specifications:
BaseLayout 'absolute inset-0' duration = media1.duration + media2.duration - 1.6s. Outgoing ImageAtom 'absolute inset-0 origin-center' z-index-10. Incoming ImageAtom 'absolute inset-0 origin-center' z-index-20. Provider outgoing effects with oscillating values: scale [{time:0, value:1}, {time:0.27, value:1.03}, {time:0.53, value:0.97}, {time:0.8, value:1.02}, {time:1.07, value:0.95}, {time:1.33, value:1.01}, {time:1.6, value:0.9}], opacity [{time:0, value:1}, {time:0.53, value:0.8}, {time:1.07, value:0.5}, {time:1.6, value:0}], filter [{time:0, value:'contrast(1)'}, {time:0.8, value:'contrast(1.2)'}, {time:1.6, value:'contrast(1.4)'}]. Incoming effects inverse rhythm: scale [{time:0, value:0.9}, {time:0.27, value:0.93}, {time:0.53, value:0.97}, {time:0.8, value:0.95}, {time:1.07, value:0.98}, {time:1.33, value:0.99}, {time:1.6, value:1}], opacity [{time:0, value:0}, {time:0.53, value:0.3}, {time:1.07, value:0.7}, {time:1.6, value:1}]."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c759cb9702d18-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:01:49 GMT',
'request-id': 'req_011CVatCXCjQLavt1h7uptkS',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '20',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatCXCjQLavt1h7uptkS"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 8 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Build a newspaper fold transition where the outgoing YouTube image appears to fold inward like a newspaper being folded, with halftone dot patterns becoming visible along the fold lines and creases, while the incoming image unfolds outward from a folded state revealing crisp newsprint-style imagery. The fold should occur along a vertical center line with perspective distortion. Use 1.3 seconds overlap with the fold reaching maximum at 0.65 seconds before unfolding into the new image.

Technical Specifications:
BaseLayout 'absolute inset-0 perspective-1000' duration = media1.duration + media2.duration - 1.3s. Outgoing ImageAtom 'absolute inset-0 origin-center' z-index-10 with preserve-3d transform style. Incoming ImageAtom 'absolute inset-0 origin-center' z-index-20. Provider outgoing effects: rotateY [{time:0, value:'0deg'}, {time:0.65, value:'45deg'}, {time:1.3, value:'90deg'}], scaleX [{time:0, value:1}, {time:0.65, value:0.7}, {time:1.3, value:0.1}], opacity [{time:0, value:1}, {time:0.65, value:0.8}, {time:1.3, value:0}], filter [{time:0, value:'brightness(1)'}, {time:0.65, value:'brightness(0.7)'}, {time:1.3, value:'brightness(0.4)'}]. Incoming effects: rotateY [{time:0, value:'-90deg'}, {time:0.65, value:'-45deg'}, {time:1.3, value:'0deg'}], scaleX [{time:0, value:0.1}, {time:0.65, value:0.7}, {time:1.3, value:1}], opacity [{time:0, value:0}, {time:0.65, value:0.8}, {time:1.3, value:1}], filter [{time:0, value:'brightness(0.4)'}, {time:0.65, value:'brightness(0.7)'}, {time:1.3, value:'brightness(1)'}]."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c759debdb3ae1-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:01:49 GMT',
'request-id': 'req_011CVatCXxdDMrA3kf2SAcrU',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '47',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatCXxdDMrA3kf2SAcrU"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 9 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Design a radial halftone burst transition where dots explode outward from the center of the outgoing image in a starburst pattern while fading, and the incoming image's dots implode inward from the edges converging to form the new clear image. This creates an energetic, dynamic transition perfect for exciting YouTube content. The burst should have slight rotation for added dynamism. Use 1.1 seconds overlap with quick easeOutBack timing for punchy impact.

Technical Specifications:
BaseLayout 'absolute inset-0 overflow-hidden bg-black' duration = media1.duration + media2.duration - 1.1s. Outgoing ImageAtom 'absolute inset-0 origin-center' z-index-10. Incoming ImageAtom 'absolute inset-0 origin-center' z-index-20. Provider outgoing effects with easeOutBack: scale [{time:0, value:1}, {time:0.55, value:1.3}, {time:1.1, value:1.8}], rotate [{time:0, value:'0deg'}, {time:0.55, value:'3deg'}, {time:1.1, value:'8deg'}], opacity [{time:0, value:1}, {time:0.55, value:0.6}, {time:1.1, value:0}], filter [{time:0, value:'blur(0px) saturate(1)'}, {time:0.55, value:'blur(2px) saturate(1.3)'}, {time:1.1, value:'blur(6px) saturate(0.5)'}]. Incoming effects with easeInBack: scale [{time:0, value:1.8}, {time:0.55, value:1.3}, {time:1.1, value:1}], rotate [{time:0, value:'-8deg'}, {time:0.55, value:'-3deg'}, {time:1.1, value:'0deg'}], opacity [{time:0, value:0}, {time:0.55, value:0.6}, {time:1.1, value:1}], filter [{time:0, value:'blur(6px) saturate(0.5)'}, {time:0.55, value:'blur(2px) saturate(1.3)'}, {time:1.1, value:'blur(0px) saturate(1)'}]."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c75a32a13056c-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:01:50 GMT',
'request-id': 'req_011CVatCbd9MuQKyV36H28db',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '69',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatCbd9MuQKyV36H28db"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 10 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Create a vintage press registration shift transition where the outgoing image shifts through misregistered color states (like a poorly calibrated printing press) with RGB channels separating, transitioning through maximum misregistration at the midpoint, then the incoming image emerges from misregistered state converging to perfect alignment. This creates an authentic vintage newspaper printing effect with chromatic aberration. Use 1.5 seconds overlap with the maximum misregistration occurring at 0.75 seconds, featuring horizontal color fringing.

Technical Specifications:
BaseLayout 'absolute inset-0 bg-neutral-200' duration = media1.duration + media2.duration - 1.5s. Outgoing ImageAtom 'absolute inset-0' z-index-10, objectFit='cover'. Incoming ImageAtom 'absolute inset-0' z-index-20, objectFit='cover'. Provider outgoing effects simulating RGB shift: translateX [{time:0, value:'0px'}, {time:0.5, value:'4px'}, {time:0.75, value:'8px'}, {time:1.1, value:'12px'}, {time:1.5, value:'20px'}], opacity [{time:0, value:1}, {time:0.75, value:0.85}, {time:1.5, value:0}], filter [{time:0, value:'hue-rotate(0deg) saturate(1) contrast(1)'}, {time:0.5, value:'hue-rotate(5deg) saturate(1.2) contrast(1.1)'}, {time:0.75, value:'hue-rotate(10deg) saturate(1.4) contrast(1.2)'}, {time:1.1, value:'hue-rotate(15deg) saturate(1.3) contrast(1.15)'}, {time:1.5, value:'hue-rotate(20deg) saturate(1) contrast(1)'}]. Incoming effects: translateX [{time:0, value:'-20px'}, {time:0.4, value:'-12px'}, {time:0.75, value:'-8px'}, {time:1.0, value:'-4px'}, {time:1.5, value:'0px'}], opacity [{time:0, value:0}, {time:0.75, value:0.85}, {time:1.5, value:1}], filter [{time:0, value:'hue-rotate(-20deg) saturate(1) contrast(1)'}, {time:0.5, value:'hue-rotate(-15deg) saturate(1.3) contrast(1.15)'}, {time:0.75, value:'hue-rotate(-10deg) saturate(1.4) contrast(1.2)'}, {time:1.0, value:'hue-rotate(-5deg) saturate(1.2) contrast(1.1)'}, {time:1.5, value:'hue-rotate(0deg) saturate(1) contrast(1)'}]."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c75a0ea008242-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:01:50 GMT',
'request-id': 'req_011CVatCa2QAyApproPe7a4h',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '25',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatCa2QAyApproPe7a4h"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 11 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Create a slot machine reel typography preset where text captions appear as spinning vertical columns of golden coins/symbols. Each word from the caption data spins independently like a slot machine reel - starting with rapid blur motion, then decelerating with a satisfying 'landing' bounce. Structure as a horizontal flex container holding 3-5 vertical reel columns. Each reel contains stacked TextAtoms showing the word plus decorative dollar signs above/below. The spin effect uses translateY keyframes cycling through symbols before landing on the actual caption word. Apply a gold gradient background (via containerProps.style with linear-gradient) and add a subtle metallic shimmer overlay using a semi-transparent ImageAtom with a gold texture PNG set to 'screen' blend mode. The landing moment triggers a scale pulse (1.0 → 1.15 → 1.0) with ease-out-back timing. Stagger reel landings by 200-300ms for dramatic reveal. Use word-level timing from caption data to sequence the reveals.

Technical Specifications:
Structure: BaseLayout (flex flex-row items-center justify-center gap-4) containing multiple vertical reel BaseLayouts (flex flex-col items-center overflow-hidden). Each reel has height constraint and contains TextAtom for the word. Effects: Generic keyframe effect for translateY spin animation (0% → -2000px over 60% of duration with ease-out), then scale pulse effect (1.0 at 60%, 1.15 at 75%, 1.0 at 100% with spring easing). Use caption data words array for text content and timing. Apply blur effect (10px → 0px) synchronized with spin deceleration. Timing: Each reel's animation duration relative to word timing from captions. containerProps.style for gold gradients (#FFD700 to #B8860B). ImageAtom overlay with blendMode: 'screen' for shimmer texture. Performance: Use transform and opacity only for GPU acceleration, avoid animating blur during rapid spin phase."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c765b9fc505a8-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:02:20 GMT',
'request-id': 'req_011CVatEmhRWZzo2cHY8gqN4',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '62',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatEmhRWZzo2cHY8gqN4"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 12 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Design a coin-stacking typography kinetic preset where each caption word materializes as a golden coin dropping and stacking vertically. Words from caption data appear sequentially, each 'coin' dropping from above with realistic physics - fast fall, impact squash-stretch, subtle bounce settle. The stack builds upward in the center of frame. Each coin-word has a circular gold background with embossed dollar sign watermark (ShapeAtom circle behind TextAtom). On impact, trigger a radial shimmer ripple effect and a brief scale pulse. The entire stack gently sways with a continuous sine-wave rotation (±2°) for organic feel. High-impact words (from caption metadata) get larger coins and more dramatic drop animations. Use relative timing so each coin drop completes before the next begins.

Technical Specifications:
Structure: BaseLayout (relative w-full h-full flex flex-col-reverse items-center justify-end pb-20) for bottom-up stacking. Each coin unit is a nested BaseLayout (relative) containing ShapeAtom (circle, gold fill #FFD700, shadow) and TextAtom (centered, bold, dark text). Effects: Generic keyframe for drop - translateY from -100vh to 0 with custom cubic-bezier(0.33, 0, 0.67, 1.2) for bounce. Scale effect for squash: scaleY 1→0.7→1.1→1 and scaleX 1→1.3→0.9→1 on impact frames. Continuous rotation effect on parent: rotate oscillating ±2° with sine easing over full duration. Use caption metadata.impact to scale coin size (1x, 1.3x, 1.6x). Shimmer via brightness keyframe pulse (1→1.4→1) on impact. Timing: fitDurationTo 'children', each coin animation 400-600ms with 100ms overlap. Performance: will-change transform on dropping elements."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c7659ba612d18-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:02:19 GMT',
'request-id': 'req_011CVatEkTmCXAqHu1z1EP9a',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '22',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatEkTmCXAqHu1z1EP9a"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 13 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Build a slot machine interface typography preset with a realistic casino aesthetic. Create a framed slot machine housing (using nested BaseLayouts with border styling) containing three vertical display windows. Caption words cycle through each window slot-machine style with motion blur during spin. The spin uses a repeating vertical loop of symbols (dollar signs, sevens, bars, and the actual word) scrolling rapidly upward, then decelerating to reveal the caption word. Add chrome/metallic frame borders, glowing backlight behind reels (yellow-gold radial gradient), and a 'WIN' celebration effect when all three words land - golden particles burst, screen flashes, and a scale-up pulse on the entire machine. Include AudioAtom for slot machine sound effects synced to spin phases.

Technical Specifications:
Structure: Outer BaseLayout (relative bg-gradient-to-b from-gray-800 to-gray-900 rounded-2xl p-8 border-4 border-yellow-600) as machine frame. Inner BaseLayout (flex flex-row gap-2) for reel windows. Each window: BaseLayout (overflow-hidden bg-black rounded-lg border-2 border-yellow-500) with internal scrolling content BaseLayout. Content contains repeating TextAtoms for symbols. Effects: translateY animation cycling -400% to 0% for scroll effect, with ease-out deceleration in final 30%. Blur effect (8px during spin, 0px on land). Glow effect via boxShadow animation on landing. Celebration: parent scale 1→1.05→1 with brightness 1→1.5→1 when all land. AudioAtom with slot machine audio, volume peaks on landing moments. Timing: Reels land sequentially (reel 1 at 60%, reel 2 at 75%, reel 3 at 90% of duration). Use caption words for final display text. Container styling via containerProps.className for Tailwind utilities."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c765c781a056c-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:02:20 GMT',
'request-id': 'req_011CVatEnM7rrj76Da8uKMYf',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '42',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatEnM7rrj76Da8uKMYf"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 14 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Create an elegant gold-shimmer typography preset where caption text appears with a luxurious metallic reveal. Each word fades in while a horizontal gold shimmer sweep passes across it left-to-right, revealing the text with a gleaming highlight. The shimmer is achieved using an animated linear-gradient mask/overlay that travels across each word. Text styling includes gold color (#FFD700), subtle text-shadow glow, and a gentle continuous pulse (opacity 0.9↔1.0, scale 0.98↔1.02) for living, breathing quality. Dollar signs appear as decorative accents flanking key words (identified via caption metadata.keyword), scaling up with a bounce effect. Background features a subtle particle shimmer using multiple small ShapeAtoms with randomized twinkle animations.

Technical Specifications:
Structure: BaseLayout (relative w-full h-full flex flex-col items-center justify-center) as container. For each caption word: BaseLayout (relative overflow-hidden inline-block) containing TextAtom and shimmer overlay. Shimmer overlay: BaseLayout (absolute inset-0) with linear-gradient background animated via translateX -100% to 200%. Text styling: font with gold color, textShadow '0 0 20px rgba(255,215,0,0.5)'. Effects: Opacity fade 0→1 over first 30%, shimmer translateX sweep concurrent. Continuous pulse effect: scale oscillating 0.98↔1.02, opacity 0.9↔1.0 with sine easing over 2s loops. Dollar sign accents: TextAtom '$' with scale effect 0→1.2→1 using spring easing, positioned via flex with gap. Background particles: Multiple ShapeAtoms (small circles, 2-4px) with randomized opacity keyframes for twinkle. Timing: Word reveals staggered per caption word timing. containerProps.style for gradient backgrounds."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c765b199d3ae1-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:02:20 GMT',
'request-id': 'req_011CVatEmMav5rvyb1UGbyVG',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '16',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatEmMav5rvyb1UGbyVG"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 15 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Design a vertical cascading coin-drop kinetic typography where the entire caption flows downward like coins falling through a pachinko machine. Words tumble from top of frame, bouncing off invisible pegs (slight horizontal displacement at intervals), accumulating at bottom. Each word is styled as a golden coin token - circular background, embossed text, metallic sheen. The falling path includes subtle rotation wobble (±15°) for realistic tumble physics. When coins land, they trigger a small 'clink' via AudioAtom and stack with slight overlap. Use caption word timing to control drop sequence. High-impact words have larger coin size and create bigger 'splash' displacement of previously landed coins.

Technical Specifications:
Structure: BaseLayout (relative w-full h-full overflow-hidden) as play area. Each coin-word: BaseLayout (absolute) with position animated via keyframes. Contains ShapeAtom (circle, gold gradient fill, drop-shadow) and centered TextAtom (bold, dark text). Effects: Complex translateY/translateX path - Y goes 0%→100% (top to bottom), X oscillates ±50px at 25%, 50%, 75% intervals simulating peg bounces. Rotation effect: rotate keyframes 0°→15°→-10°→8°→-5°→0° synchronized with X bounces. Landing effect: scaleY 0.8, scaleX 1.2 briefly then normalize with spring. AudioAtom per coin with volume 0.3, triggered at land time. Stack management: final Y positions calculated to stack coins (bottom + index * coinHeight * 0.8 for overlap). Timing: Each coin uses word timing from caption data, duration ~800ms per drop. Use caption metadata.impact for coin scale multiplier (1x, 1.25x, 1.5x)."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c765b4a1b8242-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:02:20 GMT',
'request-id': 'req_011CVatEmWWrcWfnkvZnWvyF',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '22',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatEmWWrcWfnkvZnWvyF"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 16 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Build a pulsing neon slot machine display typography preset with synthwave/retro casino aesthetics. Caption words appear in glowing neon tubes within a stylized slot machine frame. Each word slot cycles through random symbols (neon dollar signs, diamonds, sevens) before landing on the caption word with a bright flash. The neon effect uses layered text shadows creating inner glow, outer glow, and bloom. Add a continuous subtle flicker to simulate real neon tube behavior. The frame has scan lines overlay and chromatic aberration on edges. When words land, they pulse brighter and trigger a brief screen shake effect. Include waveform effect tied to background audio for reactive glow intensity.

Technical Specifications:
Structure: BaseLayout (relative bg-black) as frame. Scanline overlay: BaseLayout (absolute inset-0 pointer-events-none) with repeating-linear-gradient for horizontal lines, opacity 0.1. Slot display: BaseLayout (flex flex-row justify-center gap-6 p-8). Each slot: BaseLayout (bg-gray-900 rounded border-2 border-pink-500 p-4 overflow-hidden). TextAtom for display with neon styling. Effects: textShadow animation for glow - base '0 0 10px #ff00ff, 0 0 20px #ff00ff, 0 0 40px #ff00ff', pulsing intensity 0.7↔1.3. Flicker: opacity keyframes with irregular timing (100%, 98%, 100%, 95%, 100%) over 200ms loops. Symbol cycling: rapid content changes (use multiple TextAtoms with staggered opacity) before final word reveal. Flash on land: brightness 1→2→1 over 150ms. Waveform effect on parent: scale responding to audio bass with sensitivity 0.1, threshold 0.3. Screen shake: translateX/Y ±3px on land. AudioAtom for background synth track. Timing: Slots cycle for 70% duration, land sequentially in final 30%."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c77144ae48242-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:02:49 GMT',
'request-id': 'req_011CVatGx6JkGfSNc2xahxR9',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '24',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatGx6JkGfSNc2xahxR9"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 17 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Create a premium currency counter typography preset where caption words appear alongside animated dollar amounts counting up rapidly. Style as a luxury financial display - black background, gold accents, elegant serif typography. Each word from caption data appears with a corresponding dollar counter that spins from $0 to a random large amount (styled to feel like a jackpot). Numbers use tabular figures for stable width during animation. The counter effect uses rapid number changes (not smooth interpolation) for authentic LED display feel. Add a subtle gold particle rain effect in background. Dollar signs scale with a heartbeat pulse synchronized to an optional audio track's beat detection.

Technical Specifications:
Structure: BaseLayout (bg-black min-h-screen flex flex-col items-center justify-center gap-8 p-12) as container. Each word-counter pair: BaseLayout (flex flex-row items-baseline gap-4). TextAtom for caption word (serif font, gold color #D4AF37, tracking-wide). TextAtom for dollar counter with tabular-nums font-feature. Particle background: Multiple ShapeAtoms (small rectangles 1x4px, gold, various opacity) with translateY animations top to bottom at different speeds. Effects: Counter animation - create helper function generating number keyframes from 0 to target, 20+ steps for rapid flicker effect. Each step holds for equal duration fraction. Dollar sign pulse: scale keyframes 1→1.1→1 with timing from audio beat analysis if AudioAtom present, otherwise 800ms loop. Word fade-in: opacity 0→1, translateY 20→0 with ease-out. Timing: Words appear per caption timing, counters animate over 1.5s after word appears. Use fetcher for audio analysis if beat sync desired. containerProps.style for custom font imports."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c77126f592d18-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:02:49 GMT',
'request-id': 'req_011CVatGvnvWfW4XjFSChoDR',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '52',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatGvnvWfW4XjFSChoDR"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 18 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Design a mechanical coin slot typography preset simulating coins being inserted into a slot. Each caption word 'coin' enters from top of frame, slides down through a vertical slot channel (with metallic guide rails visible), disappears into a collection box at bottom with a satisfying 'chunk' sound, then the word reappears displayed on a digital readout screen above. The slot mechanism has satisfying physics - coin tilts slightly entering slot, accelerates through channel, impacts bottom with bounce. The digital display cycles through glitchy characters before resolving to the word. Create depth with layered elements - slot frame in front, coin channel behind, collection box suggesting depth.

Technical Specifications:
Structure: BaseLayout (relative w-full h-full) as scene. Layer 1 (back): BaseLayout for coin channel (absolute, centered, narrow width, full height, dark gradient showing depth). Layer 2 (mid): Animated coin-word BaseLayouts. Layer 3 (front): Slot frame BaseLayout (absolute, with cutout appearance using borders/shadows, metallic gradient via containerProps.style). Digital display: BaseLayout (absolute top-20, centered) with LED-style background, TextAtom for readout. Effects: Coin path - translateY from -20% to 110% with acceleration (ease-in then ease-out at bottom). Rotation: slight tilt 5° entering, straightens mid-channel. Impact at bottom: scaleY squash 0.6, scaleX 1.4, brief bounce. Display glitch: rapid opacity flicker and translateX jitter (±2px) for 300ms before word resolves. AudioAtom per coin with mechanical 'chunk' sound at impact time. Timing: Coins enter per caption word timing, travel ~600ms, display shows word 200ms after impact. Use childrenProps for consistent coin styling."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c77158e6a056c-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:02:49 GMT',
'request-id': 'req_011CVatGxtgR3C5Af5pGAbMr',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '33',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatGxtgR3C5Af5pGAbMr"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 19 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Build an audio-reactive golden pulse typography preset where caption text responds dynamically to background music. Words display with base gold styling, but their scale, glow intensity, and shimmer speed all react to audio analysis data. Bass hits trigger scale pulses (beat-zoom effect), mid frequencies control glow brightness, and high frequencies drive shimmer animation speed. Dollar sign decorations flanking text pulse independently on off-beats. The overall effect feels like text 'breathing' and 'dancing' to the music. Include a subtle waveform visualizer bar at bottom using ShapeAtoms that respond to frequency data.

Technical Specifications:
Structure: BaseLayout (relative w-full h-full bg-black flex flex-col items-center justify-center) as container. Text display: BaseLayout (flex flex-wrap justify-center gap-4) containing TextAtoms for each caption word with gold styling. Dollar accents: TextAtoms positioned via absolute, offset from main text. Waveform visualizer: BaseLayout (absolute bottom-0 w-full h-20 flex flex-row items-end justify-center gap-1) containing multiple ShapeAtoms (rectangles, gold fill). Effects: Use waveform effects extensively - 'beat-zoom' effect on text with sensitivity 0.15, reacting to 'bass'. 'exposure' waveform effect for brightness responding to 'mid' frequencies. Custom shimmer using internal effect preset with speed parameter controlled by audio treble. Dollar signs: waveform 'scale' effect with different timing offset for off-beat feel. Visualizer bars: individual waveform effects per bar responding to different frequency ranges. AudioAtom required with source prop. Use fetcher to get audioAnalysis data for beat timing. Timing: Text appears per caption word timing, effects continuous throughout. textShadow base '0 0 10px #FFD700' with intensity multiplied by audio reactive value."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c77143f363ae1-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:02:49 GMT',
'request-id': 'req_011CVatGx73tQD94haUsxjxo',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '143',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatGx73tQD94haUsxjxo"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 20 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Create a jackpot celebration typography preset for maximum visual impact moments. Caption words explode onto screen with a slot machine jackpot aesthetic - coins burst from center, words scale up dramatically with golden trails, screen flashes, and everything pulses with victory energy. Each word appears with a starburst effect behind it (using rotated ShapeAtoms), accompanied by rapid-fire coin sprites flying outward. The entire composition has continuous celebratory motion - subtle bounce on all elements, golden particle fountain, and chromatic light sweeps. Designed for short, punchy caption moments (1-5 words) where each word gets full-screen dramatic treatment.

Technical Specifications:
Structure: BaseLayout (relative w-full h-full overflow-hidden bg-gradient-radial from-yellow-900 to-black) as container. Starburst layer: Multiple ShapeAtoms (elongated rectangles, gold/white) rotated at 30° intervals from center, with scale animation 0→1.5 and opacity 1→0. Word layer: TextAtom (massive font size via style, gold with stroke, centered) with dramatic entrance. Coin burst: Multiple ImageAtoms or ShapeAtoms (circles) with randomized trajectory animations (translateX/Y from center outward with rotation). Particle fountain: ShapeAtoms continuously animating upward from bottom-center with gravity arc (translateY up then down). Effects: Word entrance - scale 0→1.3→1 with bounce easing, opacity 0→1, blur 20→0. Screen flash: parent brightness 1→2.5→1 over 200ms on word appear. Continuous bounce: translateY oscillating ±5px on all elements with staggered timing. Light sweep: linear-gradient overlay with translateX animation. Timing: If multiple words, full-screen takeover per word (scene type with sequential playback), each word 1-2s duration. High energy easing throughout - spring and bounce curves."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c7715695b05a8-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:02:49 GMT',
'request-id': 'req_011CVatGxqT933U6Hk125QJ7',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '20',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatGxqT933U6Hk125QJ7"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 21 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Create a vertical split-screen parallax sliding panel transition for YouTube images. The screen divides into two vertical panels (left and right halves). During the transition overlap period, the outgoing image splits into two panels that slide apart in opposite directions (left panel slides left, right panel slides right) while the incoming image is revealed beneath. Use mask or clip-path to create the split effect, with each panel having a slight parallax offset in their sliding speeds. The left panel should move at 1.1x speed while the right moves at 0.9x speed, creating depth. Apply a subtle blur (0-4px) to the sliding panels as they exit. The overlap duration should be 800ms with the BaseLayout duration calculated as media1.duration + media2.duration - 0.8s. Both images use ImageAtom with object-fit: cover, positioned absolutely within a single BaseLayout container.

Technical Specifications:
BaseLayout: single container with 'relative w-full h-full overflow-hidden', fitDurationTo: 'media'. Create two pseudo-panels using clip-path or mask on duplicated outgoing ImageAtoms. Outgoing panels: use generic effects with translateX animations - left panel from 0% to -100%, right panel from 0% to 100%, blur from 0px to 4px. Incoming ImageAtom: starts with opacity 0, transitions to 1 during overlap. Z-index: incoming at z-0, outgoing panels at z-10. Provider mode with targetIds for each panel effect. Timing: outgoing effects start at (media1.duration - 0.8s), incoming opacity starts simultaneously."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c77cd6cf105a8-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:03:19 GMT',
'request-id': 'req_011CVatK8j5YS2kAJjR5QGWq',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '41',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatK8j5YS2kAJjR5QGWq"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 22 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Build a three-panel vertical sliding transition with staggered parallax offset layers for YouTube images. The outgoing image is divided into three equal vertical strips that slide away with cascading timing - center panel exits first, then side panels follow with 100ms delays. Each panel slides in alternating directions (left-center-right sliding left-up-right respectively). The incoming image fades in with a scale-up effect (0.95 to 1.0) as the panels clear. Include a subtle shadow on each sliding panel edge to enhance depth perception. The parallax effect comes from different translateY offsets applied to each panel during the horizontal slide, creating a dynamic 3D feel.

Technical Specifications:
BaseLayout: 'absolute inset-0' container, duration = media1 + media2 - 1.0s overlap. Three outgoing 'panel' zones created via clip-path: inset(0 66.67% 0 0), inset(0 33.33% 0 33.33%), inset(0 0 0 66.67%). Generic effects per panel: Panel 1 - translateX 0 to -110%, translateY 0 to -15%, timing 0-0.4 relative. Panel 2 - translateX 0 to 0, translateY 0 to -120%, timing 0.1-0.5. Panel 3 - translateX 0 to 110%, translateY 0 to -10%, timing 0.2-0.6. Incoming ImageAtom: opacity 0→1, scale 0.95→1.0, timing aligned with panel exits. Box-shadow on panels: '10px 0 30px rgba(0,0,0,0.3)'."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c77cfa911056c-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:03:19 GMT',
'request-id': 'req_011CVatKAE7r9h6VJqzU5kF1',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '30',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatKAE7r9h6VJqzU5kF1"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 23 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Design a diagonal sliding parallax panel transition where the outgoing YouTube image splits along a diagonal line (top-left to bottom-right). The two triangular sections slide apart - upper section slides up-left, lower section slides down-right - with different velocities creating parallax depth. The incoming image scales up slightly (1.05 to 1.0) with a subtle zoom-settle effect as it's revealed. Apply a gradient fade at the diagonal edges of the sliding panels to soften the split line. The transition should feel cinematic and smooth, with an overlap duration of 1 second for a leisurely reveal.

Technical Specifications:
BaseLayout: single container 'relative w-full h-full', duration calculation: media1.duration + media2.duration - 1.0s. Use clip-path: polygon() for diagonal splits - upper: polygon(0 0, 100% 0, 0 100%), lower: polygon(100% 0, 100% 100%, 0 100%). Outgoing effects: upper panel translateX/Y from 0,0 to -80%,-80% with ease-out; lower panel translateX/Y from 0,0 to 80%,80% at 0.8x speed for parallax. Apply opacity 1→0.7 on sliding panels. Incoming ImageAtom: scale 1.05→1.0, opacity 0→1, ease-out-cubic timing. Gradient masks on clip edges using linear-gradient with transparent feathering. Z-index: incoming z-0, outgoing panels z-10."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c77cc5bc08242-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:03:19 GMT',
'request-id': 'req_011CVatK8A6WmmMdJvDW4g8r',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '42',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatK8A6WmmMdJvDW4g8r"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 24 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Create a venetian blind style vertical sliding panel transition for YouTube images. The outgoing image is divided into 5 thin vertical strips that slide away in alternating directions (odd strips slide up, even strips slide down) with staggered timing to create a wave-like reveal pattern. Each strip has a slight rotation (±5deg) as it exits, adding dimensional parallax. The incoming image has a subtle blur-to-sharp focus effect (blur 3px to 0px) as it's revealed through the gaps. Include a slight scale pulse (1.0 to 1.02 to 1.0) on the incoming image for added polish.

Technical Specifications:
BaseLayout: 'absolute inset-0 overflow-hidden', duration = media1 + media2 - 0.9s. Create 5 vertical strips using clip-path with 20% width each. Staggered generic effects: Strip 1,3,5 - translateY 0→-120%, rotateZ 0→5deg, delays 0ms, 80ms, 160ms. Strip 2,4 - translateY 0→120%, rotateZ 0→-5deg, delays 40ms, 120ms. Each strip duration 0.5s with ease-in-out. Incoming ImageAtom: blur 3px→0px over 0.6s, scale keyframes [1.0, 1.02, 1.0] over 0.8s, opacity 0→1 over 0.4s. Provider mode targeting each strip with unique targetIds. Transform-origin set to center for rotation effects."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c77c9cb9c2d18-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:03:18 GMT',
'request-id': 'req_011CVatK6EFr578FaLSqRgK7',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '26',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatK6EFr578FaLSqRgK7"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 25 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Build a push-slide parallax transition where vertical panels push each other across the screen. The outgoing YouTube image slides left while simultaneously the incoming image slides in from the right, but with three offset layers at different speeds - background layer at 0.8x, mid layer at 1.0x, foreground elements at 1.2x - creating rich parallax depth. Apply a motion blur effect (blur 2px horizontally stretched) during the peak motion, settling to sharp at rest. Include a subtle shadow between the two images during the overlap to create a physical 'page turn' feeling.

Technical Specifications:
BaseLayout: 'relative w-full h-full overflow-hidden', duration = max(media1, media2) + 0.3s for complete slide. Three parallax layers per image using duplicated ImageAtoms with clip-path or opacity masks. Outgoing layers: bg translateX 0→-80%, mid translateX 0→-100%, fg translateX 0→-120%, all synced to 0.7s duration. Incoming layers: bg translateX 100%→20%, mid translateX 100%→0%, fg translateX 100%→-20% then settle to 0%. Motion blur via filter during 30-70% of animation, using blur(2px) with transform: scaleX(1.02). Drop shadow between images: 'box-shadow: -20px 0 40px rgba(0,0,0,0.4)' on incoming. Ease-out-quart for smooth deceleration."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c77cadfc53ae1-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:03:18 GMT',
'request-id': 'req_011CVatK6vBcYZNMkamCcnnr',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '23',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatK6vBcYZNMkamCcnnr"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 26 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Design a vertical accordion fold parallax transition for YouTube images. The outgoing image folds into vertical accordion pleats (4 sections) that compress toward the center while rotating on their vertical axes, revealing the incoming image behind. Each pleat rotates with perspective (rotateY ±45deg) creating a 3D folding effect. The incoming image has a subtle push-forward effect (translateZ simulation via scale 0.98→1.0). Apply shadows on the fold edges that intensify as the fold angle increases. The transition should have an 800ms overlap with smooth easing.

Technical Specifications:
BaseLayout: 'absolute inset-0' with perspective: 1000px on container style. Four vertical pleat sections using clip-path 25% width each. Generic effects per pleat: Pleats 1,3 - rotateY 0→45deg, translateX 0→12.5%; Pleats 2,4 - rotateY 0→-45deg, translateX 0→-12.5%. Apply transform-origin: left center for pleats 1,3; right center for pleats 2,4. Opacity 1→0 on pleats during final 30% of animation. Incoming ImageAtom: scale 0.98→1.0, opacity 0→1, timing starts at 20% into transition. Dynamic shadows using box-shadow that animates from '0 0 0' to '10px 0 20px rgba(0,0,0,0.3)' based on rotation angle. Duration calc: media1 + media2 - 0.8s."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c788a4e85056c-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:03:49 GMT',
'request-id': 'req_011CVatMNJhbfB716Rpo59R1',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '161',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatMNJhbfB716Rpo59R1"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 27 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Create a staggered vertical slice reveal transition with extreme parallax offset. The screen is divided into 8 thin vertical slices, and the outgoing YouTube image slices slide away in a cascading waterfall pattern - each slice starts its exit 50ms after the previous one, all sliding downward with increasing speed (first slice slowest, last slice fastest). The incoming image slices rise up from below with inverse timing, creating a crossing motion in the center of the screen. Apply a subtle hue rotation on the outgoing slices as they exit for a stylized effect.

Technical Specifications:
BaseLayout: 'relative w-full h-full overflow-hidden', duration = media1 + media2 - 1.2s for extended cascade. 8 vertical slices per image using clip-path: inset(0 X% 0 Y%). Outgoing slice effects: translateY 0→120% with staggered delays (0, 50, 100, 150, 200, 250, 300, 350ms), speeds increasing (0.6s, 0.55s, 0.5s, 0.45s, 0.4s, 0.35s, 0.3s, 0.25s duration). Incoming slice effects: translateY -120%→0% with inverse stagger (350, 300, 250, 200, 150, 100, 50, 0ms delays). Hue-rotate filter on outgoing: 0deg→30deg during exit. Ease-in for outgoing (accelerating fall), ease-out for incoming (decelerating rise). Provider mode with 16 targetIds total."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c78885a4f05a8-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:03:49 GMT',
'request-id': 'req_011CVatMLaGjXKuaHMubrYad',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '50',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatMLaGjXKuaHMubrYad"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 28 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Build a split-screen wipe with parallax shadow layers for YouTube images. A vertical dividing line sweeps across the screen from left to right, with the incoming image following behind it. The dividing line casts dramatic shadows on both sides - a soft shadow forward onto the incoming image and a harder shadow back onto the outgoing image. Both images have subtle counter-parallax movement (outgoing shifts right slightly, incoming shifts left slightly) as the wipe progresses, creating perceived depth. The wipe line has a subtle glow effect.

Technical Specifications:
BaseLayout: 'absolute inset-0', duration = transition_time (1.0s default) + settling_time (0.2s). Outgoing ImageAtom: clip-path animates from inset(0 0 0 0) to inset(0 0 0 100%), translateX 0→5% parallax shift. Incoming ImageAtom: clip-path animates from inset(0 100% 0 0) to inset(0 0 0 0), translateX -5%→0% parallax shift. Wipe line element: ShapeAtom or pseudo-element, width 4px, positioned at clip edge, box-shadow: '0 0 30px 10px rgba(255,255,255,0.5), -20px 0 40px rgba(0,0,0,0.4), 20px 0 40px rgba(0,0,0,0.2)'. Line position animates left 0%→100% synchronized with clip-paths. Ease-in-out-cubic for smooth acceleration/deceleration."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c78856af43ae1-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:03:48 GMT',
'request-id': 'req_011CVatMJjPao5W58gG2qYuX',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '30',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatMJjPao5W58gG2qYuX"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 29 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Design a zoom-burst parallax panel explosion transition for YouTube images. The outgoing image bursts outward from the center - split into 6 irregular polygonal shards that fly toward the screen edges with rotation and scaling (each shard scales up 1.0→1.5 as it exits). The shards have staggered timing and different velocities creating chaotic parallax. The incoming image zooms in from a scaled-down state (0.7→1.0) with a brief overshoot (to 1.02 then settle to 1.0). Apply motion blur to the flying shards and a brief flash of white (opacity 0→0.3→0) at the burst moment.

Technical Specifications:
BaseLayout: 'absolute inset-0 overflow-hidden', duration = media1 + media2 - 0.8s. 6 polygon shards using clip-path: polygon() with irregular shapes radiating from center. Shard effects: each has unique translateX/Y toward edges (-150% to 150% range), rotateZ (random -45 to 45deg), scale 1.0→1.5, opacity 1→0. Staggered delays: 0, 30, 60, 90, 120, 150ms. Duration 0.4-0.5s each with ease-in (accelerating outward). Motion blur: filter blur(4px) during 20-80% of shard animation. White flash overlay: ShapeAtom rectangle, opacity keyframes [0, 0.3, 0] over 0.3s, z-index highest. Incoming ImageAtom: scale keyframes [0.7, 1.02, 1.0] over 0.6s, opacity 0→1 over 0.3s, starts at 0.1s delay."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c78870a888242-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:03:49 GMT',
'request-id': 'req_011CVatMKkQqgz6x2tUgk9Gd',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '43',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatMKkQqgz6x2tUgk9Gd"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry
  1. Preset 30 - Command failed: npx tsx "/home/runner/work/mediamake/mediamake/apps/mediamake/scripts/generate-preset.ts" "Create a gentle curtain-pull vertical panel transition with soft parallax for YouTube images. Two vertical curtain panels (left and right halves) pull apart to reveal the incoming image, with the curtains having a slight wave/ripple distortion as they move (simulated via subtle scaleX oscillation). The parallax effect comes from the incoming image having a Ken Burns style slow zoom (1.0→1.05 over full duration) while the curtains pull aside. Add soft feathered edges on the curtain panels using gradient masks, and subtle shadows where the curtains meet the revealed image.

Technical Specifications:
BaseLayout: 'relative w-full h-full overflow-hidden', duration = media1 + media2 - 1.2s for slow reveal. Two curtain panels using clip-path: inset(0 50% 0 0) and inset(0 0 0 50%). Curtain effects: left panel translateX 0→-100%, right panel translateX 0→100%, duration 1.0s each. Ripple simulation: scaleX keyframes [1.0, 1.02, 0.98, 1.0] during movement. Feathered edges: mask-image with linear-gradient(to right, black 90%, transparent 100%) on left panel, inverse on right. Curtain shadows: box-shadow inset on inner edges '10px 0 20px rgba(0,0,0,0.3)'. Incoming ImageAtom: scale 1.0→1.05 over full BaseLayout duration (Ken Burns), opacity 0→1 over first 0.6s. Ease-out-quad for curtain movement. Z-index: incoming z-0, curtains z-10."

═══════════════════════════════════════════════════════════════
❌ PRESET GENERATION FAILED
═══════════════════════════════════════════════════════════════
APICallError [AI_APICallError]: Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.
at (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/response-handler.ts:57:16)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async postToApi (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts:118:28)
at async AnthropicMessagesLanguageModel.doGenerate (/home/runner/work/mediamake/mediamake/node_modules/@ai-sdk/anthropic/src/anthropic-messages-language-model.ts:470:9)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:357:30)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async _retryWithExponentialBackoff (/home/runner/work/mediamake/mediamake/node_modules/ai/src/util/retry-with-exponential-backoff.ts:96:12)
at async fn (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:328:32)
at async (/home/runner/work/mediamake/mediamake/node_modules/ai/src/telemetry/record-span.ts:18:22)
at async generateObject (/home/runner/work/mediamake/mediamake/node_modules/ai/src/generate-object/generate-object.ts:282:12) {
cause: undefined,
url: 'https://api.anthropic.com/v1/messages',
requestBodyValues: {
model: 'claude-sonnet-4-5',
max_tokens: 64000,
temperature: undefined,
top_k: undefined,
top_p: undefined,
stop_sequences: undefined,
system: undefined,
messages: [ [Object] ],
tools: [ [Object] ],
tool_choice: { type: 'tool', name: 'json', disable_parallel_tool_use: true }
},
statusCode: 400,
responseHeaders: {
'anthropic-organization-id': 'da777878-4d25-4f8d-bdf4-13c228122e17',
'cf-cache-status': 'DYNAMIC',
'cf-ray': '9a5c78840b452d18-IAD',
connection: 'keep-alive',
'content-length': '234',
'content-type': 'application/json',
date: 'Fri, 28 Nov 2025 20:03:48 GMT',
'request-id': 'req_011CVatMHdurB6EvevHGByyN',
server: 'cloudflare',
'strict-transport-security': 'max-age=31536000; includeSubDomains; preload',
'x-envoy-upstream-service-time': '19',
'x-robots-tag': 'none',
'x-should-retry': 'false'
},
responseBody: '{"type":"error","error":{"type":"invalid_request_error","message":"Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits."},"request_id":"req_011CVatMHdurB6EvevHGByyN"}',
isRetryable: false,
data: {
type: 'error',
error: {
type: 'invalid_request_error',
message: 'Your credit balance is too low to access the Anthropic API. Please go to Plans & Billing to upgrade or purchase credits.'
}
},
[Symbol(vercel.ai.error)]: true,
[Symbol(vercel.ai.error.AI_APICallError)]: true
}

  • Failed after 1 retry

Closes #334

@vercel
Copy link

vercel bot commented Nov 28, 2025

Deployment failed with the following error:

Resource is limited - try again in 4 hours (more than 100, code: "api-deployments-free-per-day").

Learn More: https://vercel.com/karcreativeworks-projects?upgradeToPro=build-rate-limit

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.

New Presets - Halftone Dot Newsprint Transition Effects + Slot Machine Gold Coin Reel Spin Typography + Vertical P (Batch 8/8)

0 participants