Skip to content

Document 404 responses for unpublished hosts - #84

Closed
batuhan wants to merge 3 commits into
mainfrom
fix/undeployed-host-status
Closed

batuhan wants to merge 3 commits into
mainfrom
fix/undeployed-host-status

Conversation

@batuhan

@batuhan batuhan commented Oct 24, 2026 •

Copy link
Copy Markdown
Contributor

Document HTTP 404 and X-Spacefast-Undeployed: 1 for unpublished hosts, preserving the distinction from a missing page on a published site and from legal-removal or unavailable pages.

Current main is integrated, including Blume 2.2.6, branding, and link/routing repairs. The full required local suite passes with Bun 1.3.11 and Node 26.

Release hold: verify the runtime rollout before publishing these response semantics. A merged implementation is not proof that the runtime is deployed. No production checks or coordinated Website publication were performed.

@indent

indent Bot commented Oct 24, 2026 •

Copy link
Copy Markdown
Contributor

Issues

All clear! No issues remaining. 🎉

2 issues already resolved
  • Docs describe a 404 plus X-Spacefast-Undeployed: 1 for unpublished hosts, but the runtime on monorepo main still returns 503 with no header. The change is spacefast/monorepo#4402, still open, so merging this first publishes behavior that isn't live. (fixed by commit 8569911)
    Found by Indent Review Agent
  • In limits.mdx, "Both return 404 with X-Spacefast-Undeployed: 1" is ambiguous and can be read as covering the 451 and no-longer-available pages, which don't carry the header. Name the subject explicitly. (fixed by commit 0c400e0)
    Found by Indent Review Agent

CI Checks

All required CI checks passed on 8569911.

Review agents

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

Passed (1)
  • Indent Review Agent · No issues found in the docs edits
Full results

Indent Review Agent

  • Summary: No issues found in the docs edits
  • Last ran on commit: 85699113
  • Latest result
    {
      "summary": "No issues found in the docs edits",
      "findings": []
    }

@coderabbitai

coderabbitai Bot commented Oct 24, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

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: b06a0a6e-14c9-4878-8dae-5c5f6c3b4239

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: 815fb838-f6de-4118-8e14-2eab27b1c52c
Commits

Reviewing files that changed from the base of the PR and between 968ada9 and 42d63d4.

Files selected for processing: 2
  • content/(reference)/limits.mdx
  • content/(serve)/urls.mdx

Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review.

Walkthrough

The serving and reference documentation now describe 404 responses for unpublished or unrouted Spaces. The documentation specifies the X-Spacefast-Undeployed: 1 header and describes how the response differs from a missing page on a published site.

Changes: Unpublished Space responses

Layer / File(s) Summary
Document unpublished response behavior
content/(serve)/urls.mdx, content/(reference)/limits.mdx
The serving documentation describes a 404 response for unrouted hostnames and Spaces that have never published. The reference documentation describes the strictest-safety response as 404 and specifies the undeployed response header. Both document the unpublished response body; the serving documentation also retains the Cache-Control: no-store header. The reference documentation clarifies that legal-removal and no-longer-available pages are customizable.

Priority: Pending latest changes

Estimated code review effort: 1 (Trivial) | ~5 minutes

Change: Other

Suggested reviewers: alexanderaidun-a8c

Merge Risk: Minimal · up to 42d63

No actionable defect is established in the supplied documentation change.

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: documenting 404 responses for unpublished hosts.
Docstring Coverage Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
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 functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0 files. (2 skipped: 2 unsupported.)

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

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Comment thread content/(serve)/urls.mdx Resolved
Comment thread content/(reference)/limits.mdx Resolved
@batuhan

batuhan commented Oct 24, 2026

Copy link
Copy Markdown
Contributor Author

@indent please review this PR and commit fixes for them as well

@indent

indent Bot commented Oct 24, 2026

Copy link
Copy Markdown
Contributor

Review done, one fix pushed in 0c400e0.

  • Fixed: the limits.mdx sentence that began "Both return 404…" now names its subject, "The strictest-safety response and a never-published host both return 404 with X-Spacefast-Undeployed: 1…". Before, it could be read as covering the 451 and no-longer-available pages, which don't carry the header.
  • Not fixed: the docs describe a 404 and the header, but the runtime on spacefast/monorepo main still returns 503 with no header. The change that switches it is https://github.com/spacefast/monorepo/pull/4402, still open when I checked. Merge this PR only after #4402 is deployed. Merging it first would send users and monitors looking for a marker that live hosts don't send. I left the docs text as is, since the fix is merge order.

@spacefast
spacefast Bot temporarily deployed to preview/fix/undeployed-host-status October 24, 2026 06:53 Inactive
@spacefast
spacefast Bot temporarily deployed to preview/fix/undeployed-host-status October 31, 2026 00:12 Inactive
batuhan added a commit that referenced this pull request Nov 14, 2026
Brings in the parts of #127, #125, #114, #111, #109, #105, #103, #97, #88,
#87, #84 and #54 that still match shipped behavior, checked against the
product source, with these corrections:

- Login and permissions: the Agent access copy now quotes the access
  profile text, the Domain and pages-shared-with-you profiles are listed,
  and the login receipt is documented on stdout.
- Retention: a deleted team can be restored for 30 days and keeps its
  records after that. Expired drafts, deleted versions and version history
  are kept. The Personal retained-version cap is gone.
- Serving defaults: the .html redirects answer only GET and HEAD, and
  `index: false` stops inference instead of hiding a root index.html.
- Spaces and publish: slug reservations, config file precedence, Stats
  columns, and when the claim message and claim.key print.
- MCP: `uploadId`, `operation_status` taking `url`, the default-scope
  exclusions, `_meta["spacefast/requiredScopes"]`, the 24-hour approval
  wait, and an eval for it instead of the retired execute sandbox.
- Errors: a blocked Space create or claim is `quota_exceeded`. The
  retired `deploy_` and `build_minutes_quota_exceeded` rows are gone.
- CLI: `--team` is `-T` everywhere in the authored pages.
- Undeployed hosts answer 404 with X-Spacefast-Undeployed. Functions and
  Zero client bundles are 24 MiB. Domain claims don't expire.

#103's hand-edited generated/errors pages are left out; the next snapshot
export produces them.

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

batuhan commented Nov 14, 2026

Copy link
Copy Markdown
Contributor Author

Folded into #132, checked against the current product source. Details are in #132's description.

This branch was previously deployed

1 inactive deployment
preview/fix/undeployed-host-status — 85699113 Deployed Oct 31, 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