Skip to main content

What's new in v0.9.0?

Breaking changes

The ⚠️ symbol denotes potentially breaking API changes. As per the semantic versioning specification, from v1.0.0 onwards, breaking changes will be released only in major version bumps.

Breaking Changes

⚠️ Package references

  • Moves the package from @metamask-private to @metamask organization.
  • Renames the delegator-core-viem entrypoint to delegation-toolkit.
- import { toMetaMaskSmartAccount } from "@metamask-private/delegator-core-viem";
+ import { toMetaMaskSmartAccount } from "@metamask/delegation-toolkit";

⚠️ SimpleFactory address

Updates the SimpleFactory contract address. Please note, this will result in a change to the smart account address for MetaMaskSmartAccount.

// Delegation enviroment for 1.3.0
export const deployment_1_3_0 = {
//...
- SimpleFactory: '0x6ff518884f21168c30c58CB21184D6AdBC18Ad90',
+ SimpleFactory: '0x69Aa2f9fe1572F1B640E1bbc512f5c3a734fc77c',
//...
}

Enhancements

⚠️ Package installation

Package installation no longer requires an authentication token, as it has transitioned out of private alpha. 🎉

Contract addresses

The following are the contract addresses for the Delegation Framework version 1.3.0, as used by this version of the toolkit.

Delegation Framework

ContractAddress
EntryPoint0x0000000071727De22E5E9d8BAf0edAc6f37da032
SimpleFactory0x69Aa2f9fe1572F1B640E1bbc512f5c3a734fc77c
DelegationManager0x739309deED0Ae184E66a427ACa432aE1D91d022e
MultiSigDeleGatorImpl0xB4ab520FF1761f7b6dc221fEaCaf79367629Ed12
HybridDeleGatorImpl0xf4E57F579ad8169D0d4Da7AedF71AC3f83e8D2b4

Caveat enforcers

EnforcerAddress
AllowedCalldataEnforcer0x1021300501f6aDc446d4e506053F55a8a63cB1d7
AllowedMethodsEnforcer0x371f95c92Be3A916B824A2aE086Ed6db7A6193Fb
AllowedTargetsEnforcer0x91e043a13c61f9ddC02BDfe38dCA02A7F5b7Cc88
ArgsEqualityCheckEnforcer0xACEC09a804020B307eFF00df9AAfb1Cf656DF9Cf
BlockNumberEnforcer0x955C7732562c6Dc4760dF749440f3ab28F46F608
DeployedEnforcer0xd2c8c04E2070c13CCB97FEAa25D1915676AAC191
ERC20BalanceGteEnforcer0x262A37B51798c44F1BEAd1A076703E4488887b78
ERC20TransferAmountEnforcer0x272E92835B12F014353E8754808C67682e9dddFA
ERC721BalanceGteEnforcer0xd0960BC7324235DE4FAFe0f2eDCff64313220CC8
ERC721TransferEnforcer0x82621E65240f67D8F60a920F709127743A8D20A9
ERC1155BalanceGteEnforcer0x01a84C60B0B5c3EbB504fDa60a8236eB7e2D6655
IdEnforcer0xd6403989C2cc145102c2AE76E70D1317947ef587
LimitedCallsEnforcer0xA45dd3D90447640eB76085637132a74E18b310E3
NonceEnforcer0x1ba53a54eDa7021E08065C1C1943bCE91e0FceA3
TimestampEnforcer0xABc2591a40db08eD7045D91A29B3DBC33082DB54
ValueLteEnforcer0x9C458b17Cd6570e322Ee9a4180b309dAFD08e24C
NativeTokenTransferAmountEnforcer0xcfD1BD7922D123Caa194597BF7A0073899a284Df
NativeBalanceGteEnforcer0xDb5BAF405159f47Ab70DD424021ef114A450E101
NativeTokenPaymentEnforcer0x6e21bABB3779bc694DC3A4DCeB35C1ecC1d9087b
OwnershipTransferEnforcer0x5f263261676d24Dd146545F22E485708900B2B83
RedeemerEnforcer0x596CC67C2Da64ED51E27B6d61f46e3F687E9182d

Supported mainnet networks

  • Ethereum
  • Polygon
  • Binance Smart Chain
  • Optimism
  • Arbitrum
  • Linea
  • Base
  • Gnosis Chain

Supported testnet networks

  • Ethereum Sepolia
  • Linea Sepolia
  • Base Sepolia
  • MegaEth