Changelog
Product and protocol updates.
0.4.0: May 2026
Cross-chain SwapVM swap with multi-LP partition repayment proven end-to-end.
- Cross-chain SwapVM ship can now partition each token across multiple chain-A source LPs. The brain's
prepareCrossChainSwapVMCommitmentflow does a greedy fill in caller-supplied LP order, falling through when capped by per-LP availability. WhensourceLpsis omitted, the brain auto-picks chain-A LPs by available capital. - Live E2E (2026-05-07): 1 mUSDC traded for 0.995 mDAI on Base Sepolia against a strategy shipped on Base, with the repayment leg bridged from chain A to the destination filler on chain B via LayerZero V2 OFT. Both bridge legs settled on chain (200.2 mUSDC + 200.2 mDAI delivered to the filler).
- Filler fee (
JIT_FILLER_FEE_BPS, default 10 bps) is computed per partition rather than per strategy, so a 200-unit ship split 100 / 100 across two source LPs produces two 100.1-unit obligations. - Fixed a load-bearing arg-order bug in
resolveEquivalentToken(cross-chain asset mapping) that surfaced when the 2026-05-01 testnet redeploy leftmUSDC.84532andmWBTC.1301at the same address.
0.3.0: April 2026
Dumb-vault rollback. SLP simplified to custody and signature plumbing only.
- Removed on-chain per-LP balance tracking, per-strategy LP commitments, aggregate committed-balance accounting, and bridge delivery attribution from the SLP. All of that now lives in the brain DB.
- Deleted the SwapVM attribution hook (
Aqua0SwapVMHook). SwapVM PnL is now distributed off-chain by the brain readingSwapVMRouter.Swappedagainstswap_strategy_commitments. - Deleted the intent stack (
IntentRouter,SettlementContract,EscrowModule,SourceLock,FillerRegistry) and the legacy LP smart account (lp/Account*.sol). LPs now interact with the SLP directly using their EOA or 4337 wallet; the SLP usesmsg.senderas the LP identity. - Deleted the pre-LayerZero bridge adapters (
Composer,CCTPAdapter,CCTPComposer,StargateAdapter,BridgeRegistry). Cross-chain repayment now goes throughslp.withdrawForRepaymentplus a LayerZero OFT bridge, with tokens landing directly in the destination SLP's balance. - SLP authorization model collapsed to three single-slot privileged identities:
backendSigner,repaymentWorker,operator. NoAccessControlrole mapping. shipStrategy/dockStrategy/reshipStrategyare now operator-gated and commitment-less on chain (the brain pre-validates aggregate commitments off-chain before signing).
0.2.0: April 2026
V4 JIT cross-chain swap loop landing. LayerZero V2 OFT adapters deployed.
- Backend signs an EIP-712
JITPayload. Trader submits a Uniswap V4 swap with that payload ashookData. The hook validates against the SLP'sbackendSigner, injects a temporary range, the swap executes, the hook removes the range and emitsSwapSettled. - Repayment-worker drains the source LP via
slp.withdrawForRepaymentagainst a backend-signedRepaymentWithdrawPayload, then dispatches the LayerZero OFT message; tokens land directly in the destination SLP via OFT delivery (no Composer hop). - LayerZero V2 OFT adapters deployed and peered between Base Sepolia (84532) and Unichain Sepolia (1301) for mUSDC, mDAI, mWBTC, mWETH (
MockTokenOFTAdapteron testnet). - Brain refactor: read source data from Ponder rather than running its own RPC
getLogscursor. TheSwapSettledpoller still drives PnL overlay updates, but reads fromslp_swap_settledvia a 4-second cached read-through.
0.1.0: April 2026
Single-chain SwapVM swap proven end-to-end on Base Sepolia.
- LP deposit, operator-shipped strategy via
slp.shipStrategy, 1inch Aqua registers the strategy in its 4D virtual ledger, trader hitsAquaSwapVMRouter.swap, router emitsSwapped. - Brain attribution (
swapvm-attribution.service.ts) consumesSwapVMRouter.Swappedand pro-rata-distributes deltas acrossswap_strategy_commitmentsrows. - E2E driver (
scripts/e2e-aqua-swap.ts) passes: 1 mUSDC traded for 0.99 mDAI with attribution credited to LP overlays. - Initial Base Sepolia and Unichain Sepolia deployments of the SLP, V4 hook, and 1inch Aqua infrastructure. Public docs scaffolding shipped.