You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Part of #2. Release automation, matching Go's release-please.yml, release-please-config.json and build-release.yml at 9e072f9.
Do
release-please:
release-please-config.json with release-type: rust, include-v-in-tag: true, bump-minor-pre-major: true and bump-patch-for-minor-pre-major: true, for the plugin crate.
.release-please-manifest.json starting at 0.0.0.
The workflow runs on pushes to main, using the TOKEN_BOT_GITHUB_TOKEN secret like Go's, so that release PRs trigger CI.
Use extra-files (or a workspace setup) if needed so the plugin's Cargo.toml version and Cargo.lock are bumped together.
Release binaries: on release: created, build protoc-gen-rust-mcp for linux, macos and windows × x86_64 and aarch64 (native runners or cross), and attach .tar.gz (or .zip on windows) archives plus a SHA-256 checksums file to the release.
The binary's --version must report the released version.
This issue asks you to change .github/workflows/**. Don't publish to crates.io (out of scope).
Acceptance criteria
actionlint (or an equivalent) is clean on the new workflows.
The release-binaries workflow can also be triggered with workflow_dispatch as a dry run that uploads the archives as workflow artifacts. Run it once on the PR branch and link the run.
If the TOKEN_BOT_GITHUB_TOKEN secret isn't available in this repo, say so in the PR and ask (factory:question); don't fall back silently to GITHUB_TOKEN.
🤖 Factory: opened PR #17 with the release-please and release-binaries workflows.
Two things from the acceptance criteria need a maintainer's input (details in the PR body):
TOKEN_BOT_GITHUB_TOKEN doesn't exist as a repository secret today (0 repo secrets found via the API; I can't check org-level secrets). The workflow fails fast with a clear error rather than falling back to the default token — could someone confirm/add the secret?
The workflow_dispatch dry run can't be exercised before this PR merges — GitHub only allows dispatching workflow files that already exist on the default branch. I'll trigger it against main right after merge and link the run.
See #17 for the full summary, test evidence, and design decisions (notably using release-type: "simple" + extra-files instead of "rust", due to an open upstream release-please bug with version.workspace = true).
🔍 Post-merge dry run of release-binaries.yml on main (workflow_dispatch): https://github.com/stablekernel/protoc-gen-rust-mcp/actions/runs/37981192010. All 6 platform builds and package succeeded, and release-archives was uploaded with the archives and checksums.txt. Still to do: a maintainer adds TOKEN_BOT_GITHUB_TOKEN to the release environment. Until then, release-please fails on every push to main, by design.
Activity
erikist commentedon Oct 9, 2026
🤖 Factory: picked up by dispatcher; working on branch factory/12-ci-release-please-and-release-binaries.
ci: pin release-please-action, tighten permissions, verify --version (#…
erikist commentedon Oct 9, 2026
🤖 Factory: opened PR #17 with the release-please and release-binaries workflows.
Two things from the acceptance criteria need a maintainer's input (details in the PR body):
TOKEN_BOT_GITHUB_TOKENdoesn't exist as a repository secret today (0 repo secrets found via the API; I can't check org-level secrets). The workflow fails fast with a clear error rather than falling back to the default token — could someone confirm/add the secret?workflow_dispatchdry run can't be exercised before this PR merges — GitHub only allows dispatching workflow files that already exist on the default branch. I'll trigger it againstmainright after merge and link the run.See #17 for the full summary, test evidence, and design decisions (notably using
release-type: "simple"+extra-filesinstead of"rust", due to an open upstream release-please bug withversion.workspace = true).ci: run release-please in the release environment (#12)
ci: release-please and release binaries (#12) (#17)
erikist commentedon Oct 9, 2026
🔍 Post-merge dry run of
release-binaries.ymlonmain(workflow_dispatch): https://github.com/stablekernel/protoc-gen-rust-mcp/actions/runs/37981192010. All 6 platform builds andpackagesucceeded, andrelease-archiveswas uploaded with the archives andchecksums.txt. Still to do: a maintainer addsTOKEN_BOT_GITHUB_TOKENto thereleaseenvironment. Until then,release-pleasefails on every push tomain, by design.