deepseek-ai/deepseek-harness · error · Error
Ralph workflow returned an invalid completion report
Error message
Ralph workflow returned an invalid completion report
What it means
Error "Ralph workflow returned an invalid completion report" thrown in deepseek-ai/deepseek-harness.
Source
Thrown at packages/workflow/tool-ralph/src/index.ts:270
|| !normalizedList(value['evidence'])
|| !normalizedList(value['nextSteps'])
|| typeof value['blocker'] !== 'string'
|| value['blocker'] !== value['blocker'].trim()) {
throw new Error('Ralph workflow returned a malformed round report')
}
const report: RalphRoundReport = {
status: expectedStatus,
summary: value['summary'],
evidence: value['evidence'],
nextSteps: value['nextSteps'],
blocker: value['blocker'],
}
if (expectedStatus === 'continue' && (report.nextSteps.length === 0 || report.blocker !== '')) {
throw new Error('Ralph workflow returned an invalid continuing report')
}
if (expectedStatus === 'complete'
&& (report.evidence.length === 0 || report.nextSteps.length !== 0 || report.blocker !== '')) {
throw new Error('Ralph workflow returned an invalid completion report')
}
if (expectedStatus === 'blocked' && !normalizedText(report.blocker)) {
throw new Error('Ralph workflow returned an invalid blocked report')
}
const chars = JSON.stringify(report).length
if (chars > maxChars) {
throw new Error(`Ralph workflow returned an oversized handoff (${chars} > ${maxChars})`)
}
return report
}
/** Defensively decode the fixed script's terminal value. */
function readRunResult(value: unknown, maxRounds: number, maxHandoffChars: number): RalphTerminalResult {
if (!isRecord(value)
|| typeof value['roundsStarted'] !== 'number'
|| !Number.isSafeInteger(value['roundsStarted'])
|| value['roundsStarted'] < 1
|| value['roundsStarted'] > maxRounds) {View on GitHub (pinned to b150a551b8)
Solutions
- Ensure completion reports carry evidence, no nextSteps, and an empty blocker; fix the workflow's report validation or prompt.
When it happens
Trigger: Thrown at packages/workflow/tool-ralph/src/index.ts:270 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of deepseek-ai/deepseek-harness@b150a551b8 (2026-08-24).
Data as JSON: /api/errors/cb4e83f03eb69327.
Report an issue: GitHub.