@continuumdao/ctm-mpc-defi 0.2.64 → 0.2.66
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/dist/agent/catalog.cjs +1227 -2928
- package/dist/agent/catalog.cjs.map +1 -1
- package/dist/agent/catalog.d.ts +1620 -1631
- package/dist/agent/catalog.js +1226 -2929
- package/dist/agent/catalog.js.map +1 -1
- package/dist/chains/evm/index.cjs +22 -15
- package/dist/chains/evm/index.cjs.map +1 -1
- package/dist/chains/evm/index.d.ts +13 -2
- package/dist/chains/evm/index.js +12 -6
- package/dist/chains/evm/index.js.map +1 -1
- package/dist/core/index.cjs +3 -3
- package/dist/core/index.cjs.map +1 -1
- package/dist/core/index.d.ts +1 -1
- package/dist/core/index.js +2 -2
- package/dist/core/index.js.map +1 -1
- package/dist/index.cjs +25 -17
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +15 -4
- package/dist/index.js +14 -7
- package/dist/index.js.map +1 -1
- package/dist/protocols/evm/aave-v4/index.cjs +22 -16
- package/dist/protocols/evm/aave-v4/index.cjs.map +1 -1
- package/dist/protocols/evm/aave-v4/index.js +11 -5
- package/dist/protocols/evm/aave-v4/index.js.map +1 -1
- package/dist/protocols/evm/aerodrome/index.cjs +21 -15
- package/dist/protocols/evm/aerodrome/index.cjs.map +1 -1
- package/dist/protocols/evm/aerodrome/index.d.ts +5 -1
- package/dist/protocols/evm/aerodrome/index.js +11 -5
- package/dist/protocols/evm/aerodrome/index.js.map +1 -1
- package/dist/protocols/evm/arcus/index.cjs +21 -15
- package/dist/protocols/evm/arcus/index.cjs.map +1 -1
- package/dist/protocols/evm/arcus/index.js +11 -5
- package/dist/protocols/evm/arcus/index.js.map +1 -1
- package/dist/protocols/evm/circle-cctp/index.cjs +21 -15
- package/dist/protocols/evm/circle-cctp/index.cjs.map +1 -1
- package/dist/protocols/evm/circle-cctp/index.js +11 -5
- package/dist/protocols/evm/circle-cctp/index.js.map +1 -1
- package/dist/protocols/evm/compound-v3/index.cjs +21 -15
- package/dist/protocols/evm/compound-v3/index.cjs.map +1 -1
- package/dist/protocols/evm/compound-v3/index.js +11 -5
- package/dist/protocols/evm/compound-v3/index.js.map +1 -1
- package/dist/protocols/evm/continuum-dao/index.cjs +37 -18
- package/dist/protocols/evm/continuum-dao/index.cjs.map +1 -1
- package/dist/protocols/evm/continuum-dao/index.d.ts +3 -1
- package/dist/protocols/evm/continuum-dao/index.js +27 -9
- package/dist/protocols/evm/continuum-dao/index.js.map +1 -1
- package/dist/protocols/evm/curve-dao/index.cjs +21 -15
- package/dist/protocols/evm/curve-dao/index.cjs.map +1 -1
- package/dist/protocols/evm/curve-dao/index.d.ts +1 -1
- package/dist/protocols/evm/curve-dao/index.js +11 -5
- package/dist/protocols/evm/curve-dao/index.js.map +1 -1
- package/dist/protocols/evm/derive/index.cjs +24 -18
- package/dist/protocols/evm/derive/index.cjs.map +1 -1
- package/dist/protocols/evm/derive/index.js +11 -5
- package/dist/protocols/evm/derive/index.js.map +1 -1
- package/dist/protocols/evm/ethena/index.cjs +22 -16
- package/dist/protocols/evm/ethena/index.cjs.map +1 -1
- package/dist/protocols/evm/ethena/index.js +11 -5
- package/dist/protocols/evm/ethena/index.js.map +1 -1
- package/dist/protocols/evm/euler-v2/index.cjs +21 -15
- package/dist/protocols/evm/euler-v2/index.cjs.map +1 -1
- package/dist/protocols/evm/euler-v2/index.js +11 -5
- package/dist/protocols/evm/euler-v2/index.js.map +1 -1
- package/dist/protocols/evm/gmx/index.cjs +21 -15
- package/dist/protocols/evm/gmx/index.cjs.map +1 -1
- package/dist/protocols/evm/gmx/index.js +11 -5
- package/dist/protocols/evm/gmx/index.js.map +1 -1
- package/dist/protocols/evm/hyperliquid/index.cjs +21 -15
- package/dist/protocols/evm/hyperliquid/index.cjs.map +1 -1
- package/dist/protocols/evm/hyperliquid/index.js +11 -5
- package/dist/protocols/evm/hyperliquid/index.js.map +1 -1
- package/dist/protocols/evm/hyperliquidOutcome/index.cjs +2 -2
- package/dist/protocols/evm/hyperliquidOutcome/index.cjs.map +1 -1
- package/dist/protocols/evm/hyperliquidOutcome/index.js +1 -1
- package/dist/protocols/evm/hyperliquidOutcome/index.js.map +1 -1
- package/dist/protocols/evm/lido/index.cjs +21 -15
- package/dist/protocols/evm/lido/index.cjs.map +1 -1
- package/dist/protocols/evm/lido/index.js +11 -5
- package/dist/protocols/evm/lido/index.js.map +1 -1
- package/dist/protocols/evm/maple/index.cjs +21 -15
- package/dist/protocols/evm/maple/index.cjs.map +1 -1
- package/dist/protocols/evm/maple/index.js +11 -5
- package/dist/protocols/evm/maple/index.js.map +1 -1
- package/dist/protocols/evm/morpho/index.cjs +21 -15
- package/dist/protocols/evm/morpho/index.cjs.map +1 -1
- package/dist/protocols/evm/morpho/index.js +11 -5
- package/dist/protocols/evm/morpho/index.js.map +1 -1
- package/dist/protocols/evm/pendle/index.cjs +21 -15
- package/dist/protocols/evm/pendle/index.cjs.map +1 -1
- package/dist/protocols/evm/pendle/index.d.ts +5 -1
- package/dist/protocols/evm/pendle/index.js +11 -5
- package/dist/protocols/evm/pendle/index.js.map +1 -1
- package/dist/protocols/evm/permit2/index.cjs +2 -2
- package/dist/protocols/evm/permit2/index.cjs.map +1 -1
- package/dist/protocols/evm/permit2/index.js +1 -1
- package/dist/protocols/evm/permit2/index.js.map +1 -1
- package/dist/protocols/evm/railgun/index.cjs +21 -15
- package/dist/protocols/evm/railgun/index.cjs.map +1 -1
- package/dist/protocols/evm/railgun/index.js +11 -5
- package/dist/protocols/evm/railgun/index.js.map +1 -1
- package/dist/protocols/evm/sky/index.cjs +21 -15
- package/dist/protocols/evm/sky/index.cjs.map +1 -1
- package/dist/protocols/evm/sky/index.js +11 -5
- package/dist/protocols/evm/sky/index.js.map +1 -1
- package/dist/protocols/evm/trueo/index.cjs +21 -15
- package/dist/protocols/evm/trueo/index.cjs.map +1 -1
- package/dist/protocols/evm/trueo/index.js +11 -5
- package/dist/protocols/evm/trueo/index.js.map +1 -1
- package/dist/protocols/evm/uniswap-v4/index.cjs +23 -16
- package/dist/protocols/evm/uniswap-v4/index.cjs.map +1 -1
- package/dist/protocols/evm/uniswap-v4/index.d.ts +1 -1
- package/dist/protocols/evm/uniswap-v4/index.js +12 -5
- package/dist/protocols/evm/uniswap-v4/index.js.map +1 -1
- package/dist/protocols/evm/venice/index.cjs +22 -16
- package/dist/protocols/evm/venice/index.cjs.map +1 -1
- package/dist/protocols/evm/venice/index.js +11 -5
- package/dist/protocols/evm/venice/index.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var viem = require('viem');
|
|
4
|
-
var
|
|
4
|
+
var nodeRead_js = require('@continuumdao/continuum-node-sdk/dist/api/node-read.js');
|
|
5
|
+
var rpcUtils_js = require('@continuumdao/continuum-node-sdk/dist/evm/rpc-utils.js');
|
|
6
|
+
var chainFees_js = require('@continuumdao/continuum-node-sdk/dist/evm/chain-fees.js');
|
|
7
|
+
var getSigFeeSpeed_js = require('@continuumdao/continuum-node-sdk/dist/evm/get-sig-fee-speed.js');
|
|
8
|
+
var gwei_js = require('@continuumdao/continuum-node-sdk/dist/evm/gwei.js');
|
|
9
|
+
var txParams_js = require('@continuumdao/continuum-node-sdk/dist/evm/tx-params.js');
|
|
5
10
|
|
|
6
11
|
// src/core/registry.ts
|
|
7
12
|
var modules = [];
|
|
@@ -664,7 +669,7 @@ async function fetchEthereumAddressForKeyGen(managementNodeUrl, keyGenId, readAu
|
|
|
664
669
|
throw new Error("keyGen is required");
|
|
665
670
|
}
|
|
666
671
|
const url = `${base}/getKeyGenResultById?id=${encodeURIComponent(id)}`;
|
|
667
|
-
const res = await
|
|
672
|
+
const res = await nodeRead_js.nodeFetchWithReadAuth(url, { ...init, method: "GET", cache: "no-store" }, readAuth);
|
|
668
673
|
if (!res.ok) {
|
|
669
674
|
const t = await res.text().catch(() => "");
|
|
670
675
|
throw new Error(
|
|
@@ -1103,7 +1108,7 @@ function finalizeMultisign(input) {
|
|
|
1103
1108
|
const ph = (keyGen.pubkeyhex ?? "").trim();
|
|
1104
1109
|
if (!ph) throw new Error("keyGen pubKey (pubkeyhex) is required");
|
|
1105
1110
|
const keyList = keyGen.keylist ?? [];
|
|
1106
|
-
const clientId =
|
|
1111
|
+
const clientId = rpcUtils_js.getClientIdFromKeyGenResult(keyGen);
|
|
1107
1112
|
const first = legs[0];
|
|
1108
1113
|
const messageHashes = legs.map((l) => l.msgHash);
|
|
1109
1114
|
const messageRawBatch = legs.map((l) => l.msgRaw);
|
|
@@ -1149,11 +1154,16 @@ function finalizeMultisign(input) {
|
|
|
1149
1154
|
}
|
|
1150
1155
|
function routerSwapGasLimitFromEstimate(estimatedGas, chainGasLimit) {
|
|
1151
1156
|
if (chainGasLimit != null && Number.isFinite(chainGasLimit) && chainGasLimit > 0) {
|
|
1152
|
-
return
|
|
1157
|
+
return txParams_js.gasLimitFromEstimateAndChainConfig(estimatedGas, chainGasLimit);
|
|
1153
1158
|
}
|
|
1154
1159
|
return (estimatedGas * 12n + 9n) / 10n;
|
|
1155
1160
|
}
|
|
1156
1161
|
|
|
1162
|
+
// src/chains/evm/unsignedMessageRaw.ts
|
|
1163
|
+
function evmUnsignedMessageRaw(serialized) {
|
|
1164
|
+
return serialized.startsWith("0x") ? serialized.slice(2) : serialized;
|
|
1165
|
+
}
|
|
1166
|
+
|
|
1157
1167
|
// src/chains/evm/buildBatch.ts
|
|
1158
1168
|
async function buildEvmMultisignBatch(args) {
|
|
1159
1169
|
const { context, steps } = args;
|
|
@@ -1175,7 +1185,7 @@ async function buildEvmMultisignBatch(args) {
|
|
|
1175
1185
|
rpcUrls: { default: { http: [rpcUrl] } }
|
|
1176
1186
|
});
|
|
1177
1187
|
const publicClient = viem.createPublicClient({ chain: ch, transport: defiEvmTransport(rpcUrl) });
|
|
1178
|
-
const feeParams = await
|
|
1188
|
+
const feeParams = await chainFees_js.fetchChainFeeParams(rpcUrl, chainId);
|
|
1179
1189
|
const legacy = Boolean(chainDetail?.legacy) || !feeParams.isEip1559;
|
|
1180
1190
|
const latestBaseFeeWei = !legacy ? (await publicClient.getBlock({ blockTag: "latest" })).baseFeePerGas ?? 0n : 0n;
|
|
1181
1191
|
const gasLimitConfig = useCustomGas && chainDetail?.gasLimit != null ? Number(chainDetail.gasLimit) : void 0;
|
|
@@ -1208,7 +1218,7 @@ async function buildEvmMultisignBatch(args) {
|
|
|
1208
1218
|
} else if (step.routerSwap) {
|
|
1209
1219
|
gasLimitI = routerSwapGasLimitFromEstimate(estimatedGas, chainGasLimitRouter);
|
|
1210
1220
|
} else {
|
|
1211
|
-
gasLimitI = useCustomGas ?
|
|
1221
|
+
gasLimitI = useCustomGas ? txParams_js.gasLimitFromEstimateAndChainConfig(estimatedGas, gasLimitConfig) : estimatedGas;
|
|
1212
1222
|
}
|
|
1213
1223
|
let proposalTxParams;
|
|
1214
1224
|
let feeSnapshot;
|
|
@@ -1219,7 +1229,7 @@ async function buildEvmMultisignBatch(args) {
|
|
|
1219
1229
|
gasPriceWei = gasPriceWei * BigInt(100 + gasFeeMultiplier) / 100n;
|
|
1220
1230
|
}
|
|
1221
1231
|
if (useCustomGas && chainDetail?.gasPrice != null && chainDetail.gasPrice > 0) {
|
|
1222
|
-
const configured = viem.parseGwei(
|
|
1232
|
+
const configured = viem.parseGwei(gwei_js.gweiToDecimalString(Number(chainDetail.gasPrice)));
|
|
1223
1233
|
if (configured > gasPriceWei) gasPriceWei = configured;
|
|
1224
1234
|
}
|
|
1225
1235
|
serialized = viem.serializeTransaction({
|
|
@@ -1238,7 +1248,7 @@ async function buildEvmMultisignBatch(args) {
|
|
|
1238
1248
|
txType: "legacy",
|
|
1239
1249
|
gasPrice: gasPriceWei.toString()
|
|
1240
1250
|
};
|
|
1241
|
-
feeSnapshot =
|
|
1251
|
+
feeSnapshot = txParams_js.proposalTxParamsToFeeSnapshot(proposalTxParams);
|
|
1242
1252
|
} else {
|
|
1243
1253
|
const fetchedBase = feeParams.baseFeeGwei ?? 0;
|
|
1244
1254
|
const fetchedPriority = feeParams.priorityFeeGwei ?? 0;
|
|
@@ -1249,13 +1259,13 @@ async function buildEvmMultisignBatch(args) {
|
|
|
1249
1259
|
const baseFeeMultiplierPct = useCustomGas && chainDetail?.baseFeeMultiplier != null ? Math.max(100, Number(chainDetail.baseFeeMultiplier)) : 100;
|
|
1250
1260
|
const baseComponentGwei = effectiveBaseFeeGwei * baseFeeMultiplierPct / 100;
|
|
1251
1261
|
const maxFeePerGasGwei = baseComponentGwei + effectivePriorityFeeGwei;
|
|
1252
|
-
let maxPriorityFeePerGas = effectivePriorityFeeGwei > 0 ? viem.parseGwei(
|
|
1253
|
-
let maxFeePerGas = viem.parseGwei(
|
|
1262
|
+
let maxPriorityFeePerGas = effectivePriorityFeeGwei > 0 ? viem.parseGwei(gwei_js.gweiToDecimalString(effectivePriorityFeeGwei)) : viem.parseGwei("1");
|
|
1263
|
+
let maxFeePerGas = viem.parseGwei(gwei_js.gweiToDecimalString(maxFeePerGasGwei));
|
|
1254
1264
|
if (useCustomGas && gasFeeMultiplier != null && gasFeeMultiplier > 0) {
|
|
1255
1265
|
maxPriorityFeePerGas = maxPriorityFeePerGas * BigInt(100 + gasFeeMultiplier) / 100n;
|
|
1256
1266
|
maxFeePerGas = maxFeePerGas * BigInt(100 + gasFeeMultiplier) / 100n;
|
|
1257
1267
|
}
|
|
1258
|
-
({ maxFeePerGas, maxPriorityFeePerGas } =
|
|
1268
|
+
({ maxFeePerGas, maxPriorityFeePerGas } = getSigFeeSpeed_js.alignEip1559FeesWithLatestBase(
|
|
1259
1269
|
maxFeePerGas,
|
|
1260
1270
|
maxPriorityFeePerGas,
|
|
1261
1271
|
latestBaseFeeWei
|
|
@@ -1278,14 +1288,14 @@ async function buildEvmMultisignBatch(args) {
|
|
|
1278
1288
|
maxFeePerGas: maxFeePerGas.toString(),
|
|
1279
1289
|
maxPriorityFeePerGas: maxPriorityFeePerGas.toString()
|
|
1280
1290
|
};
|
|
1281
|
-
feeSnapshot = i === 0 ?
|
|
1291
|
+
feeSnapshot = i === 0 ? txParams_js.proposalTxParamsToFeeSnapshot(proposalTxParams) : {};
|
|
1282
1292
|
}
|
|
1283
1293
|
const h = viem.keccak256(serialized);
|
|
1284
1294
|
const msgHash = h.startsWith("0x") ? h.slice(2) : h;
|
|
1285
1295
|
const batchMetaExtra = args.buildBatchMeta({ step, index: i, gasLimit: gasLimitI });
|
|
1286
1296
|
legs.push({
|
|
1287
1297
|
msgHash,
|
|
1288
|
-
msgRaw:
|
|
1298
|
+
msgRaw: evmUnsignedMessageRaw(serialized),
|
|
1289
1299
|
destinationAddress: step.to,
|
|
1290
1300
|
signatureText: typeof batchMetaExtra.signatureText === "string" ? batchMetaExtra.signatureText : JSON.stringify(batchMetaExtra.signatureText ?? {}),
|
|
1291
1301
|
audit: batchMetaExtra,
|
|
@@ -1293,9 +1303,6 @@ async function buildEvmMultisignBatch(args) {
|
|
|
1293
1303
|
proposalTxParams,
|
|
1294
1304
|
valueWei: i === 0 ? step.value : void 0
|
|
1295
1305
|
});
|
|
1296
|
-
if (i === 0 && args.firstMsgRawNo0x != null) {
|
|
1297
|
-
legs[0].msgRaw = args.firstMsgRawNo0x;
|
|
1298
|
-
}
|
|
1299
1306
|
}
|
|
1300
1307
|
const extraJSON = {};
|
|
1301
1308
|
if (useCustomGas && customGasChainDetails && Object.keys(customGasChainDetails).length > 0) {
|