@chainlink/ccip-cli 0.96.0 → 0.97.0
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/commands/lane-latency.d.ts +17 -0
- package/dist/commands/lane-latency.d.ts.map +1 -1
- package/dist/commands/lane-latency.js +18 -1
- package/dist/commands/lane-latency.js.map +1 -1
- package/dist/commands/manual-exec.d.ts +20 -0
- package/dist/commands/manual-exec.d.ts.map +1 -1
- package/dist/commands/manual-exec.js +34 -18
- package/dist/commands/manual-exec.js.map +1 -1
- package/dist/commands/parse.d.ts +17 -0
- package/dist/commands/parse.d.ts.map +1 -1
- package/dist/commands/parse.js +17 -0
- package/dist/commands/parse.js.map +1 -1
- package/dist/commands/send.d.ts +20 -0
- package/dist/commands/send.d.ts.map +1 -1
- package/dist/commands/send.js +22 -4
- package/dist/commands/send.js.map +1 -1
- package/dist/commands/show.d.ts +22 -6
- package/dist/commands/show.d.ts.map +1 -1
- package/dist/commands/show.js +77 -43
- package/dist/commands/show.js.map +1 -1
- package/dist/commands/utils.d.ts +7 -7
- package/dist/commands/utils.d.ts.map +1 -1
- package/dist/commands/utils.js +89 -43
- package/dist/commands/utils.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/loadtest.d.ts +2 -0
- package/dist/loadtest.d.ts.map +1 -0
- package/dist/loadtest.js +132 -0
- package/dist/loadtest.js.map +1 -0
- package/package.json +8 -8
- package/src/commands/lane-latency.ts +19 -1
- package/src/commands/manual-exec.ts +35 -27
- package/src/commands/parse.ts +18 -0
- package/src/commands/send.ts +23 -4
- package/src/commands/show.ts +85 -44
- package/src/commands/utils.ts +105 -43
- package/src/index.ts +1 -1
- package/src/loadtest.ts +171 -0
|
@@ -1,3 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CCIP CLI Lane Latency Command
|
|
3
|
+
*
|
|
4
|
+
* Queries real-time lane latency statistics between source and destination chains
|
|
5
|
+
* using the CCIP API. Shows average, median, and percentile latencies.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```bash
|
|
9
|
+
* # Get latency between Ethereum and Arbitrum
|
|
10
|
+
* ccip-cli laneLatency ethereum-mainnet arbitrum-mainnet
|
|
11
|
+
*
|
|
12
|
+
* # Use custom API URL
|
|
13
|
+
* ccip-cli laneLatency sepolia fuji --api-url https://custom-api.example.com
|
|
14
|
+
* ```
|
|
15
|
+
*
|
|
16
|
+
* @packageDocumentation
|
|
17
|
+
*/
|
|
1
18
|
import type { Argv } from 'yargs';
|
|
2
19
|
import type { GlobalOpts } from '../index.ts';
|
|
3
20
|
import { type Ctx } from './types.ts';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lane-latency.d.ts","sourceRoot":"","sources":["../../src/commands/lane-latency.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lane-latency.d.ts","sourceRoot":"","sources":["../../src/commands/lane-latency.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAQH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,OAAO,CAAA;AAEjC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,KAAK,GAAG,EAAU,MAAM,YAAY,CAAA;AAG7C,eAAO,MAAM,OAAO,UAAkE,CAAA;AACtF,eAAO,MAAM,QAAQ,uEAAuE,CAAA;AAC5F,eAAO,MAAM,OAAO,UAAc,CAAA;AAElC;;;;GAIG;AACH,eAAO,MAAM,OAAO,GAAI,OAAO,IAAI;;;;;;EAe7B,CAAA;AAEN;;;GAGG;AACH,wBAAsB,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,UAAU,iBAQ3F;AAED,2BAA2B;AAC3B,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,CAAC,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,iBAuCpF"}
|
|
@@ -1,3 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CCIP CLI Lane Latency Command
|
|
3
|
+
*
|
|
4
|
+
* Queries real-time lane latency statistics between source and destination chains
|
|
5
|
+
* using the CCIP API. Shows average, median, and percentile latencies.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```bash
|
|
9
|
+
* # Get latency between Ethereum and Arbitrum
|
|
10
|
+
* ccip-cli laneLatency ethereum-mainnet arbitrum-mainnet
|
|
11
|
+
*
|
|
12
|
+
* # Use custom API URL
|
|
13
|
+
* ccip-cli laneLatency sepolia fuji --api-url https://custom-api.example.com
|
|
14
|
+
* ```
|
|
15
|
+
*
|
|
16
|
+
* @packageDocumentation
|
|
17
|
+
*/
|
|
1
18
|
import { CCIPAPIClient, CCIPApiClientNotAvailableError, bigIntReplacer, networkInfo, } from '@chainlink/ccip-sdk';
|
|
2
19
|
import { Format } from "./types.js";
|
|
3
20
|
import { formatDuration, getCtx, logParsedError, prettyTable } from "./utils.js";
|
|
@@ -51,7 +68,7 @@ export async function getLaneLatencyCmd(ctx, argv) {
|
|
|
51
68
|
}
|
|
52
69
|
const sourceNetwork = networkInfo(argv.source);
|
|
53
70
|
const destNetwork = networkInfo(argv.dest);
|
|
54
|
-
const apiClient =
|
|
71
|
+
const apiClient = CCIPAPIClient.fromUrl(argv.apiUrl, { logger });
|
|
55
72
|
const result = await apiClient.getLaneLatency(sourceNetwork.chainSelector, destNetwork.chainSelector);
|
|
56
73
|
switch (argv.format) {
|
|
57
74
|
case Format.json:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lane-latency.js","sourceRoot":"","sources":["../../src/commands/lane-latency.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,8BAA8B,EAC9B,cAAc,EACd,WAAW,GACZ,MAAM,kCAAkC,CAAA;AAIzC,OAAO,EAAY,MAAM,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAEhF,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,6BAA6B,EAAE,8BAA8B,CAAC,CAAA;AACtF,MAAM,CAAC,MAAM,QAAQ,GAAG,oEAAoE,CAAA;AAC5F,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,SAAS,CAAC,CAAA;AAElC;;;;GAIG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAW,EAAE,EAAE,CACrC,KAAK;KACF,UAAU,CAAC,QAAQ,EAAE;IACpB,IAAI,EAAE,QAAQ;IACd,YAAY,EAAE,IAAI;IAClB,QAAQ,EAAE,wEAAwE;CACnF,CAAC;KACD,UAAU,CAAC,MAAM,EAAE;IAClB,IAAI,EAAE,QAAQ;IACd,YAAY,EAAE,IAAI;IAClB,QAAQ,EAAE,6EAA6E;CACxF,CAAC;KACD,MAAM,CAAC,SAAS,EAAE;IACjB,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,uDAAuD;CAClE,CAAC,CAAA;AAEN;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,IAA8D;IAC1F,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;IACnC,OAAO,iBAAiB,CAAC,GAAG,EAAE,IAAI,CAAC;SAChC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACb,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAA;QACpB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC;YAAE,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC3D,CAAC,CAAC;SACD,OAAO,CAAC,OAAO,CAAC,CAAA;AACrB,CAAC;AAED,2BAA2B;AAC3B,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,GAAQ,EAAE,IAAmC;IACnF,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,CAAA;IAEtB,2DAA2D;IAC3D,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,8BAA8B,CAAC;YACvC,OAAO,EAAE;gBACP,MAAM,EACJ,yFAAyF;aAC5F;SACF,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC9C,MAAM,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAE1C,MAAM,SAAS,GAAG,
|
|
1
|
+
{"version":3,"file":"lane-latency.js","sourceRoot":"","sources":["../../src/commands/lane-latency.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CCIP CLI Manual Execution Command
|
|
3
|
+
*
|
|
4
|
+
* Manually executes pending or failed CCIP messages on the destination chain.
|
|
5
|
+
* Use this when automatic execution fails or is delayed.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```bash
|
|
9
|
+
* # Execute a stuck message
|
|
10
|
+
* ccip-cli manualExec 0xSourceTxHash... --wallet $PRIVATE_KEY
|
|
11
|
+
*
|
|
12
|
+
* # Execute with custom gas limit
|
|
13
|
+
* ccip-cli manualExec 0xSourceTxHash... --gas-limit 500000
|
|
14
|
+
*
|
|
15
|
+
* # Execute all messages in sender queue
|
|
16
|
+
* ccip-cli manualExec 0xSourceTxHash... --sender-queue
|
|
17
|
+
* ```
|
|
18
|
+
*
|
|
19
|
+
* @packageDocumentation
|
|
20
|
+
*/
|
|
1
21
|
import type { Argv } from 'yargs';
|
|
2
22
|
import type { GlobalOpts } from '../index.ts';
|
|
3
23
|
export declare const command: string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manual-exec.d.ts","sourceRoot":"","sources":["../../src/commands/manual-exec.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"manual-exec.d.ts","sourceRoot":"","sources":["../../src/commands/manual-exec.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAQH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,OAAO,CAAA;AAEjC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAiB7C,eAAO,MAAM,OAAO,UAAoD,CAAA;AACxE,eAAO,MAAM,QAAQ,gDAAgD,CAAA;AAErE;;;;GAIG;AACH,eAAO,MAAM,OAAO,GAAI,OAAO,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiE7B,CAAA;AAEN;;;GAGG;AACH,wBAAsB,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,UAAU,iBAW3F"}
|
|
@@ -1,6 +1,26 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* CCIP CLI Manual Execution Command
|
|
3
|
+
*
|
|
4
|
+
* Manually executes pending or failed CCIP messages on the destination chain.
|
|
5
|
+
* Use this when automatic execution fails or is delayed.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```bash
|
|
9
|
+
* # Execute a stuck message
|
|
10
|
+
* ccip-cli manualExec 0xSourceTxHash... --wallet $PRIVATE_KEY
|
|
11
|
+
*
|
|
12
|
+
* # Execute with custom gas limit
|
|
13
|
+
* ccip-cli manualExec 0xSourceTxHash... --gas-limit 500000
|
|
14
|
+
*
|
|
15
|
+
* # Execute all messages in sender queue
|
|
16
|
+
* ccip-cli manualExec 0xSourceTxHash... --sender-queue
|
|
17
|
+
* ```
|
|
18
|
+
*
|
|
19
|
+
* @packageDocumentation
|
|
20
|
+
*/
|
|
21
|
+
import { bigIntReplacer, discoverOffRamp, estimateReceiveExecution, isSupportedTxHash, } from '@chainlink/ccip-sdk';
|
|
2
22
|
import { Format } from "./types.js";
|
|
3
|
-
import { getCtx, logParsedError,
|
|
23
|
+
import { getCtx, logParsedError, prettyReceipt, prettyRequest, prettyVerifications, selectRequest, withDateTimestamp, } from "./utils.js";
|
|
4
24
|
import { fetchChainsFromRpcs, loadChainWallet } from "../providers/index.js";
|
|
5
25
|
// const MAX_QUEUE = 1000
|
|
6
26
|
// const MAX_EXECS_IN_BATCH = 1
|
|
@@ -103,7 +123,7 @@ async function manualExec(ctx, argv) {
|
|
|
103
123
|
break;
|
|
104
124
|
}
|
|
105
125
|
case Format.pretty:
|
|
106
|
-
await prettyRequest.call(ctx,
|
|
126
|
+
await prettyRequest.call(ctx, request, source);
|
|
107
127
|
break;
|
|
108
128
|
case Format.json:
|
|
109
129
|
logger.info(JSON.stringify(request, bigIntReplacer, 2));
|
|
@@ -111,28 +131,19 @@ async function manualExec(ctx, argv) {
|
|
|
111
131
|
}
|
|
112
132
|
const dest = await getChain(request.lane.destChainSelector);
|
|
113
133
|
const offRamp = await discoverOffRamp(source, dest, request.lane.onRamp, source);
|
|
114
|
-
const
|
|
115
|
-
const commit = await dest.getCommitReport({ ...argv, commitStore, request });
|
|
134
|
+
const verifications = await dest.getVerifications({ ...argv, offRamp, request });
|
|
116
135
|
switch (argv.format) {
|
|
117
136
|
case Format.log:
|
|
118
|
-
logger.log('commit =',
|
|
137
|
+
logger.log('commit =', verifications);
|
|
119
138
|
break;
|
|
120
139
|
case Format.pretty:
|
|
121
140
|
logger.info('Commit (dest):');
|
|
122
|
-
await
|
|
141
|
+
await prettyVerifications.call(ctx, dest, verifications, request);
|
|
123
142
|
break;
|
|
124
143
|
case Format.json:
|
|
125
|
-
logger.info(JSON.stringify(
|
|
144
|
+
logger.info(JSON.stringify(verifications, bigIntReplacer, 2));
|
|
126
145
|
break;
|
|
127
146
|
}
|
|
128
|
-
const messagesInBatch = await source.getMessagesInBatch(request, commit.report, argv);
|
|
129
|
-
const execReportProof = calculateManualExecProof(messagesInBatch, request.lane, request.message.messageId, commit.report.merkleRoot, dest);
|
|
130
|
-
const offchainTokenData = await source.getOffchainTokenData(request);
|
|
131
|
-
const execReport = {
|
|
132
|
-
...execReportProof,
|
|
133
|
-
message: request.message,
|
|
134
|
-
offchainTokenData,
|
|
135
|
-
};
|
|
136
147
|
if (argv.estimateGasLimit != null) {
|
|
137
148
|
let estimated = await estimateReceiveExecution({
|
|
138
149
|
source,
|
|
@@ -142,7 +153,11 @@ async function manualExec(ctx, argv) {
|
|
|
142
153
|
});
|
|
143
154
|
logger.info('Estimated gasLimit override:', estimated);
|
|
144
155
|
estimated += Math.ceil((estimated * argv.estimateGasLimit) / 100);
|
|
145
|
-
const origLimit = Number('
|
|
156
|
+
const origLimit = Number('ccipReceiveGasLimit' in request.message
|
|
157
|
+
? request.message.ccipReceiveGasLimit
|
|
158
|
+
: 'gasLimit' in request.message
|
|
159
|
+
? request.message.gasLimit
|
|
160
|
+
: request.message.computeUnits);
|
|
146
161
|
if (origLimit >= estimated) {
|
|
147
162
|
logger.warn('Estimated +', argv.estimateGasLimit, '% =', estimated, '< original gasLimit =', origLimit, '. Leaving unchanged.');
|
|
148
163
|
}
|
|
@@ -150,8 +165,9 @@ async function manualExec(ctx, argv) {
|
|
|
150
165
|
argv.gasLimit = estimated;
|
|
151
166
|
}
|
|
152
167
|
}
|
|
168
|
+
const input = await source.getExecutionInput({ ...argv, request, verifications });
|
|
153
169
|
const [, wallet] = await loadChainWallet(dest, argv);
|
|
154
|
-
const receipt = await dest.
|
|
170
|
+
const receipt = await dest.execute({ ...argv, offRamp, input, wallet });
|
|
155
171
|
switch (argv.format) {
|
|
156
172
|
case Format.log:
|
|
157
173
|
logger.log('receipt =', withDateTimestamp(receipt));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manual-exec.js","sourceRoot":"","sources":["../../src/commands/manual-exec.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"manual-exec.js","sourceRoot":"","sources":["../../src/commands/manual-exec.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/parse.d.ts
CHANGED
|
@@ -1,3 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CCIP CLI Parse Command
|
|
3
|
+
*
|
|
4
|
+
* Parses and decodes various data formats including errors, revert reasons,
|
|
5
|
+
* function calls, and event data. Supports hex, base64, and chain-specific formats.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```bash
|
|
9
|
+
* # Parse a revert reason
|
|
10
|
+
* ccip-cli parse 0x08c379a0...
|
|
11
|
+
*
|
|
12
|
+
* # Parse event data
|
|
13
|
+
* ccip-cli parse 0xEventData...
|
|
14
|
+
* ```
|
|
15
|
+
*
|
|
16
|
+
* @packageDocumentation
|
|
17
|
+
*/
|
|
1
18
|
import type { Argv } from 'yargs';
|
|
2
19
|
import type { GlobalOpts } from '../index.ts';
|
|
3
20
|
export declare const command: string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../src/commands/parse.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../src/commands/parse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAOH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,OAAO,CAAA;AAEjC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAI7C,eAAO,MAAM,OAAO,UAMnB,CAAA;AACD,eAAO,MAAM,QAAQ,iFAC2D,CAAA;AAEhF;;;;GAIG;AACH,eAAO,MAAM,OAAO,GAAI,OAAO,IAAI;;EAK/B,CAAA;AAEJ;;;GAGG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,UAAU,QAQrF"}
|
package/dist/commands/parse.js
CHANGED
|
@@ -1,3 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CCIP CLI Parse Command
|
|
3
|
+
*
|
|
4
|
+
* Parses and decodes various data formats including errors, revert reasons,
|
|
5
|
+
* function calls, and event data. Supports hex, base64, and chain-specific formats.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```bash
|
|
9
|
+
* # Parse a revert reason
|
|
10
|
+
* ccip-cli parse 0x08c379a0...
|
|
11
|
+
*
|
|
12
|
+
* # Parse event data
|
|
13
|
+
* ccip-cli parse 0xEventData...
|
|
14
|
+
* ```
|
|
15
|
+
*
|
|
16
|
+
* @packageDocumentation
|
|
17
|
+
*/
|
|
1
18
|
import { CCIPDataParseError, bigIntReplacer, supportedChains, } from '@chainlink/ccip-sdk';
|
|
2
19
|
import { Format } from "./types.js";
|
|
3
20
|
import { getCtx, logParsedError, prettyTable } from "./utils.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.js","sourceRoot":"","sources":["../../src/commands/parse.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,eAAe,GAChB,MAAM,kCAAkC,CAAA;AAIzC,OAAO,EAAY,MAAM,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAEhE,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,cAAc;IACd,mBAAmB;IACnB,oBAAoB;IACpB,kBAAkB;IAClB,mBAAmB;CACpB,CAAA;AACD,MAAM,CAAC,MAAM,QAAQ,GACnB,8EAA8E,CAAA;AAEhF;;;;GAIG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAW,EAAE,EAAE,CACrC,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE;IACvB,IAAI,EAAE,QAAQ;IACd,YAAY,EAAE,IAAI;IAClB,QAAQ,EAAE,uDAAuD;CAClE,CAAC,CAAA;AAEJ;;;GAGG;AACH,MAAM,UAAU,OAAO,CAAC,IAA8D;IACpF,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;IAC1B,IAAI,CAAC;QACH,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IACvB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAA;QACpB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC;YAAE,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC3D,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,GAAQ,EAAE,IAAmC;IAC/D,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,CAAA;IACtB,IAAI,MAAM,CAAA;IACV,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC;QACnD,IAAI,CAAC;YACH,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACjC,IAAI,MAAM;gBAAE,MAAK;QACnB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO;QACT,CAAC;IACH,CAAC;IACD,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEpD,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,KAAK,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAChB,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;YAC9B,MAAK;QACP,CAAC;QACD,KAAK,MAAM,CAAC,MAAM;YAChB,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;YAC7B,MAAK;QACP,KAAK,MAAM,CAAC,IAAI;YACd,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,CAAA;YACtD,MAAK;IACT,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"parse.js","sourceRoot":"","sources":["../../src/commands/parse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,eAAe,GAChB,MAAM,kCAAkC,CAAA;AAIzC,OAAO,EAAY,MAAM,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAEhE,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,cAAc;IACd,mBAAmB;IACnB,oBAAoB;IACpB,kBAAkB;IAClB,mBAAmB;CACpB,CAAA;AACD,MAAM,CAAC,MAAM,QAAQ,GACnB,8EAA8E,CAAA;AAEhF;;;;GAIG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAW,EAAE,EAAE,CACrC,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE;IACvB,IAAI,EAAE,QAAQ;IACd,YAAY,EAAE,IAAI;IAClB,QAAQ,EAAE,uDAAuD;CAClE,CAAC,CAAA;AAEJ;;;GAGG;AACH,MAAM,UAAU,OAAO,CAAC,IAA8D;IACpF,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;IAC1B,IAAI,CAAC;QACH,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IACvB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAA;QACpB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC;YAAE,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC3D,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,GAAQ,EAAE,IAAmC;IAC/D,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,CAAA;IACtB,IAAI,MAAM,CAAA;IACV,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC;QACnD,IAAI,CAAC;YACH,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACjC,IAAI,MAAM;gBAAE,MAAK;QACnB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO;QACT,CAAC;IACH,CAAC;IACD,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEpD,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,KAAK,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAChB,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;YAC9B,MAAK;QACP,CAAC;QACD,KAAK,MAAM,CAAC,MAAM;YAChB,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;YAC7B,MAAK;QACP,KAAK,MAAM,CAAC,IAAI;YACd,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,CAAA;YACtD,MAAK;IACT,CAAC;AACH,CAAC"}
|
package/dist/commands/send.d.ts
CHANGED
|
@@ -1,3 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CCIP CLI Send Command
|
|
3
|
+
*
|
|
4
|
+
* Sends a cross-chain message via CCIP. Supports data payloads, token transfers,
|
|
5
|
+
* custom gas limits, and various fee payment options.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```bash
|
|
9
|
+
* # Send a message with data
|
|
10
|
+
* ccip-cli send -s sepolia -d fuji -r 0xRouter... --to 0xReceiver... --data "hello"
|
|
11
|
+
*
|
|
12
|
+
* # Send tokens
|
|
13
|
+
* ccip-cli send -s sepolia -d fuji -r 0xRouter... -t 0xToken=1.5
|
|
14
|
+
*
|
|
15
|
+
* # Pay fee in LINK
|
|
16
|
+
* ccip-cli send -s sepolia -d fuji -r 0xRouter... --fee-token LINK
|
|
17
|
+
* ```
|
|
18
|
+
*
|
|
19
|
+
* @packageDocumentation
|
|
20
|
+
*/
|
|
1
21
|
import type { Argv } from 'yargs';
|
|
2
22
|
import type { GlobalOpts } from '../index.ts';
|
|
3
23
|
export declare const command = "send";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send.d.ts","sourceRoot":"","sources":["../../src/commands/send.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"send.d.ts","sourceRoot":"","sources":["../../src/commands/send.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAeH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,OAAO,CAAA;AAEjC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAM7C,eAAO,MAAM,OAAO,SAAS,CAAA;AAC7B,eAAO,MAAM,QAAQ,yDAAyD,CAAA;AAE9E;;;;GAIG;AACH,eAAO,MAAM,OAAO,GAAI,OAAO,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsG7B,CAAA;AAEN;;;GAGG;AACH,wBAAsB,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,UAAU,iBAQ3F"}
|
package/dist/commands/send.js
CHANGED
|
@@ -1,3 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CCIP CLI Send Command
|
|
3
|
+
*
|
|
4
|
+
* Sends a cross-chain message via CCIP. Supports data payloads, token transfers,
|
|
5
|
+
* custom gas limits, and various fee payment options.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```bash
|
|
9
|
+
* # Send a message with data
|
|
10
|
+
* ccip-cli send -s sepolia -d fuji -r 0xRouter... --to 0xReceiver... --data "hello"
|
|
11
|
+
*
|
|
12
|
+
* # Send tokens
|
|
13
|
+
* ccip-cli send -s sepolia -d fuji -r 0xRouter... -t 0xToken=1.5
|
|
14
|
+
*
|
|
15
|
+
* # Pay fee in LINK
|
|
16
|
+
* ccip-cli send -s sepolia -d fuji -r 0xRouter... --fee-token LINK
|
|
17
|
+
* ```
|
|
18
|
+
*
|
|
19
|
+
* @packageDocumentation
|
|
20
|
+
*/
|
|
1
21
|
import { CCIPArgumentInvalidError, CCIPInsufficientBalanceError, CCIPTokenNotFoundError, ChainFamily, estimateReceiveExecution, getDataBytes, networkInfo, } from '@chainlink/ccip-sdk';
|
|
2
22
|
import { formatUnits, toUtf8Bytes } from 'ethers';
|
|
3
23
|
import { showRequests } from "./show.js";
|
|
@@ -273,10 +293,8 @@ async function sendMessage(ctx, argv) {
|
|
|
273
293
|
logger.info('🚀 Sending message to', receiver, '@', destNetwork.name, ', tx =>', request.tx.hash, ', messageId =>', request.message.messageId);
|
|
274
294
|
await showRequests(ctx, {
|
|
275
295
|
...argv,
|
|
276
|
-
|
|
277
|
-
'tx-hash': request.tx.hash,
|
|
278
|
-
'id-from-source': undefined,
|
|
279
|
-
idFromSource: undefined,
|
|
296
|
+
txHashOrId: request.tx.hash,
|
|
297
|
+
'tx-hash-or-id': request.tx.hash,
|
|
280
298
|
'log-index': undefined,
|
|
281
299
|
logIndex: undefined,
|
|
282
300
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send.js","sourceRoot":"","sources":["../../src/commands/send.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"send.js","sourceRoot":"","sources":["../../src/commands/send.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/show.d.ts
CHANGED
|
@@ -1,3 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CCIP CLI Show Command
|
|
3
|
+
*
|
|
4
|
+
* Displays detailed information about a CCIP message, including its status,
|
|
5
|
+
* commit report, and execution receipts across source and destination chains.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```bash
|
|
9
|
+
* # Show message details
|
|
10
|
+
* ccip-cli show 0xSourceTxHash...
|
|
11
|
+
*
|
|
12
|
+
* # Wait for execution
|
|
13
|
+
* ccip-cli show 0xSourceTxHash... --wait
|
|
14
|
+
*
|
|
15
|
+
* # Output as JSON
|
|
16
|
+
* ccip-cli show 0xSourceTxHash... --format json
|
|
17
|
+
* ```
|
|
18
|
+
*
|
|
19
|
+
* @packageDocumentation
|
|
20
|
+
*/
|
|
1
21
|
import type { Argv } from 'yargs';
|
|
2
22
|
import type { GlobalOpts } from '../index.ts';
|
|
3
23
|
import { type Ctx } from './types.ts';
|
|
@@ -9,16 +29,12 @@ export declare const describe = "Show details of a CCIP request";
|
|
|
9
29
|
* @returns Configured yargs instance with command options.
|
|
10
30
|
*/
|
|
11
31
|
export declare const builder: (yargs: Argv) => Argv<import("yargs").Omit<{
|
|
12
|
-
"tx-hash": string;
|
|
13
|
-
}, "log-index" | "
|
|
32
|
+
"tx-hash-or-id": string;
|
|
33
|
+
}, "log-index" | "wait"> & import("yargs").InferredOptionTypes<{
|
|
14
34
|
'log-index': {
|
|
15
35
|
type: "number";
|
|
16
36
|
describe: string;
|
|
17
37
|
};
|
|
18
|
-
'id-from-source': {
|
|
19
|
-
type: "string";
|
|
20
|
-
describe: string;
|
|
21
|
-
};
|
|
22
38
|
wait: {
|
|
23
39
|
type: "boolean";
|
|
24
40
|
describe: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"show.d.ts","sourceRoot":"","sources":["../../src/commands/show.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"show.d.ts","sourceRoot":"","sources":["../../src/commands/show.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAeH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,OAAO,CAAA;AAEjC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,KAAK,GAAG,EAAU,MAAM,YAAY,CAAA;AAa7C,eAAO,MAAM,OAAO,UAAgD,CAAA;AACpE,eAAO,MAAM,QAAQ,mCAAmC,CAAA;AAExD;;;;GAIG;AACH,eAAO,MAAM,OAAO,GAAI,OAAO,IAAI;;;;;;;;;;;GAkB7B,CAAA;AAEN;;;GAGG;AACH,wBAAsB,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,UAAU,iBAQ3F;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,CAAC,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,iBA6K/E"}
|
package/dist/commands/show.js
CHANGED
|
@@ -1,8 +1,29 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* CCIP CLI Show Command
|
|
3
|
+
*
|
|
4
|
+
* Displays detailed information about a CCIP message, including its status,
|
|
5
|
+
* commit report, and execution receipts across source and destination chains.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```bash
|
|
9
|
+
* # Show message details
|
|
10
|
+
* ccip-cli show 0xSourceTxHash...
|
|
11
|
+
*
|
|
12
|
+
* # Wait for execution
|
|
13
|
+
* ccip-cli show 0xSourceTxHash... --wait
|
|
14
|
+
*
|
|
15
|
+
* # Output as JSON
|
|
16
|
+
* ccip-cli show 0xSourceTxHash... --format json
|
|
17
|
+
* ```
|
|
18
|
+
*
|
|
19
|
+
* @packageDocumentation
|
|
20
|
+
*/
|
|
21
|
+
import { CCIPAPIClient, CCIPExecTxRevertedError, CCIPMessageIdNotFoundError, CCIPTransactionNotFoundError, ExecutionState, MessageStatus, bigIntReplacer, discoverOffRamp, isSupportedTxHash, } from '@chainlink/ccip-sdk';
|
|
22
|
+
import { isHexString } from 'ethers';
|
|
2
23
|
import { Format } from "./types.js";
|
|
3
|
-
import { getCtx, logParsedError,
|
|
24
|
+
import { getCtx, logParsedError, prettyReceipt, prettyRequest, prettyTable, prettyVerifications, selectRequest, withDateTimestamp, } from "./utils.js";
|
|
4
25
|
import { fetchChainsFromRpcs } from "../providers/index.js";
|
|
5
|
-
export const command = ['show <tx-hash>', '* <tx-hash>'];
|
|
26
|
+
export const command = ['show <tx-hash-or-id>', '* <tx-hash-or-id>'];
|
|
6
27
|
export const describe = 'Show details of a CCIP request';
|
|
7
28
|
/**
|
|
8
29
|
* Yargs builder for the show command.
|
|
@@ -10,21 +31,17 @@ export const describe = 'Show details of a CCIP request';
|
|
|
10
31
|
* @returns Configured yargs instance with command options.
|
|
11
32
|
*/
|
|
12
33
|
export const builder = (yargs) => yargs
|
|
13
|
-
.positional('tx-hash', {
|
|
34
|
+
.positional('tx-hash-or-id', {
|
|
14
35
|
type: 'string',
|
|
15
36
|
demandOption: true,
|
|
16
|
-
describe: 'transaction hash
|
|
37
|
+
describe: 'transaction hash or message ID (32-byte hex) of the CCIP request',
|
|
17
38
|
})
|
|
18
|
-
.check(({
|
|
39
|
+
.check(({ txHashOrId }) => isSupportedTxHash(txHashOrId))
|
|
19
40
|
.options({
|
|
20
41
|
'log-index': {
|
|
21
42
|
type: 'number',
|
|
22
43
|
describe: 'Pre-select a message request by logIndex, if more than one in tx; by default, a selection menu is shown',
|
|
23
44
|
},
|
|
24
|
-
'id-from-source': {
|
|
25
|
-
type: 'string',
|
|
26
|
-
describe: 'Search by messageId instead of txHash; requires `[onRamp@]sourceNetwork` (onRamp address may be required in some chains)',
|
|
27
|
-
},
|
|
28
45
|
wait: {
|
|
29
46
|
type: 'boolean',
|
|
30
47
|
describe: 'Wait for (first) execution',
|
|
@@ -49,26 +66,39 @@ export async function handler(argv) {
|
|
|
49
66
|
*/
|
|
50
67
|
export async function showRequests(ctx, argv) {
|
|
51
68
|
const { logger } = ctx;
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
69
|
+
const [getChain, tx$] = fetchChainsFromRpcs(ctx, argv, argv.txHashOrId);
|
|
70
|
+
let source;
|
|
71
|
+
let request$ = (async () => {
|
|
72
|
+
const [source_, tx] = await tx$;
|
|
73
|
+
source = source_;
|
|
74
|
+
return selectRequest(await source_.getMessagesInTx(tx), 'to know more', argv);
|
|
75
|
+
})();
|
|
76
|
+
if (argv.noApi !== true) {
|
|
77
|
+
const apiClient = CCIPAPIClient.fromUrl(undefined, ctx);
|
|
78
|
+
if (isHexString(argv.txHashOrId, 32)) {
|
|
79
|
+
request$ = Promise.any([request$, apiClient.getMessageById(argv.txHashOrId)]);
|
|
60
80
|
}
|
|
61
|
-
else
|
|
62
|
-
idFromSource = argv.idFromSource;
|
|
63
|
-
const sourceNetwork = networkInfo(idFromSource);
|
|
64
|
-
source = await getChain(sourceNetwork.chainId);
|
|
65
|
-
request = await source.getMessageById(argv.txHash, { ...argv, onRamp });
|
|
66
81
|
}
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
82
|
+
let request;
|
|
83
|
+
try {
|
|
84
|
+
request = await request$;
|
|
85
|
+
}
|
|
86
|
+
catch (err) {
|
|
87
|
+
if (err instanceof AggregateError && err.errors.length === 2) {
|
|
88
|
+
if (!(err.errors[0] instanceof CCIPTransactionNotFoundError))
|
|
89
|
+
throw err.errors[0];
|
|
90
|
+
else if (!(err.errors[1] instanceof CCIPMessageIdNotFoundError))
|
|
91
|
+
throw err.errors[1];
|
|
92
|
+
}
|
|
93
|
+
throw err;
|
|
94
|
+
}
|
|
95
|
+
if (!source) {
|
|
96
|
+
try {
|
|
97
|
+
source = await getChain(request.lane.sourceChainSelector);
|
|
98
|
+
}
|
|
99
|
+
catch (err) {
|
|
100
|
+
logger.debug('Fetched messageId from API, but failed find a source', request.lane.sourceChainSelector, 'RPC endpoint:', err);
|
|
101
|
+
}
|
|
72
102
|
}
|
|
73
103
|
switch (argv.format) {
|
|
74
104
|
case Format.log: {
|
|
@@ -76,7 +106,7 @@ export async function showRequests(ctx, argv) {
|
|
|
76
106
|
break;
|
|
77
107
|
}
|
|
78
108
|
case Format.pretty:
|
|
79
|
-
await prettyRequest.call(ctx,
|
|
109
|
+
await prettyRequest.call(ctx, request, source);
|
|
80
110
|
break;
|
|
81
111
|
case Format.json:
|
|
82
112
|
logger.info(JSON.stringify(request, bigIntReplacer, 2));
|
|
@@ -86,6 +116,8 @@ export async function showRequests(ctx, argv) {
|
|
|
86
116
|
throw new CCIPExecTxRevertedError(request.log.transactionHash, {
|
|
87
117
|
context: { error: request.tx.error },
|
|
88
118
|
});
|
|
119
|
+
if (!source)
|
|
120
|
+
return;
|
|
89
121
|
if (argv.wait === false)
|
|
90
122
|
return; // `false` used by call at end of `send` command without `--wait`
|
|
91
123
|
let cancelWaitFinalized;
|
|
@@ -124,14 +156,13 @@ export async function showRequests(ctx, argv) {
|
|
|
124
156
|
})();
|
|
125
157
|
const dest = await getChain(request.lane.destChainSelector);
|
|
126
158
|
const offRamp = await discoverOffRamp(source, dest, request.lane.onRamp, source);
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
commitStore,
|
|
159
|
+
let cancelWaitVerifications;
|
|
160
|
+
const verifications$ = (async () => {
|
|
161
|
+
const verifications = await dest.getVerifications({
|
|
162
|
+
offRamp,
|
|
132
163
|
request,
|
|
133
164
|
...argv,
|
|
134
|
-
watch: argv.wait && new Promise((resolve) => (
|
|
165
|
+
watch: argv.wait && new Promise((resolve) => (cancelWaitVerifications = resolve)),
|
|
135
166
|
});
|
|
136
167
|
cancelWaitFinalized?.();
|
|
137
168
|
await finalized$;
|
|
@@ -139,21 +170,24 @@ export async function showRequests(ctx, argv) {
|
|
|
139
170
|
logger.info(`[${MessageStatus.Committed}] Commit report accepted on destination chain`);
|
|
140
171
|
switch (argv.format) {
|
|
141
172
|
case Format.log:
|
|
142
|
-
logger.log('commit =',
|
|
173
|
+
logger.log('commit =', verifications);
|
|
143
174
|
break;
|
|
144
175
|
case Format.pretty:
|
|
145
|
-
await
|
|
176
|
+
await prettyVerifications.call(ctx, dest, verifications, request);
|
|
146
177
|
break;
|
|
147
178
|
case Format.json:
|
|
148
|
-
logger.info(JSON.stringify(
|
|
179
|
+
logger.info(JSON.stringify(verifications, bigIntReplacer, 2));
|
|
149
180
|
break;
|
|
150
181
|
}
|
|
151
182
|
if (argv.wait)
|
|
152
183
|
logger.info(`[${MessageStatus.Blessed}] Waiting for execution on destination chain...`);
|
|
153
184
|
else
|
|
154
185
|
logger.info('Receipts (dest):');
|
|
155
|
-
return
|
|
156
|
-
})()
|
|
186
|
+
return verifications;
|
|
187
|
+
})().catch((err) => {
|
|
188
|
+
logger.debug('getVerifications error:', err);
|
|
189
|
+
return undefined;
|
|
190
|
+
});
|
|
157
191
|
let found = false;
|
|
158
192
|
for await (const receipt of dest.getExecutionReceipts({
|
|
159
193
|
...argv,
|
|
@@ -161,11 +195,11 @@ export async function showRequests(ctx, argv) {
|
|
|
161
195
|
messageId: request.message.messageId,
|
|
162
196
|
sourceChainSelector: request.message.sourceChainSelector,
|
|
163
197
|
startTime: request.tx.timestamp,
|
|
164
|
-
|
|
198
|
+
verifications: !argv.wait ? await verifications$ : undefined,
|
|
165
199
|
watch: argv.wait && ctx.destroy$,
|
|
166
200
|
})) {
|
|
167
|
-
|
|
168
|
-
await
|
|
201
|
+
cancelWaitVerifications?.();
|
|
202
|
+
await verifications$;
|
|
169
203
|
const status = receipt.receipt.state === ExecutionState.Success
|
|
170
204
|
? MessageStatus.Success
|
|
171
205
|
: MessageStatus.Failed;
|