changeset: unlink @x402r/{core,sdk,helpers} for independent versioning#176
Merged
Conversation
Switch .changeset/config.json `linked` from [["@x402r/core", "@x402r/helpers", "@x402r/sdk"]] to []. Each package versions on its own merits. Why: - @x402r/sdk and @x402r/helpers don't import from each other. Dep graphs share @x402r/core only (sdk → core, erc8004, viem; helpers → core, evm). Linking them forced matched versions for no technical reason. - The linked grouping was added Mar 9 (a60bd32) with stated reason "version bumps stay in sync across packages" — a UX preference, not a correctness constraint. - Industry standard for TS monorepo SDKs is unlinked: verified against wagmi, viem, vercel/ai, TanStack/query — all use linked: []. Effect: @x402r/core can ship a patch without bumping sdk/helpers, @x402r/sdk can ship a feature without bumping core/helpers, @x402r/helpers can ship a fix without bumping sdk. Compatibility between packages is conveyed via "@x402r/core": "workspace:^" in sdk/helpers, resolved at publish time — same pattern peers use. No effect on pending Version PR #175: every existing changeset explicitly names its affected packages in front-matter, so the bump plan is identical with or without linking for the current alpha cycle. Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
A1igator
approved these changes
May 23, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Set
linkedto[]in.changeset/config.json. Each@x402r/*package versions independently.Why
@x402r/sdkand@x402r/helpersdon't import from each other. Their dep graphs share@x402r/coreonly:@x402r/sdk→@x402r/core,@x402r/erc8004,viem@x402r/helpers→@x402r/core,@x402r/evmThe previous linked group
[[core, sdk, helpers]]enforced lockstep version bumps for no technical reason. It was added on Mar 9 (commita60bd32) with the stated reason "version bumps stay in sync across packages" — a UX preference, not a correctness constraint.Industry standard for TS monorepo SDKs is unlinked. Verified against wagmi, viem, vercel/ai, TanStack/query — all four use
linked: [].Effect
After this lands:
@x402r/corecan ship a patch fix without bumping sdk/helpers.@x402r/sdkcan ship a feature without bumping core/helpers.@x402r/helperscan ship a fix without bumping sdk.Compatibility between packages is conveyed via
"@x402r/core": "workspace:^"in sdk and helpers, resolved at publish time — same pattern peers use.No effect on pending Version PR #175
Every existing changeset under
.changeset/sdk-authcapture-*.mdexplicitly names its affected packages in front-matter, so the linked grouping doesn't change the bump plan for the current alpha cycle. After #175 merges and0.3.0-alpha.0ships, future releases benefit from the unlinked configuration.Test plan
changeset versionrun recomputes bumps withlinked: []. Existing pending changesets explicitly name each affected package, so behavior should be unchanged for the alpha cycle.🤖 Generated with Claude Code