windmill-labs/windmill · error
Please fill version input
Error message
Please fill version input
What it means
buildInfo() in the OpenAPI spec generator builds the info object only when title and version are consistent. A non-empty title with an empty version is invalid for OpenAPI v3 (version is required when info is present), so it throws this error to force the user to complete the version field.
Source
Thrown at frontend/src/lib/components/triggers/http/OpenAPISpecGenerator.svelte:101
return (data as OpenapiHttpRouteFilters).route_path_regex !== undefined
}
function getWebhookFilters() {
return webhookAndHttpRouteFilter.filter(isWebhookFilter)
}
function getHttpRouteFilters() {
return webhookAndHttpRouteFilter.filter(isHttpRouteFilter)
}
function buildInfo() {
const isTitle = !emptyString(title)
const isVersion = !emptyString(version)
let info: OpenapiV3Info | undefined = undefined
if (isTitle && !isVersion) {
throw new Error('Please fill version input')
} else if (!isTitle && isVersion) {
throw new Error('Please fill title input')
} else if (isTitle && isVersion) {
let isContact =
!emptyString(contactName) || !emptyString(contactUrl) || !emptyString(contactEmail)
let isLicense = !emptyString(licenseName) || !emptyString(licenseUrl)
info = {
title,
version,
description,
contact: isContact
? {
name: contactName,
url: contactUrl,
email: contactEmail
}
: undefined,
license: isLicenseView on GitHub (pinned to e474e8803c)
Solutions
- Enter a value in the Version input (e.g. '1.0.0') alongside the title
- Clear the Title field as well if you do not want an info block at all (info becomes undefined)
- Wire the version input as required in the UI when title is provided
Example fix
// before title: My API version: (empty) // after title: My API version: 1.0.0
Defensive patterns
Strategy: validation
Validate before calling
if (title && !version) throw new Error('Please fill version input'); Type guard
function hasCompleteInfo(t: string, v: string): boolean {
return (!t && !v) || (t !== '' && v !== '');
} Try / catch
try { buildInfo(); } catch (e) {
if (e.message === 'Please fill version input') { focusField('version'); }
else throw e;
} Prevention
- Make Version required whenever Title is filled (and vice versa)
- Default the version input to '1.0.0'
- Run the emptyString checks in the form's submit validation
When it happens
Trigger: In OpenAPISpecGenerator, filling the Title input but leaving Version empty, then generating the spec (via the info function).
Common situations: Users fill title out of habit and ignore version; default version placeholder cleared; form partially restored from state where version was lost.
Understand the failure class
Background: Schema validation failed / invalid input schema: payload rejected because its shape doesn't match the expected schema — this error's family across 28 libraries.
Related errors
- Please fill title input
- ${errorMessage}
- result.substring(__RESULT_ERR_PREFIX.length)
- Invalid migration name '${name}': use only letters, digits,
- Unknown workspace dependencies file format: ${path}. Valid f
AI-assisted analysis of windmill-labs/windmill@e474e8803c (2026-09-03).
Data as JSON: /api/errors/8c8de524f80af338.
Report an issue: GitHub.