@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.cjs
CHANGED
|
@@ -1476,7 +1476,7 @@ export interface ProtocolFixture {
|
|
|
1476
1476
|
controller: SandboxContract<TonContractWrapper>
|
|
1477
1477
|
endpoint: SandboxContract<TonContractWrapper>
|
|
1478
1478
|
msglib: SandboxContract<TonContractWrapper>
|
|
1479
|
-
|
|
1479
|
+
msglibManager: SandboxContract<TonContractWrapper>
|
|
1480
1480
|
msglibManagerCustom?: SandboxContract<TonContractWrapper>
|
|
1481
1481
|
}
|
|
1482
1482
|
|
|
@@ -1485,7 +1485,7 @@ export interface OAppFixture extends ProtocolFixture {
|
|
|
1485
1485
|
oApp: SandboxContract<TonContractWrapper>
|
|
1486
1486
|
path: Cell
|
|
1487
1487
|
channel: SandboxContract<TonContractWrapper>
|
|
1488
|
-
|
|
1488
|
+
msglibConnection: SandboxContract<TonContractWrapper>
|
|
1489
1489
|
msglibConnectionCustom?: SandboxContract<TonContractWrapper>
|
|
1490
1490
|
}
|
|
1491
1491
|
|
|
@@ -1516,14 +1516,14 @@ export function logAddresses(
|
|
|
1516
1516
|
[\`\${prefix}.multisig.address\`]: formatAddress(fixture.multisig.address),
|
|
1517
1517
|
[\`\${prefix}.controller.address\`]: formatAddress(fixture.controller.address),
|
|
1518
1518
|
[\`\${prefix}.endpoint.address\`]: formatAddress(fixture.endpoint.address),
|
|
1519
|
-
[\`\${prefix}.
|
|
1519
|
+
[\`\${prefix}.msglibManager.address\`]: formatAddress(fixture.msglibManager.address),
|
|
1520
1520
|
[\`\${prefix}.msglib.address\`]: formatAddress(fixture.msglib.address),
|
|
1521
1521
|
[\`\${prefix}.smlManagerCustom.address\`]: formatAddress(fixture.msglibManagerCustom?.address ?? ''),
|
|
1522
1522
|
[\`--- \${oappHeader} ---\`]: '', // Custom separator
|
|
1523
1523
|
[\`\${prefix}.owner.address\`]: formatAddress(fixture.owner.address),
|
|
1524
1524
|
[\`\${prefix}.OApp.address\`]: formatAddress(fixture.oApp.address),
|
|
1525
1525
|
[\`\${prefix}.channel.address\`]: formatAddress(fixture.channel.address),
|
|
1526
|
-
[\`\${prefix}.
|
|
1526
|
+
[\`\${prefix}.msglibConnection.address\`]: formatAddress(fixture.msglibConnection.address),
|
|
1527
1527
|
[\`\${prefix}.smlConnectionCustom.address\`]: formatAddress(fixture.msglibConnectionCustom?.address ?? ''),
|
|
1528
1528
|
}
|
|
1529
1529
|
}
|
|
@@ -2739,7 +2739,13 @@ export async function runtimeDecoder(contract: SandboxContract<TonContractWrappe
|
|
|
2739
2739
|
if (newCellFieldType === 'NULL') {
|
|
2740
2740
|
newCellFieldType = 'cl::t::cellRef'
|
|
2741
2741
|
} else {
|
|
2742
|
-
|
|
2742
|
+
// Check if newCellFieldType is valid ASCII
|
|
2743
|
+
// eslint-disable-next-line no-control-regex
|
|
2744
|
+
if (!/^[p{ASCII}]+$/u.test(newCellFieldType)) {
|
|
2745
|
+
newCellFieldType = 'cl::t::cellRef'
|
|
2746
|
+
} else {
|
|
2747
|
+
newCellFieldType = keyMap[newCellFieldType] ?? newCellFieldType
|
|
2748
|
+
}
|
|
2743
2749
|
}
|
|
2744
2750
|
jsonField.fieldType = newCellFieldType
|
|
2745
2751
|
tonObjectDefCopy[key] = jsonField
|
|
@@ -2790,8 +2796,8 @@ function generateSmlTestUtils(directory, filename) {
|
|
|
2790
2796
|
{
|
|
2791
2797
|
endpoint,
|
|
2792
2798
|
channel,
|
|
2793
|
-
|
|
2794
|
-
|
|
2799
|
+
msglibManager: smlManager,
|
|
2800
|
+
msglibConnection: smlConnection,
|
|
2795
2801
|
controller,
|
|
2796
2802
|
}: OAppFixture,
|
|
2797
2803
|
profile?: Profile
|
|
@@ -3051,7 +3057,7 @@ function generateSmlTestUtils(directory, filename) {
|
|
|
3051
3057
|
)
|
|
3052
3058
|
|
|
3053
3059
|
// ===================================deploy and configure sml default=====================================
|
|
3054
|
-
;[srcFixture.
|
|
3060
|
+
;[srcFixture.msglibManager, srcFixture.msglibConnection] = await deployConfigAndRegisterSml(
|
|
3055
3061
|
blockchain,
|
|
3056
3062
|
multiSigners,
|
|
3057
3063
|
allStorages,
|
|
@@ -3069,14 +3075,14 @@ function generateSmlTestUtils(directory, filename) {
|
|
|
3069
3075
|
blockchain,
|
|
3070
3076
|
allStorages,
|
|
3071
3077
|
multiSigners,
|
|
3072
|
-
srcFixture.
|
|
3073
|
-
srcFixture.
|
|
3078
|
+
srcFixture.msglibManager,
|
|
3079
|
+
srcFixture.msglibManager,
|
|
3074
3080
|
srcFixture,
|
|
3075
3081
|
dstFixture
|
|
3076
3082
|
)
|
|
3077
3083
|
|
|
3078
3084
|
// in SML, the connection is the Msglib
|
|
3079
|
-
srcFixture.msglib = srcFixture.
|
|
3085
|
+
srcFixture.msglib = srcFixture.msglibConnection
|
|
3080
3086
|
|
|
3081
3087
|
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.controller)
|
|
3082
3088
|
expect(eventHandler.allFailures.txList).toHaveLength(0)
|
|
@@ -3216,7 +3222,9 @@ export interface PricedfeedCacheFixture extends WorkerFixture {
|
|
|
3216
3222
|
|
|
3217
3223
|
export interface ProtocolFixtureULN extends ProtocolFixture {
|
|
3218
3224
|
sendDvnFixtures: DvnFixture[]
|
|
3225
|
+
sendDvnFixturesCustom: DvnFixture[]
|
|
3219
3226
|
receiveDvnFixtures: DvnFixture[]
|
|
3227
|
+
receiveDvnFixturesCustom: DvnFixture[]
|
|
3220
3228
|
executorFixtures: ExecutorFixture
|
|
3221
3229
|
priceFeedCacheFixture: PricedfeedCacheFixture
|
|
3222
3230
|
}
|
|
@@ -3259,8 +3267,8 @@ export async function commitVerificationAndExpect(
|
|
|
3259
3267
|
endpoint,
|
|
3260
3268
|
channel,
|
|
3261
3269
|
msglib: uln,
|
|
3262
|
-
|
|
3263
|
-
|
|
3270
|
+
msglibManager: ulnManager,
|
|
3271
|
+
msglibConnection: ulnConnection,
|
|
3264
3272
|
controller,
|
|
3265
3273
|
}: OAppFixture,
|
|
3266
3274
|
profile?: Profile
|
|
@@ -3348,7 +3356,9 @@ export async function addUlnWorker(
|
|
|
3348
3356
|
|
|
3349
3357
|
export async function addDvnWorkers(
|
|
3350
3358
|
allStorages: SandboxContract<TonContractWrapper>,
|
|
3351
|
-
{
|
|
3359
|
+
{ msglibManager, msglib: uln }: OAppFixtureULN,
|
|
3360
|
+
sendDvnFixtures: DvnFixture[],
|
|
3361
|
+
receiveDvnFixtures: DvnFixture[],
|
|
3352
3362
|
dstEid: bigint,
|
|
3353
3363
|
priceFeedCacheAddress: Address,
|
|
3354
3364
|
eventHandler: LzEventHandler
|
|
@@ -3358,7 +3368,7 @@ export async function addDvnWorkers(
|
|
|
3358
3368
|
requireDefined(uln)
|
|
3359
3369
|
for (const dvnFixture of [...sendDvnFixtures, ...receiveDvnFixtures]) {
|
|
3360
3370
|
const dvnWorkerCallMd = await allStorages.getNewMdExecuteParams({
|
|
3361
|
-
target: addressToBigInt(
|
|
3371
|
+
target: addressToBigInt(msglibManager.address),
|
|
3362
3372
|
callData: await allStorages.getNewUlnWorkerFeelibInfo({
|
|
3363
3373
|
workerAddress: addressToBigInt(dvnFixture.dvn.address),
|
|
3364
3374
|
workerFeelibBytecode: cellFromArtifact(DvnFeelibArtifact),
|
|
@@ -3392,12 +3402,12 @@ export async function addDvnWorkers(
|
|
|
3392
3402
|
},
|
|
3393
3403
|
{
|
|
3394
3404
|
from: dvnFixture.proxy.address,
|
|
3395
|
-
to:
|
|
3405
|
+
to: msglibManager.address,
|
|
3396
3406
|
op: Number(OPCODES.UlnManager_OP_ADD_ULN_WORKER),
|
|
3397
3407
|
success: true,
|
|
3398
3408
|
},
|
|
3399
3409
|
{
|
|
3400
|
-
from:
|
|
3410
|
+
from: msglibManager.address,
|
|
3401
3411
|
to: uln.address,
|
|
3402
3412
|
success: true,
|
|
3403
3413
|
op: Number(OPCODES.Uln_OP_UPDATE_WORKER_FEELIB),
|
|
@@ -3405,12 +3415,12 @@ export async function addDvnWorkers(
|
|
|
3405
3415
|
// emit event Uln::EVENT::ULN_WORKER_REGISTERED
|
|
3406
3416
|
{
|
|
3407
3417
|
from: uln.address,
|
|
3408
|
-
to:
|
|
3418
|
+
to: msglibManager.address,
|
|
3409
3419
|
op: Number(OPCODES.BaseInterface_OP_EVENT),
|
|
3410
3420
|
success: false, // events are supposed to fail
|
|
3411
3421
|
},
|
|
3412
3422
|
])
|
|
3413
|
-
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults,
|
|
3423
|
+
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, msglibManager)
|
|
3414
3424
|
}
|
|
3415
3425
|
}
|
|
3416
3426
|
|
|
@@ -3442,7 +3452,7 @@ export async function openAndDeployUln(
|
|
|
3442
3452
|
TonContractWrapper.create(
|
|
3443
3453
|
cellFromArtifact(UlnArtifact),
|
|
3444
3454
|
await allStorages.getNewUln({
|
|
3445
|
-
owner: addressToBigInt(srcFixture.
|
|
3455
|
+
owner: addressToBigInt(srcFixture.msglibManager.address),
|
|
3446
3456
|
eid: srcFixture.eid,
|
|
3447
3457
|
dstEid: dstFixture.eid,
|
|
3448
3458
|
})
|
|
@@ -3460,17 +3470,17 @@ export async function openAndDeployUln(
|
|
|
3460
3470
|
toNano('0')
|
|
3461
3471
|
).body!,
|
|
3462
3472
|
signers: multiSigners,
|
|
3463
|
-
targetContract: srcFixture.
|
|
3473
|
+
targetContract: srcFixture.msglibManager,
|
|
3464
3474
|
deploy: false,
|
|
3465
3475
|
expectedTransactions: [
|
|
3466
3476
|
{
|
|
3467
3477
|
from: srcFixture.multisig.address,
|
|
3468
|
-
to: srcFixture.
|
|
3478
|
+
to: srcFixture.msglibManager.address,
|
|
3469
3479
|
op: Number(OPCODES.UlnManager_OP_DEPLOY_ULN),
|
|
3470
3480
|
success: true,
|
|
3471
3481
|
},
|
|
3472
3482
|
{
|
|
3473
|
-
from: srcFixture.
|
|
3483
|
+
from: srcFixture.msglibManager.address,
|
|
3474
3484
|
to: uln.address,
|
|
3475
3485
|
success: true,
|
|
3476
3486
|
deploy: true,
|
|
@@ -3559,7 +3569,7 @@ export async function openAndDeployUlnConnection(
|
|
|
3559
3569
|
TonContractWrapper.create(
|
|
3560
3570
|
cellFromArtifact(UlnConnectionArtifact),
|
|
3561
3571
|
await allStorages.getNewUlnConnection({
|
|
3562
|
-
owner: addressToBigInt(srcFixture.
|
|
3572
|
+
owner: addressToBigInt(srcFixture.msglibManager.address),
|
|
3563
3573
|
path: srcFixture.path,
|
|
3564
3574
|
ulnAddress: addressToBigInt(srcFixture.msglib.address),
|
|
3565
3575
|
})
|
|
@@ -3596,7 +3606,7 @@ export async function openAndDeployUlnConnection(
|
|
|
3596
3606
|
opCode: OPCODES.OP_DeployConnection,
|
|
3597
3607
|
md: await allStorages.getNewMdMdAddress({
|
|
3598
3608
|
md: deployMd,
|
|
3599
|
-
address: addressToBigInt(srcFixture.
|
|
3609
|
+
address: addressToBigInt(srcFixture.msglibManager.address),
|
|
3600
3610
|
}),
|
|
3601
3611
|
expectedTransactions: [
|
|
3602
3612
|
{
|
|
@@ -3607,12 +3617,12 @@ export async function openAndDeployUlnConnection(
|
|
|
3607
3617
|
},
|
|
3608
3618
|
{
|
|
3609
3619
|
from: srcFixture.oApp.address,
|
|
3610
|
-
to: srcFixture.
|
|
3620
|
+
to: srcFixture.msglibManager.address,
|
|
3611
3621
|
op: Number(OPCODES.MsglibManager_OP_DEPLOY_CONNECTION),
|
|
3612
3622
|
success: true,
|
|
3613
3623
|
},
|
|
3614
3624
|
{
|
|
3615
|
-
from: srcFixture.
|
|
3625
|
+
from: srcFixture.msglibManager.address,
|
|
3616
3626
|
to: ulnConnection.address,
|
|
3617
3627
|
op: Number(OPCODES.BaseInterface_OP_INITIALIZE),
|
|
3618
3628
|
deploy: true,
|
|
@@ -3789,17 +3799,17 @@ export async function registerUlnWorkerInfo(
|
|
|
3789
3799
|
toNano('0.1')
|
|
3790
3800
|
).body!,
|
|
3791
3801
|
signers: multiSigners,
|
|
3792
|
-
targetContract: srcFixture.
|
|
3802
|
+
targetContract: srcFixture.msglibManager,
|
|
3793
3803
|
deploy: false,
|
|
3794
3804
|
expectedTransactions: [
|
|
3795
3805
|
{
|
|
3796
3806
|
from: srcFixture.multisig.address,
|
|
3797
|
-
to: srcFixture.
|
|
3807
|
+
to: srcFixture.msglibManager.address,
|
|
3798
3808
|
op: Number(OPCODES.UlnManager_OP_REGISTER_WORKER_FEELIB_BYTECODE),
|
|
3799
3809
|
success: true,
|
|
3800
3810
|
},
|
|
3801
3811
|
{
|
|
3802
|
-
from: srcFixture.
|
|
3812
|
+
from: srcFixture.msglibManager.address,
|
|
3803
3813
|
to: srcFixture.multisig.address,
|
|
3804
3814
|
},
|
|
3805
3815
|
],
|
|
@@ -3812,9 +3822,12 @@ export async function deployConfigAndRegisterDvn(
|
|
|
3812
3822
|
fixture: OAppFixtureULN,
|
|
3813
3823
|
eventHandler: LzEventHandler,
|
|
3814
3824
|
dvnFixtureConfig: DvnFixtureConfig
|
|
3815
|
-
): Promise<
|
|
3825
|
+
): Promise<[DvnFixture[], DvnFixture[]]> {
|
|
3816
3826
|
const dvnAdmins = [fixture.owner]
|
|
3817
3827
|
const verifierSet = generateRandomVerifierSet(3)
|
|
3828
|
+
|
|
3829
|
+
const sendDvnFixtures: DvnFixture[] = []
|
|
3830
|
+
const receiveDvnFixtures: DvnFixture[] = []
|
|
3818
3831
|
|
|
3819
3832
|
for (let i = 0; i < dvnFixtureConfig.src.send.numReqDvns + dvnFixtureConfig.src.send.numOptDvns; i++) {
|
|
3820
3833
|
const [dvn, dvnProxy, dvnMsgResults] = await openAndDeployDvnAndProxy(
|
|
@@ -3826,7 +3839,7 @@ export async function deployConfigAndRegisterDvn(
|
|
|
3826
3839
|
BigInt(i)
|
|
3827
3840
|
)
|
|
3828
3841
|
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
|
|
3829
|
-
|
|
3842
|
+
sendDvnFixtures.push({
|
|
3830
3843
|
dvn,
|
|
3831
3844
|
proxy: dvnProxy,
|
|
3832
3845
|
admins: dvnAdmins,
|
|
@@ -3846,7 +3859,7 @@ export async function deployConfigAndRegisterDvn(
|
|
|
3846
3859
|
BigInt(randomNumber + i)
|
|
3847
3860
|
)
|
|
3848
3861
|
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
|
|
3849
|
-
|
|
3862
|
+
receiveDvnFixtures.push({
|
|
3850
3863
|
dvn,
|
|
3851
3864
|
proxy: dvnProxy,
|
|
3852
3865
|
admins: dvnAdmins,
|
|
@@ -3854,6 +3867,8 @@ export async function deployConfigAndRegisterDvn(
|
|
|
3854
3867
|
})
|
|
3855
3868
|
await eventHandler.addCurrentEventsToAllEvents(dvnMsgResults, dvn)
|
|
3856
3869
|
}
|
|
3870
|
+
|
|
3871
|
+
return [sendDvnFixtures, receiveDvnFixtures]
|
|
3857
3872
|
}
|
|
3858
3873
|
|
|
3859
3874
|
export async function deployConfigAndRegisterUln(
|
|
@@ -3865,7 +3880,8 @@ export async function deployConfigAndRegisterUln(
|
|
|
3865
3880
|
version: bigint,
|
|
3866
3881
|
eventHandler: LzEventHandler,
|
|
3867
3882
|
dvnFixtureConfig: DvnFixtureConfig
|
|
3868
|
-
): Promise<
|
|
3883
|
+
): Promise<SandboxContract<TonContractWrapper>> {
|
|
3884
|
+
|
|
3869
3885
|
// ===================================open and deploy uln manager =====================================
|
|
3870
3886
|
|
|
3871
3887
|
const [msglibManager, ulnManagerMsgResults] = await openAndDeployUlnManagerViaMultisig(
|
|
@@ -3875,12 +3891,18 @@ export async function deployConfigAndRegisterUln(
|
|
|
3875
3891
|
srcFixture
|
|
3876
3892
|
)
|
|
3877
3893
|
await eventHandler.addCurrentEventsToAllEvents(ulnManagerMsgResults, msglibManager)
|
|
3878
|
-
srcFixture.
|
|
3894
|
+
srcFixture.msglibManager = msglibManager
|
|
3879
3895
|
|
|
3880
3896
|
// ===================================open and deploy dvn =====================================
|
|
3881
3897
|
|
|
3882
|
-
|
|
3883
|
-
|
|
3898
|
+
;[srcFixture.sendDvnFixtures, srcFixture.receiveDvnFixtures] = await deployConfigAndRegisterDvn(
|
|
3899
|
+
blockchain,
|
|
3900
|
+
allStorages,
|
|
3901
|
+
srcFixture,
|
|
3902
|
+
eventHandler,
|
|
3903
|
+
dvnFixtureConfig
|
|
3904
|
+
)
|
|
3905
|
+
|
|
3884
3906
|
// ===================================open and deploy executor=====================================
|
|
3885
3907
|
|
|
3886
3908
|
const executorAdmins = [srcFixture.owner]
|
|
@@ -3923,7 +3945,7 @@ export async function deployConfigAndRegisterUln(
|
|
|
3923
3945
|
bytecode: cellFromArtifact(DvnFeelibArtifact),
|
|
3924
3946
|
})
|
|
3925
3947
|
)
|
|
3926
|
-
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.
|
|
3948
|
+
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.msglibManager)
|
|
3927
3949
|
|
|
3928
3950
|
// ============================registerUlnWorkerInfo - executorFeeLib=======================================
|
|
3929
3951
|
|
|
@@ -3935,7 +3957,7 @@ export async function deployConfigAndRegisterUln(
|
|
|
3935
3957
|
bytecode: cellFromArtifact(ExecutorFeelibArtifact),
|
|
3936
3958
|
})
|
|
3937
3959
|
)
|
|
3938
|
-
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.
|
|
3960
|
+
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.msglibManager)
|
|
3939
3961
|
|
|
3940
3962
|
// ============================registerUlnWorkerInfo - priceFeeLib(empty bytes)================================
|
|
3941
3963
|
|
|
@@ -3947,7 +3969,7 @@ export async function deployConfigAndRegisterUln(
|
|
|
3947
3969
|
bytecode: emptyObject,
|
|
3948
3970
|
})
|
|
3949
3971
|
)
|
|
3950
|
-
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.
|
|
3972
|
+
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.msglibManager)
|
|
3951
3973
|
|
|
3952
3974
|
// ===================================open and deploy uln =============================================
|
|
3953
3975
|
|
|
@@ -3973,12 +3995,20 @@ export async function deployConfigAndRegisterUln(
|
|
|
3973
3995
|
|
|
3974
3996
|
// ===================================addUlnWorker - dvn =======================================
|
|
3975
3997
|
|
|
3976
|
-
await addDvnWorkers(
|
|
3977
|
-
|
|
3998
|
+
await addDvnWorkers(
|
|
3999
|
+
allStorages,
|
|
4000
|
+
srcFixture,
|
|
4001
|
+
srcFixture.sendDvnFixtures,
|
|
4002
|
+
srcFixture.receiveDvnFixtures,
|
|
4003
|
+
dstFixture.eid,
|
|
4004
|
+
priceFeedCacheProxy.address,
|
|
4005
|
+
eventHandler
|
|
4006
|
+
)
|
|
4007
|
+
|
|
3978
4008
|
// ===================================addUlnWorker - executor =======================================
|
|
3979
4009
|
|
|
3980
4010
|
const executorWorkerCallMd = await allStorages.getNewMdExecuteParams({
|
|
3981
|
-
target: addressToBigInt(srcFixture.
|
|
4011
|
+
target: addressToBigInt(srcFixture.msglibManager.address),
|
|
3982
4012
|
callData: await allStorages.getNewUlnWorkerFeelibInfo({
|
|
3983
4013
|
workerAddress: addressToBigInt(executor.address),
|
|
3984
4014
|
workerFeelibBytecode: cellFromArtifact(ExecutorFeelibArtifact),
|
|
@@ -4013,12 +4043,12 @@ export async function deployConfigAndRegisterUln(
|
|
|
4013
4043
|
},
|
|
4014
4044
|
{
|
|
4015
4045
|
from: srcFixture.executorFixtures.proxy.address,
|
|
4016
|
-
to: srcFixture.
|
|
4046
|
+
to: srcFixture.msglibManager.address,
|
|
4017
4047
|
op: Number(OPCODES.UlnManager_OP_ADD_ULN_WORKER),
|
|
4018
4048
|
success: true,
|
|
4019
4049
|
},
|
|
4020
4050
|
{
|
|
4021
|
-
from: srcFixture.
|
|
4051
|
+
from: srcFixture.msglibManager.address,
|
|
4022
4052
|
to: srcFixture.msglib.address,
|
|
4023
4053
|
success: true,
|
|
4024
4054
|
op: Number(OPCODES.Uln_OP_UPDATE_WORKER_FEELIB),
|
|
@@ -4026,17 +4056,17 @@ export async function deployConfigAndRegisterUln(
|
|
|
4026
4056
|
// emit event Uln::EVENT::ULN_WORKER_REGISTERED
|
|
4027
4057
|
{
|
|
4028
4058
|
from: srcFixture.msglib.address,
|
|
4029
|
-
to: srcFixture.
|
|
4059
|
+
to: srcFixture.msglibManager.address,
|
|
4030
4060
|
op: Number(OPCODES.BaseInterface_OP_EVENT),
|
|
4031
4061
|
success: false, // events are supposed to fail
|
|
4032
4062
|
},
|
|
4033
4063
|
])
|
|
4034
|
-
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.
|
|
4064
|
+
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.msglibManager)
|
|
4035
4065
|
|
|
4036
4066
|
// ===================================addUlnWorker - priceFeedCache =======================================
|
|
4037
4067
|
|
|
4038
4068
|
const priceFeedCacheWorkerCallMd = await allStorages.getNewMdExecuteParams({
|
|
4039
|
-
target: addressToBigInt(srcFixture.
|
|
4069
|
+
target: addressToBigInt(srcFixture.msglibManager.address),
|
|
4040
4070
|
callData: await allStorages.getNewUlnWorkerFeelibInfo({
|
|
4041
4071
|
workerAddress: addressToBigInt(priceFeedCacheProxy.address),
|
|
4042
4072
|
workerFeelibBytecode: emptyObject,
|
|
@@ -4078,12 +4108,12 @@ export async function deployConfigAndRegisterUln(
|
|
|
4078
4108
|
},
|
|
4079
4109
|
{
|
|
4080
4110
|
from: priceFeedCacheProxy.address,
|
|
4081
|
-
to: srcFixture.
|
|
4111
|
+
to: srcFixture.msglibManager.address,
|
|
4082
4112
|
op: Number(OPCODES.UlnManager_OP_ADD_ULN_WORKER),
|
|
4083
4113
|
success: true,
|
|
4084
4114
|
},
|
|
4085
4115
|
{
|
|
4086
|
-
from: srcFixture.
|
|
4116
|
+
from: srcFixture.msglibManager.address,
|
|
4087
4117
|
to: srcFixture.msglib.address,
|
|
4088
4118
|
success: true,
|
|
4089
4119
|
op: Number(OPCODES.Uln_OP_UPDATE_WORKER_FEELIB),
|
|
@@ -4091,24 +4121,13 @@ export async function deployConfigAndRegisterUln(
|
|
|
4091
4121
|
// emit event Uln::EVENT::ULN_WORKER_REGISTERED
|
|
4092
4122
|
{
|
|
4093
4123
|
from: srcFixture.msglib.address,
|
|
4094
|
-
to: srcFixture.
|
|
4124
|
+
to: srcFixture.msglibManager.address,
|
|
4095
4125
|
op: Number(OPCODES.BaseInterface_OP_EVENT),
|
|
4096
4126
|
success: false, // events are supposed to fail
|
|
4097
4127
|
},
|
|
4098
4128
|
]
|
|
4099
4129
|
)
|
|
4100
|
-
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.
|
|
4101
|
-
|
|
4102
|
-
// ===================================open and deploy uln connection =====================================
|
|
4103
|
-
|
|
4104
|
-
const [msglibConnection, ulnConnectionMsgResults] = await openAndDeployUlnConnection(
|
|
4105
|
-
blockchain,
|
|
4106
|
-
allStorages,
|
|
4107
|
-
srcFixture,
|
|
4108
|
-
dstFixture
|
|
4109
|
-
)
|
|
4110
|
-
srcFixture.msglibConnectionDefault = msglibConnection
|
|
4111
|
-
await eventHandler.addCurrentEventsToAllEvents(ulnConnectionMsgResults, srcFixture.oApp)
|
|
4130
|
+
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.msglibManager)
|
|
4112
4131
|
|
|
4113
4132
|
// ===================================configure default send and receive config =====================================
|
|
4114
4133
|
|
|
@@ -4143,17 +4162,17 @@ export async function deployConfigAndRegisterUln(
|
|
|
4143
4162
|
toNano('0.1')
|
|
4144
4163
|
).body!,
|
|
4145
4164
|
signers: multiSigners,
|
|
4146
|
-
targetContract: srcFixture.
|
|
4165
|
+
targetContract: srcFixture.msglibManager,
|
|
4147
4166
|
deploy: false,
|
|
4148
4167
|
expectedTransactions: [
|
|
4149
4168
|
{
|
|
4150
4169
|
from: srcFixture.multisig.address,
|
|
4151
|
-
to: srcFixture.
|
|
4170
|
+
to: srcFixture.msglibManager.address,
|
|
4152
4171
|
success: true,
|
|
4153
4172
|
op: Number(OPCODES.UlnManager_OP_SET_DEFAULT_ULN_SEND_CONFIG),
|
|
4154
4173
|
},
|
|
4155
4174
|
{
|
|
4156
|
-
from: srcFixture.
|
|
4175
|
+
from: srcFixture.msglibManager.address,
|
|
4157
4176
|
to: srcFixture.msglib.address,
|
|
4158
4177
|
success: true,
|
|
4159
4178
|
op: Number(OPCODES.Uln_OP_SET_DEFAULT_ULN_SEND_CONFIG),
|
|
@@ -4192,17 +4211,17 @@ export async function deployConfigAndRegisterUln(
|
|
|
4192
4211
|
toNano('0.1')
|
|
4193
4212
|
).body!,
|
|
4194
4213
|
signers: multiSigners,
|
|
4195
|
-
targetContract: srcFixture.
|
|
4214
|
+
targetContract: srcFixture.msglibManager,
|
|
4196
4215
|
deploy: false,
|
|
4197
4216
|
expectedTransactions: [
|
|
4198
4217
|
{
|
|
4199
4218
|
from: srcFixture.multisig.address,
|
|
4200
|
-
to: srcFixture.
|
|
4219
|
+
to: srcFixture.msglibManager.address,
|
|
4201
4220
|
success: true,
|
|
4202
4221
|
op: Number(OPCODES.UlnManager_OP_SET_DEFAULT_ULN_RECEIVE_CONFIG),
|
|
4203
4222
|
},
|
|
4204
4223
|
{
|
|
4205
|
-
from: srcFixture.
|
|
4224
|
+
from: srcFixture.msglibManager.address,
|
|
4206
4225
|
to: srcFixture.msglib.address,
|
|
4207
4226
|
success: true,
|
|
4208
4227
|
op: Number(OPCODES.Uln_OP_SET_DEFAULT_ULN_RECEIVE_CONFIG),
|
|
@@ -4210,7 +4229,7 @@ export async function deployConfigAndRegisterUln(
|
|
|
4210
4229
|
],
|
|
4211
4230
|
})
|
|
4212
4231
|
|
|
4213
|
-
return
|
|
4232
|
+
return msglibManager
|
|
4214
4233
|
}
|
|
4215
4234
|
|
|
4216
4235
|
export async function wireFixtureWithUln(
|
|
@@ -4220,14 +4239,42 @@ export async function wireFixtureWithUln(
|
|
|
4220
4239
|
srcFixture: OAppFixtureULN,
|
|
4221
4240
|
dstFixture: OAppFixtureULN,
|
|
4222
4241
|
eventHandler: LzEventHandler,
|
|
4223
|
-
|
|
4242
|
+
dvnFixtureConfigCustom?: DvnFixtureConfig
|
|
4224
4243
|
): Promise<void> {
|
|
4225
4244
|
// ===================================wire channels=====================================
|
|
4226
4245
|
|
|
4227
4246
|
await wireChannels(blockchain, allStorages, srcFixture, dstFixture, eventHandler)
|
|
4228
4247
|
|
|
4229
|
-
// ===================================
|
|
4230
|
-
|
|
4248
|
+
// ===================================default config =====================================
|
|
4249
|
+
|
|
4250
|
+
const defaultDvnFixtureConfig: DvnFixtureConfig = {
|
|
4251
|
+
src: {
|
|
4252
|
+
send: {
|
|
4253
|
+
numReqDvns: 1n,
|
|
4254
|
+
numOptDvns: 0n,
|
|
4255
|
+
},
|
|
4256
|
+
receive: {
|
|
4257
|
+
numReqDvns: 1n,
|
|
4258
|
+
numOptDvns: 0n,
|
|
4259
|
+
optDvnQuorum: 0n,
|
|
4260
|
+
},
|
|
4261
|
+
},
|
|
4262
|
+
dst: {
|
|
4263
|
+
send: {
|
|
4264
|
+
numReqDvns: 1n,
|
|
4265
|
+
numOptDvns: 0n,
|
|
4266
|
+
},
|
|
4267
|
+
receive: {
|
|
4268
|
+
numReqDvns: 1n,
|
|
4269
|
+
numOptDvns: 0n,
|
|
4270
|
+
optDvnQuorum: 0n,
|
|
4271
|
+
},
|
|
4272
|
+
},
|
|
4273
|
+
}
|
|
4274
|
+
|
|
4275
|
+
// ===================================deploy, configue, and register uln =====================================
|
|
4276
|
+
|
|
4277
|
+
srcFixture.msglibManager = await deployConfigAndRegisterUln(
|
|
4231
4278
|
blockchain,
|
|
4232
4279
|
multiSigners,
|
|
4233
4280
|
allStorages,
|
|
@@ -4235,17 +4282,30 @@ export async function wireFixtureWithUln(
|
|
|
4235
4282
|
dstFixture,
|
|
4236
4283
|
ULN_MANAGER_DEFAULT_VERSION,
|
|
4237
4284
|
eventHandler,
|
|
4238
|
-
|
|
4285
|
+
defaultDvnFixtureConfig
|
|
4239
4286
|
)
|
|
4240
4287
|
|
|
4288
|
+
// ===================================add msg lib to controller =====================================
|
|
4289
|
+
|
|
4241
4290
|
let internalMsgResults = await addMsgLibToController(
|
|
4242
4291
|
blockchain,
|
|
4243
4292
|
multiSigners,
|
|
4244
4293
|
srcFixture,
|
|
4245
4294
|
dstFixture,
|
|
4246
|
-
srcFixture.
|
|
4295
|
+
srcFixture.msglibManager
|
|
4247
4296
|
)
|
|
4248
4297
|
await eventHandler.addCurrentEventsToAllEvents(internalMsgResults, srcFixture.controller)
|
|
4298
|
+
|
|
4299
|
+
// ===================================open and deploy uln connection =====================================
|
|
4300
|
+
|
|
4301
|
+
const [msglibConnection, ulnConnectionMsgResults] = await openAndDeployUlnConnection(
|
|
4302
|
+
blockchain,
|
|
4303
|
+
allStorages,
|
|
4304
|
+
srcFixture,
|
|
4305
|
+
dstFixture
|
|
4306
|
+
)
|
|
4307
|
+
srcFixture.msglibConnection = msglibConnection
|
|
4308
|
+
await eventHandler.addCurrentEventsToAllEvents(ulnConnectionMsgResults, srcFixture.oApp)
|
|
4249
4309
|
|
|
4250
4310
|
// ===================================set default endpoint config=====================================
|
|
4251
4311
|
|
|
@@ -4253,8 +4313,8 @@ export async function wireFixtureWithUln(
|
|
|
4253
4313
|
blockchain,
|
|
4254
4314
|
allStorages,
|
|
4255
4315
|
multiSigners,
|
|
4256
|
-
srcFixture.
|
|
4257
|
-
srcFixture.
|
|
4316
|
+
srcFixture.msglibManager,
|
|
4317
|
+
srcFixture.msglibManager,
|
|
4258
4318
|
srcFixture,
|
|
4259
4319
|
dstFixture
|
|
4260
4320
|
)
|
|
@@ -4263,6 +4323,134 @@ export async function wireFixtureWithUln(
|
|
|
4263
4323
|
|
|
4264
4324
|
// expect no failures
|
|
4265
4325
|
expect(eventHandler.allFailures.txList).toHaveLength(0)
|
|
4326
|
+
|
|
4327
|
+
|
|
4328
|
+
if (dvnFixtureConfigCustom) {
|
|
4329
|
+
// ===================================open and deploy dvn =====================================
|
|
4330
|
+
|
|
4331
|
+
;[srcFixture.sendDvnFixturesCustom, srcFixture.receiveDvnFixturesCustom] = await deployConfigAndRegisterDvn(
|
|
4332
|
+
blockchain,
|
|
4333
|
+
allStorages,
|
|
4334
|
+
srcFixture,
|
|
4335
|
+
eventHandler,
|
|
4336
|
+
dvnFixtureConfigCustom
|
|
4337
|
+
)
|
|
4338
|
+
|
|
4339
|
+
// ===================================addUlnWorker - dvn =======================================
|
|
4340
|
+
|
|
4341
|
+
await addDvnWorkers(
|
|
4342
|
+
allStorages,
|
|
4343
|
+
srcFixture,
|
|
4344
|
+
srcFixture.sendDvnFixturesCustom,
|
|
4345
|
+
srcFixture.receiveDvnFixturesCustom,
|
|
4346
|
+
dstFixture.eid,
|
|
4347
|
+
srcFixture.priceFeedCacheFixture.proxy.address,
|
|
4348
|
+
eventHandler
|
|
4349
|
+
)
|
|
4350
|
+
|
|
4351
|
+
const [reqSendDvns, optSendDvns] = getDvnArrayFromDvnFixtures(
|
|
4352
|
+
srcFixture.sendDvnFixturesCustom,
|
|
4353
|
+
dvnFixtureConfigCustom.src.send
|
|
4354
|
+
)
|
|
4355
|
+
|
|
4356
|
+
const ulnSendConfig = await allStorages.getNewUlnSendConfig({
|
|
4357
|
+
workerQuoteGasLimit: BigInt(100000000),
|
|
4358
|
+
maxMessageBytes: BigInt(1000000000),
|
|
4359
|
+
executorNull: BigInt(0),
|
|
4360
|
+
executor: addressToBigInt(srcFixture.executorFixtures.proxy.address),
|
|
4361
|
+
requiredDVNsNull: BigInt(0),
|
|
4362
|
+
requiredDVNs: serializeDvns(reqSendDvns),
|
|
4363
|
+
optionalDVNsNull: BigInt(0),
|
|
4364
|
+
optionalDVNs: serializeDvns(optSendDvns),
|
|
4365
|
+
confirmationsNull: BigInt(0),
|
|
4366
|
+
confirmations: BigInt(1),
|
|
4367
|
+
})
|
|
4368
|
+
|
|
4369
|
+
await sendInternalMessageAndExpect({
|
|
4370
|
+
value: protocolSetupGas['MsgLib.INITIALIZE'],
|
|
4371
|
+
sender: srcFixture.owner.getSender(),
|
|
4372
|
+
contract: srcFixture.oApp,
|
|
4373
|
+
opCode: OPCODES.OP_SetLzConfig,
|
|
4374
|
+
md: await allStorages.getNewLzConfig({
|
|
4375
|
+
path: srcFixture.path,
|
|
4376
|
+
forwardingAddress: addressToBigInt(srcFixture.msglibManager.address),
|
|
4377
|
+
opCode: OPCODES.UlnManager_OP_SET_OAPP_ULN_SEND_CONFIG,
|
|
4378
|
+
config: ulnSendConfig,
|
|
4379
|
+
}),
|
|
4380
|
+
balanceRefill: toNano('1'),
|
|
4381
|
+
expectedTransactions: [
|
|
4382
|
+
{
|
|
4383
|
+
from: srcFixture.owner.address,
|
|
4384
|
+
to: srcFixture.oApp.address,
|
|
4385
|
+
op: Number(OPCODES.OP_SetLzConfig),
|
|
4386
|
+
success: true,
|
|
4387
|
+
},
|
|
4388
|
+
{
|
|
4389
|
+
from: srcFixture.oApp.address,
|
|
4390
|
+
to: srcFixture.msglibManager.address,
|
|
4391
|
+
op: Number(OPCODES.UlnManager_OP_SET_OAPP_ULN_SEND_CONFIG),
|
|
4392
|
+
success: true,
|
|
4393
|
+
},
|
|
4394
|
+
{
|
|
4395
|
+
from: srcFixture.msglibManager.address,
|
|
4396
|
+
to: srcFixture.msglibConnection.address,
|
|
4397
|
+
op: Number(OPCODES.UlnConnection_OP_SET_OAPP_ULN_SEND_CONFIG),
|
|
4398
|
+
success: true,
|
|
4399
|
+
},
|
|
4400
|
+
],
|
|
4401
|
+
})
|
|
4402
|
+
|
|
4403
|
+
const [reqReceiveDvns, optReceiveDvns, optReceiveQuorum] = getDvnArrayFromDvnFixtures(
|
|
4404
|
+
srcFixture.receiveDvnFixturesCustom,
|
|
4405
|
+
dvnFixtureConfigCustom.src.receive
|
|
4406
|
+
)
|
|
4407
|
+
|
|
4408
|
+
const ulnReceiveConfig = await allStorages.getNewUlnReceiveConfig({
|
|
4409
|
+
minCommitPacketGasNull: BigInt(0),
|
|
4410
|
+
minCommitPacketGas: BigInt(1),
|
|
4411
|
+
confirmationsNull: BigInt(0),
|
|
4412
|
+
confirmations: BigInt(1),
|
|
4413
|
+
requiredDVNsNull: BigInt(0),
|
|
4414
|
+
requiredDVNs: serializeDvns(reqReceiveDvns),
|
|
4415
|
+
optionalDVNsNull: BigInt(0),
|
|
4416
|
+
optionalDVNs: serializeDvns(optReceiveDvns),
|
|
4417
|
+
optionalDVNThreshold: BigInt(optReceiveQuorum),
|
|
4418
|
+
})
|
|
4419
|
+
|
|
4420
|
+
await sendInternalMessageAndExpect({
|
|
4421
|
+
value: protocolSetupGas['MsgLib.INITIALIZE'],
|
|
4422
|
+
sender: srcFixture.owner.getSender(),
|
|
4423
|
+
contract: srcFixture.oApp,
|
|
4424
|
+
opCode: OPCODES.OP_SetLzConfig,
|
|
4425
|
+
md: await allStorages.getNewLzConfig({
|
|
4426
|
+
path: srcFixture.path,
|
|
4427
|
+
forwardingAddress: addressToBigInt(srcFixture.msglibManager.address),
|
|
4428
|
+
opCode: OPCODES.UlnManager_OP_SET_OAPP_ULN_RECEIVE_CONFIG,
|
|
4429
|
+
config: ulnReceiveConfig,
|
|
4430
|
+
}),
|
|
4431
|
+
balanceRefill: toNano('1'),
|
|
4432
|
+
expectedTransactions: [
|
|
4433
|
+
{
|
|
4434
|
+
from: srcFixture.owner.address,
|
|
4435
|
+
to: srcFixture.oApp.address,
|
|
4436
|
+
op: Number(OPCODES.OP_SetLzConfig),
|
|
4437
|
+
success: true,
|
|
4438
|
+
},
|
|
4439
|
+
{
|
|
4440
|
+
from: srcFixture.oApp.address,
|
|
4441
|
+
to: srcFixture.msglibManager.address,
|
|
4442
|
+
op: Number(OPCODES.UlnManager_OP_SET_OAPP_ULN_RECEIVE_CONFIG),
|
|
4443
|
+
success: true,
|
|
4444
|
+
},
|
|
4445
|
+
{
|
|
4446
|
+
from: srcFixture.msglibManager.address,
|
|
4447
|
+
to: srcFixture.msglibConnection.address,
|
|
4448
|
+
op: Number(OPCODES.UlnConnection_OP_SET_OAPP_ULN_RECEIVE_CONFIG),
|
|
4449
|
+
success: true,
|
|
4450
|
+
},
|
|
4451
|
+
],
|
|
4452
|
+
})
|
|
4453
|
+
}
|
|
4266
4454
|
}
|
|
4267
4455
|
|
|
4268
4456
|
export async function wireFixturesTogetherWithUln(
|
|
@@ -4272,30 +4460,7 @@ export async function wireFixturesTogetherWithUln(
|
|
|
4272
4460
|
srcFixture: OAppFixtureULN,
|
|
4273
4461
|
dstFixture: OAppFixtureULN,
|
|
4274
4462
|
eventHandler: LzEventHandler,
|
|
4275
|
-
|
|
4276
|
-
src: {
|
|
4277
|
-
send: {
|
|
4278
|
-
numReqDvns: 1n,
|
|
4279
|
-
numOptDvns: 0n,
|
|
4280
|
-
},
|
|
4281
|
-
receive: {
|
|
4282
|
-
numReqDvns: 1n,
|
|
4283
|
-
numOptDvns: 0n,
|
|
4284
|
-
optDvnQuorum: 0n,
|
|
4285
|
-
},
|
|
4286
|
-
},
|
|
4287
|
-
dst: {
|
|
4288
|
-
send: {
|
|
4289
|
-
numReqDvns: 1n,
|
|
4290
|
-
numOptDvns: 0n,
|
|
4291
|
-
},
|
|
4292
|
-
receive: {
|
|
4293
|
-
numReqDvns: 1n,
|
|
4294
|
-
numOptDvns: 0n,
|
|
4295
|
-
optDvnQuorum: 0n,
|
|
4296
|
-
},
|
|
4297
|
-
},
|
|
4298
|
-
}
|
|
4463
|
+
dvnFixtureConfigCustom?: DvnFixtureConfig
|
|
4299
4464
|
): Promise<void> {
|
|
4300
4465
|
await wireFixtureWithUln(
|
|
4301
4466
|
blockchain,
|
|
@@ -4304,7 +4469,7 @@ export async function wireFixturesTogetherWithUln(
|
|
|
4304
4469
|
srcFixture,
|
|
4305
4470
|
dstFixture,
|
|
4306
4471
|
eventHandler,
|
|
4307
|
-
|
|
4472
|
+
dvnFixtureConfigCustom
|
|
4308
4473
|
)
|
|
4309
4474
|
await wireFixtureWithUln(
|
|
4310
4475
|
blockchain,
|
|
@@ -4313,7 +4478,7 @@ export async function wireFixturesTogetherWithUln(
|
|
|
4313
4478
|
dstFixture,
|
|
4314
4479
|
srcFixture,
|
|
4315
4480
|
eventHandler,
|
|
4316
|
-
|
|
4481
|
+
dvnFixtureConfigCustom
|
|
4317
4482
|
)
|
|
4318
4483
|
}
|
|
4319
4484
|
|
|
@@ -4629,7 +4794,10 @@ export async function callVerifyOnDvn({
|
|
|
4629
4794
|
export async function ulnVerifyAndExpect(
|
|
4630
4795
|
allStorages: SandboxContract<TonContractWrapper>,
|
|
4631
4796
|
mdPacketSent: MdPacketSent,
|
|
4632
|
-
{ msglib: uln
|
|
4797
|
+
{ msglib: uln }: OAppFixtureULN,
|
|
4798
|
+
receiveDvnFixtures: DvnFixture[],
|
|
4799
|
+
msglibManager: SandboxContract<TonContractWrapper>,
|
|
4800
|
+
msglibConnection: SandboxContract<TonContractWrapper>,
|
|
4633
4801
|
eventHandler: LzEventHandler,
|
|
4634
4802
|
confirmations = 1n
|
|
4635
4803
|
): Promise<Cell> {
|
|
@@ -4647,7 +4815,7 @@ export async function ulnVerifyAndExpect(
|
|
|
4647
4815
|
hash: BigInt('0x' + lzPacket.hash().toString('hex')),
|
|
4648
4816
|
confirmations,
|
|
4649
4817
|
}),
|
|
4650
|
-
address: addressToBigInt(
|
|
4818
|
+
address: addressToBigInt(msglibConnection.address),
|
|
4651
4819
|
}),
|
|
4652
4820
|
expiration: oneDayFromNow,
|
|
4653
4821
|
opcode: OPCODES.Uln_OP_ULN_VERIFY,
|
|
@@ -4684,19 +4852,19 @@ export async function ulnVerifyAndExpect(
|
|
|
4684
4852
|
},
|
|
4685
4853
|
{
|
|
4686
4854
|
from: uln.address,
|
|
4687
|
-
to:
|
|
4855
|
+
to: msglibConnection.address,
|
|
4688
4856
|
op: Number(OPCODES.UlnConnection_OP_ULN_CONNECTION_VERIFY),
|
|
4689
4857
|
success: true,
|
|
4690
4858
|
},
|
|
4691
4859
|
// emit UlnConnection::EVENT::PACKET_VERIFIED
|
|
4692
4860
|
{
|
|
4693
|
-
from:
|
|
4694
|
-
to:
|
|
4861
|
+
from: msglibConnection.address,
|
|
4862
|
+
to: msglibManager.address,
|
|
4695
4863
|
op: Number(OPCODES.BaseInterface_OP_EVENT),
|
|
4696
4864
|
success: false, // events are supposed to fail
|
|
4697
4865
|
},
|
|
4698
4866
|
{
|
|
4699
|
-
from:
|
|
4867
|
+
from: msglibConnection.address,
|
|
4700
4868
|
to: proxy.address,
|
|
4701
4869
|
op: Number(OPCODES.UltraLightNode_OP_ULN_CONNECTION_VERIFY_CALLBACK),
|
|
4702
4870
|
success: true,
|