HeyPuter/puter · error · HttpError

bad_request

bad_request

Error message

prompt must be a non-empty string

What it means

Error "prompt must be a non-empty string" thrown in HeyPuter/puter.

Source

Thrown at src/backend/drivers/ai-video/providers/openai/OpenAIVideoProvider.ts:70

    async models(): Promise<IVideoModel[]> {
        return OPENAI_VIDEO_MODELS;
    }

    async generate(params: IGenerateVideoParams): Promise<unknown> {
        const {
            prompt,
            model: requestedModel,
            duration,
            seconds,
            size,
            resolution,
            input_reference: inputReference,
            test_mode: testMode,
        } = params ?? {};

        if (typeof prompt !== 'string' || !prompt.trim()) {
            throw new HttpError(400, 'prompt must be a non-empty string', {
                legacyCode: 'bad_request',
            });
        }

        const selectedModel = await this.#selectModel(requestedModel);

        if (!selectedModel) {
            throw new HttpError(400, `Unknown video model: ${requestedModel}`, {
                legacyCode: 'bad_request',
            });
        }

        if (testMode) {
            return DEFAULT_TEST_VIDEO_URL;
        }

        const defaultSize = selectedModel.dimensions?.[0] ?? '720x1280';
        const normalizedSize =

View on GitHub (pinned to 908ec23eda)

Solutions

  1. Pass a non-empty string as the `prompt` argument.
  2. Validate the prompt client-side before calling the driver.

When it happens

Trigger: Thrown at src/backend/drivers/ai-video/providers/openai/OpenAIVideoProvider.ts:70 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/f8b8f486c315886a. Report an issue: GitHub.