Vercel Deploy Checklist

Deploy the Next.js wiki reader from ui/ with bundled markdown, server-side gating, and public discovery settings verified.

Use this page before first deploy, before production promotion, or after changing wiki reader env vars. It is the deployment checklist; Bundle Wiki Prebuild, Password Gate Setup, and Public Categories Env own the deeper contracts.

Checklist

  1. Vercel project Root Directory is ui.
  2. Root .vercelignore allowlists only ui/, wiki/, agent-docs/, root *.md, referenced instruction docs such as scripts/SKILL.md, root package metadata such as package.json, and .vercelignore; it excludes local dependency/build artifacts such as ui/node_modules, ui/.next, ui/.content, and ui/.vercel.
  3. prebuild runs scripts/bundle-wiki.mjs so ../wiki is copied into ui/.content/wiki.
  4. next.config.ts includes .content/**/* in output file tracing.
  5. WIKI_GATE_PASSWORD or WIKI_GATE_PASSWORDS is set for private corpus access.
  6. NEXT_PUBLIC_SITE_URL is set on production.
  7. WIKI_PUBLIC_CATEGORIES=1 is set, or WIKI_VISIBLE_CATEGORIES names the intended public set.
  8. pnpm build passes locally from ui/.
  9. npm run vercel:dry passes from the repo root before any CLI deploy; this parses vercel deploy --dry --format=json and fails if unexpected source paths or oversized artifacts would upload. Source: Vercel changelog, 2026-07-01
  10. Preview URL is checked before production promotion.

Privacy And Discovery

The deployment has two separate controls:

Control Protects
Password gate Page HTML, private search/listings, sitemap, llms.txt, assets.
Public category filter Public navigation, home, search, sitemap, and llms.txt discovery for non-private categories.

Do not use the category filter as the only privacy mechanism. Hidden-but-not-private pages may still be reachable by direct URL.

Closeout

After deploy-doc changes, run pnpm build in ui/ when practical, npm run vercel:dry, then npm run build-index and qmd update && qmd embed. If the source/projection boundary changed, update Bundle Wiki Prebuild in the same pass.


Timeline

  • 2026-07-06 | Expanded the deploy source contract again after Vercel reported ENOENT for /vercel/path0/scripts/SKILL.md: the bundle now follows referenced instruction docs, copies them into .content, writes agent-doc-sources.json, and npm run vercel:dry checks the discovered set. private page
  • 2026-07-06 | Added root package metadata to the deploy source contract after Vercel reported ENOENT for /vercel/path0/package.json; npm run vercel:dry now checks existing root package/lock files are uploaded. private page
  • 2026-07-06 | Expanded the deploy source contract after Vercel reported ENOENT for /vercel/path0/README.md and /vercel/path0/SKILL.md: all root *.md docs are now uploaded, bundled into .content, traced, and checked by npm run vercel:dry. private page
  • 2026-07-02 | Added Vercel CLI dry-run deployment manifest checks as a required pre-deploy agent step; the first run caught root raw/session/output files and local UI artifacts in the upload set, so root .vercelignore now scopes source uploads to ui/ and wiki/. Source: User request, 2026-07-02; Vercel changelog, 2026-07-01; scripts/vercel-dry-run-summary.mjs
  • 2026-07-01 | Expanded the deploy checklist with current bundle, env, gating, public discovery, and preview-promotion checks. private page
  • 2026-05-31 | Agent doc checklist from ui README deploy section. Source: ui/README.md, 2026-05-31