windmill-labs/windmill · error
App "${path}" is not deployed; there is no newer version to
Error message
App "${path}" is not deployed; there is no newer version to rebase onto. What it means
Thrown by rebaseAppDraft when the app draft exists but the app has no deployed version with files to diff against. Rebase ports draft changes onto a newer deploy; with no deploy there is no target, so the operation is rejected rather than producing a meaningless diff.
Source
Thrown at frontend/src/lib/components/copilot/chat/global/core.ts:6370
`the version you forked from). Re-apply them with the flow edit tools — the new draft will be ` +
`based on the latest deployed version (version ${latest.version_id}) — then deploy.`,
latest_version: latest.version_id,
your_changes: yourChanges
},
null,
2
)
}
async function rebaseAppDraft(path: string, ctx: WriteDraftCtx): Promise<string> {
const { workspace, toolId, toolCallbacks } = ctx
const draft = await getGlobalDraft(workspace, 'app', path)
if (!draft || !draft.value || typeof draft.value === 'string' || !('files' in draft.value)) {
throw new Error(`No app draft found for "${path}".`)
}
if (!(await AppService.existsApp({ workspace, path }))) {
throw new Error(`App "${path}" is not deployed; there is no newer version to rebase onto.`)
}
const deployed = await AppService.getAppByPath({ workspace, path })
const headVersion = deployed.versions?.[deployed.versions.length - 1]
const baseVersion = draft.parentVersionId
if (baseVersion != null && baseVersion === headVersion) {
const message = `Draft "${path}" is already based on the latest deployed version (${headVersion}).`
toolCallbacks.setToolStatus(toolId, { content: message })
return JSON.stringify({
success: true,
alreadyLatest: true,
latest_version: headVersion,
message
})
}
toolCallbacks.setToolStatus(toolId, { content: `Rebasing draft "${path}" onto latest...` })
View on GitHub (pinned to e474e8803c)
Solutions
- Deploy the app first; rebase only once a newer deploy exists
- Deploy the draft directly — with no prior deploy the draft is already current
- Confirm you targeted the correct app path and workspace
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at frontend/src/lib/components/copilot/chat/global/core.ts:6370 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/17005bde7c44cf66.
Report an issue: GitHub.