windmill-labs/windmill · error · Error

Failed to generate lockfile: ${message}

Error message

Failed to generate lockfile: ${message}

What it means

Thrown by generateInlineScriptLock in the CLI's app metadata generator after the server-side dependencies job completed but reported failure. The job's result payload (polled via pollJobWithQueueLogging) has success=false, and the message embeds the server's own error text — typically a failing dependency install (unresolvable package, bad pinned version, missing lockfile base) on the worker that ran the 'deps' job for the inline script. The CLI is only relaying: the failure happened in the remote job, not locally.

Source

Thrown at cli/src/commands/app/app_metadata.ts:819

  let completion;
  try {
    completion = await pollJobWithQueueLogging(
      workspace.workspaceId,
      jobId,
      { label: `deps ${scriptPath}` },
    );
  } catch (e: any) {
    throw new Error(
      `Failed to poll dependencies job ${jobId}: ${e?.message ?? e}`
    );
  }

  const result = completion.result as any;
  if (!completion.success) {
    const message =
      result?.error?.message ??
      (typeof result === "string" ? result : JSON.stringify(result, null, 2));
    throw new Error(`Failed to generate lockfile: ${message}`);
  }

  const lock = result?.lock;
  if (lock === undefined) {
    throw new Error(
      `Failed to generate lockfile: ${JSON.stringify(result, null, 2)}`
    );
  }
  return lock ?? "";
}

/**
 * Result of schema inference for a runnable
 */
export interface InferredSchemaResult {
  runnableId: string;
  schema: any;
}

View on GitHub (pinned to e474e8803c)

Solutions

  1. Read the embedded server message: for npm/pip dependency errors, fix the inline script's dependency block (requirements/imports) and retry the metadata generation
  2. Run wmill flow/script app sync or the underlying job directly in the UI (Run page for the deps job) to see full worker logs
  3. If the error mentions lockfile generation specifics, verify the script's language/lockfile settings in the app metadata and regenerate
Defensive patterns

Strategy: try-catch

When it happens

Trigger: Thrown at cli/src/commands/app/app_metadata.ts:819 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of windmill-labs/windmill@e474e8803c (2026-09-03). Data as JSON: /api/errors/abec03c11ebf31a8. Report an issue: GitHub.