@dev.sail.money/sailor 1.3.0-98 → 1.4.0-244
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +7 -7
- package/LICENSE +1 -1
- package/README.md +64 -472
- package/package.json +5 -6
- package/packages/cli/README.md +1 -1
- package/packages/cli/dist/index.cjs +1481 -463
- package/packages/cli/dist/server.cjs +16088 -17900
- package/packages/sdk/README.md +1 -1
- package/packages/sdk/dist/abis/ConfigurablePermission.d.ts +130 -0
- package/packages/sdk/dist/abis/ConfigurablePermission.d.ts.map +1 -0
- package/packages/sdk/dist/abis/ConfigurablePermission.js +79 -0
- package/packages/sdk/dist/abis/ConfigurablePermission.js.map +1 -0
- package/packages/sdk/dist/abis/SailKernel.d.ts +42 -0
- package/packages/sdk/dist/abis/SailKernel.d.ts.map +1 -1
- package/packages/sdk/dist/abis/SailKernel.js +34 -0
- package/packages/sdk/dist/abis/SailKernel.js.map +1 -1
- package/packages/sdk/dist/abis/index.d.ts +1 -0
- package/packages/sdk/dist/abis/index.d.ts.map +1 -1
- package/packages/sdk/dist/abis/index.js +1 -0
- package/packages/sdk/dist/abis/index.js.map +1 -1
- package/packages/sdk/dist/chains.d.ts +9 -7
- package/packages/sdk/dist/chains.d.ts.map +1 -1
- package/packages/sdk/dist/chains.js +103 -32
- package/packages/sdk/dist/chains.js.map +1 -1
- package/packages/sdk/dist/client.d.ts +1 -1
- package/packages/sdk/dist/client.d.ts.map +1 -1
- package/packages/sdk/dist/client.js +137 -16
- package/packages/sdk/dist/client.js.map +1 -1
- package/packages/sdk/dist/deployments.d.ts +6 -4
- package/packages/sdk/dist/deployments.d.ts.map +1 -1
- package/packages/sdk/dist/deployments.js +120 -118
- package/packages/sdk/dist/deployments.js.map +1 -1
- package/packages/sdk/dist/eip712.d.ts +84 -0
- package/packages/sdk/dist/eip712.d.ts.map +1 -1
- package/packages/sdk/dist/eip712.js +148 -0
- package/packages/sdk/dist/eip712.js.map +1 -1
- package/packages/sdk/dist/fees.d.ts +2 -1
- package/packages/sdk/dist/fees.d.ts.map +1 -1
- package/packages/sdk/dist/fees.js +2 -1
- package/packages/sdk/dist/fees.js.map +1 -1
- package/packages/sdk/dist/index.d.ts +4 -3
- package/packages/sdk/dist/index.d.ts.map +1 -1
- package/packages/sdk/dist/index.js +4 -3
- package/packages/sdk/dist/index.js.map +1 -1
- package/packages/sdk/dist/intelligence.d.ts +1 -1
- package/packages/sdk/dist/intelligence.js +1 -1
- package/packages/sdk/dist/safe.d.ts +49 -0
- package/packages/sdk/dist/safe.d.ts.map +1 -1
- package/packages/sdk/dist/safe.js +74 -0
- package/packages/sdk/dist/safe.js.map +1 -1
- package/packages/sdk/dist/types.d.ts +7 -0
- package/packages/sdk/dist/types.d.ts.map +1 -1
- package/packages/sdk/package.json +6 -2
- package/packages/ui/dist/assets/{add-BX5reKtK.js → add-sHg4oAtj.js} +2 -2
- package/packages/ui/dist/assets/{all-wallets-IZ3PlVF-.js → all-wallets-BhPcqrMm.js} +2 -2
- package/packages/ui/dist/assets/{app-store-ARgRdMdF.js → app-store-B_PQMwCf.js} +1 -1
- package/packages/ui/dist/assets/{apple-VCaqsI9w.js → apple-CqAFK7Fj.js} +2 -2
- package/packages/ui/dist/assets/arrow-bottom-CbxIflTv.js +8 -0
- package/packages/ui/dist/assets/{arrow-bottom-circle-h5vFiZ2I.js → arrow-bottom-circle-BFgY35YA.js} +2 -2
- package/packages/ui/dist/assets/arrow-left-DCG2m2BY.js +8 -0
- package/packages/ui/dist/assets/arrow-right-NrPOhG6W.js +8 -0
- package/packages/ui/dist/assets/arrow-top-BHTmGsDP.js +8 -0
- package/packages/ui/dist/assets/{bank-6c28yOM9.js → bank-BqDvUazs.js} +2 -2
- package/packages/ui/dist/assets/{basic-CJnbTfSd.js → basic-CHFjQMod.js} +177 -177
- package/packages/ui/dist/assets/{browser-CDKlxM3D.js → browser-C_VdKE7p.js} +2 -2
- package/packages/ui/dist/assets/{card-DQdED02q.js → card-w-1brQoV.js} +2 -2
- package/packages/ui/dist/assets/ccip-jvDTeGaI.js +1 -0
- package/packages/ui/dist/assets/{checkmark-JoRNVoFV.js → checkmark-CLBmxdAF.js} +2 -2
- package/packages/ui/dist/assets/{checkmark-bold-B6bGHVIs.js → checkmark-bold-Ca_e1PMs.js} +2 -2
- package/packages/ui/dist/assets/chevron-bottom-BhvFRdSL.js +8 -0
- package/packages/ui/dist/assets/chevron-left-cjMaNbHC.js +8 -0
- package/packages/ui/dist/assets/chevron-right-CRuHR0b-.js +8 -0
- package/packages/ui/dist/assets/chevron-top-Bq0a2jj-.js +8 -0
- package/packages/ui/dist/assets/{chrome-store-D-fiJ9qJ.js → chrome-store-Cieq6j7x.js} +2 -2
- package/packages/ui/dist/assets/{clock-xCPkzwjj.js → clock-Dkj5WbVg.js} +2 -2
- package/packages/ui/dist/assets/{close-BkqmPpWG.js → close-C8eE6Dfz.js} +2 -2
- package/packages/ui/dist/assets/{coinPlaceholder-PIvN9oq_.js → coinPlaceholder-DndKH-8C.js} +2 -2
- package/packages/ui/dist/assets/{compass-CW5kWcxW.js → compass-DzoLByzm.js} +2 -2
- package/packages/ui/dist/assets/{copy-DUZlAQJJ.js → copy-Y7UMmVLt.js} +2 -2
- package/packages/ui/dist/assets/core-BkWdAWjX.js +907 -0
- package/packages/ui/dist/assets/cursor-BAQNxqYB.js +3 -0
- package/packages/ui/dist/assets/{cursor-transparent-BUAMB0G1.js → cursor-transparent-BUHY29Re.js} +2 -2
- package/packages/ui/dist/assets/{desktop-BxdlwV8P.js → desktop-DkZLCs5P.js} +2 -2
- package/packages/ui/dist/assets/{disconnect-GelNh3mn.js → disconnect-CphsO-wg.js} +2 -2
- package/packages/ui/dist/assets/{discord-N0jnxkzC.js → discord-CYH46bgt.js} +2 -2
- package/packages/ui/dist/assets/{etherscan-B41u7wF4.js → etherscan-2-3-Icbx.js} +2 -2
- package/packages/ui/dist/assets/events-DQ172AOg.js +1 -0
- package/packages/ui/dist/assets/{exclamation-triangle-BWJC56FC.js → exclamation-triangle-Bx9-1mpn.js} +2 -2
- package/packages/ui/dist/assets/{extension-G6I6oogw.js → extension-BuDZDNPV.js} +2 -2
- package/packages/ui/dist/assets/external-link-k6oTiNch.js +8 -0
- package/packages/ui/dist/assets/{facebook-47twy32b.js → facebook-BVB4qCju.js} +2 -2
- package/packages/ui/dist/assets/{farcaster-DYqnqCqs.js → farcaster-CxfWmDK3.js} +2 -2
- package/packages/ui/dist/assets/{filters-dF6xeJnE.js → filters-CXyIzkBz.js} +2 -2
- package/packages/ui/dist/assets/{github-DbW4Ihz2.js → github-Bga1HQTm.js} +2 -2
- package/packages/ui/dist/assets/{google-TKm7G8LF.js → google-CKLjkN5t.js} +2 -2
- package/packages/ui/dist/assets/{help-circle-CY3qTmsG.js → help-circle-CW4A601v.js} +1 -1
- package/packages/ui/dist/assets/{id-JpHW4q14.js → id-BaRFLHqy.js} +2 -2
- package/packages/ui/dist/assets/{image-Dip2fG98.js → image-4pE_c0pP.js} +2 -2
- package/packages/ui/dist/assets/index-B07bCKJ8.css +1 -0
- package/packages/ui/dist/assets/index-BKPTb_0U.js +1 -0
- package/packages/ui/dist/assets/index-BV8s6ez1.js +1 -0
- package/packages/ui/dist/assets/index-BaLMTrx4.js +47 -0
- package/packages/ui/dist/assets/index-CguqCMNp.js +16 -0
- package/packages/ui/dist/assets/index-RMrT9ktE.js +1780 -0
- package/packages/ui/dist/assets/{index-q0mGElxZ.js → index-_n5fH6AD.js} +3 -3
- package/packages/ui/dist/assets/index.es-rQvUXQTw.js +26 -0
- package/packages/ui/dist/assets/{info-B1enFsqh.js → info-UMAWEFh_.js} +2 -2
- package/packages/ui/dist/assets/{info-circle-D4j3FISs.js → info-circle-DuTp8NTC.js} +2 -2
- package/packages/ui/dist/assets/{lightbulb-DZbKr-vS.js → lightbulb-CkYYJbAa.js} +2 -2
- package/packages/ui/dist/assets/{mail-D-TO_uVQ.js → mail-CntZNMWz.js} +2 -2
- package/packages/ui/dist/assets/metamask-sdk-DIj7UxWU.js +542 -0
- package/packages/ui/dist/assets/{mobile-Bkmwzav2.js → mobile-DdyrzTfW.js} +2 -2
- package/packages/ui/dist/assets/{more-D1_I_jiB.js → more-DpZ1Bqpv.js} +2 -2
- package/packages/ui/dist/assets/{network-placeholder-DUaFjoXh.js → network-placeholder-B8yy8U56.js} +2 -2
- package/packages/ui/dist/assets/{nftPlaceholder-Cc0iUryh.js → nftPlaceholder-BXFbCJ-Z.js} +2 -2
- package/packages/ui/dist/assets/{off-BvX71sse.js → off-DavoQSqH.js} +2 -2
- package/packages/ui/dist/assets/{play-store-XzLbtbTd.js → play-store-BJeHSxBp.js} +2 -2
- package/packages/ui/dist/assets/{plus-B77_RmYR.js → plus-B-L3uTWl.js} +2 -2
- package/packages/ui/dist/assets/{qr-code-BNeIhB1d.js → qr-code-CcQBy6o3.js} +1 -1
- package/packages/ui/dist/assets/{recycle-horizontal-B9sX-yty.js → recycle-horizontal-BLC3_x1m.js} +2 -2
- package/packages/ui/dist/assets/{refresh-BWRygnjm.js → refresh-78cbzBlS.js} +2 -2
- package/packages/ui/dist/assets/{reown-logo-DCAEsGFm.js → reown-logo-Bx5RmN6G.js} +2 -2
- package/packages/ui/dist/assets/{search-ZXIqrawS.js → search-XWB8l5E2.js} +2 -2
- package/packages/ui/dist/assets/{secp256k1-Doz05h4g.js → secp256k1-u9EmDRXd.js} +1 -1
- package/packages/ui/dist/assets/{send-BQcO0jNC.js → send-BjGwACTt.js} +2 -2
- package/packages/ui/dist/assets/{swapHorizontal-4yZEzz2K.js → swapHorizontal-DJWcWn3A.js} +2 -2
- package/packages/ui/dist/assets/{swapHorizontalBold-DxBKu3sl.js → swapHorizontalBold-CG930oAl.js} +2 -2
- package/packages/ui/dist/assets/{swapHorizontalMedium-DAQYJ2JK.js → swapHorizontalMedium-CHIdtnCI.js} +2 -2
- package/packages/ui/dist/assets/{swapHorizontalRoundedBold-CUlZzFJ6.js → swapHorizontalRoundedBold-B2oGt4O4.js} +2 -2
- package/packages/ui/dist/assets/{swapVertical-CjWHAaDM.js → swapVertical-CnjOFXH3.js} +2 -2
- package/packages/ui/dist/assets/{telegram-JBeabiJP.js → telegram-BtOilYdH.js} +2 -2
- package/packages/ui/dist/assets/{three-dots-D3R8OjSx.js → three-dots-D_VsAJlo.js} +2 -2
- package/packages/ui/dist/assets/{twitch-1f9z7xVO.js → twitch-BIX3n7hL.js} +2 -2
- package/packages/ui/dist/assets/{twitterIcon-BW7n2xnp.js → twitterIcon-C3DDaPem.js} +2 -2
- package/packages/ui/dist/assets/{verify-Cs5owI38.js → verify-CtzMScZy.js} +2 -2
- package/packages/ui/dist/assets/{verify-filled-Ci5sx5qS.js → verify-filled-CVjdmBEW.js} +2 -2
- package/packages/ui/dist/assets/{w3m-modal-DnWtss8u.js → w3m-modal-BZ3BUhSD.js} +1 -1
- package/packages/ui/dist/assets/{wallet-MaGNqaW-.js → wallet-hURaFgJp.js} +2 -2
- package/packages/ui/dist/assets/{wallet-placeholder-kTOy12_L.js → wallet-placeholder-BcF2KreB.js} +2 -2
- package/packages/ui/dist/assets/{walletconnect-CyuP92jg.js → walletconnect-C8XCABRo.js} +3 -3
- package/packages/ui/dist/assets/{warning-circle-BImUCdpG.js → warning-circle-BMz6LCU4.js} +2 -2
- package/packages/ui/dist/assets/{x-II45JHpV.js → x-deAHZeLU.js} +2 -2
- package/packages/ui/dist/index.html +2 -2
- package/templates/default/.agents/skills/sail-mandates/SKILL.md +1 -1
- package/templates/default/.agents/skills/sail-mandates/references/approvals.md +3 -3
- package/templates/default/.agents/skills/sail-mandates/references/examples-index.md +3 -3
- package/templates/default/.agents/skills/sail-onboarding/SKILL.md +34 -33
- package/templates/default/.agents/skills/sail-servers/SKILL.md +1 -0
- package/templates/default/.agents/skills/sail-swap-quote/SKILL.md +76 -0
- package/templates/default/.agents/skills/sail-template-approve-batch/SKILL.md +98 -0
- package/templates/default/.agents/skills/sail-template-borrow/SKILL.md +68 -0
- package/templates/default/.agents/skills/sail-template-deposit/SKILL.md +61 -0
- package/templates/default/.agents/skills/sail-template-swap/SKILL.md +207 -0
- package/templates/default/.agents/skills/sail-template-swap-no-oracle/SKILL.md +100 -0
- package/templates/default/.agents/skills/sail-template-transfer/SKILL.md +52 -0
- package/templates/default/.agents/skills/sail-template-withdraw/SKILL.md +50 -0
- package/templates/default/.agents/skills/sail-templates/SKILL.md +142 -0
- package/templates/default/.agents/skills/sail-templates/catalog.mjs +200 -0
- package/templates/default/.agents/skills/sail-templates/deployed.json +133 -0
- package/templates/default/.agents/skills/sail-templates/oracles/IOracle.sol +13 -0
- package/templates/default/.agents/skills/sail-templates/oracles/UniV3TwapOracle.sol +114 -0
- package/templates/default/.agents/skills/sail-templates/oracles/libs/FullMath.sol +62 -0
- package/templates/default/.agents/skills/sail-templates/oracles/libs/TickMath.sol +44 -0
- package/templates/default/.agents/skills/sail-templates/references/config-schemas.md +139 -0
- package/templates/default/.agents/skills/sail-templates/references/reuse-flow.md +139 -0
- package/templates/default/.agents/skills/sail-token-resolve/SKILL.md +174 -0
- package/templates/default/.env.example +9 -0
- package/templates/default/AGENTS.md +107 -13
- package/templates/default/docs/PERMISSION_MODEL.md +2 -2
- package/{examples → templates/default/examples}/custom-mandate/.sail/contracts/interfaces/IPermission.sol +4 -0
- package/{examples → templates/default/examples}/custom-mandate/README.md +4 -1
- package/{examples → templates/default/examples}/permissions/interfaces/IBatchPermission.sol +2 -0
- package/{examples → templates/default/examples}/permissions/interfaces/IPermission.sol +4 -0
- package/templates/default/scripts/quote-swap.mjs +211 -0
- package/templates/default/scripts/resolve-token.mjs +992 -0
- package/templates/default/scripts/shared-template-addr.mjs +110 -0
- package/templates/default/test/BoundedCallPermission.t.sol +2 -1
- package/docs/PERMISSION_MODEL.md +0 -93
- package/examples/README.md +0 -24
- package/examples/lifi-permissions/LifiBoundedApprovePermissionCloneable.sol +0 -84
- package/examples/lifi-permissions/LifiDiamondSwapPermissionCloneable.sol +0 -97
- package/examples/lifi-permissions/README.md +0 -53
- package/packages/ui/dist/assets/arrow-bottom-Cwptw8fW.js +0 -8
- package/packages/ui/dist/assets/arrow-left-bM1TRcV9.js +0 -8
- package/packages/ui/dist/assets/arrow-right-BYd_N4Jr.js +0 -8
- package/packages/ui/dist/assets/arrow-top-CLUnwVE2.js +0 -8
- package/packages/ui/dist/assets/ccip-BL7RIPfY.js +0 -1
- package/packages/ui/dist/assets/chevron-bottom-BMCelIEu.js +0 -8
- package/packages/ui/dist/assets/chevron-left-ryPLhHCc.js +0 -8
- package/packages/ui/dist/assets/chevron-right-CdDNRv7f.js +0 -8
- package/packages/ui/dist/assets/chevron-top-BxWIjjGk.js +0 -8
- package/packages/ui/dist/assets/core-von2c1sc.js +0 -907
- package/packages/ui/dist/assets/cursor-BzRVY7BD.js +0 -3
- package/packages/ui/dist/assets/events-C9icG2YB.js +0 -1
- package/packages/ui/dist/assets/external-link-BPaGQf4a.js +0 -8
- package/packages/ui/dist/assets/fallback-BTfJeGjh.js +0 -1
- package/packages/ui/dist/assets/index-BGJ_8fMk.js +0 -1
- package/packages/ui/dist/assets/index-Bq3PAopp.js +0 -16
- package/packages/ui/dist/assets/index-C4_cA5XW.js +0 -1
- package/packages/ui/dist/assets/index-CaDN0gL4.js +0 -1
- package/packages/ui/dist/assets/index-DLElIcBr.js +0 -1789
- package/packages/ui/dist/assets/index-lhNfD4jA.css +0 -1
- package/packages/ui/dist/assets/index.es-BaCKS_tW.js +0 -26
- package/packages/ui/dist/assets/metamask-sdk-DljW3QD1.js +0 -542
- package/packages/ui/dist/assets/native-CJ5et6AR.js +0 -1
- package/packages/ui/dist/assets/parseSignature-BAS-wKoj.js +0 -1
- package/scripts/check-docs.mjs +0 -309
- package/scripts/check-init.mjs +0 -123
- package/scripts/check-update.mjs +0 -177
- package/scripts/clean.mjs +0 -17
- package/scripts/pack.mjs +0 -21
- package/templates/default/.agents/skills/sail-overview/SKILL.md +0 -100
- package/templates/default/.agents/skills/sail-sailor/SKILL.md +0 -190
- package/templates/default/.agents/skills/sail-setup/SKILL.md +0 -38
- package/templates/default/.gitlab-ci.yml +0 -58
- /package/{examples → templates/default/examples}/custom-mandate/foundry.toml +0 -0
- /package/{examples → templates/default/examples}/custom-mandate/mandates/BoundedCallPermission.sol +0 -0
- /package/{examples → templates/default/examples}/custom-mandate/mandates/README.md +0 -0
- /package/{examples → templates/default/examples}/custom-mandate/mandates/SailCalldata.sol +0 -0
- /package/{examples → templates/default/examples}/permissions/BoundedApproveAndCallBatch.sol +0 -0
- /package/{examples → templates/default/examples}/permissions/BoundedBorrow_AaveV3_Arbitrum.sol +0 -0
- /package/{examples → templates/default/examples}/permissions/BoundedLimitless_Base.sol +0 -0
- /package/{examples → templates/default/examples}/permissions/BoundedPerp_GMXv2_Arbitrum.sol +0 -0
- /package/{examples → templates/default/examples}/permissions/BoundedStake_Venice_Base.sol +0 -0
- /package/{examples → templates/default/examples}/permissions/BoundedSupply_AaveV3_Arbitrum.sol +0 -0
- /package/{examples → templates/default/examples}/permissions/BoundedSwapNative_UniswapV3_Base.sol +0 -0
- /package/{examples → templates/default/examples}/permissions/BoundedSwap_UniswapV3_Base.sol +0 -0
- /package/{examples → templates/default/examples}/permissions/BoundedSwap_UniswapV4_Unichain.sol +0 -0
- /package/{examples → templates/default/examples}/permissions/BoundedTransfer_ERC20_Ethereum.sol +0 -0
- /package/{examples → templates/default/examples}/permissions/BoundedVault_ERC4626_Base.sol +0 -0
- /package/{examples → templates/default/examples}/permissions/README.md +0 -0
- /package/{examples → templates/default/examples}/permissions/SailCalldata.sol +0 -0
- /package/{examples → templates/default/examples}/permissions/foundry.toml +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chains.js","sourceRoot":"","sources":["../src/chains.ts"],"names":[],"mappings":"AAEA
|
|
1
|
+
{"version":3,"file":"chains.js","sourceRoot":"","sources":["../src/chains.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type Chain, type Transport, type Account as ViemAccount, type WalletClient } from "viem";
|
|
2
2
|
import { type KernelCapabilities } from "./capabilities.js";
|
|
3
3
|
import type { AgentContext, IAccountNamespace, IDispatchNamespace, IFeesNamespace, IMandateNamespace, IPrincipalNamespace, ISailorClient, ISessionNamespace, IStrategyNamespace, SailorClientConfig } from "./types.js";
|
|
4
4
|
export type { AgentContext };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,KAAK,EAEV,KAAK,SAAS,EACd,KAAK,OAAO,IAAI,WAAW,EAC3B,KAAK,YAAY,EAOlB,MAAM,MAAM,CAAC;AAEd,OAAO,EAAE,KAAK,kBAAkB,EAA4B,MAAM,mBAAmB,CAAC;AAgBtF,OAAO,KAAK,EAGV,YAAY,EAOZ,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EAEd,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAQlB,kBAAkB,EAKnB,MAAM,YAAY,CAAC;AAGpB,YAAY,EAAE,YAAY,EAAE,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,gFAAgF;AAChF,KAAK,MAAM,GAAG,YAAY,CAAC,SAAS,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;AAq2B1D,8EAA8E;AAC9E,qBAAa,YAAa,YAAW,aAAa;IAChD,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;IACpC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC;IAExC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;gBAEhC,MAAM,EAAE,kBAAkB,EAAE,YAAY,CAAC,EAAE,MAAM;IAe7D;;;;OAIG;IACH,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,YAAY;IAI9C;;;;;;OAMG;IACG,YAAY,IAAI,OAAO,CAAC,kBAAkB,CAAC;CAYlD"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { createPublicClient, defineChain, encodeAbiParameters,
|
|
1
|
+
import { http, createPublicClient, defineChain, encodeAbiParameters, keccak256, parseEventLogs, zeroAddress, } from "viem";
|
|
2
2
|
import { SailKernelAbi } from "./abis/SailKernel.js";
|
|
3
|
-
import { detectKernelCapabilities
|
|
3
|
+
import { detectKernelCapabilities } from "./capabilities.js";
|
|
4
4
|
import { sailDeployments } from "./deployments.js";
|
|
5
|
+
import { buildConfigureTypedData, buildDispatchSignature, sailKernelDomain, } from "./eip712.js";
|
|
5
6
|
import { explainKernelRevert } from "./errors.js";
|
|
6
|
-
import {
|
|
7
|
-
import { DEFAULT_SLIPPAGE, ERC20_ALLOWANCE_ABI, encodeApprove, fetchLifiQuote, LIFI_ROUTERS, } from "./lifi.js";
|
|
7
|
+
import { DEFAULT_SLIPPAGE, ERC20_ALLOWANCE_ABI, LIFI_ROUTERS, encodeApprove, fetchLifiQuote, } from "./lifi.js";
|
|
8
8
|
export { SailKernelAbi } from "./abis/SailKernel.js";
|
|
9
9
|
export { MandateFactoryAbi } from "./abis/MandateFactory.js";
|
|
10
10
|
function notImplemented() {
|
|
@@ -23,6 +23,31 @@ function buildPublicClient(config) {
|
|
|
23
23
|
function defaultDeadline() {
|
|
24
24
|
return BigInt(Math.floor(Date.now() / 1000) + 300);
|
|
25
25
|
}
|
|
26
|
+
/**
|
|
27
|
+
* Minimal ConfigurablePermission ABI — the signer-gated re-config entry point and its
|
|
28
|
+
* per-account nonce. Shared by every launch template (they all extend ConfigurablePermission).
|
|
29
|
+
*/
|
|
30
|
+
const CONFIGURABLE_PERMISSION_ABI = [
|
|
31
|
+
{
|
|
32
|
+
type: "function",
|
|
33
|
+
name: "configNonces",
|
|
34
|
+
stateMutability: "view",
|
|
35
|
+
inputs: [{ name: "account", type: "address" }],
|
|
36
|
+
outputs: [{ type: "uint256" }],
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
type: "function",
|
|
40
|
+
name: "configure",
|
|
41
|
+
stateMutability: "nonpayable",
|
|
42
|
+
inputs: [
|
|
43
|
+
{ name: "account", type: "address" },
|
|
44
|
+
{ name: "params", type: "bytes" },
|
|
45
|
+
{ name: "deadline", type: "uint256" },
|
|
46
|
+
{ name: "sig", type: "bytes" },
|
|
47
|
+
],
|
|
48
|
+
outputs: [],
|
|
49
|
+
},
|
|
50
|
+
];
|
|
26
51
|
/**
|
|
27
52
|
* Default gas limit for a single dispatch. Passing an explicit limit makes viem
|
|
28
53
|
* skip its `eth_estimateGas` pre-flight, which a load-balanced RPC can route to a
|
|
@@ -107,8 +132,7 @@ class KernelNamespace {
|
|
|
107
132
|
*/
|
|
108
133
|
async capabilities() {
|
|
109
134
|
const kernel = this.requireKernel();
|
|
110
|
-
const staticModel = sailDeployments[this.config.chainId]
|
|
111
|
-
?.dispatchModel;
|
|
135
|
+
const staticModel = sailDeployments[this.config.chainId]?.dispatchModel;
|
|
112
136
|
return detectKernelCapabilities(this.publicClient, kernel, {
|
|
113
137
|
chainId: this.config.chainId,
|
|
114
138
|
staticModel,
|
|
@@ -200,8 +224,50 @@ class MandateNamespace extends KernelNamespace {
|
|
|
200
224
|
value: 0n,
|
|
201
225
|
});
|
|
202
226
|
}
|
|
203
|
-
|
|
204
|
-
|
|
227
|
+
/**
|
|
228
|
+
* Re-configure the per-account bounds of an already-registered shared template.
|
|
229
|
+
* The permission signer signs the template's `Configure` EIP-712 struct — built by
|
|
230
|
+
* `buildConfigureTypedData`, which reads the template's live ERC-5267 domain and emits
|
|
231
|
+
* the v1 or v2 (epoch-bound) schema to match whatever is deployed — and the attached
|
|
232
|
+
* wallet submits `configure(account, params, deadline, sig)`.
|
|
233
|
+
*
|
|
234
|
+
* The config nonce is read fresh on-chain immediately before signing (the template
|
|
235
|
+
* increments it only after a successful verify), so a re-config never reuses a stale nonce.
|
|
236
|
+
*/
|
|
237
|
+
async reconfigure(safe, template, params, signer) {
|
|
238
|
+
const kernel = this.requireKernel();
|
|
239
|
+
const wallet = this.requireSigner();
|
|
240
|
+
const encoded = template.encoder.encode(params);
|
|
241
|
+
const deadline = defaultDeadline();
|
|
242
|
+
const nonce = (await this.publicClient.readContract({
|
|
243
|
+
address: template.address,
|
|
244
|
+
abi: CONFIGURABLE_PERMISSION_ABI,
|
|
245
|
+
functionName: "configNonces",
|
|
246
|
+
args: [safe],
|
|
247
|
+
}));
|
|
248
|
+
const td = await buildConfigureTypedData({
|
|
249
|
+
publicClient: this.publicClient,
|
|
250
|
+
kernel,
|
|
251
|
+
template: template.address,
|
|
252
|
+
account: safe,
|
|
253
|
+
params: encoded,
|
|
254
|
+
nonce,
|
|
255
|
+
deadline,
|
|
256
|
+
});
|
|
257
|
+
const sig = await signer.signTyped(td.domain, { primaryType: td.primaryType, types: td.types }, td.message);
|
|
258
|
+
const txHash = await wallet.writeContract({
|
|
259
|
+
address: template.address,
|
|
260
|
+
abi: CONFIGURABLE_PERMISSION_ABI,
|
|
261
|
+
functionName: "configure",
|
|
262
|
+
args: [safe, encoded, deadline, sig],
|
|
263
|
+
});
|
|
264
|
+
// Wait for the receipt and surface a revert: a failed re-config (stale nonce, expired
|
|
265
|
+
// deadline, bad params) must not resolve as success, which would leave the old bounds in
|
|
266
|
+
// place while the caller believes the new ones applied.
|
|
267
|
+
const receipt = await this.publicClient.waitForTransactionReceipt({ hash: txHash });
|
|
268
|
+
if (receipt.status !== "success") {
|
|
269
|
+
throw new Error(`configure reverted (tx ${txHash})`);
|
|
270
|
+
}
|
|
205
271
|
}
|
|
206
272
|
replace(_safe, _oldTemplate, _newTemplate, _params, _signer) {
|
|
207
273
|
return notImplemented();
|
|
@@ -533,14 +599,70 @@ class StrategyNamespace extends KernelNamespace {
|
|
|
533
599
|
}
|
|
534
600
|
}
|
|
535
601
|
class SessionNamespace extends KernelNamespace {
|
|
536
|
-
|
|
537
|
-
|
|
602
|
+
/**
|
|
603
|
+
* Suspend (`revokeSession`) or resume (`activateSession`) the manager's dispatch rights.
|
|
604
|
+
* Both are permissionSigner-signed over the RevokeSession/ActivateSession EIP-712 struct,
|
|
605
|
+
* with `nonce` read fresh from `signerNonces[account]` immediately before signing — the
|
|
606
|
+
* kernel bumps that nonce by a full epoch on revoke (#70), so it must never be cached. The
|
|
607
|
+
* kernel also rotates the manager/batch nonce epochs, invalidating any pre-signed dispatch.
|
|
608
|
+
*/
|
|
609
|
+
async revoke(safe, signer) {
|
|
610
|
+
await this.#submitSessionOp(safe, signer, "RevokeSession", "revokeSession");
|
|
538
611
|
}
|
|
539
|
-
activate(
|
|
540
|
-
|
|
612
|
+
async activate(safe, signer) {
|
|
613
|
+
await this.#submitSessionOp(safe, signer, "ActivateSession", "activateSession");
|
|
541
614
|
}
|
|
542
|
-
|
|
543
|
-
|
|
615
|
+
async #submitSessionOp(safe, signer, primaryType, fn) {
|
|
616
|
+
const kernel = this.requireKernel();
|
|
617
|
+
const wallet = this.requireSigner();
|
|
618
|
+
const deadline = defaultDeadline();
|
|
619
|
+
// Just-in-time signer nonce (never cache — revoke advances it a full epoch, #70).
|
|
620
|
+
const nonce = (await this.publicClient.readContract({
|
|
621
|
+
address: kernel,
|
|
622
|
+
abi: SailKernelAbi,
|
|
623
|
+
functionName: "signerNonces",
|
|
624
|
+
args: [safe],
|
|
625
|
+
}));
|
|
626
|
+
const sig = await signer.signTyped(sailKernelDomain({ chainId: this.config.chainId, kernel }), {
|
|
627
|
+
primaryType,
|
|
628
|
+
types: {
|
|
629
|
+
[primaryType]: [
|
|
630
|
+
{ name: "account", type: "address" },
|
|
631
|
+
{ name: "nonce", type: "uint256" },
|
|
632
|
+
{ name: "deadline", type: "uint256" },
|
|
633
|
+
],
|
|
634
|
+
},
|
|
635
|
+
}, { account: safe, nonce, deadline });
|
|
636
|
+
const txHash = await wallet.writeContract({
|
|
637
|
+
address: kernel,
|
|
638
|
+
abi: SailKernelAbi,
|
|
639
|
+
functionName: fn,
|
|
640
|
+
args: [safe, deadline, sig],
|
|
641
|
+
});
|
|
642
|
+
// A kill switch must land before we return — wait for the receipt and surface a revert.
|
|
643
|
+
const receipt = await this.publicClient.waitForTransactionReceipt({ hash: txHash });
|
|
644
|
+
if (receipt.status !== "success") {
|
|
645
|
+
throw new Error(`${fn} reverted (tx ${txHash})`);
|
|
646
|
+
}
|
|
647
|
+
}
|
|
648
|
+
async status(safe) {
|
|
649
|
+
const kernel = this.requireKernel();
|
|
650
|
+
// configs returns (permissionSigner, manager, feePolicy, feeAsset, sessionActive).
|
|
651
|
+
const cfg = (await this.publicClient.readContract({
|
|
652
|
+
address: kernel,
|
|
653
|
+
abi: SailKernelAbi,
|
|
654
|
+
functionName: "configs",
|
|
655
|
+
args: [safe],
|
|
656
|
+
}));
|
|
657
|
+
return {
|
|
658
|
+
safe,
|
|
659
|
+
active: cfg[4],
|
|
660
|
+
manager: cfg[1],
|
|
661
|
+
// Block-level markers require an event scan; expose live active/manager state and
|
|
662
|
+
// leave the historical timestamps null.
|
|
663
|
+
activatedAtBlock: null,
|
|
664
|
+
revokedAtBlock: null,
|
|
665
|
+
};
|
|
544
666
|
}
|
|
545
667
|
}
|
|
546
668
|
class FeesNamespace extends KernelNamespace {
|
|
@@ -635,8 +757,7 @@ export class SailorClient {
|
|
|
635
757
|
if (!kernel) {
|
|
636
758
|
throw new Error("SailKernel address not configured — set `kernel` in SailorClientConfig.");
|
|
637
759
|
}
|
|
638
|
-
const staticModel = sailDeployments[this.config.chainId]
|
|
639
|
-
?.dispatchModel;
|
|
760
|
+
const staticModel = sailDeployments[this.config.chainId]?.dispatchModel;
|
|
640
761
|
return detectKernelCapabilities(this.publicClient, kernel, {
|
|
641
762
|
chainId: this.config.chainId,
|
|
642
763
|
staticModel,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,13 +2,15 @@ import type { Address } from "viem";
|
|
|
2
2
|
import type { DispatchModel } from "./capabilities.js";
|
|
3
3
|
/**
|
|
4
4
|
* Chains with a bundled Sail Protocol deployment.
|
|
5
|
-
* Mainnets: Ethereum (1), Base (8453), Arbitrum (42161),
|
|
5
|
+
* Mainnets: Ethereum (1), Base (8453), Arbitrum (42161), Optimism (10),
|
|
6
|
+
* Unichain (130), BSC (56), World Chain (480), HyperEVM (999), MegaETH (4326).
|
|
6
7
|
* Testnets: Base Sepolia (84532), Eth Sepolia (11155111).
|
|
7
8
|
*
|
|
8
|
-
* All
|
|
9
|
-
*
|
|
9
|
+
* All eleven chains run the Safe-governed CREATE2 deployment (global salt,
|
|
10
|
+
* gitCommit 1dc1960, deploy version create2-2026-07-01) so every core contract
|
|
11
|
+
* and every shared template lands at the same address on every chain.
|
|
10
12
|
*/
|
|
11
|
-
export type SailChainId = 1 | 8453 | 42161 | 130 | 84532 | 11155111;
|
|
13
|
+
export type SailChainId = 1 | 8453 | 42161 | 10 | 130 | 56 | 480 | 999 | 4326 | 84532 | 11155111;
|
|
12
14
|
/** A pre-audited mandate template available on a chain. */
|
|
13
15
|
export type KnownTemplate = {
|
|
14
16
|
kind: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deployments.d.ts","sourceRoot":"","sources":["../src/deployments.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD
|
|
1
|
+
{"version":3,"file":"deployments.d.ts","sourceRoot":"","sources":["../src/deployments.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD;;;;;;;;;GASG;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,GAAG,IAAI,GAAG,KAAK,GAAG,EAAE,GAAG,GAAG,GAAG,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,GAAG,QAAQ,CAAC;AAEjG,2DAA2D;AAC3D,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,oFAAoF;AACpF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,oEAAoE;IACpE,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,6CAA6C;IAC7C,GAAG,EAAE,MAAM,CAAC;IACZ,gEAAgE;IAChE,OAAO,EAAE,OAAO,CAAC;IACjB,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+EAA+E;IAC/E,UAAU,EAAE,kBAAkB,EAAE,CAAC;IACjC,iEAAiE;IACjE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,sEAAsE;AACtE,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,WAAW,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,cAAc,EAAE,OAAO,CAAC;IACxB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,QAAQ,EAAE,OAAO,CAAC;IAClB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,qBAAqB,EAAE,MAAM,CAAC;IAC9B;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,oEAAoE;IACpE,cAAc,CAAC,EAAE,aAAa,EAAE,CAAC;IACjC;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9C;;;;;OAKG;IACH,cAAc,CAAC,EAAE,iBAAiB,EAAE,CAAC;CACtC,CAAC;AAoFF,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,WAAW,EAAE,cAAc,CA8E/D,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,cAAc,CAMjE;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,cAAc,CA4BlF"}
|
|
@@ -1,154 +1,156 @@
|
|
|
1
1
|
const zero = "0x0000000000000000000000000000000000000000";
|
|
2
2
|
/**
|
|
3
|
-
* CREATE2-deterministic core addresses — identical on every chain (gitCommit
|
|
3
|
+
* CREATE2-deterministic core addresses — identical on every chain (gitCommit 1dc1960,
|
|
4
4
|
* deployment mode: create2-global-salt, factory: 0x4e59b44847b379578588920cA78FbF26c0B4956C).
|
|
5
|
+
* Safe-governed deploy (create2-2026-07-01), superseding the prior EOA-governed
|
|
6
|
+
* 2026-06-09 deploy.
|
|
5
7
|
*
|
|
6
8
|
* Because kernel, safeModuleEnabler, and standardFeePolicy are the same on every chain,
|
|
7
9
|
* SailKernel.createAccount produces the same SMA address with the same owner/manager/salt
|
|
8
10
|
* on every supported chain — enabling true cross-chain deterministic SMA deployment.
|
|
9
11
|
*/
|
|
10
|
-
const CREATE2_KERNEL = "
|
|
11
|
-
const CREATE2_GOVERNANCE = "
|
|
12
|
-
const CREATE2_TIMELOCK = "
|
|
12
|
+
const CREATE2_KERNEL = "0x38b508756c976e876EFF05a29E731A4d348BA6ED";
|
|
13
|
+
const CREATE2_GOVERNANCE = "0x4315B37cA4A315A7042af1Fcb37F8436f4D24356";
|
|
14
|
+
const CREATE2_TIMELOCK = "0xC1E5F9A581D4100Aa949f80204540a33aD97A7b6";
|
|
13
15
|
const CREATE2_SAFE_MODULE_ENABLER = "0x7897Cb53a4be4a2eaAf46D60573C4Fd83b33fE1F";
|
|
14
|
-
const CREATE2_MANDATE_FACTORY = "
|
|
15
|
-
const CREATE2_STANDARD_FEE_POLICY = "
|
|
16
|
-
const
|
|
16
|
+
const CREATE2_MANDATE_FACTORY = "0x6d2C802ffa0d9A8Ed69A5Bf22c1b63ccB566B8Fc";
|
|
17
|
+
const CREATE2_STANDARD_FEE_POLICY = "0x1087312447C8a2BfA15EB9cE23590E3502DBA04b";
|
|
18
|
+
const CREATE2_DEPLOYER = "0xB01dCE443d052e44b7D13726c0EC9fFB7f5815B6";
|
|
19
|
+
const CREATE2_TREASURY = "0x7b37F85575F1568a37dBA342BC5FE6d393F0872f";
|
|
20
|
+
const CREATE2_MAX_PERMISSION_FEE_WEI = 10000000000000000n;
|
|
21
|
+
/**
|
|
22
|
+
* Shared, multi-tenant permission templates (CREATE2, same address on every chain).
|
|
23
|
+
* Constructor is (kernel, author); kernel is CREATE2_KERNEL, author is CREATE2_DEPLOYER.
|
|
24
|
+
*/
|
|
25
|
+
const CREATE2_TEMPLATES = {
|
|
26
|
+
swap: "0x35cEEa0db96997Cc3CF3beB42FFa36A499342F7C",
|
|
27
|
+
swapNoOracle: "0x34Ba96CbEd1f46c88A5265E645DC5fe41662b519",
|
|
28
|
+
borrow: "0x3e2666051599223cEAb10De55C89A0842857d8AF",
|
|
29
|
+
deposit: "0xBfB5e13a97b12Ee89d2F2b9B65eCf7e0E371911f",
|
|
30
|
+
withdraw: "0xF5eF5dda450a130e3020d54f565E830e4a7531f8",
|
|
31
|
+
transfer: "0xda909a1CC584fb7559Ce4A828b008B473Da095e1",
|
|
32
|
+
approveAndCallBatch: "0x0535A4D51333484ef583103DAB1a9449756ab732",
|
|
33
|
+
};
|
|
34
|
+
const CREATE2_KNOWN_TEMPLATES = [
|
|
35
|
+
{ kind: "SwapPermission", address: CREATE2_TEMPLATES.swap, label: "Swap" },
|
|
36
|
+
{
|
|
37
|
+
kind: "SwapPermissionNoOracle",
|
|
38
|
+
address: CREATE2_TEMPLATES.swapNoOracle,
|
|
39
|
+
label: "Swap (no oracle)",
|
|
40
|
+
},
|
|
41
|
+
{ kind: "BorrowPermission", address: CREATE2_TEMPLATES.borrow, label: "Borrow" },
|
|
42
|
+
{ kind: "DepositPermission", address: CREATE2_TEMPLATES.deposit, label: "Deposit" },
|
|
43
|
+
{ kind: "WithdrawPermission", address: CREATE2_TEMPLATES.withdraw, label: "Withdraw" },
|
|
44
|
+
{ kind: "TransferPermission", address: CREATE2_TEMPLATES.transfer, label: "Transfer" },
|
|
45
|
+
{
|
|
46
|
+
kind: "ApproveAndCallBatchPermission",
|
|
47
|
+
address: CREATE2_TEMPLATES.approveAndCallBatch,
|
|
48
|
+
label: "Approve + call batch",
|
|
49
|
+
},
|
|
50
|
+
];
|
|
51
|
+
/** Shared `SailDeployment` fields identical across every chain in this deploy. */
|
|
52
|
+
const COMMON_DEPLOYMENT_FIELDS = {
|
|
53
|
+
deployer: CREATE2_DEPLOYER,
|
|
54
|
+
governance: CREATE2_GOVERNANCE,
|
|
55
|
+
timelock: CREATE2_TIMELOCK,
|
|
56
|
+
kernel: CREATE2_KERNEL,
|
|
57
|
+
mandateFactory: CREATE2_MANDATE_FACTORY,
|
|
58
|
+
standardFeePolicy: CREATE2_STANDARD_FEE_POLICY,
|
|
59
|
+
safeModuleEnabler: CREATE2_SAFE_MODULE_ENABLER,
|
|
60
|
+
treasury: CREATE2_TREASURY,
|
|
61
|
+
maxPermissionFeeWei: CREATE2_MAX_PERMISSION_FEE_WEI,
|
|
62
|
+
initialBaseFee: 0n,
|
|
63
|
+
initialComplexityRate: 0n,
|
|
64
|
+
dispatchModel: "selective",
|
|
65
|
+
// The seven launch templates are SHARED multi-tenant ConfigurablePermission instances
|
|
66
|
+
// (registered by address, configured via configure()), NOT EIP-1167 clone logic. They
|
|
67
|
+
// belong in knownTemplates only. standaloneTemplates is the clone-implementation registry
|
|
68
|
+
// (the `impl` arg to MandateFactory.deployAndAttach) — empty until standalone clones deploy.
|
|
69
|
+
// Populating it with shared templates mislabels them as unaudited community clones in
|
|
70
|
+
// `sailor mandate templates` and makes capabilities advertise them as deployAndAttach-able.
|
|
71
|
+
standaloneTemplates: {},
|
|
72
|
+
};
|
|
73
|
+
/** `knownTemplates` for a given chain — same addresses everywhere, chainId varies. */
|
|
74
|
+
function knownTemplatesFor(chainId) {
|
|
75
|
+
return CREATE2_KNOWN_TEMPLATES.map((t) => ({ ...t, chainId }));
|
|
76
|
+
}
|
|
17
77
|
export const sailDeployments = {
|
|
18
78
|
// ── Ethereum mainnet ─────────────────────────────────────────────────────────
|
|
19
79
|
1: {
|
|
20
|
-
|
|
21
|
-
// allowlistBootstrapped=true (genesis bootstrap), zero fees, 48h timelock.
|
|
80
|
+
...COMMON_DEPLOYMENT_FIELDS,
|
|
22
81
|
chainId: 1,
|
|
23
|
-
blockNumber:
|
|
24
|
-
|
|
25
|
-
governance: CREATE2_GOVERNANCE,
|
|
26
|
-
timelock: CREATE2_TIMELOCK,
|
|
27
|
-
kernel: CREATE2_KERNEL,
|
|
28
|
-
mandateFactory: CREATE2_MANDATE_FACTORY,
|
|
29
|
-
standardFeePolicy: CREATE2_STANDARD_FEE_POLICY,
|
|
30
|
-
safeModuleEnabler: CREATE2_SAFE_MODULE_ENABLER,
|
|
31
|
-
treasury: CREATE2_TREASURY,
|
|
32
|
-
maxPermissionFeeWei: 1000000000000000n,
|
|
33
|
-
initialBaseFee: 0n,
|
|
34
|
-
initialComplexityRate: 0n,
|
|
35
|
-
dispatchModel: "selective",
|
|
36
|
-
knownTemplates: [],
|
|
37
|
-
standaloneTemplates: {},
|
|
82
|
+
blockNumber: 25432741,
|
|
83
|
+
knownTemplates: knownTemplatesFor(1),
|
|
38
84
|
},
|
|
39
85
|
// ── Base mainnet ─────────────────────────────────────────────────────────────
|
|
40
86
|
8453: {
|
|
41
|
-
|
|
42
|
-
// 0x6319d3dfDDe3804ba93D65752b00c52bFb05a1ab (SAIL-405 redeploy).
|
|
43
|
-
// allowlistBootstrapped=true, zero fees, 48h timelock.
|
|
87
|
+
...COMMON_DEPLOYMENT_FIELDS,
|
|
44
88
|
chainId: 8453,
|
|
45
|
-
blockNumber:
|
|
46
|
-
|
|
47
|
-
governance: CREATE2_GOVERNANCE,
|
|
48
|
-
timelock: CREATE2_TIMELOCK,
|
|
49
|
-
kernel: CREATE2_KERNEL,
|
|
50
|
-
mandateFactory: CREATE2_MANDATE_FACTORY,
|
|
51
|
-
standardFeePolicy: CREATE2_STANDARD_FEE_POLICY,
|
|
52
|
-
safeModuleEnabler: CREATE2_SAFE_MODULE_ENABLER,
|
|
53
|
-
treasury: CREATE2_TREASURY,
|
|
54
|
-
maxPermissionFeeWei: 1000000000000000n,
|
|
55
|
-
initialBaseFee: 0n,
|
|
56
|
-
initialComplexityRate: 0n,
|
|
57
|
-
dispatchModel: "selective",
|
|
58
|
-
knownTemplates: [],
|
|
59
|
-
standaloneTemplates: {},
|
|
89
|
+
blockNumber: 48029413,
|
|
90
|
+
knownTemplates: knownTemplatesFor(8453),
|
|
60
91
|
},
|
|
61
92
|
// ── Arbitrum mainnet ─────────────────────────────────────────────────────────
|
|
62
93
|
42161: {
|
|
63
|
-
|
|
64
|
-
// 0x2716B12832DED0EF5688519c5Fe069EFc0374E02 (SAIL-405 redeploy).
|
|
65
|
-
// allowlistBootstrapped=true, zero fees, 48h timelock.
|
|
94
|
+
...COMMON_DEPLOYMENT_FIELDS,
|
|
66
95
|
chainId: 42161,
|
|
67
|
-
blockNumber:
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
maxPermissionFeeWei: 1000000000000000n,
|
|
77
|
-
initialBaseFee: 0n,
|
|
78
|
-
initialComplexityRate: 0n,
|
|
79
|
-
dispatchModel: "selective",
|
|
80
|
-
knownTemplates: [],
|
|
81
|
-
standaloneTemplates: {},
|
|
96
|
+
blockNumber: 25432669,
|
|
97
|
+
knownTemplates: knownTemplatesFor(42161),
|
|
98
|
+
},
|
|
99
|
+
// ── Optimism mainnet ─────────────────────────────────────────────────────────
|
|
100
|
+
10: {
|
|
101
|
+
...COMMON_DEPLOYMENT_FIELDS,
|
|
102
|
+
chainId: 10,
|
|
103
|
+
blockNumber: 153625159,
|
|
104
|
+
knownTemplates: knownTemplatesFor(10),
|
|
82
105
|
},
|
|
83
106
|
// ── Unichain mainnet ─────────────────────────────────────────────────────────
|
|
84
107
|
130: {
|
|
85
|
-
|
|
86
|
-
// 0xD985029960a9B7C2E7E38e102C448b8b8539B156 (SAIL-406 deploy).
|
|
87
|
-
// NOTE: knownTemplates and standaloneTemplates from SAIL-406 were deployed
|
|
88
|
-
// against the old kernel 0xD985029... and are now invalid. They must be
|
|
89
|
-
// redeployed against the new kernel 0x02ABC1... and re-populated here.
|
|
108
|
+
...COMMON_DEPLOYMENT_FIELDS,
|
|
90
109
|
chainId: 130,
|
|
91
|
-
blockNumber:
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
110
|
+
blockNumber: 52100873,
|
|
111
|
+
knownTemplates: knownTemplatesFor(130),
|
|
112
|
+
},
|
|
113
|
+
// ── BSC mainnet ──────────────────────────────────────────────────────────────
|
|
114
|
+
56: {
|
|
115
|
+
...COMMON_DEPLOYMENT_FIELDS,
|
|
116
|
+
chainId: 56,
|
|
117
|
+
blockNumber: 107312662,
|
|
118
|
+
knownTemplates: knownTemplatesFor(56),
|
|
119
|
+
},
|
|
120
|
+
// ── World Chain mainnet ──────────────────────────────────────────────────────
|
|
121
|
+
480: {
|
|
122
|
+
...COMMON_DEPLOYMENT_FIELDS,
|
|
123
|
+
chainId: 480,
|
|
124
|
+
blockNumber: 31756901,
|
|
125
|
+
knownTemplates: knownTemplatesFor(480),
|
|
126
|
+
},
|
|
127
|
+
// ── HyperEVM mainnet ─────────────────────────────────────────────────────────
|
|
128
|
+
999: {
|
|
129
|
+
...COMMON_DEPLOYMENT_FIELDS,
|
|
130
|
+
chainId: 999,
|
|
131
|
+
blockNumber: 39238629,
|
|
132
|
+
knownTemplates: knownTemplatesFor(999),
|
|
133
|
+
},
|
|
134
|
+
// ── MegaETH mainnet ──────────────────────────────────────────────────────────
|
|
135
|
+
4326: {
|
|
136
|
+
...COMMON_DEPLOYMENT_FIELDS,
|
|
137
|
+
chainId: 4326,
|
|
138
|
+
blockNumber: 20056530,
|
|
139
|
+
knownTemplates: knownTemplatesFor(4326),
|
|
109
140
|
},
|
|
110
141
|
// ── Base Sepolia (testnet) ───────────────────────────────────────────────────
|
|
111
142
|
84532: {
|
|
112
|
-
|
|
113
|
-
// 0xf1D0F4C9893612627409948BAa9d82a01a373799 (SAIL-405 redeploy).
|
|
114
|
-
// allowlistBootstrapped=true, zero fees, 48h timelock.
|
|
143
|
+
...COMMON_DEPLOYMENT_FIELDS,
|
|
115
144
|
chainId: 84532,
|
|
116
|
-
blockNumber:
|
|
117
|
-
|
|
118
|
-
governance: CREATE2_GOVERNANCE,
|
|
119
|
-
timelock: CREATE2_TIMELOCK,
|
|
120
|
-
kernel: CREATE2_KERNEL,
|
|
121
|
-
mandateFactory: CREATE2_MANDATE_FACTORY,
|
|
122
|
-
standardFeePolicy: CREATE2_STANDARD_FEE_POLICY,
|
|
123
|
-
safeModuleEnabler: CREATE2_SAFE_MODULE_ENABLER,
|
|
124
|
-
treasury: CREATE2_TREASURY,
|
|
125
|
-
maxPermissionFeeWei: 1000000000000000n,
|
|
126
|
-
initialBaseFee: 0n,
|
|
127
|
-
initialComplexityRate: 0n,
|
|
128
|
-
dispatchModel: "selective",
|
|
129
|
-
knownTemplates: [],
|
|
130
|
-
standaloneTemplates: {},
|
|
145
|
+
blockNumber: 43539604,
|
|
146
|
+
knownTemplates: knownTemplatesFor(84532),
|
|
131
147
|
},
|
|
132
148
|
// ── Eth Sepolia (testnet) ────────────────────────────────────────────────────
|
|
133
149
|
11155111: {
|
|
134
|
-
|
|
135
|
-
// allowlistBootstrapped=true, zero fees, 48h timelock.
|
|
150
|
+
...COMMON_DEPLOYMENT_FIELDS,
|
|
136
151
|
chainId: 11155111,
|
|
137
|
-
blockNumber:
|
|
138
|
-
|
|
139
|
-
governance: CREATE2_GOVERNANCE,
|
|
140
|
-
timelock: CREATE2_TIMELOCK,
|
|
141
|
-
kernel: CREATE2_KERNEL,
|
|
142
|
-
mandateFactory: CREATE2_MANDATE_FACTORY,
|
|
143
|
-
standardFeePolicy: CREATE2_STANDARD_FEE_POLICY,
|
|
144
|
-
safeModuleEnabler: CREATE2_SAFE_MODULE_ENABLER,
|
|
145
|
-
treasury: CREATE2_TREASURY,
|
|
146
|
-
maxPermissionFeeWei: 1000000000000000n,
|
|
147
|
-
initialBaseFee: 0n,
|
|
148
|
-
initialComplexityRate: 0n,
|
|
149
|
-
dispatchModel: "selective",
|
|
150
|
-
knownTemplates: [],
|
|
151
|
-
standaloneTemplates: {},
|
|
152
|
+
blockNumber: 11174750,
|
|
153
|
+
knownTemplates: knownTemplatesFor(11155111),
|
|
152
154
|
},
|
|
153
155
|
};
|
|
154
156
|
export function getSailDeployment(chainId) {
|