windmill-labs/windmill · error
Runnable not found: ${runnableId}
Error message
Runnable not found: ${runnableId} What it means
Lookup miss inside the app dev server's WebSocket backend handler: a client message requested execution of a runnable by id, but runnables[runnableId] (from loadRunnables) has no entry for it. This is the sync-path handler (runAndWaitForResult); the id in the message is the faulting input. It usually means the dev server's runnable registry is stale relative to the browser app — a runnable was renamed/deleted locally, or the app preview was built against an older snapshot than the one the dev server currently serves.
Source
Thrown at cli/src/commands/app/dev.ts:1161
);
const { type, reqId, runnable_id, v, jobId } = message;
// Helper to send response
const respond = (responseType: string, result: any, error: boolean) => {
ws.send(JSON.stringify({ type: responseType, reqId, result, error }));
};
// Helper to execute and wait for result
const runAndWaitForResult = async (
runnableId: string,
args: any,
): Promise<{ uuid: string; result: any }> => {
const runnables = await loadRunnables();
const runnable = runnables[runnableId];
if (!runnable) {
throw new Error(`Runnable not found: ${runnableId}`);
}
const uuid = await executeRunnable(
runnable,
workspaceId,
appPath,
runnableId,
args,
appTempRefs,
);
log.info(colors.gray(`[backend] Job started: ${uuid}`));
const result = await waitForJob(workspaceId, uuid);
return { uuid, result };
};
switch (type) {
case "backend": {View on GitHub (pinned to e474e8803c)
Solutions
- Restart the wmill app dev session so loadRunnables re-scans and the preview uses the current runnable set
- Check the app definition for references to a runnable id that no longer exists (renamed or removed component) and fix or delete the stale reference
- Save/re-sync the app in the editor so the dev server's registry and the served bundle agree
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at cli/src/commands/app/dev.ts:1161 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/ae267ac9d44b035e.
Report an issue: GitHub.