docs(release): ship the fork's SDK with every release

Merged
KE
1mo ago
+33-13

Every fork release now ships the fork's own SDK, so Replo gets real types for fork-only routes. npm only carries upstream's @opencode-ai/sdk, which will never know routes like question.progress.

Context: v1.18.32-4 is the first release with the SDK tarball · andytown #28427 installs it and adds a test that keeps all three pins on one version · the andytown skill release-opencode.md gained the same steps, and this keeps the two runbooks in sync.

What changed

  • Cut a release: build the SDK from the same commit as the binaries, pack it the way packages/sdk/js/script/publish.ts does (minus npm publish), and upload opencode-ai-sdk-<v>.tgz with them.
  • Rules that bite: every release must attach the SDK tarball. Never npm publish it, because the npm scope is upstream's.
  • Downstream: andytown pins three things now, not two. The skill path is also current.
  • Fix: the archive step runs in a subshell, so the gh release create paths resolve from the repo root. Before, the block cd'd into dist and never came back.

Testing Done

  • Docs only. These steps produced v1.18.32-4's SDK asset: build.ts regenerated a client identical to the committed one, and the packed tarball is what andytown installs (@opencode-ai/sdk@1.18.32-4; its typecheck and 1,321 coordinator tests pass).
  • The stale tsconfig.tsbuildinfo line is there because the build skipped emitting dist without it.

🤖 Generated with Claude Code


Summary by cubic

Updates the release runbook so every fork release now ships the fork's SDK tarball alongside the binaries, giving Replo's coordinator real types for fork-only routes.

  • Builds the SDK from the same commit as the binaries and uploads opencode-ai-sdk-<v>.tgz with the release.
  • Adds a rule that every release must attach the tarball, and clarifies never to npm publish it since the npm scope is upstream's.
  • Runs the archive step in a subshell so gh release create paths resolve from the repo root instead of dist.
  • Lists the coordinator's @opencode-ai/sdk pin as the third downstream dependency, and updates the andytown skill path.