n8n-io/n8n · error · Error
No valid prompts found in the provided CSV file
Error message
No valid prompts found in the provided CSV file
What it means
Final content error from loadTestCasesFromCsv. It fires when parsing produced data rows but none yielded a usable prompt — rows were skipped because the prompt cell was empty or invalid (annotation parse failures are tolerated and dropped). Last-resort guard before returning the test case list.
Solutions
- Ensure rows have non-empty prompt text; rows with only annotations or empty prompts are skipped.
- Check the prompt column is populated for every data row.
- Inspect the CSV for rows whose prompt cell is blank after trimming.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at packages/@n8n/ai-workflow-builder.ee/evaluations/cli/csv-prompt-loader.ts:130 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of n8n-io/n8n@5ac6606e81 (2026-08-12).
Data as JSON: /api/errors/2d955c4fda0788c1.
Report an issue: GitHub.
Appendix: source
Thrown at packages/@n8n/ai-workflow-builder.ee/evaluations/cli/csv-prompt-loader.ts:130
const annotationsRaw = getCell(row, annotationsIdx);
if (dos || donts || annotationsRaw) {
testCase.context = {};
if (dos) testCase.context.dos = dos;
if (donts) testCase.context.donts = donts;
if (annotationsRaw) {
const annotations = parseAnnotations(annotationsRaw, i + 1);
if (annotations) {
testCase.context.annotations = annotations;
}
}
}
testCases.push(testCase);
}
if (testCases.length === 0) {
throw new Error('No valid prompts found in the provided CSV file');
}
return testCases;
}
/** Cached default test cases */
let cachedDefaultTestCases: TestCase[] | null = null;
/**
* Load the default test cases from the bundled CSV fixture.
* Results are cached after first load.
*/
export function loadDefaultTestCases(): TestCase[] {
cachedDefaultTestCases ??= loadTestCasesFromCsv(DEFAULT_PROMPTS_PATH);
return cachedDefaultTestCases;
}
/**View on GitHub (pinned to 5ac6606e81)