Skip to content

docs: document the new-crate token bootstrap for trusted publishing#266

Merged
GeiserX merged 1 commit into
mainfrom
docs/releasing-new-crate-bootstrap
Jun 15, 2026
Merged

docs: document the new-crate token bootstrap for trusted publishing#266
GeiserX merged 1 commit into
mainfrom
docs/releasing-new-crate-bootstrap

Conversation

@GeiserX

@GeiserX GeiserX commented Jun 15, 2026

Copy link
Copy Markdown
Owner

Why

The v0.40.0 publish failed at the newly-added ts_netmon crate with:

403 Forbidden: Trusted Publishing tokens do not support creating new crates. Publish the crate manually, first

crates.io's OIDC trusted publishing cannot create a brand-new crate — the first version of any new crate needs a one-time manual cargo publish with a real token, plus a trusted-publisher registration. The existing RELEASING.md said "all crates already exist, so no token bootstrap is needed", which is true until a new crate is added.

What

Adds an "Adding a NEW geiserx_* crate" subsection to RELEASING.md with the full checklist: workspace wiring, the scripts/publish-crates.sh CRATES entry (leaf-first, before dependents) + count bump, and the one-time token bootstrap (cargo publish -p <crate> + setup-trusted-publishing.sh), plus how to resume a release that already published the rest of the workspace (gh workflow run Release --ref main, SKIP_PUBLISHED=1).

Docs only.

Signed-off-by: Sergio sergio@geiser.cloud

Created using Claude Code (Opus 4.8)

A brand-new crate cannot be created by OIDC trusted publishing — crates.io
returns 403 "Trusted Publishing tokens do not support creating new crates",
so the first version needs a one-time manual cargo publish with a token. This
bit the v0.40.0 release when ts_netmon was added. Add an explicit new-crate
checklist to RELEASING.md so the next new crate does the bootstrap up front.

Signed-off-by: GeiserX <9169332+GeiserX@users.noreply.github.com>
@coderabbitai

coderabbitai Bot commented Jun 15, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@GeiserX, we couldn't start this review because you've reached your PR review rate limit.

More reviews will be available in 55 minutes and 34 seconds. Learn how PR review limits work.

Your organization has used up its prepaid credits, and credit purchases are no longer available. Enable the review add-on in the billing tab to keep reviews running — you're only billed for reviews past your plan's rate limits ($0.25/file).

⌛ How to resolve this issue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available.

Please see our Fair Usage Limits Policy for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: c5443d7d-1f0a-4473-8000-401adacddd27

📥 Commits

Reviewing files that changed from the base of the PR and between 2871446 and 160f2c2.

📒 Files selected for processing (1)
  • docs/RELEASING.md
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/releasing-new-crate-bootstrap

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 and usage tips.

@GeiserX GeiserX merged commit 9fc1192 into main Jun 15, 2026
16 checks passed
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