Skip to content

Refresh generated references from the current API contract - #54

Draft
batuhan wants to merge 4 commits into
mainfrom
docs/refresh-generated-reference
Draft

batuhan wants to merge 4 commits into
mainfrom
docs/refresh-generated-reference

Conversation

@batuhan

@batuhan batuhan commented Sep 26, 2026 •

Copy link
Copy Markdown
Contributor

Refreshed public references

Re-export the complete producer-owned snapshot for CLI/API 0.8.0 rather than editing generated files individually:

  • 467 public API operations, 448 partner operations, and 759 error pages.
  • Current CLI command reference, including comment resolution/reactions, domain registration, DNS replacement, and source availability. Removed archive/unarchive commands no longer appear.
  • All 23 previously missing team-context, skills, Design System, source, registration, and research paths are included.
  • Version-history entries for 0.6.0, 0.6.1, 0.7.0 and 0.8.0, including removed commands and MCP breaking changes. Untagged milestones are distinguished from proof of npm publication.
  • Current agent setup pages, with navigation for the newly generated clients.

The snapshot contains 853 owned artifacts. Existing authored quota-error corrections are retained, and the branch is synced with current documentation.

Compatibility routing

The larger reference exceeded the static route budget. Collapse equivalent resource/tag section aliases into wildcard redirects, with exact method aliases ordered first. This preserves the compatibility destinations while reducing the configuration to 1,989 routing rules. A real routing-compiler test covers section anchors and method precedence.

Verification

  • Generated ownership/digest verification passes.
  • Type checks and link validation pass.
  • Full static build, public-safety checks, and route verification pass.
  • 29 documentation tests pass, including the real routing-compiler regression.
  • Prose checks pass across 932 pages and 2,693 OpenAPI prose fields.
  • Route verification covers 3,485 compatibility URLs; all root-relative links resolve.

The final one-description metadata regeneration was rechecked for ownership, prose, and documentation tests after the full build. Matching producer corrections must merge before future trunk regeneration. npm publication remains an independent release-delivery blocker; this PR does not publish packages or activate installers.


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

View in Indent View in Slack
Tag @indent to continue the conversation here.

Export the producer-owned snapshot from the current product source: 422
public and 443 partner operations, 632 error codes, and the CLI, changelog,
setup, and redirect references.

The public-safety scan now skips hex runs inside a UUID, so the nil and max
UUID sentinels in schema patterns pass while a bare short commit hash next to
them still fails. A behavioral test covers both and runs with the scan.

The Internals rule matches home-directory paths only at a path boundary, so
CLI command paths like src/commands/users/ are not flagged. Add spelling
exceptions for new reference vocabulary.
@indent

indent Bot commented Sep 26, 2026 •

Copy link
Copy Markdown
Contributor
PR Summary

Re-exports the producer-owned generated/ snapshot from the current product source and adjusts the public-safety gate so the new snapshot passes. The public and partner OpenAPI operation sets now match the live openapi.json and openapi.partner.json exactly (version 0.5.0).

  • OpenAPI: 422 public and 443 partner operations. Artifact and domain-research operations are removed (9 public, 16 partner), and their reference pages and compatibility redirects go with them.
  • Errors: 632 codes. About 50 are new (connectors, Jetpack, labels, visual review, quota_exceeded). Seven are removed, including space_quota_exceeded, deploy_quota_exceeded, and build_minutes_quota_exceeded.
  • Authored pages: the errors, usage, limits, and anonymous-claim pages now name quota_exceeded for Space-limit refusals. The retired deploy and build-minute quota rows are gone from the errors table.
  • CLI reference: regenerated at spacefast/0.5.0, with 55 new command sections. The oclif "See code" links into the private monorepo are gone.
  • Changelog: adds the v0.4.0 and v0.4.1 release pages, plus 0.4.x and 0.5.0 sections on every package page.
  • Redirects: 3,162 compatibility URLs, which compile to 1,925 routing rules (the cap is 2,100).
  • Public safety: the short-hash scan exempts only the nil and max UUID sentinels. A node:test case checks that a real UUID still fails.
  • Prose: new spelling exceptions: hostname's, placeable, Viewport/viewport, MCPs.

Issues

1 potential issue found:

  • The CLI reference prints spacefast/0.5.0 and documents about 28 commands (sf users *, sf rules *, sf storage get/put, sf spaces archive/restore, sf auth as/reset, and others) that are missing from the latest npm release, 0.4.1. The package changelog pages, titled "Release history ... on npm", also list a ## 0.5.0 release that is not on npm or tagged. Hold the refresh until 0.5.0 is published, or have the exporter stop at the latest published version.

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

