Skip to content

Move the Zero guide to /zero - #102

Open
batuhan wants to merge 1 commit into
mainfrom
zero-docs-path
Open

batuhan wants to merge 1 commit into
mainfrom
zero-docs-path

Conversation

@batuhan

@batuhan batuhan commented Nov 1, 2026 •

Copy link
Copy Markdown
Contributor

The Zero guide lived at /docs/zero-runtime, and /docs/zero only redirected there. The shorter URL is the obvious one, so the guide now lives at /docs/zero.

  • Renames content/(dynamic)/zero-runtime.mdx to zero.mdx and updates every in-page link.
  • /docs/zero-runtime and its .md twin now 301 to /docs/zero/. Shipped CLI versions and older agent catalogs link to the old URL.
  • /docs/runtimes, /docs/runtimes/zero, and /docs/apps/zero redirect to /docs/zero/.

bun run build, check, test:docs, audit, verify:public-safety, and verify:prose all pass. Route verification covers all 93 IA routes.

The product side (docs catalog, feature lifecycle link, CLI docs index) is updated in the monorepo, and the website's llms.txt link is updated in www.

Created with Claude Opus 5.5 in Claude Code.

🤖 Generated with Claude Code


View with [code]smith Prove this works
Need help on this PR? Tag @codesmith-bot with what you need.

Summary by CodeRabbit

  • Documentation

    • Updated Zero links across guides, reference pages, and setup instructions to point to the current Zero documentation page.
    • Clarified how Zero-related database and Functions details are presented.
  • Bug Fixes

    • Updated legacy Zero documentation redirects so older URLs lead to the current page.

/zero was a redirect to /zero-runtime. The guide now lives at /zero, and
/zero-runtime redirects to it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@indent

indent Bot commented Nov 1, 2026 •

Copy link
Copy Markdown
Contributor

Issues

1 potential issue found:

  • Renaming the page to zero.mdx emits dist/zero/index.html, and the runtime treats every zero/ path as private output, so /docs/zero/ will 404 in production. Every link and redirect added in this PR (sidebar, in-page links, 301s from /docs/zero-runtime, /runtimes, /apps/zero) then points at a broken page.
    Found by Indent Review Agent

↑ Select any checkbox above to have Indent auto-fix the issue

CI Checks

All required CI checks passed on da070aa.

Review agents

Select any unchecked box below to run or rerun that agent.

Found issues (1)
  • Indent Review Agent · Zero guide at /zero hits reserved path, 404s
Full results

Indent Review Agent

  • Summary: Zero guide at /zero hits reserved path, 404s
  • Last ran on commit: da070aa4
  • Latest result
    {
      "summary": "Zero guide at /zero hits reserved path, 404s",
      "findings": [
        {
          "fix": "Keep the page out of the `zero/` output directory. Either revert to `zero-runtime.mdx` and the old `/zero` -> `/zero-runtime/` rule, or pick another slug such as `zero-apps`. If `/docs/zero` has to be the canonical public URL, the docs artifact must stop putting it at a root `zero/` path (or the runtime's reservation must change first). Add a guard like the existing `/storage` one in verify-routes.mjs (`if (await exists(path.join(dist, \"zero\"))) throw ...`) so this can't come back.",
          "line": 1,
          "path": "content/(dynamic)/zero.mdx",
          "issue": "The Zero page was moved off `/zero` on purpose in 0bf6148 (\"Publish Zero docs outside the runtime artifact directory\"). The docs build is published as a flat Spacefast artifact (`scripts/redirect-rules.mjs` comment, `dist/spacefast.jsonc`), and `/docs/*` is rewritten with a 200 to `/:splat`. Renaming the page to `zero.mdx` makes Astro emit `dist/zero/index.html`. The Spacefast runtime treats every `zero/` path as private Zero runtime output: `is_private_serving_path` in monorepo `crates/stattic-runtime-core/src/serving_paths.rs:44` returns true for `path.starts_with(\"zero/\")`, and `runtimeInternalArtifactPath` in `packages/common/src/contracts/execution.ts` excludes `zero` and `zero/*` from tenant files. So in production `/docs/zero/` rewrites to a file the runtime refuses to serve, and the Zero guide returns 404. Everything this PR points at it breaks too: the sidebar entry, every in-page `/zero` link, and the 301s from `/docs/zero-runtime`, `/docs/runtimes`, `/docs/runtimes/zero` and `/docs/apps/zero`. Today those all reach a working page. `verify-routes.mjs` only checks that `dist/zero/index.html` exists locally, so CI won't catch it. The `.md` twin is fine: `markdownTwinRules` produces `/docs/zero-runtime.md` -> `/docs/zero.md`, and `zero.md` is outside the reserved prefix.",
          "title": "/docs/zero lands in the platform-reserved `zero/` directory and won't be served",
          "severity": "critical"
        }
      ]
    }

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Nov 1, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-11-01T04:25:02.121939Z da070aa PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@coderabbitai

