@continuumdao/ctm-mpc-defi 0.2.40 → 0.2.42

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.
Files changed (98) hide show
  1. package/dist/agent/catalog.cjs +50 -6
  2. package/dist/agent/catalog.cjs.map +1 -1
  3. package/dist/agent/catalog.js +50 -6
  4. package/dist/agent/catalog.js.map +1 -1
  5. package/dist/agent/skills/aave-v4/SKILL.md +1 -1
  6. package/dist/agent/skills/circle-cctp/SKILL.md +1 -0
  7. package/dist/agent/skills/morpho/SKILL.md +11 -0
  8. package/dist/agent/skills/uniswap-v4/SKILL.md +1 -1
  9. package/dist/chains/evm/index.cjs +7 -2
  10. package/dist/chains/evm/index.cjs.map +1 -1
  11. package/dist/chains/evm/index.js +8 -3
  12. package/dist/chains/evm/index.js.map +1 -1
  13. package/dist/core/index.cjs +14 -0
  14. package/dist/core/index.cjs.map +1 -1
  15. package/dist/core/index.d.ts +7 -2
  16. package/dist/core/index.js +13 -2
  17. package/dist/core/index.js.map +1 -1
  18. package/dist/index.cjs +52 -8
  19. package/dist/index.cjs.map +1 -1
  20. package/dist/index.d.ts +1 -1
  21. package/dist/index.js +51 -10
  22. package/dist/index.js.map +1 -1
  23. package/dist/protocols/evm/aave-v4/index.cjs +11 -7
  24. package/dist/protocols/evm/aave-v4/index.cjs.map +1 -1
  25. package/dist/protocols/evm/aave-v4/index.js +12 -8
  26. package/dist/protocols/evm/aave-v4/index.js.map +1 -1
  27. package/dist/protocols/evm/aerodrome/index.cjs +14 -2
  28. package/dist/protocols/evm/aerodrome/index.cjs.map +1 -1
  29. package/dist/protocols/evm/aerodrome/index.js +14 -2
  30. package/dist/protocols/evm/aerodrome/index.js.map +1 -1
  31. package/dist/protocols/evm/arcus/index.cjs +6 -2
  32. package/dist/protocols/evm/arcus/index.cjs.map +1 -1
  33. package/dist/protocols/evm/arcus/index.js +7 -3
  34. package/dist/protocols/evm/arcus/index.js.map +1 -1
  35. package/dist/protocols/evm/circle-cctp/index.cjs +23 -3
  36. package/dist/protocols/evm/circle-cctp/index.cjs.map +1 -1
  37. package/dist/protocols/evm/circle-cctp/index.js +24 -4
  38. package/dist/protocols/evm/circle-cctp/index.js.map +1 -1
  39. package/dist/protocols/evm/compound-v3/index.cjs +9 -3
  40. package/dist/protocols/evm/compound-v3/index.cjs.map +1 -1
  41. package/dist/protocols/evm/compound-v3/index.js +10 -4
  42. package/dist/protocols/evm/compound-v3/index.js.map +1 -1
  43. package/dist/protocols/evm/continuum-dao/index.cjs +11 -5
  44. package/dist/protocols/evm/continuum-dao/index.cjs.map +1 -1
  45. package/dist/protocols/evm/continuum-dao/index.js +12 -6
  46. package/dist/protocols/evm/continuum-dao/index.js.map +1 -1
  47. package/dist/protocols/evm/curve-dao/index.cjs +8 -4
  48. package/dist/protocols/evm/curve-dao/index.cjs.map +1 -1
  49. package/dist/protocols/evm/curve-dao/index.js +9 -5
  50. package/dist/protocols/evm/curve-dao/index.js.map +1 -1
  51. package/dist/protocols/evm/ethena/index.cjs +13 -9
  52. package/dist/protocols/evm/ethena/index.cjs.map +1 -1
  53. package/dist/protocols/evm/ethena/index.js +14 -10
  54. package/dist/protocols/evm/ethena/index.js.map +1 -1
  55. package/dist/protocols/evm/euler-v2/index.cjs +21 -16
  56. package/dist/protocols/evm/euler-v2/index.cjs.map +1 -1
  57. package/dist/protocols/evm/euler-v2/index.js +22 -17
  58. package/dist/protocols/evm/euler-v2/index.js.map +1 -1
  59. package/dist/protocols/evm/gmx/index.cjs +12 -8
  60. package/dist/protocols/evm/gmx/index.cjs.map +1 -1
  61. package/dist/protocols/evm/gmx/index.js +13 -9
  62. package/dist/protocols/evm/gmx/index.js.map +1 -1
  63. package/dist/protocols/evm/hyperliquid/index.cjs +5 -1
  64. package/dist/protocols/evm/hyperliquid/index.cjs.map +1 -1
  65. package/dist/protocols/evm/hyperliquid/index.js +6 -2
  66. package/dist/protocols/evm/hyperliquid/index.js.map +1 -1
  67. package/dist/protocols/evm/lido/index.cjs +7 -3
  68. package/dist/protocols/evm/lido/index.cjs.map +1 -1
  69. package/dist/protocols/evm/lido/index.js +8 -4
  70. package/dist/protocols/evm/lido/index.js.map +1 -1
  71. package/dist/protocols/evm/maple/index.cjs +7 -3
  72. package/dist/protocols/evm/maple/index.cjs.map +1 -1
  73. package/dist/protocols/evm/maple/index.js +8 -4
  74. package/dist/protocols/evm/maple/index.js.map +1 -1
  75. package/dist/protocols/evm/morpho/index.cjs +34 -11
  76. package/dist/protocols/evm/morpho/index.cjs.map +1 -1
  77. package/dist/protocols/evm/morpho/index.d.ts +12 -1
  78. package/dist/protocols/evm/morpho/index.js +31 -13
  79. package/dist/protocols/evm/morpho/index.js.map +1 -1
  80. package/dist/protocols/evm/pendle/index.cjs +9 -3
  81. package/dist/protocols/evm/pendle/index.cjs.map +1 -1
  82. package/dist/protocols/evm/pendle/index.js +10 -4
  83. package/dist/protocols/evm/pendle/index.js.map +1 -1
  84. package/dist/protocols/evm/permit2/index.cjs.map +1 -1
  85. package/dist/protocols/evm/permit2/index.js.map +1 -1
  86. package/dist/protocols/evm/sky/index.cjs +17 -13
  87. package/dist/protocols/evm/sky/index.cjs.map +1 -1
  88. package/dist/protocols/evm/sky/index.js +18 -14
  89. package/dist/protocols/evm/sky/index.js.map +1 -1
  90. package/dist/protocols/evm/uniswap-v4/index.cjs +19 -9
  91. package/dist/protocols/evm/uniswap-v4/index.cjs.map +1 -1
  92. package/dist/protocols/evm/uniswap-v4/index.js +20 -10
  93. package/dist/protocols/evm/uniswap-v4/index.js.map +1 -1
  94. package/dist/protocols/evm/venice/index.cjs +10 -4
  95. package/dist/protocols/evm/venice/index.cjs.map +1 -1
  96. package/dist/protocols/evm/venice/index.js +10 -4
  97. package/dist/protocols/evm/venice/index.js.map +1 -1
  98. package/package.json +1 -1
