@layerzerolabs/ton-sdk-tools 3.0.22-ton.0 → 3.0.22-ton.1
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/index.cjs +277 -109
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +277 -109
- package/dist/index.mjs.map +1 -1
- package/package.json +4 -4
package/dist/index.mjs
CHANGED
|
@@ -1454,7 +1454,7 @@ export interface ProtocolFixture {
|
|
|
1454
1454
|
controller: SandboxContract<TonContractWrapper>
|
|
1455
1455
|
endpoint: SandboxContract<TonContractWrapper>
|
|
1456
1456
|
msglib: SandboxContract<TonContractWrapper>
|
|
1457
|
-
|
|
1457
|
+
msglibManager: SandboxContract<TonContractWrapper>
|
|
1458
1458
|
msglibManagerCustom?: SandboxContract<TonContractWrapper>
|
|
1459
1459
|
}
|
|
1460
1460
|
|
|
@@ -1463,7 +1463,7 @@ export interface OAppFixture extends ProtocolFixture {
|
|
|
1463
1463
|
oApp: SandboxContract<TonContractWrapper>
|
|
1464
1464
|
path: Cell
|
|
1465
1465
|
channel: SandboxContract<TonContractWrapper>
|
|
1466
|
-
|
|
1466
|
+
msglibConnection: SandboxContract<TonContractWrapper>
|
|
1467
1467
|
msglibConnectionCustom?: SandboxContract<TonContractWrapper>
|
|
1468
1468
|
}
|
|
1469
1469
|
|
|
@@ -1494,14 +1494,14 @@ export function logAddresses(
|
|
|
1494
1494
|
[\`\${prefix}.multisig.address\`]: formatAddress(fixture.multisig.address),
|
|
1495
1495
|
[\`\${prefix}.controller.address\`]: formatAddress(fixture.controller.address),
|
|
1496
1496
|
[\`\${prefix}.endpoint.address\`]: formatAddress(fixture.endpoint.address),
|
|
1497
|
-
[\`\${prefix}.
|
|
1497
|
+
[\`\${prefix}.msglibManager.address\`]: formatAddress(fixture.msglibManager.address),
|
|
1498
1498
|
[\`\${prefix}.msglib.address\`]: formatAddress(fixture.msglib.address),
|
|
1499
1499
|
[\`\${prefix}.smlManagerCustom.address\`]: formatAddress(fixture.msglibManagerCustom?.address ?? ''),
|
|
1500
1500
|
[\`--- \${oappHeader} ---\`]: '', // Custom separator
|
|
1501
1501
|
[\`\${prefix}.owner.address\`]: formatAddress(fixture.owner.address),
|
|
1502
1502
|
[\`\${prefix}.OApp.address\`]: formatAddress(fixture.oApp.address),
|
|
1503
1503
|
[\`\${prefix}.channel.address\`]: formatAddress(fixture.channel.address),
|
|
1504
|
-
[\`\${prefix}.
|
|
1504
|
+
[\`\${prefix}.msglibConnection.address\`]: formatAddress(fixture.msglibConnection.address),
|
|
1505
1505
|
[\`\${prefix}.smlConnectionCustom.address\`]: formatAddress(fixture.msglibConnectionCustom?.address ?? ''),
|
|
1506
1506
|
}
|
|
1507
1507
|
}
|
|
@@ -2717,7 +2717,13 @@ export async function runtimeDecoder(contract: SandboxContract<TonContractWrappe
|
|
|
2717
2717
|
if (newCellFieldType === 'NULL') {
|
|
2718
2718
|
newCellFieldType = 'cl::t::cellRef'
|
|
2719
2719
|
} else {
|
|
2720
|
-
|
|
2720
|
+
// Check if newCellFieldType is valid ASCII
|
|
2721
|
+
// eslint-disable-next-line no-control-regex
|
|
2722
|
+
if (!/^[p{ASCII}]+$/u.test(newCellFieldType)) {
|
|
2723
|
+
newCellFieldType = 'cl::t::cellRef'
|
|
2724
|
+
} else {
|
|
2725
|
+
newCellFieldType = keyMap[newCellFieldType] ?? newCellFieldType
|
|
2726
|
+
}
|
|
2721
2727
|
}
|
|
2722
2728
|
jsonField.fieldType = newCellFieldType
|
|
2723
2729
|
tonObjectDefCopy[key] = jsonField
|
|
@@ -2768,8 +2774,8 @@ function generateSmlTestUtils(directory, filename) {
|
|
|
2768
2774
|
{
|
|
2769
2775
|
endpoint,
|
|
2770
2776
|
channel,
|
|
2771
|
-
|
|
2772
|
-
|
|
2777
|
+
msglibManager: smlManager,
|
|
2778
|
+
msglibConnection: smlConnection,
|
|
2773
2779
|
controller,
|
|
2774
2780
|
}: OAppFixture,
|
|
2775
2781
|
profile?: Profile
|
|
@@ -3029,7 +3035,7 @@ function generateSmlTestUtils(directory, filename) {
|
|
|
3029
3035
|
)
|
|
3030
3036
|
|
|
3031
3037
|
// ===================================deploy and configure sml default=====================================
|
|
3032
|
-
;[srcFixture.
|
|
3038
|
+
;[srcFixture.msglibManager, srcFixture.msglibConnection] = await deployConfigAndRegisterSml(
|
|
3033
3039
|
blockchain,
|
|
3034
3040
|
multiSigners,
|
|
3035
3041
|
allStorages,
|
|
@@ -3047,14 +3053,14 @@ function generateSmlTestUtils(directory, filename) {
|
|
|
3047
3053
|
blockchain,
|
|
3048
3054
|
allStorages,
|
|
3049
3055
|
multiSigners,
|
|
3050
|
-
srcFixture.
|
|
3051
|
-
srcFixture.
|
|
3056
|
+
srcFixture.msglibManager,
|
|
3057
|
+
srcFixture.msglibManager,
|
|
3052
3058
|
srcFixture,
|
|
3053
3059
|
dstFixture
|
|
3054
3060
|
)
|
|
3055
3061
|
|
|
3056
3062
|
// in SML, the connection is the Msglib
|
|
3057
|
-
srcFixture.msglib = srcFixture.
|
|
3063
|
+
srcFixture.msglib = srcFixture.msglibConnection
|
|
3058
3064
|
|
|
3059
3065
|
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.controller)
|
|
3060
3066
|
expect(eventHandler.allFailures.txList).toHaveLength(0)
|
|
@@ -3194,7 +3200,9 @@ export interface PricedfeedCacheFixture extends WorkerFixture {
|
|
|
3194
3200
|
|
|
3195
3201
|
export interface ProtocolFixtureULN extends ProtocolFixture {
|
|
3196
3202
|
sendDvnFixtures: DvnFixture[]
|
|
3203
|
+
sendDvnFixturesCustom: DvnFixture[]
|
|
3197
3204
|
receiveDvnFixtures: DvnFixture[]
|
|
3205
|
+
receiveDvnFixturesCustom: DvnFixture[]
|
|
3198
3206
|
executorFixtures: ExecutorFixture
|
|
3199
3207
|
priceFeedCacheFixture: PricedfeedCacheFixture
|
|
3200
3208
|
}
|
|
@@ -3237,8 +3245,8 @@ export async function commitVerificationAndExpect(
|
|
|
3237
3245
|
endpoint,
|
|
3238
3246
|
channel,
|
|
3239
3247
|
msglib: uln,
|
|
3240
|
-
|
|
3241
|
-
|
|
3248
|
+
msglibManager: ulnManager,
|
|
3249
|
+
msglibConnection: ulnConnection,
|
|
3242
3250
|
controller,
|
|
3243
3251
|
}: OAppFixture,
|
|
3244
3252
|
profile?: Profile
|
|
@@ -3326,7 +3334,9 @@ export async function addUlnWorker(
|
|
|
3326
3334
|
|
|
3327
3335
|
export async function addDvnWorkers(
|
|
3328
3336
|
allStorages: SandboxContract<TonContractWrapper>,
|
|
3329
|
-
{
|
|
3337
|
+
{ msglibManager, msglib: uln }: OAppFixtureULN,
|
|
3338
|
+
sendDvnFixtures: DvnFixture[],
|
|
3339
|
+
receiveDvnFixtures: DvnFixture[],
|
|
3330
3340
|
dstEid: bigint,
|
|
3331
3341
|
priceFeedCacheAddress: Address,
|
|
3332
3342
|
eventHandler: LzEventHandler
|
|
@@ -3336,7 +3346,7 @@ export async function addDvnWorkers(
|
|
|
3336
3346
|
requireDefined(uln)
|
|
3337
3347
|
for (const dvnFixture of [...sendDvnFixtures, ...receiveDvnFixtures]) {
|
|
3338
3348
|
const dvnWorkerCallMd = await allStorages.getNewMdExecuteParams({
|
|
3339
|
-
target: addressToBigInt(
|
|
3349
|
+
target: addressToBigInt(msglibManager.address),
|
|
3340
3350
|
callData: await allStorages.getNewUlnWorkerFeelibInfo({
|
|
3341
3351
|
workerAddress: addressToBigInt(dvnFixture.dvn.address),
|
|
3342
3352
|
workerFeelibBytecode: cellFromArtifact(DvnFeelibArtifact),
|
|
@@ -3370,12 +3380,12 @@ export async function addDvnWorkers(
|
|
|
3370
3380
|
},
|
|
3371
3381
|
{
|
|
3372
3382
|
from: dvnFixture.proxy.address,
|
|
3373
|
-
to:
|
|
3383
|
+
to: msglibManager.address,
|
|
3374
3384
|
op: Number(OPCODES.UlnManager_OP_ADD_ULN_WORKER),
|
|
3375
3385
|
success: true,
|
|
3376
3386
|
},
|
|
3377
3387
|
{
|
|
3378
|
-
from:
|
|
3388
|
+
from: msglibManager.address,
|
|
3379
3389
|
to: uln.address,
|
|
3380
3390
|
success: true,
|
|
3381
3391
|
op: Number(OPCODES.Uln_OP_UPDATE_WORKER_FEELIB),
|
|
@@ -3383,12 +3393,12 @@ export async function addDvnWorkers(
|
|
|
3383
3393
|
// emit event Uln::EVENT::ULN_WORKER_REGISTERED
|
|
3384
3394
|
{
|
|
3385
3395
|
from: uln.address,
|
|
3386
|
-
to:
|
|
3396
|
+
to: msglibManager.address,
|
|
3387
3397
|
op: Number(OPCODES.BaseInterface_OP_EVENT),
|
|
3388
3398
|
success: false, // events are supposed to fail
|
|
3389
3399
|
},
|
|
3390
3400
|
])
|
|
3391
|
-
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults,
|
|
3401
|
+
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, msglibManager)
|
|
3392
3402
|
}
|
|
3393
3403
|
}
|
|
3394
3404
|
|
|
@@ -3420,7 +3430,7 @@ export async function openAndDeployUln(
|
|
|
3420
3430
|
TonContractWrapper.create(
|
|
3421
3431
|
cellFromArtifact(UlnArtifact),
|
|
3422
3432
|
await allStorages.getNewUln({
|
|
3423
|
-
owner: addressToBigInt(srcFixture.
|
|
3433
|
+
owner: addressToBigInt(srcFixture.msglibManager.address),
|
|
3424
3434
|
eid: srcFixture.eid,
|
|
3425
3435
|
dstEid: dstFixture.eid,
|
|
3426
3436
|
})
|
|
@@ -3438,17 +3448,17 @@ export async function openAndDeployUln(
|
|
|
3438
3448
|
toNano('0')
|
|
3439
3449
|
).body!,
|
|
3440
3450
|
signers: multiSigners,
|
|
3441
|
-
targetContract: srcFixture.
|
|
3451
|
+
targetContract: srcFixture.msglibManager,
|
|
3442
3452
|
deploy: false,
|
|
3443
3453
|
expectedTransactions: [
|
|
3444
3454
|
{
|
|
3445
3455
|
from: srcFixture.multisig.address,
|
|
3446
|
-
to: srcFixture.
|
|
3456
|
+
to: srcFixture.msglibManager.address,
|
|
3447
3457
|
op: Number(OPCODES.UlnManager_OP_DEPLOY_ULN),
|
|
3448
3458
|
success: true,
|
|
3449
3459
|
},
|
|
3450
3460
|
{
|
|
3451
|
-
from: srcFixture.
|
|
3461
|
+
from: srcFixture.msglibManager.address,
|
|
3452
3462
|
to: uln.address,
|
|
3453
3463
|
success: true,
|
|
3454
3464
|
deploy: true,
|
|
@@ -3537,7 +3547,7 @@ export async function openAndDeployUlnConnection(
|
|
|
3537
3547
|
TonContractWrapper.create(
|
|
3538
3548
|
cellFromArtifact(UlnConnectionArtifact),
|
|
3539
3549
|
await allStorages.getNewUlnConnection({
|
|
3540
|
-
owner: addressToBigInt(srcFixture.
|
|
3550
|
+
owner: addressToBigInt(srcFixture.msglibManager.address),
|
|
3541
3551
|
path: srcFixture.path,
|
|
3542
3552
|
ulnAddress: addressToBigInt(srcFixture.msglib.address),
|
|
3543
3553
|
})
|
|
@@ -3574,7 +3584,7 @@ export async function openAndDeployUlnConnection(
|
|
|
3574
3584
|
opCode: OPCODES.OP_DeployConnection,
|
|
3575
3585
|
md: await allStorages.getNewMdMdAddress({
|
|
3576
3586
|
md: deployMd,
|
|
3577
|
-
address: addressToBigInt(srcFixture.
|
|
3587
|
+
address: addressToBigInt(srcFixture.msglibManager.address),
|
|
3578
3588
|
}),
|
|
3579
3589
|
expectedTransactions: [
|
|
3580
3590
|
{
|
|
@@ -3585,12 +3595,12 @@ export async function openAndDeployUlnConnection(
|
|
|
3585
3595
|
},
|
|
3586
3596
|
{
|
|
3587
3597
|
from: srcFixture.oApp.address,
|
|
3588
|
-
to: srcFixture.
|
|
3598
|
+
to: srcFixture.msglibManager.address,
|
|
3589
3599
|
op: Number(OPCODES.MsglibManager_OP_DEPLOY_CONNECTION),
|
|
3590
3600
|
success: true,
|
|
3591
3601
|
},
|
|
3592
3602
|
{
|
|
3593
|
-
from: srcFixture.
|
|
3603
|
+
from: srcFixture.msglibManager.address,
|
|
3594
3604
|
to: ulnConnection.address,
|
|
3595
3605
|
op: Number(OPCODES.BaseInterface_OP_INITIALIZE),
|
|
3596
3606
|
deploy: true,
|
|
@@ -3767,17 +3777,17 @@ export async function registerUlnWorkerInfo(
|
|
|
3767
3777
|
toNano('0.1')
|
|
3768
3778
|
).body!,
|
|
3769
3779
|
signers: multiSigners,
|
|
3770
|
-
targetContract: srcFixture.
|
|
3780
|
+
targetContract: srcFixture.msglibManager,
|
|
3771
3781
|
deploy: false,
|
|
3772
3782
|
expectedTransactions: [
|
|
3773
3783
|
{
|
|
3774
3784
|
from: srcFixture.multisig.address,
|
|
3775
|
-
to: srcFixture.
|
|
3785
|
+
to: srcFixture.msglibManager.address,
|
|
3776
3786
|
op: Number(OPCODES.UlnManager_OP_REGISTER_WORKER_FEELIB_BYTECODE),
|
|
3777
3787
|
success: true,
|
|
3778
3788
|
},
|
|
3779
3789
|
{
|
|
3780
|
-
from: srcFixture.
|
|
3790
|
+
from: srcFixture.msglibManager.address,
|
|
3781
3791
|
to: srcFixture.multisig.address,
|
|
3782
3792
|
},
|
|
3783
3793
|
],
|
|
@@ -3790,9 +3800,12 @@ export async function deployConfigAndRegisterDvn(
|
|
|
3790
3800
|
fixture: OAppFixtureULN,
|
|
3791
3801
|
eventHandler: LzEventHandler,
|
|
3792
3802
|
dvnFixtureConfig: DvnFixtureConfig
|
|
3793
|
-
): Promise<
|
|
3803
|
+
): Promise<[DvnFixture[], DvnFixture[]]> {
|
|
3794
3804
|
const dvnAdmins = [fixture.owner]
|
|
3795
3805
|
const verifierSet = generateRandomVerifierSet(3)
|
|
3806
|
+
|
|
3807
|
+
const sendDvnFixtures: DvnFixture[] = []
|
|
3808
|
+
const receiveDvnFixtures: DvnFixture[] = []
|
|
3796
3809
|
|
|
3797
3810
|
for (let i = 0; i < dvnFixtureConfig.src.send.numReqDvns + dvnFixtureConfig.src.send.numOptDvns; i++) {
|
|
3798
3811
|
const [dvn, dvnProxy, dvnMsgResults] = await openAndDeployDvnAndProxy(
|
|
@@ -3804,7 +3817,7 @@ export async function deployConfigAndRegisterDvn(
|
|
|
3804
3817
|
BigInt(i)
|
|
3805
3818
|
)
|
|
3806
3819
|
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
|
|
3807
|
-
|
|
3820
|
+
sendDvnFixtures.push({
|
|
3808
3821
|
dvn,
|
|
3809
3822
|
proxy: dvnProxy,
|
|
3810
3823
|
admins: dvnAdmins,
|
|
@@ -3824,7 +3837,7 @@ export async function deployConfigAndRegisterDvn(
|
|
|
3824
3837
|
BigInt(randomNumber + i)
|
|
3825
3838
|
)
|
|
3826
3839
|
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
|
|
3827
|
-
|
|
3840
|
+
receiveDvnFixtures.push({
|
|
3828
3841
|
dvn,
|
|
3829
3842
|
proxy: dvnProxy,
|
|
3830
3843
|
admins: dvnAdmins,
|
|
@@ -3832,6 +3845,8 @@ export async function deployConfigAndRegisterDvn(
|
|
|
3832
3845
|
})
|
|
3833
3846
|
await eventHandler.addCurrentEventsToAllEvents(dvnMsgResults, dvn)
|
|
3834
3847
|
}
|
|
3848
|
+
|
|
3849
|
+
return [sendDvnFixtures, receiveDvnFixtures]
|
|
3835
3850
|
}
|
|
3836
3851
|
|
|
3837
3852
|
export async function deployConfigAndRegisterUln(
|
|
@@ -3843,7 +3858,8 @@ export async function deployConfigAndRegisterUln(
|
|
|
3843
3858
|
version: bigint,
|
|
3844
3859
|
eventHandler: LzEventHandler,
|
|
3845
3860
|
dvnFixtureConfig: DvnFixtureConfig
|
|
3846
|
-
): Promise<
|
|
3861
|
+
): Promise<SandboxContract<TonContractWrapper>> {
|
|
3862
|
+
|
|
3847
3863
|
// ===================================open and deploy uln manager =====================================
|
|
3848
3864
|
|
|
3849
3865
|
const [msglibManager, ulnManagerMsgResults] = await openAndDeployUlnManagerViaMultisig(
|
|
@@ -3853,12 +3869,18 @@ export async function deployConfigAndRegisterUln(
|
|
|
3853
3869
|
srcFixture
|
|
3854
3870
|
)
|
|
3855
3871
|
await eventHandler.addCurrentEventsToAllEvents(ulnManagerMsgResults, msglibManager)
|
|
3856
|
-
srcFixture.
|
|
3872
|
+
srcFixture.msglibManager = msglibManager
|
|
3857
3873
|
|
|
3858
3874
|
// ===================================open and deploy dvn =====================================
|
|
3859
3875
|
|
|
3860
|
-
|
|
3861
|
-
|
|
3876
|
+
;[srcFixture.sendDvnFixtures, srcFixture.receiveDvnFixtures] = await deployConfigAndRegisterDvn(
|
|
3877
|
+
blockchain,
|
|
3878
|
+
allStorages,
|
|
3879
|
+
srcFixture,
|
|
3880
|
+
eventHandler,
|
|
3881
|
+
dvnFixtureConfig
|
|
3882
|
+
)
|
|
3883
|
+
|
|
3862
3884
|
// ===================================open and deploy executor=====================================
|
|
3863
3885
|
|
|
3864
3886
|
const executorAdmins = [srcFixture.owner]
|
|
@@ -3901,7 +3923,7 @@ export async function deployConfigAndRegisterUln(
|
|
|
3901
3923
|
bytecode: cellFromArtifact(DvnFeelibArtifact),
|
|
3902
3924
|
})
|
|
3903
3925
|
)
|
|
3904
|
-
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.
|
|
3926
|
+
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.msglibManager)
|
|
3905
3927
|
|
|
3906
3928
|
// ============================registerUlnWorkerInfo - executorFeeLib=======================================
|
|
3907
3929
|
|
|
@@ -3913,7 +3935,7 @@ export async function deployConfigAndRegisterUln(
|
|
|
3913
3935
|
bytecode: cellFromArtifact(ExecutorFeelibArtifact),
|
|
3914
3936
|
})
|
|
3915
3937
|
)
|
|
3916
|
-
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.
|
|
3938
|
+
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.msglibManager)
|
|
3917
3939
|
|
|
3918
3940
|
// ============================registerUlnWorkerInfo - priceFeeLib(empty bytes)================================
|
|
3919
3941
|
|
|
@@ -3925,7 +3947,7 @@ export async function deployConfigAndRegisterUln(
|
|
|
3925
3947
|
bytecode: emptyObject,
|
|
3926
3948
|
})
|
|
3927
3949
|
)
|
|
3928
|
-
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.
|
|
3950
|
+
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.msglibManager)
|
|
3929
3951
|
|
|
3930
3952
|
// ===================================open and deploy uln =============================================
|
|
3931
3953
|
|
|
@@ -3951,12 +3973,20 @@ export async function deployConfigAndRegisterUln(
|
|
|
3951
3973
|
|
|
3952
3974
|
// ===================================addUlnWorker - dvn =======================================
|
|
3953
3975
|
|
|
3954
|
-
await addDvnWorkers(
|
|
3955
|
-
|
|
3976
|
+
await addDvnWorkers(
|
|
3977
|
+
allStorages,
|
|
3978
|
+
srcFixture,
|
|
3979
|
+
srcFixture.sendDvnFixtures,
|
|
3980
|
+
srcFixture.receiveDvnFixtures,
|
|
3981
|
+
dstFixture.eid,
|
|
3982
|
+
priceFeedCacheProxy.address,
|
|
3983
|
+
eventHandler
|
|
3984
|
+
)
|
|
3985
|
+
|
|
3956
3986
|
// ===================================addUlnWorker - executor =======================================
|
|
3957
3987
|
|
|
3958
3988
|
const executorWorkerCallMd = await allStorages.getNewMdExecuteParams({
|
|
3959
|
-
target: addressToBigInt(srcFixture.
|
|
3989
|
+
target: addressToBigInt(srcFixture.msglibManager.address),
|
|
3960
3990
|
callData: await allStorages.getNewUlnWorkerFeelibInfo({
|
|
3961
3991
|
workerAddress: addressToBigInt(executor.address),
|
|
3962
3992
|
workerFeelibBytecode: cellFromArtifact(ExecutorFeelibArtifact),
|
|
@@ -3991,12 +4021,12 @@ export async function deployConfigAndRegisterUln(
|
|
|
3991
4021
|
},
|
|
3992
4022
|
{
|
|
3993
4023
|
from: srcFixture.executorFixtures.proxy.address,
|
|
3994
|
-
to: srcFixture.
|
|
4024
|
+
to: srcFixture.msglibManager.address,
|
|
3995
4025
|
op: Number(OPCODES.UlnManager_OP_ADD_ULN_WORKER),
|
|
3996
4026
|
success: true,
|
|
3997
4027
|
},
|
|
3998
4028
|
{
|
|
3999
|
-
from: srcFixture.
|
|
4029
|
+
from: srcFixture.msglibManager.address,
|
|
4000
4030
|
to: srcFixture.msglib.address,
|
|
4001
4031
|
success: true,
|
|
4002
4032
|
op: Number(OPCODES.Uln_OP_UPDATE_WORKER_FEELIB),
|
|
@@ -4004,17 +4034,17 @@ export async function deployConfigAndRegisterUln(
|
|
|
4004
4034
|
// emit event Uln::EVENT::ULN_WORKER_REGISTERED
|
|
4005
4035
|
{
|
|
4006
4036
|
from: srcFixture.msglib.address,
|
|
4007
|
-
to: srcFixture.
|
|
4037
|
+
to: srcFixture.msglibManager.address,
|
|
4008
4038
|
op: Number(OPCODES.BaseInterface_OP_EVENT),
|
|
4009
4039
|
success: false, // events are supposed to fail
|
|
4010
4040
|
},
|
|
4011
4041
|
])
|
|
4012
|
-
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.
|
|
4042
|
+
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.msglibManager)
|
|
4013
4043
|
|
|
4014
4044
|
// ===================================addUlnWorker - priceFeedCache =======================================
|
|
4015
4045
|
|
|
4016
4046
|
const priceFeedCacheWorkerCallMd = await allStorages.getNewMdExecuteParams({
|
|
4017
|
-
target: addressToBigInt(srcFixture.
|
|
4047
|
+
target: addressToBigInt(srcFixture.msglibManager.address),
|
|
4018
4048
|
callData: await allStorages.getNewUlnWorkerFeelibInfo({
|
|
4019
4049
|
workerAddress: addressToBigInt(priceFeedCacheProxy.address),
|
|
4020
4050
|
workerFeelibBytecode: emptyObject,
|
|
@@ -4056,12 +4086,12 @@ export async function deployConfigAndRegisterUln(
|
|
|
4056
4086
|
},
|
|
4057
4087
|
{
|
|
4058
4088
|
from: priceFeedCacheProxy.address,
|
|
4059
|
-
to: srcFixture.
|
|
4089
|
+
to: srcFixture.msglibManager.address,
|
|
4060
4090
|
op: Number(OPCODES.UlnManager_OP_ADD_ULN_WORKER),
|
|
4061
4091
|
success: true,
|
|
4062
4092
|
},
|
|
4063
4093
|
{
|
|
4064
|
-
from: srcFixture.
|
|
4094
|
+
from: srcFixture.msglibManager.address,
|
|
4065
4095
|
to: srcFixture.msglib.address,
|
|
4066
4096
|
success: true,
|
|
4067
4097
|
op: Number(OPCODES.Uln_OP_UPDATE_WORKER_FEELIB),
|
|
@@ -4069,24 +4099,13 @@ export async function deployConfigAndRegisterUln(
|
|
|
4069
4099
|
// emit event Uln::EVENT::ULN_WORKER_REGISTERED
|
|
4070
4100
|
{
|
|
4071
4101
|
from: srcFixture.msglib.address,
|
|
4072
|
-
to: srcFixture.
|
|
4102
|
+
to: srcFixture.msglibManager.address,
|
|
4073
4103
|
op: Number(OPCODES.BaseInterface_OP_EVENT),
|
|
4074
4104
|
success: false, // events are supposed to fail
|
|
4075
4105
|
},
|
|
4076
4106
|
]
|
|
4077
4107
|
)
|
|
4078
|
-
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.
|
|
4079
|
-
|
|
4080
|
-
// ===================================open and deploy uln connection =====================================
|
|
4081
|
-
|
|
4082
|
-
const [msglibConnection, ulnConnectionMsgResults] = await openAndDeployUlnConnection(
|
|
4083
|
-
blockchain,
|
|
4084
|
-
allStorages,
|
|
4085
|
-
srcFixture,
|
|
4086
|
-
dstFixture
|
|
4087
|
-
)
|
|
4088
|
-
srcFixture.msglibConnectionDefault = msglibConnection
|
|
4089
|
-
await eventHandler.addCurrentEventsToAllEvents(ulnConnectionMsgResults, srcFixture.oApp)
|
|
4108
|
+
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.msglibManager)
|
|
4090
4109
|
|
|
4091
4110
|
// ===================================configure default send and receive config =====================================
|
|
4092
4111
|
|
|
@@ -4121,17 +4140,17 @@ export async function deployConfigAndRegisterUln(
|
|
|
4121
4140
|
toNano('0.1')
|
|
4122
4141
|
).body!,
|
|
4123
4142
|
signers: multiSigners,
|
|
4124
|
-
targetContract: srcFixture.
|
|
4143
|
+
targetContract: srcFixture.msglibManager,
|
|
4125
4144
|
deploy: false,
|
|
4126
4145
|
expectedTransactions: [
|
|
4127
4146
|
{
|
|
4128
4147
|
from: srcFixture.multisig.address,
|
|
4129
|
-
to: srcFixture.
|
|
4148
|
+
to: srcFixture.msglibManager.address,
|
|
4130
4149
|
success: true,
|
|
4131
4150
|
op: Number(OPCODES.UlnManager_OP_SET_DEFAULT_ULN_SEND_CONFIG),
|
|
4132
4151
|
},
|
|
4133
4152
|
{
|
|
4134
|
-
from: srcFixture.
|
|
4153
|
+
from: srcFixture.msglibManager.address,
|
|
4135
4154
|
to: srcFixture.msglib.address,
|
|
4136
4155
|
success: true,
|
|
4137
4156
|
op: Number(OPCODES.Uln_OP_SET_DEFAULT_ULN_SEND_CONFIG),
|
|
@@ -4170,17 +4189,17 @@ export async function deployConfigAndRegisterUln(
|
|
|
4170
4189
|
toNano('0.1')
|
|
4171
4190
|
).body!,
|
|
4172
4191
|
signers: multiSigners,
|
|
4173
|
-
targetContract: srcFixture.
|
|
4192
|
+
targetContract: srcFixture.msglibManager,
|
|
4174
4193
|
deploy: false,
|
|
4175
4194
|
expectedTransactions: [
|
|
4176
4195
|
{
|
|
4177
4196
|
from: srcFixture.multisig.address,
|
|
4178
|
-
to: srcFixture.
|
|
4197
|
+
to: srcFixture.msglibManager.address,
|
|
4179
4198
|
success: true,
|
|
4180
4199
|
op: Number(OPCODES.UlnManager_OP_SET_DEFAULT_ULN_RECEIVE_CONFIG),
|
|
4181
4200
|
},
|
|
4182
4201
|
{
|
|
4183
|
-
from: srcFixture.
|
|
4202
|
+
from: srcFixture.msglibManager.address,
|
|
4184
4203
|
to: srcFixture.msglib.address,
|
|
4185
4204
|
success: true,
|
|
4186
4205
|
op: Number(OPCODES.Uln_OP_SET_DEFAULT_ULN_RECEIVE_CONFIG),
|
|
@@ -4188,7 +4207,7 @@ export async function deployConfigAndRegisterUln(
|
|
|
4188
4207
|
],
|
|
4189
4208
|
})
|
|
4190
4209
|
|
|
4191
|
-
return
|
|
4210
|
+
return msglibManager
|
|
4192
4211
|
}
|
|
4193
4212
|
|
|
4194
4213
|
export async function wireFixtureWithUln(
|
|
@@ -4198,14 +4217,42 @@ export async function wireFixtureWithUln(
|
|
|
4198
4217
|
srcFixture: OAppFixtureULN,
|
|
4199
4218
|
dstFixture: OAppFixtureULN,
|
|
4200
4219
|
eventHandler: LzEventHandler,
|
|
4201
|
-
|
|
4220
|
+
dvnFixtureConfigCustom?: DvnFixtureConfig
|
|
4202
4221
|
): Promise<void> {
|
|
4203
4222
|
// ===================================wire channels=====================================
|
|
4204
4223
|
|
|
4205
4224
|
await wireChannels(blockchain, allStorages, srcFixture, dstFixture, eventHandler)
|
|
4206
4225
|
|
|
4207
|
-
// ===================================
|
|
4208
|
-
|
|
4226
|
+
// ===================================default config =====================================
|
|
4227
|
+
|
|
4228
|
+
const defaultDvnFixtureConfig: DvnFixtureConfig = {
|
|
4229
|
+
src: {
|
|
4230
|
+
send: {
|
|
4231
|
+
numReqDvns: 1n,
|
|
4232
|
+
numOptDvns: 0n,
|
|
4233
|
+
},
|
|
4234
|
+
receive: {
|
|
4235
|
+
numReqDvns: 1n,
|
|
4236
|
+
numOptDvns: 0n,
|
|
4237
|
+
optDvnQuorum: 0n,
|
|
4238
|
+
},
|
|
4239
|
+
},
|
|
4240
|
+
dst: {
|
|
4241
|
+
send: {
|
|
4242
|
+
numReqDvns: 1n,
|
|
4243
|
+
numOptDvns: 0n,
|
|
4244
|
+
},
|
|
4245
|
+
receive: {
|
|
4246
|
+
numReqDvns: 1n,
|
|
4247
|
+
numOptDvns: 0n,
|
|
4248
|
+
optDvnQuorum: 0n,
|
|
4249
|
+
},
|
|
4250
|
+
},
|
|
4251
|
+
}
|
|
4252
|
+
|
|
4253
|
+
// ===================================deploy, configue, and register uln =====================================
|
|
4254
|
+
|
|
4255
|
+
srcFixture.msglibManager = await deployConfigAndRegisterUln(
|
|
4209
4256
|
blockchain,
|
|
4210
4257
|
multiSigners,
|
|
4211
4258
|
allStorages,
|
|
@@ -4213,17 +4260,30 @@ export async function wireFixtureWithUln(
|
|
|
4213
4260
|
dstFixture,
|
|
4214
4261
|
ULN_MANAGER_DEFAULT_VERSION,
|
|
4215
4262
|
eventHandler,
|
|
4216
|
-
|
|
4263
|
+
defaultDvnFixtureConfig
|
|
4217
4264
|
)
|
|
4218
4265
|
|
|
4266
|
+
// ===================================add msg lib to controller =====================================
|
|
4267
|
+
|
|
4219
4268
|
let internalMsgResults = await addMsgLibToController(
|
|
4220
4269
|
blockchain,
|
|
4221
4270
|
multiSigners,
|
|
4222
4271
|
srcFixture,
|
|
4223
4272
|
dstFixture,
|
|
4224
|
-
srcFixture.
|
|
4273
|
+
srcFixture.msglibManager
|
|
4225
4274
|
)
|
|
4226
4275
|
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.controller)
|
|
4276
|
+
|
|
4277
|
+
// ===================================open and deploy uln connection =====================================
|
|
4278
|
+
|
|
4279
|
+
const [msglibConnection, ulnConnectionMsgResults] = await openAndDeployUlnConnection(
|
|
4280
|
+
blockchain,
|
|
4281
|
+
allStorages,
|
|
4282
|
+
srcFixture,
|
|
4283
|
+
dstFixture
|
|
4284
|
+
)
|
|
4285
|
+
srcFixture.msglibConnection = msglibConnection
|
|
4286
|
+
await eventHandler.addCurrentEventsToAllEvents(ulnConnectionMsgResults, srcFixture.oApp)
|
|
4227
4287
|
|
|
4228
4288
|
// ===================================set default endpoint config=====================================
|
|
4229
4289
|
|
|
@@ -4231,8 +4291,8 @@ export async function wireFixtureWithUln(
|
|
|
4231
4291
|
blockchain,
|
|
4232
4292
|
allStorages,
|
|
4233
4293
|
multiSigners,
|
|
4234
|
-
srcFixture.
|
|
4235
|
-
srcFixture.
|
|
4294
|
+
srcFixture.msglibManager,
|
|
4295
|
+
srcFixture.msglibManager,
|
|
4236
4296
|
srcFixture,
|
|
4237
4297
|
dstFixture
|
|
4238
4298
|
)
|
|
@@ -4241,6 +4301,134 @@ export async function wireFixtureWithUln(
|
|
|
4241
4301
|
|
|
4242
4302
|
// expect no failures
|
|
4243
4303
|
expect(eventHandler.allFailures.txList).toHaveLength(0)
|
|
4304
|
+
|
|
4305
|
+
|
|
4306
|
+
if (dvnFixtureConfigCustom) {
|
|
4307
|
+
// ===================================open and deploy dvn =====================================
|
|
4308
|
+
|
|
4309
|
+
;[srcFixture.sendDvnFixturesCustom, srcFixture.receiveDvnFixturesCustom] = await deployConfigAndRegisterDvn(
|
|
4310
|
+
blockchain,
|
|
4311
|
+
allStorages,
|
|
4312
|
+
srcFixture,
|
|
4313
|
+
eventHandler,
|
|
4314
|
+
dvnFixtureConfigCustom
|
|
4315
|
+
)
|
|
4316
|
+
|
|
4317
|
+
// ===================================addUlnWorker - dvn =======================================
|
|
4318
|
+
|
|
4319
|
+
await addDvnWorkers(
|
|
4320
|
+
allStorages,
|
|
4321
|
+
srcFixture,
|
|
4322
|
+
srcFixture.sendDvnFixturesCustom,
|
|
4323
|
+
srcFixture.receiveDvnFixturesCustom,
|
|
4324
|
+
dstFixture.eid,
|
|
4325
|
+
srcFixture.priceFeedCacheFixture.proxy.address,
|
|
4326
|
+
eventHandler
|
|
4327
|
+
)
|
|
4328
|
+
|
|
4329
|
+
const [reqSendDvns, optSendDvns] = getDvnArrayFromDvnFixtures(
|
|
4330
|
+
srcFixture.sendDvnFixturesCustom,
|
|
4331
|
+
dvnFixtureConfigCustom.src.send
|
|
4332
|
+
)
|
|
4333
|
+
|
|
4334
|
+
const ulnSendConfig = await allStorages.getNewUlnSendConfig({
|
|
4335
|
+
workerQuoteGasLimit: BigInt(100000000),
|
|
4336
|
+
maxMessageBytes: BigInt(1000000000),
|
|
4337
|
+
executorNull: BigInt(0),
|
|
4338
|
+
executor: addressToBigInt(srcFixture.executorFixtures.proxy.address),
|
|
4339
|
+
requiredDVNsNull: BigInt(0),
|
|
4340
|
+
requiredDVNs: serializeDvns(reqSendDvns),
|
|
4341
|
+
optionalDVNsNull: BigInt(0),
|
|
4342
|
+
optionalDVNs: serializeDvns(optSendDvns),
|
|
4343
|
+
confirmationsNull: BigInt(0),
|
|
4344
|
+
confirmations: BigInt(1),
|
|
4345
|
+
})
|
|
4346
|
+
|
|
4347
|
+
await sendInternalMessageAndExpect({
|
|
4348
|
+
value: protocolSetupGas['MsgLib.INITIALIZE'],
|
|
4349
|
+
sender: srcFixture.owner.getSender(),
|
|
4350
|
+
contract: srcFixture.oApp,
|
|
4351
|
+
opCode: OPCODES.OP_SetLzConfig,
|
|
4352
|
+
md: await allStorages.getNewLzConfig({
|
|
4353
|
+
path: srcFixture.path,
|
|
4354
|
+
forwardingAddress: addressToBigInt(srcFixture.msglibManager.address),
|
|
4355
|
+
opCode: OPCODES.UlnManager_OP_SET_OAPP_ULN_SEND_CONFIG,
|
|
4356
|
+
config: ulnSendConfig,
|
|
4357
|
+
}),
|
|
4358
|
+
balanceRefill: toNano('1'),
|
|
4359
|
+
expectedTransactions: [
|
|
4360
|
+
{
|
|
4361
|
+
from: srcFixture.owner.address,
|
|
4362
|
+
to: srcFixture.oApp.address,
|
|
4363
|
+
op: Number(OPCODES.OP_SetLzConfig),
|
|
4364
|
+
success: true,
|
|
4365
|
+
},
|
|
4366
|
+
{
|
|
4367
|
+
from: srcFixture.oApp.address,
|
|
4368
|
+
to: srcFixture.msglibManager.address,
|
|
4369
|
+
op: Number(OPCODES.UlnManager_OP_SET_OAPP_ULN_SEND_CONFIG),
|
|
4370
|
+
success: true,
|
|
4371
|
+
},
|
|
4372
|
+
{
|
|
4373
|
+
from: srcFixture.msglibManager.address,
|
|
4374
|
+
to: srcFixture.msglibConnection.address,
|
|
4375
|
+
op: Number(OPCODES.UlnConnection_OP_SET_OAPP_ULN_SEND_CONFIG),
|
|
4376
|
+
success: true,
|
|
4377
|
+
},
|
|
4378
|
+
],
|
|
4379
|
+
})
|
|
4380
|
+
|
|
4381
|
+
const [reqReceiveDvns, optReceiveDvns, optReceiveQuorum] = getDvnArrayFromDvnFixtures(
|
|
4382
|
+
srcFixture.receiveDvnFixturesCustom,
|
|
4383
|
+
dvnFixtureConfigCustom.src.receive
|
|
4384
|
+
)
|
|
4385
|
+
|
|
4386
|
+
const ulnReceiveConfig = await allStorages.getNewUlnReceiveConfig({
|
|
4387
|
+
minCommitPacketGasNull: BigInt(0),
|
|
4388
|
+
minCommitPacketGas: BigInt(1),
|
|
4389
|
+
confirmationsNull: BigInt(0),
|
|
4390
|
+
confirmations: BigInt(1),
|
|
4391
|
+
requiredDVNsNull: BigInt(0),
|
|
4392
|
+
requiredDVNs: serializeDvns(reqReceiveDvns),
|
|
4393
|
+
optionalDVNsNull: BigInt(0),
|
|
4394
|
+
optionalDVNs: serializeDvns(optReceiveDvns),
|
|
4395
|
+
optionalDVNThreshold: BigInt(optReceiveQuorum),
|
|
4396
|
+
})
|
|
4397
|
+
|
|
4398
|
+
await sendInternalMessageAndExpect({
|
|
4399
|
+
value: protocolSetupGas['MsgLib.INITIALIZE'],
|
|
4400
|
+
sender: srcFixture.owner.getSender(),
|
|
4401
|
+
contract: srcFixture.oApp,
|
|
4402
|
+
opCode: OPCODES.OP_SetLzConfig,
|
|
4403
|
+
md: await allStorages.getNewLzConfig({
|
|
4404
|
+
path: srcFixture.path,
|
|
4405
|
+
forwardingAddress: addressToBigInt(srcFixture.msglibManager.address),
|
|
4406
|
+
opCode: OPCODES.UlnManager_OP_SET_OAPP_ULN_RECEIVE_CONFIG,
|
|
4407
|
+
config: ulnReceiveConfig,
|
|
4408
|
+
}),
|
|
4409
|
+
balanceRefill: toNano('1'),
|
|
4410
|
+
expectedTransactions: [
|
|
4411
|
+
{
|
|
4412
|
+
from: srcFixture.owner.address,
|
|
4413
|
+
to: srcFixture.oApp.address,
|
|
4414
|
+
op: Number(OPCODES.OP_SetLzConfig),
|
|
4415
|
+
success: true,
|
|
4416
|
+
},
|
|
4417
|
+
{
|
|
4418
|
+
from: srcFixture.oApp.address,
|
|
4419
|
+
to: srcFixture.msglibManager.address,
|
|
4420
|
+
op: Number(OPCODES.UlnManager_OP_SET_OAPP_ULN_RECEIVE_CONFIG),
|
|
4421
|
+
success: true,
|
|
4422
|
+
},
|
|
4423
|
+
{
|
|
4424
|
+
from: srcFixture.msglibManager.address,
|
|
4425
|
+
to: srcFixture.msglibConnection.address,
|
|
4426
|
+
op: Number(OPCODES.UlnConnection_OP_SET_OAPP_ULN_RECEIVE_CONFIG),
|
|
4427
|
+
success: true,
|
|
4428
|
+
},
|
|
4429
|
+
],
|
|
4430
|
+
})
|
|
4431
|
+
}
|
|
4244
4432
|
}
|
|
4245
4433
|
|
|
4246
4434
|
export async function wireFixturesTogetherWithUln(
|
|
@@ -4250,30 +4438,7 @@ export async function wireFixturesTogetherWithUln(
|
|
|
4250
4438
|
srcFixture: OAppFixtureULN,
|
|
4251
4439
|
dstFixture: OAppFixtureULN,
|
|
4252
4440
|
eventHandler: LzEventHandler,
|
|
4253
|
-
|
|
4254
|
-
src: {
|
|
4255
|
-
send: {
|
|
4256
|
-
numReqDvns: 1n,
|
|
4257
|
-
numOptDvns: 0n,
|
|
4258
|
-
},
|
|
4259
|
-
receive: {
|
|
4260
|
-
numReqDvns: 1n,
|
|
4261
|
-
numOptDvns: 0n,
|
|
4262
|
-
optDvnQuorum: 0n,
|
|
4263
|
-
},
|
|
4264
|
-
},
|
|
4265
|
-
dst: {
|
|
4266
|
-
send: {
|
|
4267
|
-
numReqDvns: 1n,
|
|
4268
|
-
numOptDvns: 0n,
|
|
4269
|
-
},
|
|
4270
|
-
receive: {
|
|
4271
|
-
numReqDvns: 1n,
|
|
4272
|
-
numOptDvns: 0n,
|
|
4273
|
-
optDvnQuorum: 0n,
|
|
4274
|
-
},
|
|
4275
|
-
},
|
|
4276
|
-
}
|
|
4441
|
+
dvnFixtureConfigCustom?: DvnFixtureConfig
|
|
4277
4442
|
): Promise<void> {
|
|
4278
4443
|
await wireFixtureWithUln(
|
|
4279
4444
|
blockchain,
|
|
@@ -4282,7 +4447,7 @@ export async function wireFixturesTogetherWithUln(
|
|
|
4282
4447
|
srcFixture,
|
|
4283
4448
|
dstFixture,
|
|
4284
4449
|
eventHandler,
|
|
4285
|
-
|
|
4450
|
+
dvnFixtureConfigCustom
|
|
4286
4451
|
)
|
|
4287
4452
|
await wireFixtureWithUln(
|
|
4288
4453
|
blockchain,
|
|
@@ -4291,7 +4456,7 @@ export async function wireFixturesTogetherWithUln(
|
|
|
4291
4456
|
dstFixture,
|
|
4292
4457
|
srcFixture,
|
|
4293
4458
|
eventHandler,
|
|
4294
|
-
|
|
4459
|
+
dvnFixtureConfigCustom
|
|
4295
4460
|
)
|
|
4296
4461
|
}
|
|
4297
4462
|
|
|
@@ -4607,7 +4772,10 @@ export async function callVerifyOnDvn({
|
|
|
4607
4772
|
export async function ulnVerifyAndExpect(
|
|
4608
4773
|
allStorages: SandboxContract<TonContractWrapper>,
|
|
4609
4774
|
mdPacketSent: MdPacketSent,
|
|
4610
|
-
{ msglib: uln
|
|
4775
|
+
{ msglib: uln }: OAppFixtureULN,
|
|
4776
|
+
receiveDvnFixtures: DvnFixture[],
|
|
4777
|
+
msglibManager: SandboxContract<TonContractWrapper>,
|
|
4778
|
+
msglibConnection: SandboxContract<TonContractWrapper>,
|
|
4611
4779
|
eventHandler: LzEventHandler,
|
|
4612
4780
|
confirmations = 1n
|
|
4613
4781
|
): Promise<Cell> {
|
|
@@ -4625,7 +4793,7 @@ export async function ulnVerifyAndExpect(
|
|
|
4625
4793
|
hash: BigInt('0x' + lzPacket.hash().toString('hex')),
|
|
4626
4794
|
confirmations,
|
|
4627
4795
|
}),
|
|
4628
|
-
address: addressToBigInt(
|
|
4796
|
+
address: addressToBigInt(msglibConnection.address),
|
|
4629
4797
|
}),
|
|
4630
4798
|
expiration: oneDayFromNow,
|
|
4631
4799
|
opcode: OPCODES.Uln_OP_ULN_VERIFY,
|
|
@@ -4662,19 +4830,19 @@ export async function ulnVerifyAndExpect(
|
|
|
4662
4830
|
},
|
|
4663
4831
|
{
|
|
4664
4832
|
from: uln.address,
|
|
4665
|
-
to:
|
|
4833
|
+
to: msglibConnection.address,
|
|
4666
4834
|
op: Number(OPCODES.UlnConnection_OP_ULN_CONNECTION_VERIFY),
|
|
4667
4835
|
success: true,
|
|
4668
4836
|
},
|
|
4669
4837
|
// emit UlnConnection::EVENT::PACKET_VERIFIED
|
|
4670
4838
|
{
|
|
4671
|
-
from:
|
|
4672
|
-
to:
|
|
4839
|
+
from: msglibConnection.address,
|
|
4840
|
+
to: msglibManager.address,
|
|
4673
4841
|
op: Number(OPCODES.BaseInterface_OP_EVENT),
|
|
4674
4842
|
success: false, // events are supposed to fail
|
|
4675
4843
|
},
|
|
4676
4844
|
{
|
|
4677
|
-
from:
|
|
4845
|
+
from: msglibConnection.address,
|
|
4678
4846
|
to: proxy.address,
|
|
4679
4847
|
op: Number(OPCODES.UltraLightNode_OP_ULN_CONNECTION_VERIFY_CALLBACK),
|
|
4680
4848
|
success: true,
|