windmill-labs/windmill · error

Could not read file: ${fullFilePath}

Error message

Could not read file: ${fullFilePath}

What it means

File-I/O failure in inferRunnableSchemaFromFile: readTextFile threw on the runnable's code file under the app backend folder (missing file, permissions, or encoding problem). The function warns and returns undefined — the runnable is skipped rather than aborting schema inference for the whole app.

Source

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

    log.warn(
      colors.yellow(
        `Could not determine language for ${runnableId} (ext: ${ext})`
      )
    );
    return undefined;
  }

  // Read the actual content from the file
  const fullFilePath = path.join(
    appFolder,
    APP_BACKEND_FOLDER,
    runnableFilePath
  );
  let content: string;
  try {
    content = await readTextFile(fullFilePath);
  } catch {
    log.warn(colors.yellow(`Could not read file: ${fullFilePath}`));
    return undefined;
  }

  const remotePath = appFolder.replaceAll(SEP, "/");

  try {
    const schemaResult = await inferSchema(
      language as ScriptLanguage,
      content,
      currentSchema,
      `${remotePath}/${runnableId}`
    );

    log.info(colors.green(`  Inferred schema for ${runnableId}`));
    return {
      runnableId: runnableId,
      schema: schemaResult.schema,
    };

View on GitHub (pinned to e474e8803c)

Solutions

  1. Verify the file path recorded in the runnable YAML actually exists on disk
  2. Restore file permissions so the CLI user can read it
  3. Re-create the app checkout or re-pull so backend files are present
Defensive patterns

Strategy: fallback

When it happens

Trigger: Thrown at cli/src/commands/app/app_metadata.ts:947 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/4cc5bd515f3eba68. Report an issue: GitHub.