@@ -16,6 +16,14 @@ var __export = (target, all) => {
16
16
  for (var name in all)
17
17
  __defProp(target, name, { get: all[name], enumerable: true });
18
18
  };
19
+ function defiEvmTransport(rpcUrl, opts) {
20
+ const url = rpcUrl.trim();
21
+ return http(url, opts);
22
+ }
23
+ var init_defiEvmClient = __esm({
24
+ "src/core/defiEvmClient.ts"() {
25
+ }
26
+ });
19
27
 
20
28
  // src/core/defiProxy.ts
21
29
  function getAaveGraphqlProxyUrl() {
@@ -541,7 +549,9 @@ var UNIVERSAL_ROUTER_SPENDER = {
541
549
  4217: "0x1febb76be10aaf3a1402f04e8e835f2c382f7914",
542
550
  196: "0x5507749f2c558bb3e162c6e90c314c092e7372ff",
543
551
  /** Robinhood Chain mainnet — Universal Router v2.1.1 (Trade API / interface) */
544
- 4663: "0x8876789976decbfcbbbe364623c63652db8c0904"
552
+ 4663: "0x8876789976decbfcbbbe364623c63652db8c0904",
553
+ /** Circle Arc mainnet — official Uniswap v4 deployments */
554
+ 5042: "0x4fcA4a51Ab4F23A7447b3284fBd7D73289A89Fb1"
545
555
  };
546
556
  function isUniswapV4ChainSupported(chainId) {
547
557
  if (chainId == null) return false;
@@ -8985,6 +8995,16 @@ registerProtocolModule(arcusProtocolModule);
8985
8995
 
8986
8996
  // src/protocols/evm/morpho/api.ts
8987
8997
  init_defiProxy();
8998
+
8999
+ // src/protocols/evm/morpho/support.ts
9000
+ var ARC_MAINNET_CHAIN_ID = 5042;
9001
+ var ARC_TESTNET_CHAIN_ID = 5042002;
9002
+ var MORPHO_EXTRA_SUPPORTED_CHAIN_IDS = [ARC_MAINNET_CHAIN_ID, ARC_TESTNET_CHAIN_ID];
9003
+ function isMorphoArcChainId(chainId) {
9004
+ return chainId === ARC_MAINNET_CHAIN_ID || chainId === ARC_TESTNET_CHAIN_ID;
9005
+ }
9006
+
9007
+ // src/protocols/evm/morpho/api.ts
8988
9008
  var MORPHO_GRAPHQL_URL = "https://api.morpho.org/graphql";
8989
9009
  async function morphoGql(query, variables) {
8990
9010
  const body = { query, variables: variables ?? {} };
@@ -9007,14 +9027,18 @@ async function fetchMorphoChains() {
9007
9027
  `);
9008
9028
  return d.chains ?? [];
9009
9029
  }
9010
- async function loadMorphoSupportedChainIds() {
9011
- const rows = await fetchMorphoChains();
9030
+ function mergeMorphoSupportedChainIds(rows) {
9012
9031
  const s = /* @__PURE__ */ new Set();
9013
9032
  for (const c of rows) {
9014
9033
  if (typeof c.id === "number" && Number.isFinite(c.id)) s.add(c.id);
9015
9034
  }
9035
+ for (const id of MORPHO_EXTRA_SUPPORTED_CHAIN_IDS) s.add(id);
9016
9036
  return s;
9017
9037
  }
9038
+ async function loadMorphoSupportedChainIds() {
9039
+ const rows = await fetchMorphoChains();
9040
+ return mergeMorphoSupportedChainIds(rows);
9041
+ }
9018
9042
  var VAULT_PAGE_SIZE = 100;
9019
9043
  async function fetchMorphoVaultsForChain(chainId, first = 100) {
9020
9044
  const d = await morphoGql(
@@ -9290,6 +9314,22 @@ var CCTP_EVM_CHAINS = [
9290
9314
  usdc: "0x41E94Eb019C0762f9Bfcf9Fb1E58725BfB0e7582",
9291
9315
  tokenMessenger: TOKEN_MESSENGER_V2_TESTNET,
9292
9316
  label: "Polygon Amoy"
9317
+ },
9318
+ {
9319
+ chainId: 5042,
9320
+ domain: 26,
9321
+ network: "mainnet",
9322
+ usdc: "0x3600000000000000000000000000000000000000",
9323
+ tokenMessenger: TOKEN_MESSENGER_V2_MAINNET,
9324
+ label: "Arc"
9325
+ },
9326
+ {
9327
+ chainId: 5042002,
9328
+ domain: 26,
9329
+ network: "testnet",
9330
+ usdc: "0x3600000000000000000000000000000000000000",
9331
+ tokenMessenger: TOKEN_MESSENGER_V2_TESTNET,
9332
+ label: "Arc Testnet"
9293
9333
  }
9294
9334
  ];
9295
9335
  function cctpChainConfig(chainId) {
@@ -10117,6 +10157,9 @@ async function fetchCompoundV3SubgraphMarkets(args) {
10117
10157
  return null;
10118
10158
  }
10119
10159
  }
10160
+
10161
+ // src/protocols/evm/compound-v3/reads.ts
10162
+ init_defiEvmClient();
10120
10163
  function publicClient(rpcUrl, chainId) {
10121
10164
  const chain = defineChain({
10122
10165
  id: chainId,
@@ -10124,7 +10167,7 @@ function publicClient(rpcUrl, chainId) {
10124
10167
  nativeCurrency: { decimals: 18, name: "Ether", symbol: "ETH" },
10125
10168
  rpcUrls: { default: { http: [rpcUrl] } }
10126
10169
  });
10127
- return createPublicClient({ chain, transport: http(rpcUrl) });
10170
+ return createPublicClient({ chain, transport: defiEvmTransport(rpcUrl) });
10128
10171
  }
10129
10172
  async function readTokenMeta(client, asset) {
10130
10173
  const [symbol, decimals] = await Promise.all([
@@ -10914,7 +10957,8 @@ var PROTOCOL_SUPPORT_ADVISORS = {
10914
10957
  59144,
10915
10958
  4217,
10916
10959
  196,
10917
- 4663
10960
+ 4663,
10961
+ 5042
10918
10962
  ]) {
10919
10963
  if (isUniswapV4ChainSupported(id)) ids.push(id);
10920
10964
  }
@@ -11022,7 +11066,7 @@ var PROTOCOL_SUPPORT_ADVISORS = {
11022
11066
  }));
11023
11067
  return {
11024
11068
  tokens,
11025
- notes: chainId === ROBINHOOD_CHAIN_ID ? 'Morpho vault assets on Robinhood Chain. Robinhood Earn USDG yield uses Steakhouse USDG (steakUSDG) \u2014 query "robinhood earn" or robinhoodEarn: true on deposit multisign; not Arcus collateral.' : "Morpho vault assets, Blue market loan/collateral tokens, and Midnight book loan/collateral tokens from api.morpho.org."
11069
+ notes: chainId === ROBINHOOD_CHAIN_ID ? 'Morpho vault assets on Robinhood Chain. Robinhood Earn USDG yield uses Steakhouse USDG (steakUSDG) \u2014 query "robinhood earn" or robinhoodEarn: true on deposit multisign; not Arcus collateral.' : isMorphoArcChainId(chainId) ? "Morpho vault and Blue market assets on Arc (USDC-native gas). Mainnet is 5042; testnet is 5042002. Midnight remains Ethereum/Base only." : "Morpho vault assets, Blue market loan/collateral tokens, and Midnight book loan/collateral tokens from api.morpho.org."
11026
11070
  };
11027
11071
  },
11028
11072
  async isTokenSupported(chainId, address) {