{"record":{"id":"33463e38abd49488","repo":"sveltejs/kit","slug":"could-not-find-prerendered-page-file-for-route","errorCode":null,"errorMessage":"Could not find prerendered page ${file} for route ${path}","messagePattern":"Could not find prerendered page (.+?) for route (.+?)","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/adapter-bun/index.js","lineNumber":319,"sourceCode":"\t});\n\n\t/**\n\t * @param {{ abs: string, rel: string }} file\n\t * @param {string} helper\n\t * @param {string} [url]\n\t */\n\tconst entry = async (file, helper, url = file.rel) =>\n\t\t`...${helper}(${JSON.stringify(url)}, asset_${asset_index.get(file)}, ${JSON.stringify(await asset_meta(file.abs))})`;\n\n\tconst page_files = new Map(pr_pages.map((file) => [file.rel, file]));\n\tconst page_rels = new Set([...builder.prerendered.pages].map(([_, { file }]) => file));\n\n\tconst entries = await Promise.all([\n\t\t...cl_files.map((file) => entry(file, 'client_asset')),\n\t\t...[...builder.prerendered.pages].map(([path, { file }]) => {\n\t\t\tconst page = page_files.get(file);\n\t\t\tif (page === undefined)\n\t\t\t\tthrow new Error(`Could not find prerendered page ${file} for route ${path}`);\n\t\t\treturn entry(page, 'prerendered_page', path);\n\t\t}),\n\t\t...pr_pages\n\t\t\t.filter(({ rel }) => !page_rels.has(rel))\n\t\t\t.map((file) => entry(file, 'prerendered_asset')),\n\t\t...[...pr_deps, ...pr_data].map((file) => entry(file, 'prerendered_asset'))\n\t]);\n\n\tconst index_by_rel = new Map(\n\t\tassets.map(({ rel }, i) => /** @type {[string, number]} */ ([rel, i])).reverse()\n\t);\n\n\treturn {\n\t\timports,\n\t\tentries,\n\t\tserver_assets: server_assets.map((file) => {\n\t\t\tconst idx = index_by_rel.get(file);\n\t\t\tif (idx === undefined) throw new Error(`Could not find server asset ${file}`);","sourceCodeStart":301,"sourceCodeEnd":337,"githubUrl":"https://github.com/sveltejs/kit/blob/03f1687fe612ce3d2d9131139b5b188d9cf90c64/packages/adapter-bun/index.js#L301-L337","documentation":"While embedding prerendered pages into the server bundle, adapter-bun cross-references builder.prerendered.pages against the collected build output file list. If a page's HTML file exists in the prerender metadata but no matching artifact was emitted, this error is thrown.","triggerScenarios":"get_embed_entries iterates builder.prerendered.pages; page_files (the index of built output files) has no entry for the page's `file`, so the prerendered_page entry cannot be created for that route.","commonSituations":"Prerender metadata stale relative to the build output (partial/modified builds); a page that failed to prerender; custom output directory configurations breaking the file index; mixing cached artifacts with a fresh build.","solutions":["Clean the build output (rm -rf build .svelte-kit) and rebuild with `bun run --bun build`.","Check build logs for prerender failures on the affected route and fix the underlying prerender error.","Verify no custom build/output configuration separates prerendered HTML from the indexed output.","Disable prerendering for the affected route if its HTML is not needed, or update the adapter/Bun version."],"exampleFix":"// before\nbun run --bun build   // stale artifacts kept index out of sync\n// after (clean, full rebuild)\nrm -rf build .svelte-kit node_modules/.vite && bun install && bun run --bun build","handlingStrategy":"try-catch","validationCode":"import fs from 'node:fs';\n// verify prerendered page files exist in build output before adapting\nfor (const [route, { file }] of builder.prerendered.pages) {\n  if (!fs.existsSync(file)) {\n    throw new Error(`Prerendered page for ${route} (${file}) missing from build output — clean rebuild required`);\n  }\n}","typeGuard":"const pageIsEmbedded = (pageFiles, file) => pageFiles.has(file);","tryCatchPattern":"try {\n  await build();\n} catch (e) {\n  if (/Could not find prerendered page/.test(e.message)) {\n    const [file, route] = /prerendered page (\\S+) for route (\\S+)/.exec(e.message)?.slice(1, 3) ?? [];\n    console.error(`Route ${route}: prerender output ${file} missing. Fix prerender errors, clean build dirs, rebuild.`);\n    process.exit(1);\n  }\n  throw e;\n}","preventionTips":["Always clean build artifacts between builds","Watch prerender logs for failed pages","Keep adapter-bun and Bun versions current","Avoid hand-editing .svelte-kit output"],"tags":["prerender","adapter-bun","build-artifacts"],"backgroundTag":"prerendered-page-missing","analyzedSha":"03f1687fe612ce3d2d9131139b5b188d9cf90c64","analyzedAt":"2026-09-02T02:01:50.504Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-09T06:17:21.866Z"}