3 issues already resolved
  • The refreshed error registry drops space_quota_exceeded, deploy_quota_exceeded, and build_minutes_quota_exceeded: the space and build-minute caps now return quota_exceeded, and the daily deploy allowance only warns. But usage.mdx, limits.mdx, anonymous-and-claim.mdx, and api/errors.mdx still tell clients to branch on the old codes. Update those pages in the same merge. (fixed by commit eeec686)
  • All 287 _See code: links in the CLI reference point at github.com/spacefast/monorepo/blob/v0.5.0/src/commands/..., so every one 404s for readers. The repo is private, the v0.5.0 tag doesn't exist, and the files actually live under packages/cli/src/commands. This predates the PR (main had 232), but the refresh adds 55 more, and AGENTS.md forbids links to a non-public monorepo. Strip these lines in the CLI docs generator and re-export. (fixed by commit 026437a)
  • The short-hash scan in verify-public-safety.mjs now skips every UUID, but the only UUID it ever tripped on is the max sentinel ffffffff-ffff-ffff-ffff-ffffffffffff (the nil UUID has no a–f). A real team or space UUID pasted into docs used to fail the gate and now passes silently. Consider exempting only the nil and max sentinels. (fixed by commit 026437a)

CI Checks

All required CI checks passed on 026437a.

@coderabbitai

coderabbitai Bot commented Sep 26, 2026 •

Copy link
Copy Markdown

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true
  • 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 generated/cli/index.md
@@ -21,7 +21,7 @@ $ npm install -g spacefast
$ sf COMMAND
running command...
$ sf (--version)
spacefast/0.3.0
spacefast/0.5.0
$ sf --help [COMMAND]

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Bug · CLI reference and package changelogs document unreleased 0.5.0

npm view spacefast dist-tags gives latest: 0.4.1, the @spacefast/* packages top out at 0.4.1, and neither spacefast/cli nor the monorepo has a v0.5.0 tag. I diffed the oclif.manifest.json from the published 0.4.1 tarball against the ## \sf …`headings here. These are documented but ship in no release:auth as, auth reset, connectors connections reconnect, db list, dev run-many, domains update, rules (+add/ls/pause/resume/rm/test/validate), spaces archive/restore, storage get/put, users (+delete/get/ls/reactivate/revoke/sessions/settings/suspend), and zero queries. sf git webhooks` still ships in 0.4.1 but is no longer documented.

A reader who runs npm install -g spacefast and follows this page gets "command not found". AGENTS.md says to document shipped, publicly verifiable behavior only. generated/changelog/packages/*.md has the same problem with the ## 0.5.0 sections.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed, and this gates the PR. The exporter builds the CLI reference and package changelogs from source, which is at 0.5.0, while npm latest is 0.4.1. There's no clean partial refresh, since the manifest owns the whole snapshot. So this waits until 0.5.0 is published to npm, then gets re-exported. Leaving this thread open as the merge guard.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Makes sense to hold it on this thread. I confirmed 026437a fixes the other two: the "See code" links are gone and the UUID exemption now covers only the sentinels. Both are marked resolved.

One more thing to fix before merge, separate from the 0.5.0 wait. The snapshot drops space_quota_exceeded, deploy_quota_exceeded, and build_minutes_quota_exceeded, but four authored pages still name them: content/api/errors.mdx, content/(account)/usage.mdx, content/(reference)/limits.mdx, and content/(publish)/anonymous-and-claim.mdx. The space and build-minute limits now return quota_exceeded, and the daily deploy allowance only warns. These pages aren't generated, so they can be fixed in this PR now.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed the retired quota codes in eeec686. errors.mdx, usage.mdx, limits.mdx, and anonymous-and-claim.mdx now say quota_exceeded (limits/enforce.ts, from #3045, which is in production). The deploy and build-minute rows are dropped from the errors table. This thread stays open as the 0.5.0 merge guard.

Comment thread generated/cli/index.md Outdated
Comment thread scripts/verify-public-safety.mjs Outdated
Re-export without the CLI reference's per-command source links, which pointed
into a private repository. The Internals path-boundary change is no longer
needed and is reverted.

Exempt only the nil and max UUID sentinels from the short-hash scan so a
pasted real UUID still fails, and extend the test to prove it.
@batuhan
batuhan marked this pull request as draft September 26, 2026 17:23
The Space and build-minute limits now answer quota_exceeded, and the daily
publish allowance only warns. Update the authored pages that still named the
retired codes.

This branch was successfully deployed

1 active deployment
preview/docs/refresh-generated-reference — 40b73223 Deployed Oct 20, 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.

2 participants