coderabbitai Bot commented Nov 1, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

No actionable comments were generated in the recent review.

Recent review info
Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 39ad60f1-155d-45f2-8d80-c0bc9d1c24c3
Commits

Reviewing files that changed from the base of the PR and between fd532dc and da070aa.

Files selected for processing: 18
  • DOCS_WRITING_QA.md
  • content/(dynamic)/crons.mdx
  • content/(dynamic)/database.mdx
  • content/(dynamic)/functions.mdx
  • content/(dynamic)/meta.ts
  • content/(dynamic)/object-storage.mdx
  • content/(dynamic)/wordpress.mdx
  • content/(dynamic)/zero.mdx
  • content/(reference)/config-file.mdx
  • content/(reference)/glossary.mdx
  • content/(serve)/site-pages.mdx
  • content/index.mdx
  • content/quickstart.mdx
  • evals.yaml
  • redirects.ts
  • scripts/docs-experience.test.mjs
  • scripts/redirect-rules.mjs
  • scripts/verify-routes.mjs

Included review availability: This review used your included allowance. 0 included reviews remain after this review. Your included PR review attempts over the past 7 days set your current allowance at 10 reviews per hour.

Walkthrough

Zero documentation links, redirects, and route checks now use /zero instead of /zero-runtime. The database page’s setup note and overview were also updated.

Changes: Zero documentation route

Layer / File(s) Summary
Update Zero documentation references
content/**/*.mdx, content/(dynamic)/meta.ts, evals.yaml, DOCS_WRITING_QA.md
Zero links and page references now use /zero. The database page also places its setup note under the database prerequisite callout and clarifies which Spaces receive a database.
Align redirects and route checks
redirects.ts, scripts/redirect-rules.mjs, scripts/docs-experience.test.mjs, scripts/verify-routes.mjs
Redirects and route checks now target /zero. The /runtimes/functions redirect remains unchanged.

Estimated code review effort: 2 (Simple) | ~8 minutes

Change: Other

Suggested reviewers: alexanderaidun-a8

Merge Risk: Minimal · up to da070

The Zero route migration is internally consistent and ready to merge.

Security architecture risk: Minimal · up to da070

The changed redirects point to a fixed documentation destination, and the guide itself is unchanged. No material security risk was identified in this URL migration. Actual deployment behavior was not independently verified.

Retained concerns
No architecture-level concerns identified.

Security review details

Security Blast Radius

  • inferred — The changed entrypoint affects navigation to an already-public documentation page. The unchanged guide and fixed local redirect targets provide no identified mechanism for gaining tenant, service, credential, or data-store authority through this change.

Trust Boundaries and Controls

  • observed — The changed rules contain fixed source paths and destinations beneath the constant /docs deployment base. They introduce no request-derived redirect destination; the existing wildcard mount rewrite is unchanged by the PR.
Pre-merge checks: Passed 5
Check name Status Explanation
Description Check Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check Passed The title clearly and concisely describes the main change: moving the Zero guide to /zero.
Docstring Coverage Passed No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentat…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage

Explanation

No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentation-only edits and deletions within surviving functions are included; unchanged diff context and fully deleted functions are excluded. Analyzed 0 functions across 5 files. (12 skipped: 12 unsupported.)

Finishing Touches
Generate docstrings
  • Commit to this branch
  • Create a new PR
Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

This branch was successfully deployed

1 active deployment
preview/zero-docs-path — da070aa4 Deployed Nov 1, 2026 by spacefast[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant