@aztec/pxe 0.66.0 → 0.67.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/dest/bin/index.js +5 -6
- package/dest/config/index.d.ts +0 -9
- package/dest/config/index.d.ts.map +1 -1
- package/dest/config/index.js +1 -17
- package/dest/config/package_info.d.ts +5 -0
- package/dest/config/package_info.d.ts.map +1 -0
- package/dest/config/package_info.js +4 -0
- package/dest/contract_data_oracle/index.js +2 -2
- package/dest/database/incoming_note_dao.d.ts +1 -1
- package/dest/database/incoming_note_dao.d.ts.map +1 -1
- package/dest/database/incoming_note_dao.js +2 -2
- package/dest/database/kv_pxe_database.d.ts +10 -13
- package/dest/database/kv_pxe_database.d.ts.map +1 -1
- package/dest/database/kv_pxe_database.js +153 -230
- package/dest/database/outgoing_note_dao.js +2 -2
- package/dest/database/pxe_database.d.ts +7 -25
- package/dest/database/pxe_database.d.ts.map +1 -1
- package/dest/database/pxe_database_test_suite.d.ts.map +1 -1
- package/dest/database/pxe_database_test_suite.js +18 -59
- package/dest/index.d.ts +2 -0
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +3 -1
- package/dest/kernel_oracle/index.d.ts.map +1 -1
- package/dest/kernel_oracle/index.js +3 -3
- package/dest/kernel_prover/index.d.ts +1 -0
- package/dest/kernel_prover/index.d.ts.map +1 -1
- package/dest/kernel_prover/index.js +2 -1
- package/dest/kernel_prover/kernel_prover.d.ts +1 -0
- package/dest/kernel_prover/kernel_prover.d.ts.map +1 -1
- package/dest/kernel_prover/kernel_prover.js +38 -4
- package/dest/kernel_prover/test/test_circuit_prover.d.ts.map +1 -1
- package/dest/kernel_prover/test/test_circuit_prover.js +4 -4
- package/dest/note_decryption_utils/add_public_values_to_payload.js +2 -2
- package/dest/note_decryption_utils/brute_force_note_info.d.ts +3 -3
- package/dest/note_decryption_utils/brute_force_note_info.d.ts.map +1 -1
- package/dest/note_decryption_utils/brute_force_note_info.js +8 -8
- package/dest/note_decryption_utils/produce_note_daos.d.ts +3 -6
- package/dest/note_decryption_utils/produce_note_daos.d.ts.map +1 -1
- package/dest/note_decryption_utils/produce_note_daos.js +5 -19
- package/dest/note_decryption_utils/produce_note_daos_for_key.d.ts +1 -1
- package/dest/note_decryption_utils/produce_note_daos_for_key.d.ts.map +1 -1
- package/dest/pxe_service/error_enriching.d.ts +3 -3
- package/dest/pxe_service/error_enriching.d.ts.map +1 -1
- package/dest/pxe_service/error_enriching.js +10 -10
- package/dest/pxe_service/index.d.ts +0 -1
- package/dest/pxe_service/index.d.ts.map +1 -1
- package/dest/pxe_service/index.js +1 -2
- package/dest/pxe_service/pxe_service.d.ts +2 -16
- package/dest/pxe_service/pxe_service.d.ts.map +1 -1
- package/dest/pxe_service/pxe_service.js +70 -95
- package/dest/pxe_service/test/pxe_test_suite.d.ts.map +1 -1
- package/dest/pxe_service/test/pxe_test_suite.js +1 -3
- package/dest/simulator/index.d.ts +1 -1
- package/dest/simulator/index.d.ts.map +1 -1
- package/dest/simulator/index.js +2 -2
- package/dest/simulator_oracle/index.d.ts +7 -6
- package/dest/simulator_oracle/index.d.ts.map +1 -1
- package/dest/simulator_oracle/index.js +59 -42
- package/dest/synchronizer/synchronizer.d.ts +10 -40
- package/dest/synchronizer/synchronizer.d.ts.map +1 -1
- package/dest/synchronizer/synchronizer.js +35 -69
- package/dest/{pxe_service → utils}/create_pxe_service.d.ts +1 -1
- package/dest/utils/create_pxe_service.d.ts.map +1 -0
- package/dest/utils/create_pxe_service.js +49 -0
- package/package.json +31 -19
- package/src/bin/index.ts +4 -5
- package/src/config/index.ts +0 -21
- package/src/config/package_info.ts +3 -0
- package/src/contract_data_oracle/index.ts +1 -1
- package/src/database/incoming_note_dao.ts +2 -2
- package/src/database/kv_pxe_database.ts +212 -309
- package/src/database/outgoing_note_dao.ts +1 -1
- package/src/database/pxe_database.ts +7 -28
- package/src/database/pxe_database_test_suite.ts +20 -75
- package/src/index.ts +2 -0
- package/src/kernel_oracle/index.ts +2 -2
- package/src/kernel_prover/index.ts +2 -0
- package/src/kernel_prover/kernel_prover.ts +61 -2
- package/src/kernel_prover/test/test_circuit_prover.ts +5 -3
- package/src/note_decryption_utils/add_public_values_to_payload.ts +1 -1
- package/src/note_decryption_utils/brute_force_note_info.ts +9 -9
- package/src/note_decryption_utils/produce_note_daos.ts +5 -48
- package/src/note_decryption_utils/produce_note_daos_for_key.ts +1 -1
- package/src/pxe_service/error_enriching.ts +14 -12
- package/src/pxe_service/index.ts +0 -1
- package/src/pxe_service/pxe_service.ts +123 -169
- package/src/pxe_service/test/pxe_test_suite.ts +0 -3
- package/src/simulator/index.ts +1 -1
- package/src/simulator_oracle/index.ts +63 -70
- package/src/synchronizer/synchronizer.ts +37 -77
- package/src/{pxe_service → utils}/create_pxe_service.ts +10 -10
- package/dest/pxe_service/create_pxe_service.d.ts.map +0 -1
- package/dest/pxe_service/create_pxe_service.js +0 -49
|
@@ -3,12 +3,33 @@ import { CLIENT_IVC_VERIFICATION_KEY_LENGTH_IN_FIELDS, Fr, PROTOCOL_CONTRACT_TRE
|
|
|
3
3
|
import { hashVK } from '@aztec/circuits.js/hash';
|
|
4
4
|
import { makeTuple } from '@aztec/foundation/array';
|
|
5
5
|
import { vkAsFieldsMegaHonk } from '@aztec/foundation/crypto';
|
|
6
|
-
import {
|
|
6
|
+
import { createLogger } from '@aztec/foundation/log';
|
|
7
7
|
import { assertLength } from '@aztec/foundation/serialize';
|
|
8
8
|
import { pushTestData } from '@aztec/foundation/testing';
|
|
9
9
|
import { getVKTreeRoot } from '@aztec/noir-protocol-circuits-types';
|
|
10
10
|
import { getProtocolContractSiblingPath, isProtocolContract, protocolContractTreeRoot, } from '@aztec/protocol-contracts';
|
|
11
|
+
import { strict as assert } from 'assert';
|
|
11
12
|
import { PrivateKernelResetPrivateInputsBuilder } from './hints/build_private_kernel_reset_private_inputs.js';
|
|
13
|
+
// TODO(#10592): Temporary workaround to check that the private logs are correctly split into non-revertible set and revertible set.
|
|
14
|
+
// This should be done in TailToPublicOutputValidator in private kernel tail.
|
|
15
|
+
function checkPrivateLogs(privateLogs, nonRevertiblePrivateLogs, revertiblePrivateLogs, splitCounter) {
|
|
16
|
+
let numNonRevertible = 0;
|
|
17
|
+
let numRevertible = 0;
|
|
18
|
+
privateLogs
|
|
19
|
+
.filter(privateLog => privateLog.inner.counter !== 0)
|
|
20
|
+
.forEach(privateLog => {
|
|
21
|
+
if (privateLog.inner.counter < splitCounter) {
|
|
22
|
+
assert(privateLog.inner.log.toBuffer().equals(nonRevertiblePrivateLogs[numNonRevertible].toBuffer()), `mismatch non-revertible private logs at index ${numNonRevertible}`);
|
|
23
|
+
numNonRevertible++;
|
|
24
|
+
}
|
|
25
|
+
else {
|
|
26
|
+
assert(privateLog.inner.log.toBuffer().equals(revertiblePrivateLogs[numRevertible].toBuffer()), `mismatch revertible private logs at index ${numRevertible}`);
|
|
27
|
+
numRevertible++;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
assert(nonRevertiblePrivateLogs.slice(numNonRevertible).every(l => l.isEmpty()), 'Unexpected non-empty private log in non-revertible set.');
|
|
31
|
+
assert(revertiblePrivateLogs.slice(numRevertible).every(l => l.isEmpty()), 'Unexpected non-empty private log in revertible set.');
|
|
32
|
+
}
|
|
12
33
|
const NULL_PROVE_OUTPUT = {
|
|
13
34
|
publicInputs: PrivateKernelCircuitPublicInputs.empty(),
|
|
14
35
|
verificationKey: VerificationKeyAsFields.makeEmpty(CLIENT_IVC_VERIFICATION_KEY_LENGTH_IN_FIELDS),
|
|
@@ -25,7 +46,7 @@ export class KernelProver {
|
|
|
25
46
|
constructor(oracle, proofCreator) {
|
|
26
47
|
this.oracle = oracle;
|
|
27
48
|
this.proofCreator = proofCreator;
|
|
28
|
-
this.log =
|
|
49
|
+
this.log = createLogger('pxe:kernel-prover');
|
|
29
50
|
}
|
|
30
51
|
/**
|
|
31
52
|
* Generate a proof for a given transaction request and execution result.
|
|
@@ -41,6 +62,7 @@ export class KernelProver {
|
|
|
41
62
|
* TODO(#7368) this should be refactored to not recreate the ACIR bytecode now that it operates on a program stack
|
|
42
63
|
*/
|
|
43
64
|
async prove(txRequest, executionResult, profile = false, dryRun = false) {
|
|
65
|
+
const isPrivateOnlyTx = this.isPrivateOnly(executionResult);
|
|
44
66
|
const executionStack = [executionResult];
|
|
45
67
|
let firstIteration = true;
|
|
46
68
|
let output = NULL_PROVE_OUTPUT;
|
|
@@ -85,7 +107,7 @@ export class KernelProver {
|
|
|
85
107
|
}
|
|
86
108
|
const privateCallData = await this.createPrivateCallData(currentExecution);
|
|
87
109
|
if (firstIteration) {
|
|
88
|
-
const proofInput = new PrivateKernelInitCircuitPrivateInputs(txRequest, getVKTreeRoot(), protocolContractTreeRoot, privateCallData);
|
|
110
|
+
const proofInput = new PrivateKernelInitCircuitPrivateInputs(txRequest, getVKTreeRoot(), protocolContractTreeRoot, privateCallData, isPrivateOnlyTx);
|
|
89
111
|
pushTestData('private-kernel-inputs-init', proofInput);
|
|
90
112
|
output = await this.proofCreator.simulateProofInit(proofInput);
|
|
91
113
|
acirs.push(output.bytecode);
|
|
@@ -127,6 +149,12 @@ export class KernelProver {
|
|
|
127
149
|
const privateInputs = new PrivateKernelTailCircuitPrivateInputs(previousKernelData);
|
|
128
150
|
pushTestData('private-kernel-inputs-ordering', privateInputs);
|
|
129
151
|
const tailOutput = await this.proofCreator.simulateProofTail(privateInputs);
|
|
152
|
+
if (tailOutput.publicInputs.forPublic) {
|
|
153
|
+
const privateLogs = privateInputs.previousKernel.publicInputs.end.privateLogs;
|
|
154
|
+
const nonRevertiblePrivateLogs = tailOutput.publicInputs.forPublic.nonRevertibleAccumulatedData.privateLogs;
|
|
155
|
+
const revertiblePrivateLogs = tailOutput.publicInputs.forPublic.revertibleAccumulatedData.privateLogs;
|
|
156
|
+
checkPrivateLogs(privateLogs, nonRevertiblePrivateLogs, revertiblePrivateLogs, validationRequestsSplitCounter);
|
|
157
|
+
}
|
|
130
158
|
acirs.push(tailOutput.bytecode);
|
|
131
159
|
witnessStack.push(tailOutput.outputWitness);
|
|
132
160
|
if (profile) {
|
|
@@ -165,5 +193,11 @@ export class KernelProver {
|
|
|
165
193
|
acirHash,
|
|
166
194
|
});
|
|
167
195
|
}
|
|
196
|
+
isPrivateOnly(executionResult) {
|
|
197
|
+
const makesPublicCalls = executionResult.enqueuedPublicFunctionCalls.some(enqueuedCall => !enqueuedCall.isEmpty()) ||
|
|
198
|
+
!executionResult.publicTeardownFunctionCall.isEmpty();
|
|
199
|
+
return (!makesPublicCalls &&
|
|
200
|
+
executionResult.nestedExecutions.every(nestedExecution => this.isPrivateOnly(nestedExecution)));
|
|
201
|
+
}
|
|
168
202
|
}
|
|
169
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2VybmVsX3Byb3Zlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9rZXJuZWxfcHJvdmVyL2tlcm5lbF9wcm92ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUlMLGtDQUFrQyxFQUNsQywyQkFBMkIsRUFDM0Isa0NBQWtDLEVBQ2xDLGlDQUFpQyxFQUNqQyxzQ0FBc0MsR0FDdkMsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQ0wsNENBQTRDLEVBQzVDLEVBQUUsRUFDRiw2QkFBNkIsRUFDN0IsZUFBZSxFQUNmLGdDQUFnQyxFQUNoQyxpQkFBaUIsRUFDakIscUNBQXFDLEVBQ3JDLHNDQUFzQyxFQUN0QyxxQ0FBcUMsRUFHckMsY0FBYyxFQUNkLHVCQUF1QixHQUN4QixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzNELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDcEUsT0FBTyxFQUNMLDhCQUE4QixFQUM5QixrQkFBa0IsRUFDbEIsd0JBQXdCLEdBQ3pCLE1BQU0sMkJBQTJCLENBQUM7QUFJbkMsT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFHOUcsTUFBTSxpQkFBaUIsR0FBa0U7SUFDdkYsWUFBWSxFQUFFLGdDQUFnQyxDQUFDLEtBQUssRUFBRTtJQUN0RCxlQUFlLEVBQUUsdUJB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
|
|
203
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2VybmVsX3Byb3Zlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9rZXJuZWxfcHJvdmVyL2tlcm5lbF9wcm92ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUlMLGtDQUFrQyxFQUNsQywyQkFBMkIsRUFDM0Isa0NBQWtDLEVBQ2xDLGlDQUFpQyxFQUNqQyxzQ0FBc0MsR0FDdkMsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQ0wsNENBQTRDLEVBQzVDLEVBQUUsRUFDRiw2QkFBNkIsRUFDN0IsZUFBZSxFQUNmLGdDQUFnQyxFQUNoQyxpQkFBaUIsRUFDakIscUNBQXFDLEVBQ3JDLHNDQUFzQyxFQUN0QyxxQ0FBcUMsRUFLckMsY0FBYyxFQUNkLHVCQUF1QixHQUN4QixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3BFLE9BQU8sRUFDTCw4QkFBOEIsRUFDOUIsa0JBQWtCLEVBQ2xCLHdCQUF3QixHQUN6QixNQUFNLDJCQUEyQixDQUFDO0FBR25DLE9BQU8sRUFBRSxNQUFNLElBQUksTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxzQ0FBc0MsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBRzlHLG9JQUFvSTtBQUNwSSw2RUFBNkU7QUFDN0Us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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test_circuit_prover.d.ts","sourceRoot":"","sources":["../../../src/kernel_prover/test/test_circuit_prover.ts"],"names":[],"mappings":";;AAAA,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,EACxB,KAAK,2BAA2B,EACjC,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAEL,cAAc,EACd,KAAK,gCAAgC,EACrC,KAAK,qCAAqC,EAC1C,KAAK,sCAAsC,EAC3C,KAAK,sCAAsC,EAC3C,KAAK,qCAAqC,EAC1C,KAAK,oCAAoC,EAE1C,MAAM,oBAAoB,CAAC;AAe5B,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;GAEG;AACH,qBAAa,uBAAwB,YAAW,mBAAmB;IACrD,OAAO,CAAC,GAAG;gBAAH,GAAG,
|
|
1
|
+
{"version":3,"file":"test_circuit_prover.d.ts","sourceRoot":"","sources":["../../../src/kernel_prover/test/test_circuit_prover.ts"],"names":[],"mappings":";;AAAA,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,EACxB,KAAK,2BAA2B,EACjC,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAEL,cAAc,EACd,KAAK,gCAAgC,EACrC,KAAK,qCAAqC,EAC1C,KAAK,sCAAsC,EAC3C,KAAK,sCAAsC,EAC3C,KAAK,qCAAqC,EAC1C,KAAK,oCAAoC,EAE1C,MAAM,oBAAoB,CAAC;AAe5B,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;GAEG;AACH,qBAAa,uBAAwB,YAAW,mBAAmB;IACrD,OAAO,CAAC,GAAG;gBAAH,GAAG,yCAAyC;IAEhE,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC;IAI/E,iBAAiB,CAC5B,aAAa,EAAE,qCAAqC,GACnD,OAAO,CAAC,2BAA2B,CAAC,gCAAgC,CAAC,CAAC;IAY5D,kBAAkB,CAC7B,aAAa,EAAE,sCAAsC,GACpD,OAAO,CAAC,2BAA2B,CAAC,gCAAgC,CAAC,CAAC;IAY5D,kBAAkB,CAC7B,aAAa,EAAE,sCAAsC,GACpD,OAAO,CAAC,2BAA2B,CAAC,gCAAgC,CAAC,CAAC;IAkB5D,iBAAiB,CAC5B,aAAa,EAAE,qCAAqC,GACnD,OAAO,CAAC,2BAA2B,CAAC,oCAAoC,CAAC,CAAC;IAkBtE,0BAA0B,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAK3F,gCAAgC,CAC9B,SAAS,EAAE,MAAM,EACjB,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,GACnC,OAAO,CAAC,wBAAwB,CAAC;IAOpC,OAAO,CAAC,6BAA6B;CAWtC"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { CLIENT_IVC_VERIFICATION_KEY_LENGTH_IN_FIELDS, ClientIvcProof, VerificationKeyAsFields, } from '@aztec/circuits.js';
|
|
2
|
-
import {
|
|
2
|
+
import { createLogger } from '@aztec/foundation/log';
|
|
3
3
|
import { elapsed } from '@aztec/foundation/timer';
|
|
4
4
|
import { ProtocolCircuitVks, executeInit, executeInner, executeReset, executeTail, executeTailForPublic, getPrivateKernelResetArtifactName, maxPrivateKernelResetDimensions, } from '@aztec/noir-protocol-circuits-types';
|
|
5
5
|
/**
|
|
6
6
|
* Test Proof Creator executes circuit simulations and provides fake proofs.
|
|
7
7
|
*/
|
|
8
8
|
export class TestPrivateKernelProver {
|
|
9
|
-
constructor(log =
|
|
9
|
+
constructor(log = createLogger('pxe:test_proof_creator')) {
|
|
10
10
|
this.log = log;
|
|
11
11
|
}
|
|
12
12
|
createClientIvcProof(_acirs, _witnessStack) {
|
|
@@ -36,7 +36,7 @@ export class TestPrivateKernelProver {
|
|
|
36
36
|
}
|
|
37
37
|
async simulateProofReset(privateInputs) {
|
|
38
38
|
const variantPrivateInputs = privateInputs.trimToSizes();
|
|
39
|
-
const [duration, result] = await elapsed(() => executeReset(variantPrivateInputs, privateInputs.dimensions));
|
|
39
|
+
const [duration, result] = await elapsed(() => executeReset(variantPrivateInputs, privateInputs.dimensions, privateInputs));
|
|
40
40
|
this.log.debug(`Simulated private kernel reset`, {
|
|
41
41
|
eventName: 'circuit-simulation',
|
|
42
42
|
circuitName: 'private-kernel-reset',
|
|
@@ -78,4 +78,4 @@ export class TestPrivateKernelProver {
|
|
|
78
78
|
return kernelProofOutput;
|
|
79
79
|
}
|
|
80
80
|
}
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdF9jaXJjdWl0X3Byb3Zlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9rZXJuZWxfcHJvdmVyL3Rlc3QvdGVzdF9jaXJjdWl0X3Byb3Zlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQ0wsNENBQTRDLEVBQzVDLGNBQWMsRUFPZCx1QkFBdUIsR0FDeEIsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2xELE9BQU8sRUFFTCxrQkFBa0IsRUFDbEIsV0FBVyxFQUNYLFlBQVksRUFDWixZQUFZLEVBQ1osV0FBVyxFQUNYLG9CQUFvQixFQUNwQixpQ0FBaUMsRUFDakMsK0JBQStCLEdBQ2hDLE1BQU0scUNBQXFDLENBQUM7QUFJN0M7O0dBRUc7QUFDSCxNQUFNLE9BQU8sdUJBQXVCO0lBQ2xDLFlBQW9CLE1BQU0sWUFBWSxDQUFDLHdCQUF3QixDQUFDO1FBQTVDLFFBQUcsR0FBSCxHQUFHLENBQXlDO0lBQUcsQ0FBQztJQUVwRSxvQkFBb0IsQ0FBQyxNQUFnQixFQUFFLGFBQTJCO1FBQ2hFLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRU0sS0FBSyxDQUFDLGlCQUFpQixDQUM1QixhQUFvRDtRQUVwRCxNQUFNLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO1FBQzNFLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLCtCQUErQixFQUFFO1lBQzlDLFNBQVMsRUFBRSxvQkFBb0I7WUFDL0IsV0FBVyxFQUFFLHFCQUFxQjtZQUNsQyxRQUFRO1lBQ1IsU0FBUyxF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
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Note } from '@aztec/circuit-types';
|
|
2
|
-
import { ContractNotFoundError } from '@aztec/simulator';
|
|
2
|
+
import { ContractNotFoundError } from '@aztec/simulator/client';
|
|
3
3
|
/**
|
|
4
4
|
* Merges privately and publicly delivered note values.
|
|
5
5
|
* @param db - PXE database used to fetch contract instance and artifact.
|
|
@@ -45,4 +45,4 @@ export async function getOrderedNoteItems(db, { contractAddress, noteTypeId, pri
|
|
|
45
45
|
}
|
|
46
46
|
return new Note(modifiedNoteItems);
|
|
47
47
|
}
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkX3B1YmxpY192YWx1ZXNfdG9fcGF5bG9hZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub3RlX2RlY3J5cHRpb25fdXRpbHMvYWRkX3B1YmxpY192YWx1ZXNfdG9fcGF5bG9hZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXNCLElBQUksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBSWhFOzs7OztHQUtHO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxtQkFBbUIsQ0FDdkMsRUFBZSxFQUNmLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBaUI7SUFFbkYsSUFBSSxnQkFBZ0IsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDbEMsT0FBTyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxNQUFNLFFBQVEsR0FBRyxNQUFNLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMvRCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDZCxNQUFNLElBQUkscUJBQXFCLENBQzdCLCtCQUErQixlQUFlLENBQUMsUUFBUSxFQUFFLDRHQUE0RyxDQUN0SyxDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU0sUUFBUSxHQUFHLE1BQU0sRUFBRSxDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUN4RSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDZCxNQUFNLElBQUksS0FBSyxDQUNiLDhDQUE4QyxRQUFRLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSw0R0FBNEcsQ0FDOUwsQ0FBQztJQUNKLENBQUM7SUFFRCxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUVsRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQyw0Q0FBNEMsVUFBVSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUN4RixDQUFDO0lBRUQsMEVBQTBFO0lBQzFFLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUU3Qyx5RkFBeUY7SUFDekYsTUFBTSxpQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztJQUM1QyxJQUFJLG1CQUFtQixHQUFHLENBQUMsQ0FBQztJQUM1QixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1FBQzNDLE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoQyxJQUFJLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsSUFBSSxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUMvQixnR0FBZ0c7Z0JBQ2hHLGlCQUFpQixDQUFDLElBQUksQ0FBQyxHQUFHLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUM7WUFDekUsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE1BQU0sZUFBZSxHQUFHLFVBQVUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUM7Z0JBQ2xFLE1BQU0sb0JBQW9CLEdBQUcsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLG1CQUFtQixFQUFFLG1CQUFtQixHQUFHLGVBQWUsQ0FBQyxDQUFDO2dCQUNoSCxtQkFBbUIsSUFBSSxlQUFlLENBQUM7Z0JBQ3ZDLDBEQUEwRDtnQkFDMUQsaUJBQWlCLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEdBQUcsb0JBQW9CLENBQUMsQ0FBQztZQUN4RSxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPLElBQUksSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7QUFDckMsQ0FBQyJ9
|
|
@@ -2,7 +2,7 @@ import { type Note, type TxHash } from '@aztec/circuit-types';
|
|
|
2
2
|
import { type AztecAddress } from '@aztec/circuits.js';
|
|
3
3
|
import { type NoteSelector } from '@aztec/foundation/abi';
|
|
4
4
|
import { Fr } from '@aztec/foundation/fields';
|
|
5
|
-
import { type AcirSimulator } from '@aztec/simulator';
|
|
5
|
+
import { type AcirSimulator } from '@aztec/simulator/client';
|
|
6
6
|
export interface NoteInfo {
|
|
7
7
|
noteHashIndex: number;
|
|
8
8
|
nonce: Fr;
|
|
@@ -15,7 +15,7 @@ export interface NoteInfo {
|
|
|
15
15
|
* @dev Finds the index in the note hash tree by computing the note hash with different nonce and see which hash for
|
|
16
16
|
* the current tx matches this value.
|
|
17
17
|
* @remarks This method assists in identifying spent notes in the note hash tree.
|
|
18
|
-
* @param
|
|
18
|
+
* @param uniqueNoteHashes - Note hashes in the tx. One of them should correspond to the note we are looking for
|
|
19
19
|
* @param txHash - Hash of a tx the note was emitted in.
|
|
20
20
|
* @param contractAddress - Address of the contract the note was emitted in.
|
|
21
21
|
* @param storageSlot - Storage slot of the note.
|
|
@@ -27,5 +27,5 @@ export interface NoteInfo {
|
|
|
27
27
|
* @returns Nonce, index, inner hash and siloed nullifier for a given note.
|
|
28
28
|
* @throws If cannot find the nonce for the note.
|
|
29
29
|
*/
|
|
30
|
-
export declare function bruteForceNoteInfo(simulator: AcirSimulator,
|
|
30
|
+
export declare function bruteForceNoteInfo(simulator: AcirSimulator, uniqueNoteHashes: Fr[], txHash: TxHash, contractAddress: AztecAddress, storageSlot: Fr, noteTypeId: NoteSelector, note: Note, excludedIndices: Set<number>, computeNullifier: boolean): Promise<NoteInfo>;
|
|
31
31
|
//# sourceMappingURL=brute_force_note_info.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brute_force_note_info.d.ts","sourceRoot":"","sources":["../../src/note_decryption_utils/brute_force_note_info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,EAAE,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"brute_force_note_info.d.ts","sourceRoot":"","sources":["../../src/note_decryption_utils/brute_force_note_info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,EAAE,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D,MAAM,WAAW,QAAQ;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,EAAE,CAAC;IACV,QAAQ,EAAE,EAAE,CAAC;IACb,eAAe,EAAE,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,aAAa,EACxB,gBAAgB,EAAE,EAAE,EAAE,EACtB,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,YAAY,EAC7B,WAAW,EAAE,EAAE,EACf,UAAU,EAAE,YAAY,EACxB,IAAI,EAAE,IAAI,EACV,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,EAC5B,gBAAgB,EAAE,OAAO,GACxB,OAAO,CAAC,QAAQ,CAAC,CA+CnB"}
|
|
@@ -5,7 +5,7 @@ import { Fr } from '@aztec/foundation/fields';
|
|
|
5
5
|
* @dev Finds the index in the note hash tree by computing the note hash with different nonce and see which hash for
|
|
6
6
|
* the current tx matches this value.
|
|
7
7
|
* @remarks This method assists in identifying spent notes in the note hash tree.
|
|
8
|
-
* @param
|
|
8
|
+
* @param uniqueNoteHashes - Note hashes in the tx. One of them should correspond to the note we are looking for
|
|
9
9
|
* @param txHash - Hash of a tx the note was emitted in.
|
|
10
10
|
* @param contractAddress - Address of the contract the note was emitted in.
|
|
11
11
|
* @param storageSlot - Storage slot of the note.
|
|
@@ -17,24 +17,24 @@ import { Fr } from '@aztec/foundation/fields';
|
|
|
17
17
|
* @returns Nonce, index, inner hash and siloed nullifier for a given note.
|
|
18
18
|
* @throws If cannot find the nonce for the note.
|
|
19
19
|
*/
|
|
20
|
-
export async function bruteForceNoteInfo(simulator,
|
|
20
|
+
export async function bruteForceNoteInfo(simulator, uniqueNoteHashes, txHash, contractAddress, storageSlot, noteTypeId, note, excludedIndices, computeNullifier) {
|
|
21
21
|
let noteHashIndex = 0;
|
|
22
22
|
let nonce;
|
|
23
23
|
let noteHash;
|
|
24
|
-
let
|
|
24
|
+
let uniqueNoteHash;
|
|
25
25
|
let innerNullifier;
|
|
26
26
|
const firstNullifier = Fr.fromBuffer(txHash.toBuffer());
|
|
27
|
-
for (; noteHashIndex <
|
|
27
|
+
for (; noteHashIndex < uniqueNoteHashes.length; ++noteHashIndex) {
|
|
28
28
|
if (excludedIndices.has(noteHashIndex)) {
|
|
29
29
|
continue;
|
|
30
30
|
}
|
|
31
|
-
const
|
|
32
|
-
if (
|
|
31
|
+
const uniqueNoteHashFromTxEffect = uniqueNoteHashes[noteHashIndex];
|
|
32
|
+
if (uniqueNoteHashFromTxEffect.equals(Fr.ZERO)) {
|
|
33
33
|
break;
|
|
34
34
|
}
|
|
35
35
|
const expectedNonce = computeNoteHashNonce(firstNullifier, noteHashIndex);
|
|
36
|
-
({ noteHash,
|
|
37
|
-
if (
|
|
36
|
+
({ noteHash, uniqueNoteHash, innerNullifier } = await simulator.computeNoteHashAndOptionallyANullifier(contractAddress, expectedNonce, storageSlot, noteTypeId, computeNullifier, note));
|
|
37
|
+
if (uniqueNoteHashFromTxEffect.equals(uniqueNoteHash)) {
|
|
38
38
|
nonce = expectedNonce;
|
|
39
39
|
break;
|
|
40
40
|
}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { type L1NotePayload, type PublicKey, type TxHash } from '@aztec/circuit-types';
|
|
2
2
|
import { type Fr } from '@aztec/foundation/fields';
|
|
3
3
|
import { type Logger } from '@aztec/foundation/log';
|
|
4
|
-
import { type AcirSimulator } from '@aztec/simulator';
|
|
4
|
+
import { type AcirSimulator } from '@aztec/simulator/client';
|
|
5
5
|
import { IncomingNoteDao } from '../database/incoming_note_dao.js';
|
|
6
|
-
import { OutgoingNoteDao } from '../database/outgoing_note_dao.js';
|
|
7
6
|
import { type PxeDatabase } from '../database/pxe_database.js';
|
|
8
7
|
/**
|
|
9
8
|
* Decodes a note from a transaction that we know was intended for us.
|
|
@@ -14,7 +13,6 @@ import { type PxeDatabase } from '../database/pxe_database.js';
|
|
|
14
13
|
* @param simulator - An instance of AcirSimulator.
|
|
15
14
|
* @param db - An instance of PxeDatabase.
|
|
16
15
|
* @param addressPoint - The public counterpart to the address secret, which is used in the decryption of incoming note logs.
|
|
17
|
-
* @param ovpkM - The public counterpart to the secret key to be used in the decryption of outgoing note logs.
|
|
18
16
|
* @param payload - An instance of l1NotePayload.
|
|
19
17
|
* @param txHash - The hash of the transaction that created the note. Equivalent to the first nullifier of the transaction.
|
|
20
18
|
* @param noteHashes - New note hashes in this transaction, one of which belongs to this note.
|
|
@@ -22,10 +20,9 @@ import { type PxeDatabase } from '../database/pxe_database.js';
|
|
|
22
20
|
* @param excludedIndices - Indices that have been assigned a note in the same tx. Notes in a tx can have the same l1NotePayload, we need to find a different index for each replicate.
|
|
23
21
|
* @param logger - An instance of Logger.
|
|
24
22
|
* @param unencryptedLogs - Unencrypted logs for the transaction (used to complete partial notes).
|
|
25
|
-
* @returns An object containing the incoming
|
|
23
|
+
* @returns An object containing the incoming notes.
|
|
26
24
|
*/
|
|
27
|
-
export declare function produceNoteDaos(simulator: AcirSimulator, db: PxeDatabase, addressPoint: PublicKey | undefined,
|
|
25
|
+
export declare function produceNoteDaos(simulator: AcirSimulator, db: PxeDatabase, addressPoint: PublicKey | undefined, payload: L1NotePayload, txHash: TxHash, l2BlockNumber: number, l2BlockHash: string, noteHashes: Fr[], dataStartIndexForTx: number, excludedIndices: Set<number>, logger: Logger): Promise<{
|
|
28
26
|
incomingNote: IncomingNoteDao | undefined;
|
|
29
|
-
outgoingNote: OutgoingNoteDao | undefined;
|
|
30
27
|
}>;
|
|
31
28
|
//# sourceMappingURL=produce_note_daos.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"produce_note_daos.d.ts","sourceRoot":"","sources":["../../src/note_decryption_utils/produce_note_daos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACvF,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"produce_note_daos.d.ts","sourceRoot":"","sources":["../../src/note_decryption_utils/produce_note_daos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,SAAS,EAAE,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACvF,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAG/D;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,eAAe,CACnC,SAAS,EAAE,aAAa,EACxB,EAAE,EAAE,WAAW,EACf,YAAY,EAAE,SAAS,GAAG,SAAS,EACnC,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,EAAE,EAAE,EAChB,mBAAmB,EAAE,MAAM,EAC3B,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,YAAY,EAAE,eAAe,GAAG,SAAS,CAAA;CAAE,CAAC,CA2BxD"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { IncomingNoteDao } from '../database/incoming_note_dao.js';
|
|
2
|
-
import { OutgoingNoteDao } from '../database/outgoing_note_dao.js';
|
|
3
2
|
import { produceNoteDaosForKey } from './produce_note_daos_for_key.js';
|
|
4
3
|
/**
|
|
5
4
|
* Decodes a note from a transaction that we know was intended for us.
|
|
@@ -10,7 +9,6 @@ import { produceNoteDaosForKey } from './produce_note_daos_for_key.js';
|
|
|
10
9
|
* @param simulator - An instance of AcirSimulator.
|
|
11
10
|
* @param db - An instance of PxeDatabase.
|
|
12
11
|
* @param addressPoint - The public counterpart to the address secret, which is used in the decryption of incoming note logs.
|
|
13
|
-
* @param ovpkM - The public counterpart to the secret key to be used in the decryption of outgoing note logs.
|
|
14
12
|
* @param payload - An instance of l1NotePayload.
|
|
15
13
|
* @param txHash - The hash of the transaction that created the note. Equivalent to the first nullifier of the transaction.
|
|
16
14
|
* @param noteHashes - New note hashes in this transaction, one of which belongs to this note.
|
|
@@ -18,30 +16,18 @@ import { produceNoteDaosForKey } from './produce_note_daos_for_key.js';
|
|
|
18
16
|
* @param excludedIndices - Indices that have been assigned a note in the same tx. Notes in a tx can have the same l1NotePayload, we need to find a different index for each replicate.
|
|
19
17
|
* @param logger - An instance of Logger.
|
|
20
18
|
* @param unencryptedLogs - Unencrypted logs for the transaction (used to complete partial notes).
|
|
21
|
-
* @returns An object containing the incoming
|
|
19
|
+
* @returns An object containing the incoming notes.
|
|
22
20
|
*/
|
|
23
|
-
export async function produceNoteDaos(simulator, db, addressPoint,
|
|
24
|
-
if (!addressPoint
|
|
25
|
-
throw new Error('
|
|
21
|
+
export async function produceNoteDaos(simulator, db, addressPoint, payload, txHash, l2BlockNumber, l2BlockHash, noteHashes, dataStartIndexForTx, excludedIndices, logger) {
|
|
22
|
+
if (!addressPoint) {
|
|
23
|
+
throw new Error('addressPoint is undefined. Cannot create note.');
|
|
26
24
|
}
|
|
27
25
|
let incomingNote;
|
|
28
|
-
let outgoingNote;
|
|
29
26
|
if (addressPoint) {
|
|
30
27
|
incomingNote = await produceNoteDaosForKey(simulator, db, addressPoint, payload, txHash, l2BlockNumber, l2BlockHash, noteHashes, dataStartIndexForTx, excludedIndices, logger, IncomingNoteDao.fromPayloadAndNoteInfo);
|
|
31
28
|
}
|
|
32
|
-
if (ovpkM) {
|
|
33
|
-
if (incomingNote) {
|
|
34
|
-
// Incoming note is defined meaning that this PXE has both the incoming and outgoing keys. We can skip computing
|
|
35
|
-
// note hash and note index since we already have them in the incoming note.
|
|
36
|
-
outgoingNote = new OutgoingNoteDao(incomingNote.note, incomingNote.contractAddress, incomingNote.storageSlot, incomingNote.noteTypeId, incomingNote.txHash, incomingNote.l2BlockNumber, incomingNote.l2BlockHash, incomingNote.nonce, incomingNote.noteHash, incomingNote.index, ovpkM);
|
|
37
|
-
}
|
|
38
|
-
else {
|
|
39
|
-
outgoingNote = await produceNoteDaosForKey(simulator, db, ovpkM, payload, txHash, l2BlockNumber, l2BlockHash, noteHashes, dataStartIndexForTx, excludedIndices, logger, OutgoingNoteDao.fromPayloadAndNoteInfo);
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
29
|
return {
|
|
43
30
|
incomingNote,
|
|
44
|
-
outgoingNote,
|
|
45
31
|
};
|
|
46
32
|
}
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjZV9ub3RlX2Rhb3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbm90ZV9kZWNyeXB0aW9uX3V0aWxzL3Byb2R1Y2Vfbm90ZV9kYW9zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUVuRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV2RTs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQkc7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLGVBQWUsQ0FDbkMsU0FBd0IsRUFDeEIsRUFBZSxFQUNmLFlBQW1DLEVBQ25DLE9BQXNCLEVBQ3RCLE1BQWMsRUFDZCxhQUFxQixFQUNyQixXQUFtQixFQUNuQixVQUFnQixFQUNoQixtQkFBMkIsRUFDM0IsZUFBNEIsRUFDNUIsTUFBYztJQUVkLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNsQixNQUFNLElBQUksS0FBSyxDQUFDLGdEQUFnRCxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVELElBQUksWUFBeUMsQ0FBQztJQUU5QyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2pCLFlBQVksR0FBRyxNQUFNLHFCQUFxQixDQUN4QyxTQUFTLEVBQ1QsRUFBRSxFQUNGLFlBQVksRUFDWixPQUFPLEVBQ1AsTUFBTSxFQUNOLGFBQWEsRUFDYixXQUFXLEVBQ1gsVUFBVSxFQUNWLG1CQUFtQixFQUNuQixlQUFlLEVBQ2YsTUFBTSxFQUNOLGVBQWUsQ0FBQyxzQkFBc0IsQ0FDdkMsQ0FBQztJQUNKLENBQUM7SUFFRCxPQUFPO1FBQ0wsWUFBWTtLQUNiLENBQUM7QUFDSixDQUFDIn0=
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type L1NotePayload, type Note, type TxHash } from '@aztec/circuit-types';
|
|
2
2
|
import { type Fr, type PublicKey } from '@aztec/circuits.js';
|
|
3
3
|
import { type Logger } from '@aztec/foundation/log';
|
|
4
|
-
import { type AcirSimulator } from '@aztec/simulator';
|
|
4
|
+
import { type AcirSimulator } from '@aztec/simulator/client';
|
|
5
5
|
import { type PxeDatabase } from '../database/pxe_database.js';
|
|
6
6
|
import { type NoteInfo } from './brute_force_note_info.js';
|
|
7
7
|
export declare function produceNoteDaosForKey<T>(simulator: AcirSimulator, db: PxeDatabase, pkM: PublicKey, payload: L1NotePayload, txHash: TxHash, l2BlockNumber: number, l2BlockHash: string, noteHashes: Fr[], dataStartIndexForTx: number, excludedIndices: Set<number>, logger: Logger, daoConstructor: (note: Note, payload: L1NotePayload, noteInfo: NoteInfo, l2BlockNumber: number, l2BlockHash: string, dataStartIndexForTx: number, pkM: PublicKey) => T): Promise<T | undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"produce_note_daos_for_key.d.ts","sourceRoot":"","sources":["../../src/note_decryption_utils/produce_note_daos_for_key.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,IAAI,EAAE,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAClF,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"produce_note_daos_for_key.d.ts","sourceRoot":"","sources":["../../src/note_decryption_utils/produce_note_daos_for_key.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,IAAI,EAAE,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAClF,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAE/D,OAAO,EAAE,KAAK,QAAQ,EAAsB,MAAM,4BAA4B,CAAC;AAE/E,wBAAsB,qBAAqB,CAAC,CAAC,EAC3C,SAAS,EAAE,aAAa,EACxB,EAAE,EAAE,WAAW,EACf,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,EAAE,EAAE,EAChB,mBAAmB,EAAE,MAAM,EAC3B,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,EAC5B,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,CACd,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,aAAa,EACtB,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,EACnB,mBAAmB,EAAE,MAAM,EAC3B,GAAG,EAAE,SAAS,KACX,CAAC,GACL,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CA0BxB"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { type SimulationError } from '@aztec/circuit-types';
|
|
2
|
-
import { type
|
|
2
|
+
import { type Logger } from '@aztec/foundation/log';
|
|
3
3
|
import { type ContractDataOracle, type PxeDatabase } from '../index.js';
|
|
4
4
|
/**
|
|
5
5
|
* Adds contract and function names to a simulation error, if they
|
|
6
6
|
* can be found in the PXE database
|
|
7
7
|
* @param err - The error to enrich.
|
|
8
8
|
*/
|
|
9
|
-
export declare function enrichSimulationError(err: SimulationError, db: PxeDatabase, logger:
|
|
10
|
-
export declare function enrichPublicSimulationError(err: SimulationError, contractDataOracle: ContractDataOracle, db: PxeDatabase, logger:
|
|
9
|
+
export declare function enrichSimulationError(err: SimulationError, db: PxeDatabase, logger: Logger): Promise<void>;
|
|
10
|
+
export declare function enrichPublicSimulationError(err: SimulationError, contractDataOracle: ContractDataOracle, db: PxeDatabase, logger: Logger): Promise<void>;
|
|
11
11
|
//# sourceMappingURL=error_enriching.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error_enriching.d.ts","sourceRoot":"","sources":["../../src/pxe_service/error_enriching.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAA6B,MAAM,sBAAsB,CAAC;AAEvF,OAAO,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"error_enriching.d.ts","sourceRoot":"","sources":["../../src/pxe_service/error_enriching.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAA6B,MAAM,sBAAsB,CAAC;AAEvF,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAGpD,OAAO,EAAE,KAAK,kBAAkB,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAExE;;;;GAIG;AACH,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,eAAe,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,iBAwChG;AAED,wBAAsB,2BAA2B,CAC/C,GAAG,EAAE,eAAe,EACpB,kBAAkB,EAAE,kBAAkB,EACtC,EAAE,EAAE,WAAW,EACf,MAAM,EAAE,MAAM,iBAyCf"}
|
|
@@ -1,34 +1,34 @@
|
|
|
1
1
|
import { isNoirCallStackUnresolved } from '@aztec/circuit-types';
|
|
2
2
|
import { AztecAddress, Fr, FunctionSelector, PUBLIC_DISPATCH_SELECTOR } from '@aztec/circuits.js';
|
|
3
|
-
import { resolveAssertionMessageFromRevertData, resolveOpcodeLocations } from '@aztec/simulator';
|
|
3
|
+
import { resolveAssertionMessageFromRevertData, resolveOpcodeLocations } from '@aztec/simulator/errors';
|
|
4
4
|
/**
|
|
5
5
|
* Adds contract and function names to a simulation error, if they
|
|
6
6
|
* can be found in the PXE database
|
|
7
7
|
* @param err - The error to enrich.
|
|
8
8
|
*/
|
|
9
9
|
export async function enrichSimulationError(err, db, logger) {
|
|
10
|
-
// Maps contract addresses to the set of
|
|
10
|
+
// Maps contract addresses to the set of function names that were in error.
|
|
11
11
|
// Map and Set do reference equality for their keys instead of value equality, so we store the string
|
|
12
12
|
// representation to get e.g. different contract address objects with the same address value to match.
|
|
13
13
|
const mentionedFunctions = new Map();
|
|
14
|
-
err.getCallStack().forEach(({ contractAddress,
|
|
14
|
+
err.getCallStack().forEach(({ contractAddress, functionName }) => {
|
|
15
15
|
if (!mentionedFunctions.has(contractAddress.toString())) {
|
|
16
16
|
mentionedFunctions.set(contractAddress.toString(), new Set());
|
|
17
17
|
}
|
|
18
|
-
mentionedFunctions.get(contractAddress.toString()).add(
|
|
18
|
+
mentionedFunctions.get(contractAddress.toString()).add(functionName?.toString() ?? '');
|
|
19
19
|
});
|
|
20
|
-
await Promise.all([...mentionedFunctions.entries()].map(async ([contractAddress,
|
|
20
|
+
await Promise.all([...mentionedFunctions.entries()].map(async ([contractAddress, fnNames]) => {
|
|
21
21
|
const parsedContractAddress = AztecAddress.fromString(contractAddress);
|
|
22
22
|
const contract = await db.getContract(parsedContractAddress);
|
|
23
23
|
if (contract) {
|
|
24
24
|
err.enrichWithContractName(parsedContractAddress, contract.name);
|
|
25
|
-
|
|
26
|
-
const functionArtifact = contract.functions.find(f =>
|
|
25
|
+
fnNames.forEach(fnName => {
|
|
26
|
+
const functionArtifact = contract.functions.find(f => fnName === f.name);
|
|
27
27
|
if (functionArtifact) {
|
|
28
28
|
err.enrichWithFunctionName(parsedContractAddress, FunctionSelector.fromNameAndParameters(functionArtifact), functionArtifact.name);
|
|
29
29
|
}
|
|
30
30
|
else {
|
|
31
|
-
logger.warn(`Could not function artifact in contract ${contract.name} for
|
|
31
|
+
logger.warn(`Could not function artifact in contract ${contract.name} for function '${fnName}' when enriching error callstack`);
|
|
32
32
|
}
|
|
33
33
|
});
|
|
34
34
|
}
|
|
@@ -60,10 +60,10 @@ export async function enrichPublicSimulationError(err, contractDataOracle, db, l
|
|
|
60
60
|
err.setNoirCallStack(parsedCallStack);
|
|
61
61
|
}
|
|
62
62
|
catch (err) {
|
|
63
|
-
logger.warn(`Could not resolve noir call stack for ${originalFailingFunction.contractAddress.toString()}:${originalFailingFunction.
|
|
63
|
+
logger.warn(`Could not resolve noir call stack for ${originalFailingFunction.contractAddress.toString()}:${originalFailingFunction.functionName?.toString() ?? ''}: ${err}`);
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
66
|
await enrichSimulationError(err, db, logger);
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JfZW5yaWNoaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3B4ZV9zZXJ2aWNlL2Vycm9yX2VucmljaGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXdCLHlCQUF5QixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkYsT0FBTyxFQUFFLFlBQVksRUFBRSxFQUFFLEVBQUUsZ0JBQWdCLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVsRyxPQUFPLEVBQUUscUNBQXFDLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUl4Rzs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxxQkFBcUIsQ0FBQyxHQUFvQixFQUFFLEVBQWUsRUFBRSxNQUFjO0lBQy9GLDJFQUEyRTtJQUMzRSxxR0FBcUc7SUFDckcsc0dBQXNHO0lBQ3RHLE1BQU0sa0JBQWtCLEdBQTZCLElBQUksR0FBRyxFQUFFLENBQUM7SUFFL0QsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxFQUFFLEVBQUU7UUFDL0QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ3hELGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFLEVBQUUsSUFBSSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1FBQ2hFLENBQUM7UUFDRCxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxDQUFFLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUMxRixDQUFDLENBQUMsQ0FBQztJQUVILE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FDZixDQUFDLEdBQUcsa0JBQWtCLENBQUMsT0FB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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/pxe_service/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/pxe_service/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
export * from './pxe_service.js';
|
|
2
|
-
export * from './create_pxe_service.js';
|
|
3
2
|
export { enrichPublicSimulationError } from './error_enriching.js';
|
|
4
3
|
export { pxeTestSuite } from './test/pxe_test_suite.js';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHhlX3NlcnZpY2UvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUMifQ==
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type AuthWitness, type AztecNode, type EventMetadataDefinition, type ExtendedNote, type GetUnencryptedLogsResponse, type InBlock, type IncomingNotesFilter, type L2Block, type LogFilter, type
|
|
1
|
+
import { type AuthWitness, type AztecNode, type EventMetadataDefinition, type ExtendedNote, type GetUnencryptedLogsResponse, type InBlock, type IncomingNotesFilter, type L2Block, type LogFilter, type PXE, type PXEInfo, type PrivateExecutionResult, type PrivateKernelProver, type SiblingPath, type Tx, type TxEffect, type TxExecutionRequest, type TxHash, TxProvingResult, type TxReceipt, TxSimulationResult, UniqueNote } from '@aztec/circuit-types';
|
|
2
2
|
import { type AztecAddress, type CompleteAddress, type ContractClassWithId, type ContractInstanceWithAddress, type GasFees, type L1_TO_L2_MSG_TREE_HEIGHT, type NodeInfo, type PartialAddress } from '@aztec/circuits.js';
|
|
3
3
|
import { type AbiDecoded, type ContractArtifact } from '@aztec/foundation/abi';
|
|
4
4
|
import { Fr, type Point } from '@aztec/foundation/fields';
|
|
@@ -20,22 +20,13 @@ export declare class PXEService implements PXE {
|
|
|
20
20
|
private simulator;
|
|
21
21
|
private log;
|
|
22
22
|
private packageVersion;
|
|
23
|
-
private jobQueue;
|
|
24
23
|
constructor(keyStore: KeyStore, node: AztecNode, db: PxeDatabase, tipsStore: L2TipsStore, proofCreator: PrivateKernelProver, config: PXEServiceConfig, logSuffix?: string);
|
|
25
24
|
/**
|
|
26
25
|
* Starts the PXE Service by beginning the synchronization process between the Aztec node and the database.
|
|
27
26
|
*
|
|
28
27
|
* @returns A promise that resolves when the server has started successfully.
|
|
29
28
|
*/
|
|
30
|
-
|
|
31
|
-
/**
|
|
32
|
-
* Stops the PXE Service, halting processing of new transactions and shutting down the synchronizer.
|
|
33
|
-
* This function ensures that all ongoing tasks are completed before stopping the server.
|
|
34
|
-
* It is useful for gracefully shutting down the server during maintenance or restarts.
|
|
35
|
-
*
|
|
36
|
-
* @returns A Promise resolving once the server has been stopped successfully.
|
|
37
|
-
*/
|
|
38
|
-
stop(): Promise<void>;
|
|
29
|
+
init(): Promise<void>;
|
|
39
30
|
isL1ToL2MessageSynced(l1ToL2Message: Fr): Promise<boolean>;
|
|
40
31
|
/** Returns an estimate of the db size in bytes. */
|
|
41
32
|
estimateDbSize(): Promise<number>;
|
|
@@ -59,7 +50,6 @@ export declare class PXEService implements PXE {
|
|
|
59
50
|
getContracts(): Promise<AztecAddress[]>;
|
|
60
51
|
getPublicStorageAt(contract: AztecAddress, slot: Fr): Promise<Fr>;
|
|
61
52
|
getIncomingNotes(filter: IncomingNotesFilter): Promise<UniqueNote[]>;
|
|
62
|
-
getOutgoingNotes(filter: OutgoingNotesFilter): Promise<UniqueNote[]>;
|
|
63
53
|
getL1ToL2MembershipWitness(contractAddress: AztecAddress, messageHash: Fr, secret: Fr): Promise<[bigint, SiblingPath<typeof L1_TO_L2_MSG_TREE_HEIGHT>]>;
|
|
64
54
|
addNote(note: ExtendedNote, scope?: AztecAddress): Promise<void>;
|
|
65
55
|
addNullifiedNote(note: ExtendedNote): Promise<void>;
|
|
@@ -87,10 +77,6 @@ export declare class PXEService implements PXE {
|
|
|
87
77
|
getContractClassLogs(filter: LogFilter): Promise<GetUnencryptedLogsResponse>;
|
|
88
78
|
getNodeInfo(): Promise<NodeInfo>;
|
|
89
79
|
getPXEInfo(): Promise<PXEInfo>;
|
|
90
|
-
isGlobalStateSynchronized(): Promise<boolean>;
|
|
91
|
-
getSyncStatus(): Promise<{
|
|
92
|
-
blocks: number;
|
|
93
|
-
}>;
|
|
94
80
|
isContractClassPubliclyRegistered(id: Fr): Promise<boolean>;
|
|
95
81
|
isContractPubliclyDeployed(address: AztecAddress): Promise<boolean>;
|
|
96
82
|
isContractInitialized(address: AztecAddress): Promise<boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pxe_service.d.ts","sourceRoot":"","sources":["../../src/pxe_service/pxe_service.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,SAAS,EAEd,KAAK,uBAAuB,EAC5B,KAAK,YAAY,EAEjB,KAAK,0BAA0B,EAC/B,KAAK,OAAO,EACZ,KAAK,mBAAmB,EAExB,KAAK,OAAO,EACZ,KAAK,SAAS,EAEd,KAAK,
|
|
1
|
+
{"version":3,"file":"pxe_service.d.ts","sourceRoot":"","sources":["../../src/pxe_service/pxe_service.ts"],"names":[],"mappings":"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"}
|