@0xsequence/catapult 1.3.3 → 1.3.4

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 (45) hide show
  1. package/README.md +16 -0
  2. package/dist/commands/run.d.ts.map +1 -1
  3. package/dist/commands/run.js +4 -2
  4. package/dist/commands/run.js.map +1 -1
  5. package/dist/lib/__tests__/deployer.spec.js +71 -1
  6. package/dist/lib/__tests__/deployer.spec.js.map +1 -1
  7. package/dist/lib/core/__tests__/engine.spec.js +270 -0
  8. package/dist/lib/core/__tests__/engine.spec.js.map +1 -1
  9. package/dist/lib/core/__tests__/resolver.spec.js +132 -0
  10. package/dist/lib/core/__tests__/resolver.spec.js.map +1 -1
  11. package/dist/lib/core/engine.d.ts +13 -0
  12. package/dist/lib/core/engine.d.ts.map +1 -1
  13. package/dist/lib/core/engine.js +59 -5
  14. package/dist/lib/core/engine.js.map +1 -1
  15. package/dist/lib/core/resolver.d.ts +1 -0
  16. package/dist/lib/core/resolver.d.ts.map +1 -1
  17. package/dist/lib/core/resolver.js +24 -7
  18. package/dist/lib/core/resolver.js.map +1 -1
  19. package/dist/lib/deployer.d.ts +2 -0
  20. package/dist/lib/deployer.d.ts.map +1 -1
  21. package/dist/lib/deployer.js +18 -1
  22. package/dist/lib/deployer.js.map +1 -1
  23. package/dist/lib/events/cli-adapter.d.ts.map +1 -1
  24. package/dist/lib/events/cli-adapter.js +20 -0
  25. package/dist/lib/events/cli-adapter.js.map +1 -1
  26. package/dist/lib/events/types.d.ts +25 -1
  27. package/dist/lib/events/types.d.ts.map +1 -1
  28. package/dist/lib/types/values.d.ts +8 -1
  29. package/dist/lib/types/values.d.ts.map +1 -1
  30. package/dist/lib/utils/assertion.d.ts +4 -0
  31. package/dist/lib/utils/assertion.d.ts.map +1 -0
  32. package/dist/lib/utils/assertion.js +27 -0
  33. package/dist/lib/utils/assertion.js.map +1 -0
  34. package/package.json +12 -13
  35. package/src/commands/run.ts +4 -1
  36. package/src/lib/__tests__/deployer.spec.ts +108 -1
  37. package/src/lib/core/__tests__/engine.spec.ts +321 -0
  38. package/src/lib/core/__tests__/resolver.spec.ts +150 -1
  39. package/src/lib/core/engine.ts +92 -6
  40. package/src/lib/core/resolver.ts +29 -8
  41. package/src/lib/deployer.ts +28 -1
  42. package/src/lib/events/cli-adapter.ts +24 -0
  43. package/src/lib/events/types.ts +29 -1
  44. package/src/lib/types/values.ts +10 -1
  45. package/src/lib/utils/assertion.ts +24 -0
package/README.md CHANGED
@@ -392,6 +392,7 @@ Common options (run):
392
392
  - `-k, --private-key <key>`: EOA private key (or set `PRIVATE_KEY`)
393
393
  - `--etherscan-api-key <key>`: Etherscan API key (or set `ETHERSCAN_API_KEY`)
394
394
  - `--fail-early`: Stop as soon as any job fails
395
+ - `--ignore-verify-errors`: Convert verification errors to warnings and show complete report at end (instead of exiting with error code)
395
396
  - `--no-post-check-conditions`: Skip post-execution evaluation of skip conditions
396
397
  - `--flat-output`: Write outputs in a single flat `output/` directory (do not mirror `jobs/` structure)
397
398
  - `--no-summary`: Hide the end-of-run summary
@@ -697,6 +698,21 @@ Verify deployed contracts on block explorers:
697
698
  platform: "etherscan_v2" # Optional, defaults to "all" (tries all configured platforms)
