{"record":{"id":"528bd4024dcf63f8","repo":"sveltejs/kit","slug":"unsupported-runtime-key-supported-runtimes-ar","errorCode":null,"errorMessage":"Unsupported runtime: ${key}. Supported runtimes are: ${valid_runtimes.join(', ')}. See the Node.js Version section in your Vercel project settings for info on the currently supported versions.","messagePattern":"Unsupported runtime: (.+?)\\. Supported runtimes are: (.+?)\\. See the Node\\.js Version section in your Vercel project settings for info on the currently supported versions\\.","errorType":"validation","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/adapter-vercel/utils.js","lineNumber":115,"sourceCode":"\t\t}\n\n\t\treturn `nodejs${/** @type {22 | 24} */ (major)}.x`;\n\t}\n\n\tthrow new Error(\n\t\t'Could not auto-detect a runtime. Please explicitly specify a runtime in your adapter configuration.'\n\t);\n}\n\nconst valid_runtimes = /** @type {const} */ (['nodejs22.x', 'nodejs24.x', 'bun1.x']);\n\n/**\n * @param {string} key\n * @returns {asserts key is RuntimeKey}\n */\nfunction assert_is_valid_runtime(key) {\n\tif (!valid_runtimes.includes(/** @type {RuntimeKey} */ (key))) {\n\t\tthrow new Error(\n\t\t\t`Unsupported runtime: ${key}. Supported runtimes are: ${valid_runtimes.join(', ')}. See the Node.js Version section in your Vercel project settings for info on the currently supported versions.`\n\t\t);\n\t}\n}\n\n/** @typedef {typeof valid_runtimes[number]} RuntimeKey */\n","sourceCodeStart":97,"sourceCodeEnd":122,"githubUrl":"https://github.com/sveltejs/kit/blob/03f1687fe612ce3d2d9131139b5b188d9cf90c64/packages/adapter-vercel/utils.js#L97-L122","documentation":"The adapter validates the configured `runtime` value against the list of runtimes Vercel currently supports (nodejs22.x, nodejs24.x, bun1.x). An unrecognized value in the adapter config causes this throw at resolve_runtime time.","triggerScenarios":"`resolve_runtime` calls `assert_is_valid_runtime` with a `runtime` option that is not one of 'nodejs22.x', 'nodejs24.x', 'bun1.x'.","commonSituations":"Upgrading the adapter after Vercel dropped older runtimes (e.g. still configured with nodejs18.x or nodejs20.x), typos like 'node20.x', or copying config from an outdated guide.","solutions":["Change the `runtime` value in svelte.config.js to a supported one: 'nodejs22.x', 'nodejs24.x', or 'bun1.x'","Remove the runtime option entirely to let the adapter auto-detect","Check the Node.js Version section of your Vercel project settings for currently supported versions"],"exampleFix":"// before\nadapter: adapter({ runtime: 'nodejs18.x' })\n// after\nadapter: adapter({ runtime: 'nodejs22.x' })","handlingStrategy":"validation","validationCode":"const valid = ['nodejs22.x', 'nodejs24.x', 'bun1.x'];\nif (!valid.includes(adapterOptions.runtime)) {\n  throw new Error(`runtime must be one of ${valid.join(', ')}`);\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Only use runtimes listed in the adapter's current docs","Re-check runtime config after every adapter major upgrade","Mirror the value from your Vercel project's Node.js Version setting"],"tags":["vercel","adapter","configuration","validation"],"backgroundTag":"unsupported-runtime","analyzedSha":"03f1687fe612ce3d2d9131139b5b188d9cf90c64","analyzedAt":"2026-09-02T02:01:50.504Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-09T06:17:21.866Z"}