HeyPuter/puter · error · HttpError
upstream_failed
upstream_failed
Error message
Video generation failed
What it means
Error "Video generation failed" thrown in HeyPuter/puter.
Source
Thrown at src/backend/drivers/ai-video/providers/together/TogetherVideoProvider.ts:203
createPayload.metadata = metadata;
}
const job = await this.#client.videos.create(createPayload);
const finalJob = await this.#pollUntilComplete(job.id);
if (finalJob.status === 'failed') {
const errorMessage =
finalJob?.error.message ??
finalJob?.info?.errors?.[0]?.message ??
finalJob?.info?.errors?.message ??
finalJob?.info?.errors ??
'Video generation failed';
// Together returns `failed` for both user-input issues
// (content policy / unsupported params) and their own
// outages — we can't reliably tell from the payload, so
// expose as 4xx with `upstream_failed`. The alarm gate
// skips `upstream_*` legacy codes so this no longer pages.
throw new HttpError(400, errorMessage, {
legacyCode: 'upstream_failed',
fields: { provider: 'together' },
});
}
if (finalJob.status === 'cancelled') {
throw new Error('Video generation was cancelled');
}
const usageKey = `together-video:${model}`;
await this.#meteringService.incrementUsage(
actor,
usageKey,
1,
costInMicroCents,
);
const videoUrl = finalJob?.outputs?.video_url;View on GitHub (pinned to 908ec23eda)
Solutions
- Retry the request; if it persists, check the Together AI API status and request parameters.
- Inspect logs for the upstream failure detail.
When it happens
Trigger: Thrown at src/backend/drivers/ai-video/providers/together/TogetherVideoProvider.ts:203 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of HeyPuter/puter@908ec23eda (2026-08-12).
Data as JSON: /api/errors/9109c4f665d708bf.
Report an issue: GitHub.