698
699
  ```
699
700
 
701
+ #### Verification Error Handling
702
+
703
+ By default, verification failures will cause the deployment to exit with an error code. To continue deployment even when verification fails and receive a comprehensive warning report at the end, use the `--ignore-verify-errors` flag:
704
+
705
+ ```bash
706
+ catapult run --ignore-verify-errors
707
+ ```
708
+
709
+ This is useful when:
710
+ - You want to complete all deployments even if some contract verifications fail
711
+ - Working with networks where verification platforms may be unreliable
712
+ - Running in CI/CD environments where you prefer warnings over hard failures for verification issues
713
+
714
+ When enabled, verification errors are converted to warnings and a detailed report is shown at the end of the deployment with all verification failures.
715
+
700
716
  ## Skip Conditions
701
717
 
702
718
  Avoid redundant operations with skip conditions:
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAyBnC,wBAAgB,cAAc,IAAI,OAAO,CAgHxC"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AA0BnC,wBAAgB,cAAc,IAAI,OAAO,CAkHxC"}
@@ -21,7 +21,8 @@ function makeRunCommand() {
21
21
  .option('--no-post-check-conditions', 'Skip post-execution check of skip conditions. Default: false (post-check enabled)', false)
22
22
  .option('--flat-output', 'Write output files in a single flat directory instead of mirroring the jobs directory structure. Default: false', false)
23
23
  .option('--no-summary', 'Hide final summary at the end of the run. Default: show', false)
24
- .option('--run-deprecated', 'Allow running jobs marked as deprecated. By default deprecated jobs are skipped unless explicitly targeted.', false);
24
+ .option('--run-deprecated', 'Allow running jobs marked as deprecated. By default deprecated jobs are skipped unless explicitly targeted.', false)
25
+ .option('--ignore-verify-errors', 'Convert verification errors to warnings instead of exiting with error code. Shows complete warning report at the end.', false);
25
26
  (0, common_1.projectOption)(run);
26
27
  (0, common_1.dotenvOption)(run);
27
28
  (0, common_1.noStdOption)(run);
@@ -75,7 +76,8 @@ function makeRunCommand() {
75
76
  loadStdTemplates: options.std !== false
76
77
  },
77
78
  flatOutput: options.flatOutput === true,
78
- runDeprecated: options.runDeprecated === true
79
+ runDeprecated: options.runDeprecated === true,
80
+ ignoreVerifyErrors: options.ignoreVerifyErrors === true
79
81
  };
80
82
  const deployer = new deployer_1.Deployer(deployerOptions);
81
83
  await deployer.run();
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"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"}
@@ -130,7 +130,8 @@ describe('Deployer', () => {
130
130
  getDependencies: jest.fn().mockReturnValue(new Set())
131
131
  };
132
132
  mockEngine = {
133
- executeJob: jest.fn().mockResolvedValue(undefined)
133
+ executeJob: jest.fn().mockResolvedValue(undefined),
134
+ getVerificationWarnings: jest.fn().mockReturnValue([])
134
135
  };
135
136
  mockContext = {
136
137
  getOutputs: jest.fn().mockReturnValue(new Map([
@@ -880,5 +881,74 @@ describe('Deployer', () => {
880
881
  expect(mockEngine.executeJob).toHaveBeenCalledTimes(2);
881
882
  });
882
883
  });
884
+ describe('ignore verify errors feature', () => {
885
+ it('should pass ignoreVerifyErrors option to ExecutionEngine', async () => {
886
+ const optionsWithIgnoreVerifyErrors = {
887
+ ...deployerOptions,
888
+ ignoreVerifyErrors: true
889
+ };
890
+ const deployer = new deployer_1.Deployer(optionsWithIgnoreVerifyErrors);
891
+ await deployer.run();
892
+ expect(MockExecutionEngine).toHaveBeenCalledWith(expect.anything(), expect.objectContaining({
893
+ ignoreVerifyErrors: true
894
+ }));
895
+ });
896
+ it('should emit verification warnings report when ignoreVerifyErrors is enabled', async () => {
897
+ const mockWarnings = [
898
+ {
899
+ actionName: 'verify-test',
900
+ address: '0x1234567890123456789012345678901234567890',
901
+ contractName: 'TestContract',
902
+ platform: 'etherscan_v2',
903
+ error: 'Failed to verify contract',
904
+ networkName: 'mainnet'
905
+ }
906
+ ];
907
+ mockEngine.getVerificationWarnings = jest.fn().mockReturnValue(mockWarnings);
908
+ const optionsWithIgnoreVerifyErrors = {
909
+ ...deployerOptions,
910
+ ignoreVerifyErrors: true
911
+ };
912
+ const deployer = new deployer_1.Deployer(optionsWithIgnoreVerifyErrors);
913
+ const mockEmitEvent = jest.fn();
914
+ deployer.events = { emitEvent: mockEmitEvent };
915
+ await deployer.run();
916
+ expect(mockEmitEvent).toHaveBeenCalledWith({
917
+ type: 'verification_warnings_report',
918
+ level: 'warn',
919
+ data: {
920
+ totalWarnings: 1,
921
+ warnings: mockWarnings
922
+ }
923
+ });
924
+ });
925
+ it('should not emit verification warnings report when ignoreVerifyErrors is disabled', async () => {
926
+ const optionsWithoutIgnoreVerifyErrors = {
927
+ ...deployerOptions,
928
+ ignoreVerifyErrors: false
929
+ };
930
+ const deployer = new deployer_1.Deployer(optionsWithoutIgnoreVerifyErrors);
931
+ const mockEmitEvent = jest.fn();
932
+ deployer.events = { emitEvent: mockEmitEvent };
933
+ await deployer.run();
934
+ expect(mockEmitEvent).not.toHaveBeenCalledWith(expect.objectContaining({
935
+ type: 'verification_warnings_report'
936
+ }));
937
+ });
938
+ it('should not emit verification warnings report when there are no warnings', async () => {
939
+ mockEngine.getVerificationWarnings = jest.fn().mockReturnValue([]);
940
+ const optionsWithIgnoreVerifyErrors = {
941
+ ...deployerOptions,
942
+ ignoreVerifyErrors: true
943
+ };
944
+ const deployer = new deployer_1.Deployer(optionsWithIgnoreVerifyErrors);
945
+ const mockEmitEvent = jest.fn();
946
+ deployer.events = { emitEvent: mockEmitEvent };
947
+ await deployer.run();
948
+ expect(mockEmitEvent).not.toHaveBeenCalledWith(expect.objectContaining({
949
+ type: 'verification_warnings_report'
950
+ }));
951
+ });
952
+ });
883
953
  });
884
954
  //# sourceMappingURL=deployer.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"deployer.spec.js","sourceRoot":"","sources":["../../../src/lib/__tests__/deployer.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deployer.spec.js","sourceRoot":"","sources":["../../../src/lib/__tests__/deployer.spec.ts"],"names":[],"mappings":"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"}
@@ -1232,5 +1232,275 @@ describe('ExecutionEngine', () => {
1232
1232
  expect(context.getOutput('nick-test-default-bytecode.success')).toBe(true);
1233
1233
  });
1234
1234
  });
1235
+ describe('ignore verify errors feature', () => {
1236
+ beforeEach(() => {
1237
+ jest.doMock('fs/promises', () => ({
1238
+ readFile: jest.fn().mockResolvedValue(JSON.stringify({
1239
+ _format: 'hh-sol-build-info-1',
1240
+ id: 'test-id',
1241
+ solcVersion: '0.8.0',
1242
+ input: {
1243
+ language: 'Solidity',
1244
+ sources: {
1245
+ 'TestContract.sol': {
1246
+ content: 'contract TestContract { }'
1247
+ }
1248
+ },
1249
+ settings: {
1250
+ optimizer: { enabled: true, runs: 200 },
1251
+ outputSelection: { '*': { '*': ['*'] } }
1252
+ }
1253
+ },
1254
+ output: {
1255
+ contracts: {},
1256
+ sources: {}
1257
+ }
1258
+ }))
1259
+ }));
1260
+ const mockVerificationRegistry = new etherscan_1.VerificationPlatformRegistry();
1261
+ const mockPlatform = {
1262
+ name: 'mock-platform',
1263
+ supportsNetwork: jest.fn().mockReturnValue(true),
1264
+ isConfigured: jest.fn().mockReturnValue(true),
1265
+ getConfigurationRequirements: jest.fn().mockReturnValue(''),
1266
+ isContractAlreadyVerified: jest.fn().mockResolvedValue(false),
1267
+ verifyContract: jest.fn().mockRejectedValue(new Error('Verification failed'))
1268
+ };
1269
+ mockVerificationRegistry.register(mockPlatform);
1270
+ engine = new engine_1.ExecutionEngine(templates, {
1271
+ verificationRegistry: mockVerificationRegistry,
1272
+ ignoreVerifyErrors: true
1273
+ });
1274
+ });
1275
+ it('should collect verification warnings when ignoreVerifyErrors is enabled', async () => {
1276
+ const mockContract = {
1277
+ sourceName: 'TestContract.sol',
1278
+ contractName: 'TestContract',
1279
+ compiler: { version: '0.8.0' },
1280
+ buildInfoId: 'test-build-id',
1281
+ source: 'contract TestContract { }',
1282
+ creationCode: '0x608060405234801561000f575f5ffd5b50602a5f526020601ff3',
1283
+ abi: [],
1284
+ _sources: new Set(['TestContract.sol', '/path/to/build-info/test.json'])
1285
+ };
1286
+ context.contractRepository.addForTesting({
1287
+ contractName: mockContract.contractName,
1288
+ abi: mockContract.abi,
1289
+ bytecode: mockContract.creationCode,
1290
+ sourceName: mockContract.sourceName,
1291
+ source: mockContract.source,
1292
+ compiler: mockContract.compiler,
1293
+ buildInfoId: mockContract.buildInfoId,
1294
+ _path: '/test/path',
1295
+ _hash: 'test-hash'
1296
+ });
1297
+ const action = {
1298
+ type: 'verify-contract',
1299
+ name: 'test-verify',
1300
+ arguments: {
1301
+ address: TEST_ADDRESSES.RECIPIENT_1,
1302
+ contract: '{{Contract(TestContract)}}',
1303
+ platform: 'mock-platform'
1304
+ }
1305
+ };
1306
+ await expect(engine.executePrimitive(action, context, new Map()))
1307
+ .resolves.not.toThrow();
1308
+ const warnings = engine.getVerificationWarnings();
1309
+ expect(warnings).toHaveLength(1);
1310
+ expect(warnings[0]).toMatchObject({
1311
+ actionName: 'test-verify',
1312
+ address: TEST_ADDRESSES.RECIPIENT_1,
1313
+ contractName: 'TestContract.sol:TestContract',
1314
+ platform: 'mock-platform',
1315
+ error: 'Action "test-verify": No build-info file found in contract sources'
1316
+ });
1317
+ });
1318
+ it('should throw verification errors when ignoreVerifyErrors is disabled', async () => {
1319
+ const mockVerificationRegistry = new etherscan_1.VerificationPlatformRegistry();
1320
+ const mockPlatform = {
1321
+ name: 'mock-platform',
1322
+ supportsNetwork: jest.fn().mockReturnValue(true),
1323
+ isConfigured: jest.fn().mockReturnValue(true),
1324
+ getConfigurationRequirements: jest.fn().mockReturnValue(''),
1325
+ isContractAlreadyVerified: jest.fn().mockResolvedValue(false),
1326
+ verifyContract: jest.fn().mockRejectedValue(new Error('Verification failed'))
1327
+ };
1328
+ mockVerificationRegistry.register(mockPlatform);
1329
+ const engineWithoutIgnore = new engine_1.ExecutionEngine(templates, {
1330
+ verificationRegistry: mockVerificationRegistry,
1331
+ ignoreVerifyErrors: false
1332
+ });
1333
+ const mockContract = {
1334
+ sourceName: 'TestContract.sol',
1335
+ contractName: 'TestContract',
1336
+ compiler: { version: '0.8.0' },
1337
+ buildInfoId: 'test-build-id',
1338
+ source: 'contract TestContract { }',
1339
+ creationCode: '0x608060405234801561000f575f5ffd5b50602a5f526020601ff3',
1340
+ abi: [],
1341
+ _sources: new Set(['TestContract.sol', '/path/to/build-info/test.json'])
1342
+ };
1343
+ context.contractRepository.addForTesting({
1344
+ contractName: mockContract.contractName,
1345
+ abi: mockContract.abi,
1346
+ bytecode: mockContract.creationCode,
1347
+ sourceName: mockContract.sourceName,
1348
+ source: mockContract.source,
1349
+ compiler: mockContract.compiler,
1350
+ buildInfoId: mockContract.buildInfoId,
1351
+ _path: '/test/path',
1352
+ _hash: 'test-hash'
1353
+ });
1354
+ const action = {
1355
+ type: 'verify-contract',
1356
+ name: 'test-verify',
1357
+ arguments: {
1358
+ address: TEST_ADDRESSES.RECIPIENT_1,
1359
+ contract: '{{Contract(TestContract)}}',
1360
+ platform: 'mock-platform'
1361
+ }
1362
+ };
1363
+ await expect(engineWithoutIgnore.executePrimitive(action, context, new Map()))
1364
+ .rejects.toThrow('Action "test-verify": No build-info file found in contract sources');
1365
+ });
1366
+ it('should handle multiple platform verification failures with ignoreVerifyErrors', async () => {
1367
+ const mockVerificationRegistry = new etherscan_1.VerificationPlatformRegistry();
1368
+ const platforms = ['platform1', 'platform2', 'platform3'];
1369
+ platforms.forEach(name => {
1370
+ const mockPlatform = {
1371
+ name,
1372
+ supportsNetwork: jest.fn().mockReturnValue(true),
1373
+ isConfigured: jest.fn().mockReturnValue(true),
1374
+ getConfigurationRequirements: jest.fn().mockReturnValue(''),
1375
+ isContractAlreadyVerified: jest.fn().mockResolvedValue(false),
1376
+ verifyContract: jest.fn().mockRejectedValue(new Error(`${name} verification failed`))
1377
+ };
1378
+ mockVerificationRegistry.register(mockPlatform);
1379
+ });
1380
+ engine = new engine_1.ExecutionEngine(templates, {
1381
+ verificationRegistry: mockVerificationRegistry,
1382
+ ignoreVerifyErrors: true
1383
+ });
1384
+ const mockContract = {
1385
+ sourceName: 'TestContract.sol',
1386
+ contractName: 'TestContract',
1387
+ compiler: { version: '0.8.0' },
1388
+ buildInfoId: 'test-build-id',
1389
+ source: 'contract TestContract { }',
1390
+ creationCode: '0x608060405234801561000f575f5ffd5b50602a5f526020601ff3',
1391
+ abi: [],
1392
+ _sources: new Set(['TestContract.sol', '/path/to/build-info/test.json'])
1393
+ };
1394
+ context.contractRepository.addForTesting({
1395
+ contractName: mockContract.contractName,
1396
+ abi: mockContract.abi,
1397
+ bytecode: mockContract.creationCode,
1398
+ sourceName: mockContract.sourceName,
1399
+ source: mockContract.source,
1400
+ compiler: mockContract.compiler,
1401
+ buildInfoId: mockContract.buildInfoId,
1402
+ _path: '/test/path',
1403
+ _hash: 'test-hash'
1404
+ });
1405
+ const action = {
1406
+ type: 'verify-contract',
1407
+ name: 'test-verify',
1408
+ arguments: {
1409
+ address: TEST_ADDRESSES.RECIPIENT_1,
1410
+ contract: '{{Contract(TestContract)}}',
1411
+ platform: platforms
1412
+ }
1413
+ };
1414
+ await expect(engine.executePrimitive(action, context, new Map()))
1415
+ .resolves.not.toThrow();
1416
+ const warnings = engine.getVerificationWarnings();
1417
+ expect(warnings).toHaveLength(3);
1418
+ platforms.forEach((platform, index) => {
1419
+ expect(warnings[index]).toMatchObject({
1420
+ actionName: 'test-verify',
1421
+ platform,
1422
+ error: 'Action "test-verify": No build-info file found in contract sources'
1423
+ });
1424
+ });
1425
+ });
1426
+ it('should provide methods to get and clear verification warnings', () => {
1427
+ expect(engine.getVerificationWarnings()).toEqual([]);
1428
+ engine.verificationWarnings.push({
1429
+ actionName: 'test',
1430
+ address: '0x123',
1431
+ contractName: 'Test',
1432
+ platform: 'test-platform',
1433
+ error: 'test error'
1434
+ });
1435
+ const warnings = engine.getVerificationWarnings();
1436
+ expect(warnings).toHaveLength(1);
1437
+ expect(warnings[0]).toMatchObject({
1438
+ actionName: 'test',
1439
+ error: 'test error'
1440
+ });
1441
+ engine.clearVerificationWarnings();
1442
+ expect(engine.getVerificationWarnings()).toEqual([]);
1443
+ });
1444
+ it('should emit verification_skipped events when all platforms fail and ignoreVerifyErrors is enabled', async () => {
1445
+ const mockVerificationRegistry = new etherscan_1.VerificationPlatformRegistry();
1446
+ const mockPlatform = {
1447
+ name: 'mock-platform',
1448
+ supportsNetwork: jest.fn().mockReturnValue(true),
1449
+ isConfigured: jest.fn().mockReturnValue(true),
1450
+ getConfigurationRequirements: jest.fn().mockReturnValue(''),
1451
+ isContractAlreadyVerified: jest.fn().mockResolvedValue(false),
1452
+ verifyContract: jest.fn().mockRejectedValue(new Error('Verification failed'))
1453
+ };
1454
+ mockVerificationRegistry.register(mockPlatform);
1455
+ mockVerificationRegistry.getConfiguredPlatforms = jest.fn().mockReturnValue([mockPlatform]);
1456
+ const mockEventEmitter = {
1457
+ emitEvent: jest.fn()
1458
+ };
1459
+ engine = new engine_1.ExecutionEngine(templates, {
1460
+ verificationRegistry: mockVerificationRegistry,
1461
+ ignoreVerifyErrors: true,
1462
+ eventEmitter: mockEventEmitter
1463
+ });
1464
+ const mockContract = {
1465
+ sourceName: 'TestContract.sol',
1466
+ contractName: 'TestContract',
1467
+ compiler: { version: '0.8.0' },
1468
+ buildInfoId: 'test-build-id',
1469
+ source: 'contract TestContract { }',
1470
+ creationCode: '0x608060405234801561000f575f5ffd5b50602a5f526020601ff3',
1471
+ abi: [],
1472
+ _sources: new Set(['TestContract.sol', '/path/to/build-info/test.json'])
1473
+ };
1474
+ context.contractRepository.addForTesting({
1475
+ contractName: mockContract.contractName,
1476
+ abi: mockContract.abi,
1477
+ bytecode: mockContract.creationCode,
1478
+ sourceName: mockContract.sourceName,
1479
+ source: mockContract.source,
1480
+ compiler: mockContract.compiler,
1481
+ buildInfoId: mockContract.buildInfoId,
1482
+ _path: '/test/path',
1483
+ _hash: 'test-hash'
1484
+ });
1485
+ const action = {
1486
+ type: 'verify-contract',
1487
+ name: 'test-verify',
1488
+ arguments: {
1489
+ address: TEST_ADDRESSES.RECIPIENT_1,
1490
+ contract: '{{Contract(TestContract)}}',
1491
+ platform: 'all'
1492
+ }
1493
+ };
1494
+ await engine.executePrimitive(action, context, new Map());
1495
+ expect(mockEventEmitter.emitEvent).toHaveBeenCalledWith(expect.objectContaining({
1496
+ type: 'verification_skipped',
1497
+ level: 'warn',
1498
+ data: expect.objectContaining({
1499
+ actionName: 'test-verify',
1500
+ reason: expect.stringContaining('continuing due to --ignore-verify-errors')
1501
+ })
1502
+ }));
1503
+ });
1504
+ });
1235
1505
  });
1236
1506
  //# sourceMappingURL=engine.spec.js.map