chore(sdks): Version Packages - #684
Open
github-actions[bot] wants to merge 1 commit into
Open
Conversation
Contributor
Author
|
● Reviewed · against Note Approved. Changesets release PR: bumps Tip Teach the reviewer. React 👍 on findings that helped, 👎 on false positives. Reply to push back or add context — we aggregate this weekly to tune the bot. Comment |
marktoda
approved these changes
Aug 6, 2026
Graphite Automations"Request reviewers once CI passes on sdks monorepo" took an action on this PR • (08/06/26)3 reviewers were added to this PR based on Siyu Jiang (See-You John)'s automation. |
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 7, 2026 17:16
8ac287b to
99fda63
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 7, 2026 19:29
99fda63 to
446144c
Compare
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.
This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
@uniswap/liquidity-launcher-sdk@1.10.0
Minor Changes
4cfb073: Instant Launch: state the post-redeploy pool shape. The 2026-08-05 chain-4663 full redeploy did not re-pin the 3e05da8 InstantLaunchStrategy unchanged — it recompiled it with a new pool shape, which the SDK still described as "unchanged across deploys". All values below were read back from the deployed strategies' getters (
TICK_SPACING()/initialTick()/MIN_LAUNCH_TICK()) on both current strategies and all eight pre-redeploy strategies.INSTANT_LAUNCH_POOL_TICK_SPACING→25(was 60). The current generation's compile-timeTICK_SPACING; every pre-redeploy generation is 60. Confirmed against liveTokenLaunchedevents: post-redeploy launches carry pool keys(2500, 25, hookless).INSTANT_LAUNCH_ALLOWED_POOL_TICK_SPACINGS(new) →[25, 60]. The append-only grandfather set (same shape asQUICK_LAUNCH_ALLOWED_POOL_TICK_SPACINGS): pools are permanent, so routing/discovery consumers deriving a token's candidate launch pools must race a(INSTANT_LAUNCH_POOL_LP_FEE, spacing)key for every entry — the token address alone cannot say which generation minted its pool.INSTANT_LAUNCH_INITIAL_TICK→198_050(was 198,060) andINSTANT_LAUNCH_MIN_LAUNCH_TICK→-160_100(was -208,980): the current generation's launch-position bounds.InstantLaunchDeployment.tickSpacing/.minLaunchTick(new registry fields, beside the existinginitialTick): the authoritative per-generation pool shape — 25 / 198,050 / -160,100 on the 2026-08-05 pair, 60 / 198,060 / -208,980 on every earlier generation. Consumers that know a launch's minting strategy resolve the exact pool key from here.getInstantLaunchPoolKey/getInstantLaunchPoolIdnow take an optionaltickSpacing(default: the current generation) — pass the minting generation's spacing for pre-redeploy tokens.getInstantLaunchPoolKeys(new) returns one candidate key per grandfathered spacing, newest first, for consumers that must probe.QuoteInstantLaunchBuyParams.tickSpacing(new, optional) threads the same override through quoting.INSTANT_LAUNCH_POOL_LP_FEEis genuinely unchanged (2500 on all ten deployed strategies). The quick-launch graduation-pool counterpart of this change (50 → 25) shipped in 1.9.0.@uniswap/uniswapx-sdk@3.1.0
Minor Changes
dd518c4: Rename
multicallSameContractManyFunctionstomulticallSameContractManyCalls. The old name is still exported as a deprecated alias, so no existing import breaks.The helper resolves
functionNameto a single fragment once, then encodes one call per entry infunctionParams— it varies the arguments of one function, not the function itself.functionNameliving in the sharedMulticallParamsbase type already makes "many functions" impossible: its siblingmulticallSameFunctionManyContractsextends the same base and varies the address instead, and that one is named accurately.No capability was missing.
multicallis exported and takes arbitrary{target, callData}pairs, so heterogeneous functions and contracts were always reachable through it; these two helpers are narrow conveniences over it, one of them mislabeled.Patch Changes
241fb9a: Add Ink (chainId 57073) DutchV3 support. The reactor and OrderQuoter are deployed and source-verified on Ink; these are the mapping entries that let the SDK resolve them.
REACTOR_ADDRESS_MAPPING[57073][Dutch_V3]→0x000000007A1C8e570011EeDF86A2A35593013cBA. This is the same address as Robinhood (4663), as chains 130/196/1868 already share0x000000005aF6…;REVERSE_REACTOR_MAPPINGcollapses shared addresses to one key, which is correct since both areDutch_V3.UNISWAPX_ORDER_QUOTER_MAPPING[57073]→ canonical0x00000000a3db63Df9078cBF3dF88B4CAdD5a7F58. Required:constructSameAddressMaponly seeds the fiveNETWORKS_WITH_SAME_ADDRESSchains, so without an explicit entry the lookup isundefinedandUniswapXOrderQuoter's constructor throwsMissingConfiguration("quoter", "57073").PERMIT2_MAPPING[57073]→ canonical Permit2, verified on-chain (9,152 bytes, non-zeroDOMAIN_SEPARATOR()).EXCLUSIVE_FILLER_VALIDATION_MAPPING[57073]→ zero address, matching every other V3-only chain. Required, and the quieter of the two: without an entry the lookup isundefined, andencodeExclusiveFillerDataassigns it intoValidationInfo.additionalValidationContractunguarded, soundefinedpropagates into order construction instead of throwing. Exclusivity itself is reactor-enforced viaExclusivityLib; the zero address makes the hook correctly inert.No entry is added for
Priority,Dutch_V2,Hybrid, or theUNISWAPX_V4_*mappings — no such reactors are deployed on Ink, and the absence is what makes x-service'sOffChainUniswapXOrderValidator.validateReactorAddressreject those order types for the chain.Ink needs no chain-specific order-construction handling: it is a standard OP-stack L2 with 1s blocks, a real dynamic EIP-1559 basefee, and native ETH, so
adjustmentPerGweiBaseFeekeeps its normal non-zero treatment and the native sentinel is usable.@uniswap/sdk-corealready has full Ink coverage (ChainId.INK,INK_ADDRESSES,WETH9[57073], 1s block time).1797f3b: UniswapX quoters: return batch results in the caller's order.
quoteBatch/validateBatch(and the Relay and V4 equivalents) misattributed results for batches that mixed orders with and without block overrides — the caller got another order's quote and validation.getMulticallResultsdispatches each order carryingblockOverrideson its owneth_call, because a block override applies to a whole call and those orders cannot share one. It then concatenated the responses override-orders-first and returned them, discarding the caller's ordering. Since results carry no order identity,results[i]is the only binding toorders[i], so the mismatch was silent.Results are now scattered back into their input positions. This also corrects two places that cross-referenced the permuted results against the un-permuted input array — the exclusive-filler branch of
getValidationsandcheckTerminalStates— which could blend one order's revert data with another order's deadline, nonce, or block override into a single verdict.The reordering triggered whenever an order without block overrides preceded one with them:
[dutch, priority]came back swapped,[dutch, dutch, priority]rotated all three. Homogeneous batches, single-order calls, and batches listing every override order first were already correct, soquote()andvalidate()were never affected. In practice this needed a batch mixing Dutch with Priority or Hybrid orders.Also skips a wasted
eth_callthatUniswapXOrderQuoterandRelayOrderQuoterfired when every order in a batch carried an override, and consolidates three copies of the batching logic into onemulticallOrdersPreservingOrderhelper.