windmill-labs/windmill · error
Debug signing is not configured on the server. Please contac
Error message
Debug signing is not configured on the server. Please contact your administrator.
What it means
signDebugRequest treats any non-OK response from POST /api/w/{workspace}/debug/sign as a failure. When the server's error body contains the substring 'not initialized', the function rewrites it into this user-friendly message. It means the server-side debug signing (token signing key / debug subsystem) has not been configured, so no debug session can be authorized.
Source
Thrown at frontend/src/lib/components/debug/debugUtils.ts:68
export async function signDebugRequest(
workspace: string,
code: string,
language: string
): Promise<{ token: string; code: string; job_id: string }> {
if (!workspace) {
throw new Error('No workspace selected')
}
const response = await fetch(`/api/w/${workspace}/debug/sign`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ code, language })
})
if (!response.ok) {
const errorText = await response.text()
if (errorText.includes('not initialized')) {
throw new Error(
'Debug signing is not configured on the server. Please contact your administrator.'
)
}
throw new Error(errorText || 'Failed to authorize debug session')
}
return await response.json()
}
/**
* Sign a multiplayer session request. Returns a JWT token that the
* multiplayer server will verify before accepting the WebSocket connection.
*/
export async function signMultiplayerRequest(workspace: string): Promise<string> {
if (!workspace) {
throw new Error('No workspace selected')
}
View on GitHub (pinned to e474e8803c)
Solutions
- Ask the instance administrator to configure the debug/token signing secret (instance settings or the corresponding backend env variable) and restart the backend.
- Check backend logs for the exact 'not initialized' error to identify which setting is missing.
- If self-hosting, verify the deployment includes the component/feature that initializes debug signing (not a stripped CE image).
- As a stopgap, disable the debugger UI feature flag until signing is configured.
Defensive patterns
Strategy: try-catch
Try / catch
try { await signDebugRequest(ws, code, lang) } catch (e) { const m = (e as Error).message; if (m.includes('not configured on the server')) showAdminConfigNotice(m); else throw e } Prevention
- Check instance/debug-signing configuration during deployment health checks.
- Hide debugger features until a successful sign succeeds once (feature probe).
When it happens
Trigger: The backend responds non-OK to /debug/sign and the response text includes 'not initialized' — i.e. the instance has no debug signing secret configured (fresh/unconfigured instance or EE debug feature disabled).
Common situations: Self-hosted instance without the signing key set via instance settings/env; administrator never enabled the debug/session signing feature; running a CE build against an EE-only debug endpoint; config lost after an upgrade or environment variable rename.
Related errors
- <server error text> || Failed to authorize debug session
- <server error text> || Failed to sign multiplayer session
- ApiError with mapped HTTP status message (e.g. "Not Found",
- Generic Error: status: ${errorStatus}; status text: ${errorS
- Dependency generation failed: ${queueResponse.status} ${queu
AI-assisted analysis of windmill-labs/windmill@e474e8803c (2026-09-03).
Data as JSON: /api/errors/c061c4a45cb5d618.
Report an issue: GitHub.