@aztec/pxe 0.69.0-devnet → 0.69.1-devnet

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/dest/database/kv_pxe_database.d.ts +11 -7
  2. package/dest/database/kv_pxe_database.d.ts.map +1 -1
  3. package/dest/database/kv_pxe_database.js +36 -13
  4. package/dest/database/note_dao.d.ts +105 -0
  5. package/dest/database/note_dao.d.ts.map +1 -0
  6. package/dest/database/note_dao.js +123 -0
  7. package/dest/database/outgoing_note_dao.js +3 -3
  8. package/dest/database/pxe_database.d.ts +25 -9
  9. package/dest/database/pxe_database.d.ts.map +1 -1
  10. package/dest/database/pxe_database_test_suite.d.ts.map +1 -1
  11. package/dest/database/pxe_database_test_suite.js +68 -21
  12. package/dest/kernel_oracle/index.js +2 -2
  13. package/dest/kernel_prover/hints/build_private_kernel_reset_private_inputs.js +2 -2
  14. package/dest/kernel_prover/index.d.ts +0 -1
  15. package/dest/kernel_prover/index.d.ts.map +1 -1
  16. package/dest/kernel_prover/index.js +1 -2
  17. package/dest/kernel_prover/kernel_prover.d.ts +8 -2
  18. package/dest/kernel_prover/kernel_prover.d.ts.map +1 -1
  19. package/dest/kernel_prover/kernel_prover.js +32 -12
  20. package/dest/note_decryption_utils/brute_force_note_info.d.ts +1 -1
  21. package/dest/note_decryption_utils/brute_force_note_info.d.ts.map +1 -1
  22. package/dest/note_decryption_utils/brute_force_note_info.js +2 -3
  23. package/dest/note_decryption_utils/produce_note_daos.d.ts +3 -3
  24. package/dest/note_decryption_utils/produce_note_daos.d.ts.map +1 -1
  25. package/dest/note_decryption_utils/produce_note_daos.js +6 -6
  26. package/dest/note_decryption_utils/produce_note_daos_for_key.d.ts +1 -1
  27. package/dest/note_decryption_utils/produce_note_daos_for_key.d.ts.map +1 -1
  28. package/dest/note_decryption_utils/produce_note_daos_for_key.js +3 -3
  29. package/dest/pxe_service/pxe_service.d.ts +3 -2
  30. package/dest/pxe_service/pxe_service.d.ts.map +1 -1
  31. package/dest/pxe_service/pxe_service.js +34 -42
  32. package/dest/simulator_oracle/index.d.ts +18 -3
  33. package/dest/simulator_oracle/index.d.ts.map +1 -1
  34. package/dest/simulator_oracle/index.js +63 -37
  35. package/dest/utils/create_pxe_service.d.ts.map +1 -1
  36. package/dest/utils/create_pxe_service.js +3 -8
  37. package/package.json +14 -15
  38. package/src/database/kv_pxe_database.ts +46 -16
  39. package/src/database/{incoming_note_dao.ts → note_dao.ts} +65 -48
  40. package/src/database/outgoing_note_dao.ts +2 -2
  41. package/src/database/pxe_database.ts +27 -9
  42. package/src/database/pxe_database_test_suite.ts +86 -25
  43. package/src/kernel_oracle/index.ts +1 -1
  44. package/src/kernel_prover/hints/build_private_kernel_reset_private_inputs.ts +1 -1
  45. package/src/kernel_prover/index.ts +0 -2
  46. package/src/kernel_prover/kernel_prover.ts +41 -11
  47. package/src/note_decryption_utils/brute_force_note_info.ts +1 -1
  48. package/src/note_decryption_utils/produce_note_daos.ts +8 -6
  49. package/src/note_decryption_utils/produce_note_daos_for_key.ts +2 -0
  50. package/src/pxe_service/pxe_service.ts +42 -63
  51. package/src/simulator_oracle/index.ts +54 -24
  52. package/src/utils/create_pxe_service.ts +2 -8
  53. package/dest/database/incoming_note_dao.d.ts +0 -86
  54. package/dest/database/incoming_note_dao.d.ts.map +0 -1
  55. package/dest/database/incoming_note_dao.js +0 -110
  56. package/dest/kernel_prover/test/test_circuit_prover.d.ts +0 -20
  57. package/dest/kernel_prover/test/test_circuit_prover.d.ts.map +0 -1
  58. package/dest/kernel_prover/test/test_circuit_prover.js +0 -75
  59. package/src/kernel_prover/test/test_circuit_prover.ts +0 -122
@@ -1,6 +1,11 @@
1
1
  import { type PrivateExecutionResult, type PrivateKernelProver, type PrivateKernelSimulateOutput } from '@aztec/circuit-types';
2
2
  import { type PrivateKernelTailCircuitPublicInputs, type TxRequest } from '@aztec/circuits.js';
3
3
  import { type ProvingDataOracle } from './proving_data_oracle.js';
4
+ export type ProvingConfig = {
5
+ simulate: boolean;
6
+ profile: boolean;
7
+ dryRun: boolean;
8
+ };
4
9
  /**
5
10
  * The KernelProver class is responsible for generating kernel proofs.
6
11
  * It takes a transaction request, its signature, and the simulation result as inputs, and outputs a proof
@@ -10,8 +15,9 @@ import { type ProvingDataOracle } from './proving_data_oracle.js';
10
15
  export declare class KernelProver {
11
16
  private oracle;
12
17
  private proofCreator;
18
+ private fakeProofs;
13
19
  private log;
14
- constructor(oracle: ProvingDataOracle, proofCreator: PrivateKernelProver);
20
+ constructor(oracle: ProvingDataOracle, proofCreator: PrivateKernelProver, fakeProofs?: boolean);
15
21
  /**
16
22
  * Generate a proof for a given transaction request and execution result.
17
23
  * The function iterates through the nested executions in the execution result, creates private call data,
@@ -25,7 +31,7 @@ export declare class KernelProver {
25
31
  * @returns A Promise that resolves to a KernelProverOutput object containing proof, public inputs, and output notes.
26
32
  * TODO(#7368) this should be refactored to not recreate the ACIR bytecode now that it operates on a program stack
27
33
  */
28
- prove(txRequest: TxRequest, executionResult: PrivateExecutionResult, profile?: boolean, dryRun?: boolean): Promise<PrivateKernelSimulateOutput<PrivateKernelTailCircuitPublicInputs>>;
34
+ prove(txRequest: TxRequest, executionResult: PrivateExecutionResult, { simulate, profile, dryRun }?: ProvingConfig): Promise<PrivateKernelSimulateOutput<PrivateKernelTailCircuitPublicInputs>>;
29
35
  private createPrivateCallData;
30
36
  private isPrivateOnly;
31
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"kernel_prover.d.ts","sourceRoot":"","sources":["../../src/kernel_prover/kernel_prover.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,2BAA2B,EAMjC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAUL,KAAK,oCAAoC,EAGzC,KAAK,SAAS,EAGf,MAAM,oBAAoB,CAAC;AAmB5B,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AA8ClE;;;;;GAKG;AACH,qBAAa,YAAY;IAGX,OAAO,CAAC,MAAM;IAAqB,OAAO,CAAC,YAAY;IAFnE,OAAO,CAAC,GAAG,CAAqC;gBAE5B,MAAM,EAAE,iBAAiB,EAAU,YAAY,EAAE,mBAAmB;IAExF;;;;;;;;;;;;OAYG;IACG,KAAK,CACT,SAAS,EAAE,SAAS,EACpB,eAAe,EAAE,sBAAsB,EACvC,OAAO,GAAE,OAAe,EACxB,MAAM,GAAE,OAAe,GACtB,OAAO,CAAC,2BAA2B,CAAC,oCAAoC,CAAC,CAAC;YAuL/D,qBAAqB;IAqCnC,OAAO,CAAC,aAAa;CAStB"}
1
+ {"version":3,"file":"kernel_prover.d.ts","sourceRoot":"","sources":["../../src/kernel_prover/kernel_prover.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,2BAA2B,EAMjC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAWL,KAAK,oCAAoC,EAGzC,KAAK,SAAS,EAGf,MAAM,oBAAoB,CAAC;AAmB5B,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AA8ClE,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF;;;;;GAKG;AACH,qBAAa,YAAY;IAIrB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,UAAU;IALpB,OAAO,CAAC,GAAG,CAAqC;gBAGtC,MAAM,EAAE,iBAAiB,EACzB,YAAY,EAAE,mBAAmB,EACjC,UAAU,UAAQ;IAG5B;;;;;;;;;;;;OAYG;IACG,KAAK,CACT,SAAS,EAAE,SAAS,EACpB,eAAe,EAAE,sBAAsB,EACvC,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,GAAE,aAAkE,GAChG,OAAO,CAAC,2BAA2B,CAAC,oCAAoC,CAAC,CAAC;YA2M/D,qBAAqB;IAqCnC,OAAO,CAAC,aAAa;CAStB"}
@@ -1,5 +1,5 @@
1
1
  import { collectEnqueuedPublicFunctionCalls, collectNoteHashLeafIndexMap, collectNoteHashNullifierCounterMap, collectPublicTeardownFunctionCall, getFinalMinRevertibleSideEffectCounter, } from '@aztec/circuit-types';
2
- import { CLIENT_IVC_VERIFICATION_KEY_LENGTH_IN_FIELDS, Fr, PROTOCOL_CONTRACT_TREE_HEIGHT, PrivateCallData, PrivateKernelCircuitPublicInputs, PrivateKernelData, PrivateKernelInitCircuitPrivateInputs, PrivateKernelInnerCircuitPrivateInputs, PrivateKernelTailCircuitPrivateInputs, VK_TREE_HEIGHT, VerificationKeyAsFields, } from '@aztec/circuits.js';
2
+ import { CLIENT_IVC_VERIFICATION_KEY_LENGTH_IN_FIELDS, ClientIvcProof, Fr, PROTOCOL_CONTRACT_TREE_HEIGHT, PrivateCallData, PrivateKernelCircuitPublicInputs, PrivateKernelData, PrivateKernelInitCircuitPrivateInputs, PrivateKernelInnerCircuitPrivateInputs, PrivateKernelTailCircuitPrivateInputs, VK_TREE_HEIGHT, VerificationKeyAsFields, } from '@aztec/circuits.js';
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';
@@ -7,7 +7,7 @@ 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 { Timer } from '@aztec/foundation/timer';
10
- import { getVKTreeRoot } from '@aztec/noir-protocol-circuits-types/client';
10
+ import { getVKTreeRoot } from '@aztec/noir-protocol-circuits-types/vks';
11
11
  import { getProtocolContractSiblingPath, isProtocolContract, protocolContractTreeRoot, } from '@aztec/protocol-contracts';
12
12
  import { strict as assert } from 'assert';
13
13
  import { PrivateKernelResetPrivateInputsBuilder } from './hints/build_private_kernel_reset_private_inputs.js';
@@ -44,9 +44,10 @@ const NULL_PROVE_OUTPUT = {
44
44
  * constructs private call data based on the execution results.
45
45
  */
46
46
  export class KernelProver {
47
- constructor(oracle, proofCreator) {
47
+ constructor(oracle, proofCreator, fakeProofs = false) {
48
48
  this.oracle = oracle;
49
49
  this.proofCreator = proofCreator;
50
+ this.fakeProofs = fakeProofs;
50
51
  this.log = createLogger('pxe:kernel-prover');
51
52
  }
52
53
  /**
@@ -62,7 +63,11 @@ export class KernelProver {
62
63
  * @returns A Promise that resolves to a KernelProverOutput object containing proof, public inputs, and output notes.
63
64
  * TODO(#7368) this should be refactored to not recreate the ACIR bytecode now that it operates on a program stack
64
65
  */
65
- async prove(txRequest, executionResult, profile = false, dryRun = false) {
66
+ async prove(txRequest, executionResult, { simulate, profile, dryRun } = { simulate: false, profile: false, dryRun: false }) {
67
+ if (simulate && profile) {
68
+ throw new Error('Cannot simulate and profile at the same time');
69
+ }
70
+ simulate = simulate || this.fakeProofs;
66
71
  const timer = new Timer();
67
72
  const isPrivateOnlyTx = this.isPrivateOnly(executionResult);
68
73
  const executionStack = [executionResult];
@@ -87,7 +92,9 @@ export class KernelProver {
87
92
  let resetBuilder = new PrivateKernelResetPrivateInputsBuilder(output, executionStack, noteHashNullifierCounterMap, validationRequestsSplitCounter);
88
93
  while (resetBuilder.needsReset()) {
89
94
  const privateInputs = await resetBuilder.build(this.oracle, noteHashLeafIndexMap);
90
- output = await this.proofCreator.simulateProofReset(privateInputs);
95
+ output = simulate
96
+ ? await this.proofCreator.simulateReset(privateInputs)
97
+ : await this.proofCreator.generateResetOutput(privateInputs);
91
98
  // TODO(#7368) consider refactoring this redundant bytecode pushing
92
99
  acirs.push(output.bytecode);
93
100
  witnessStack.push(output.outputWitness);
@@ -111,7 +118,9 @@ export class KernelProver {
111
118
  if (firstIteration) {
112
119
  const proofInput = new PrivateKernelInitCircuitPrivateInputs(txRequest, getVKTreeRoot(), protocolContractTreeRoot, privateCallData, isPrivateOnlyTx);
113
120
  pushTestData('private-kernel-inputs-init', proofInput);
114
- output = await this.proofCreator.simulateProofInit(proofInput);
121
+ output = simulate
122
+ ? await this.proofCreator.simulateInit(proofInput)
123
+ : await this.proofCreator.generateInitOutput(proofInput);
115
124
  acirs.push(output.bytecode);
116
125
  witnessStack.push(output.outputWitness);
117
126
  if (profile) {
@@ -123,7 +132,9 @@ export class KernelProver {
123
132
  const previousKernelData = new PrivateKernelData(output.publicInputs, output.verificationKey, Number(previousVkMembershipWitness.leafIndex), assertLength(previousVkMembershipWitness.siblingPath, VK_TREE_HEIGHT));
124
133
  const proofInput = new PrivateKernelInnerCircuitPrivateInputs(previousKernelData, privateCallData);
125
134
  pushTestData('private-kernel-inputs-inner', proofInput);
126
- output = await this.proofCreator.simulateProofInner(proofInput);
135
+ output = simulate
136
+ ? await this.proofCreator.simulateInner(proofInput)
137
+ : await this.proofCreator.generateInnerOutput(proofInput);
127
138
  acirs.push(output.bytecode);
128
139
  witnessStack.push(output.outputWitness);
129
140
  if (profile) {
@@ -136,7 +147,9 @@ export class KernelProver {
136
147
  let resetBuilder = new PrivateKernelResetPrivateInputsBuilder(output, [], noteHashNullifierCounterMap, validationRequestsSplitCounter);
137
148
  while (resetBuilder.needsReset()) {
138
149
  const privateInputs = await resetBuilder.build(this.oracle, noteHashLeafIndexMap);
139
- output = await this.proofCreator.simulateProofReset(privateInputs);
150
+ output = simulate
151
+ ? await this.proofCreator.simulateReset(privateInputs)
152
+ : await this.proofCreator.generateResetOutput(privateInputs);
140
153
  acirs.push(output.bytecode);
141
154
  witnessStack.push(output.outputWitness);
142
155
  if (profile) {
@@ -150,7 +163,9 @@ export class KernelProver {
150
163
  this.log.debug(`Calling private kernel tail with hwm ${previousKernelData.publicInputs.minRevertibleSideEffectCounter}`);
151
164
  const privateInputs = new PrivateKernelTailCircuitPrivateInputs(previousKernelData);
152
165
  pushTestData('private-kernel-inputs-ordering', privateInputs);
153
- const tailOutput = await this.proofCreator.simulateProofTail(privateInputs);
166
+ const tailOutput = simulate
167
+ ? await this.proofCreator.simulateTail(privateInputs)
168
+ : await this.proofCreator.generateTailOutput(privateInputs);
154
169
  if (tailOutput.publicInputs.forPublic) {
155
170
  const privateLogs = privateInputs.previousKernel.publicInputs.end.privateLogs;
156
171
  const nonRevertiblePrivateLogs = tailOutput.publicInputs.forPublic.nonRevertibleAccumulatedData.privateLogs;
@@ -163,12 +178,17 @@ export class KernelProver {
163
178
  await addGateCount('private_kernel_tail', tailOutput.bytecode);
164
179
  tailOutput.profileResult = { gateCounts };
165
180
  }
166
- this.log.verbose(`Private kernel witness generation took ${timer.ms()}ms`);
181
+ if (!simulate) {
182
+ this.log.info(`Private kernel witness generation took ${timer.ms()}ms`);
183
+ }
167
184
  // TODO(#7368) how do we 'bincode' encode these inputs?
168
- if (!dryRun) {
185
+ if (!dryRun && !simulate) {
169
186
  const ivcProof = await this.proofCreator.createClientIvcProof(acirs, witnessStack);
170
187
  tailOutput.clientIvcProof = ivcProof;
171
188
  }
189
+ else {
190
+ tailOutput.clientIvcProof = ClientIvcProof.empty();
191
+ }
172
192
  return tailOutput;
173
193
  }
174
194
  async createPrivateCallData({ publicInputs, vk: vkAsBuffer }) {
@@ -203,4 +223,4 @@ export class KernelProver {
203
223
  executionResult.nestedExecutions.every(nestedExecution => this.isPrivateOnly(nestedExecution)));
204
224
  }
205
225
  }
206
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2VybmVsX3Byb3Zlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9rZXJuZWxfcHJvdmVyL2tlcm5lbF9wcm92ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUlMLGtDQUFrQyxFQUNsQywyQkFBMkIsRUFDM0Isa0NBQWtDLEVBQ2xDLGlDQUFpQyxFQUNqQyxzQ0FBc0MsR0FDdkMsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQ0wsNENBQTRDLEVBQzVDLEVBQUUsRUFDRiw2QkFBNkIsRUFDN0IsZUFBZSxFQUNmLGdDQUFnQyxFQUNoQyxpQkFBaUIsRUFDakIscUNBQXFDLEVBQ3JDLHNDQUFzQyxFQUN0QyxxQ0FBcUMsRUFLckMsY0FBYyxFQUNkLHVCQUF1QixHQUN4QixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2hELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUMzRSxPQUFPLEVBQ0wsOEJBQThCLEVBQzlCLGtCQUFrQixFQUNsQix3QkFBd0IsR0FDekIsTUFBTSwyQkFBMkIsQ0FBQztBQUduQyxPQUFPLEVBQUUsTUFBTSxJQUFJLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUUxQyxPQUFPLEVBQUUsc0NBQXNDLEVBQUUsTUFBTSxz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
226
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2VybmVsX3Byb3Zlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9rZXJuZWxfcHJvdmVyL2tlcm5lbF9wcm92ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUlMLGtDQUFrQyxFQUNsQywyQkFBMkIsRUFDM0Isa0NBQWtDLEVBQ2xDLGlDQUFpQyxFQUNqQyxzQ0FBc0MsR0FDdkMsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQ0wsNENBQTRDLEVBQzVDLGNBQWMsRUFDZCxFQUFFLEVBQ0YsNkJBQTZCLEVBQzdCLGVBQWUsRUFDZixnQ0FBZ0MsRUFDaEMsaUJBQWlCLEVBQ2pCLHFDQUFxQyxFQUNyQyxzQ0FBc0MsRUFDdEMscUNBQXFDLEVBS3JDLGNBQWMsRUFDZCx1QkFBdUIsR0FDeEIsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzlELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDeEUsT0FBTyxFQUNMLDhCQUE4QixFQUM5QixrQkFBa0IsRUFDbEIsd0JBQXdCLEdBQ3pCLE1BQU0sMkJBQTJCLENBQUM7QUFHbkMsT0FBTyxFQUFFLE1BQU0sSUFBSSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFFMUMsT0FBTyxFQUFFLHNDQUFzQyxF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
@@ -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, uniqueNoteHashes: Fr[], txHash: TxHash, contractAddress: AztecAddress, storageSlot: Fr, noteTypeId: NoteSelector, note: Note, excludedIndices: Set<number>, computeNullifier: boolean): Promise<NoteInfo>;
30
+ export declare function bruteForceNoteInfo(simulator: AcirSimulator, uniqueNoteHashes: Fr[], txHash: TxHash, firstNullifier: Fr, 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,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"}
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,cAAc,EAAE,EAAE,EAClB,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,CA8CnB"}
@@ -17,13 +17,12 @@ 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, uniqueNoteHashes, txHash, contractAddress, storageSlot, noteTypeId, note, excludedIndices, computeNullifier) {
20
+ export async function bruteForceNoteInfo(simulator, uniqueNoteHashes, txHash, firstNullifier, contractAddress, storageSlot, noteTypeId, note, excludedIndices, computeNullifier) {
21
21
  let noteHashIndex = 0;
22
22
  let nonce;
23
23
  let noteHash;
24
24
  let uniqueNoteHash;
25
25
  let innerNullifier;
26
- const firstNullifier = Fr.fromBuffer(txHash.toBuffer());
27
26
  for (; noteHashIndex < uniqueNoteHashes.length; ++noteHashIndex) {
28
27
  if (excludedIndices.has(noteHashIndex)) {
29
28
  continue;
@@ -52,4 +51,4 @@ export async function bruteForceNoteInfo(simulator, uniqueNoteHashes, txHash, co
52
51
  txHash,
53
52
  };
54
53
  }
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJ1dGVfZm9yY2Vfbm90ZV9pbmZvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL25vdGVfZGVjcnlwdGlvbl91dGlscy9icnV0ZV9mb3JjZV9ub3RlX2luZm8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLG9CQUFvQixFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRTlFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQVc5Qzs7Ozs7Ozs7Ozs7Ozs7OztHQWdCRztBQUNILE1BQU0sQ0FBQyxLQUFLLFVBQVUsa0JBQWtCLENBQ3RDLFNBQXdCLEVBQ3hCLGdCQUFzQixFQUN0QixNQUFjLEVBQ2QsZUFBNkIsRUFDN0IsV0FBZSxFQUNmLFVBQXdCLEVBQ3hCLElBQVUsRUFDVixlQUE0QixFQUM1QixnQkFBeUI7SUFFekIsSUFBSSxhQUFhLEdBQUcsQ0FBQyxDQUFDO0lBQ3RCLElBQUksS0FBcUIsQ0FBQztJQUMxQixJQUFJLFFBQXdCLENBQUM7SUFDN0IsSUFBSSxjQUE4QixDQUFDO0lBQ25DLElBQUksY0FBOEIsQ0FBQztJQUNuQyxNQUFNLGNBQWMsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBRXhELE9BQU8sYUFBYSxHQUFHLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxFQUFFLGFBQWEsRUFBRSxDQUFDO1FBQ2hFLElBQUksZUFBZSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDO1lBQ3ZDLFNBQVM7UUFDWCxDQUFDO1FBRUQsTUFBTSwwQkFBMEIsR0FBRyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNuRSxJQUFJLDBCQUEwQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUMvQyxNQUFNO1FBQ1IsQ0FBQztRQUVELE1BQU0sYUFBYSxHQUFHLG9CQUFvQixDQUFDLGNBQWMsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUMxRSxDQUFDLEVBQUUsUUFBUSxFQUFFLGNBQWMsRUFBRSxjQUFjLEVBQUUsR0FBRyxNQUFNLFNBQVMsQ0FBQyxzQ0FBc0MsQ0FDcEcsZUFBZSxFQUNmLGFBQWEsRUFDYixXQUFXLEVBQ1gsVUFBVSxFQUNWLGdCQUFnQixFQUNoQixJQUFJLENBQ0wsQ0FBQyxDQUFDO1FBRUgsSUFBSSwwQkFBMEIsQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQztZQUN0RCxLQUFLLEdBQUcsYUFBYSxDQUFDO1lBQ3RCLE1BQU07UUFDUixDQUFDO0lBQ0gsQ0FBQztJQUVELElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNYLDhFQUE4RTtRQUM5RSxrR0FBa0c7UUFDbEcsTUFBTSxJQUFJLEtBQUssQ0FBQyxnREFBZ0QsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRCxPQUFPO1FBQ0wsYUFBYTtRQUNiLEtBQUs7UUFDTCxRQUFRLEVBQUUsUUFBUztRQUNuQixlQUFlLEVBQUUsYUFBYSxDQUFDLGVBQWUsRUFBRSxjQUFlLENBQUM7UUFDaEUsTUFBTTtLQUNQLENBQUM7QUFDSixDQUFDIn0=
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJ1dGVfZm9yY2Vfbm90ZV9pbmZvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL25vdGVfZGVjcnlwdGlvbl91dGlscy9icnV0ZV9mb3JjZV9ub3RlX2luZm8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLG9CQUFvQixFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRTlFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQVc5Qzs7Ozs7Ozs7Ozs7Ozs7OztHQWdCRztBQUNILE1BQU0sQ0FBQyxLQUFLLFVBQVUsa0JBQWtCLENBQ3RDLFNBQXdCLEVBQ3hCLGdCQUFzQixFQUN0QixNQUFjLEVBQ2QsY0FBa0IsRUFDbEIsZUFBNkIsRUFDN0IsV0FBZSxFQUNmLFVBQXdCLEVBQ3hCLElBQVUsRUFDVixlQUE0QixFQUM1QixnQkFBeUI7SUFFekIsSUFBSSxhQUFhLEdBQUcsQ0FBQyxDQUFDO0lBQ3RCLElBQUksS0FBcUIsQ0FBQztJQUMxQixJQUFJLFFBQXdCLENBQUM7SUFDN0IsSUFBSSxjQUE4QixDQUFDO0lBQ25DLElBQUksY0FBOEIsQ0FBQztJQUVuQyxPQUFPLGFBQWEsR0FBRyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsRUFBRSxhQUFhLEVBQUUsQ0FBQztRQUNoRSxJQUFJLGVBQWUsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztZQUN2QyxTQUFTO1FBQ1gsQ0FBQztRQUVELE1BQU0sMEJBQTBCLEdBQUcsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDbkUsSUFBSSwwQkFBMEIsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDL0MsTUFBTTtRQUNSLENBQUM7UUFFRCxNQUFNLGFBQWEsR0FBRyxvQkFBb0IsQ0FBQyxjQUFjLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFDMUUsQ0FBQyxFQUFFLFFBQVEsRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLEdBQUcsTUFBTSxTQUFTLENBQUMsc0NBQXNDLENBQ3BHLGVBQWUsRUFDZixhQUFhLEVBQ2IsV0FBVyxFQUNYLFVBQVUsRUFDVixnQkFBZ0IsRUFDaEIsSUFBSSxDQUNMLENBQUMsQ0FBQztRQUVILElBQUksMEJBQTBCLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUM7WUFDdEQsS0FBSyxHQUFHLGFBQWEsQ0FBQztZQUN0QixNQUFNO1FBQ1IsQ0FBQztJQUNILENBQUM7SUFFRCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDWCw4RUFBOEU7UUFDOUUsa0dBQWtHO1FBQ2xHLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0RBQWdELENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsT0FBTztRQUNMLGFBQWE7UUFDYixLQUFLO1FBQ0wsUUFBUSxFQUFFLFFBQVM7UUFDbkIsZUFBZSxFQUFFLGFBQWEsQ0FBQyxlQUFlLEVBQUUsY0FBZSxDQUFDO1FBQ2hFLE1BQU07S0FDUCxDQUFDO0FBQ0osQ0FBQyJ9
@@ -2,7 +2,7 @@ import { type L1NotePayload, type PublicKey, type TxHash } from '@aztec/circuit-
2
2
  import { type Fr } from '@aztec/foundation/fields';
3
3
  import { type Logger } from '@aztec/foundation/log';
4
4
  import { type AcirSimulator } from '@aztec/simulator/client';
5
- import { IncomingNoteDao } from '../database/incoming_note_dao.js';
5
+ import { NoteDao } from '../database/note_dao.js';
6
6
  import { type PxeDatabase } from '../database/pxe_database.js';
7
7
  /**
8
8
  * Decodes a note from a transaction that we know was intended for us.
@@ -22,7 +22,7 @@ import { type PxeDatabase } from '../database/pxe_database.js';
22
22
  * @param unencryptedLogs - Unencrypted logs for the transaction (used to complete partial notes).
23
23
  * @returns An object containing the incoming notes.
24
24
  */
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<{
26
- incomingNote: IncomingNoteDao | undefined;
25
+ export declare function produceNoteDaos(simulator: AcirSimulator, db: PxeDatabase, addressPoint: PublicKey | undefined, payload: L1NotePayload, txHash: TxHash, firstNullifier: Fr, l2BlockNumber: number, l2BlockHash: string, noteHashes: Fr[], dataStartIndexForTx: number, excludedIndices: Set<number>, logger: Logger): Promise<{
26
+ note: NoteDao | undefined;
27
27
  }>;
28
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,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
+ {"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,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,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,cAAc,EAAE,EAAE,EAClB,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,IAAI,EAAE,OAAO,GAAG,SAAS,CAAA;CAAE,CAAC,CA4BxC"}
@@ -1,4 +1,4 @@
1
- import { IncomingNoteDao } from '../database/incoming_note_dao.js';
1
+ import { NoteDao } from '../database/note_dao.js';
2
2
  import { produceNoteDaosForKey } from './produce_note_daos_for_key.js';
3
3
  /**
4
4
  * Decodes a note from a transaction that we know was intended for us.
@@ -18,16 +18,16 @@ import { produceNoteDaosForKey } from './produce_note_daos_for_key.js';
18
18
  * @param unencryptedLogs - Unencrypted logs for the transaction (used to complete partial notes).
19
19
  * @returns An object containing the incoming notes.
20
20
  */
21
- export async function produceNoteDaos(simulator, db, addressPoint, payload, txHash, l2BlockNumber, l2BlockHash, noteHashes, dataStartIndexForTx, excludedIndices, logger) {
21
+ export async function produceNoteDaos(simulator, db, addressPoint, payload, txHash, firstNullifier, l2BlockNumber, l2BlockHash, noteHashes, dataStartIndexForTx, excludedIndices, logger) {
22
22
  if (!addressPoint) {
23
23
  throw new Error('addressPoint is undefined. Cannot create note.');
24
24
  }
25
- let incomingNote;
25
+ let note;
26
26
  if (addressPoint) {
27
- incomingNote = await produceNoteDaosForKey(simulator, db, addressPoint, payload, txHash, l2BlockNumber, l2BlockHash, noteHashes, dataStartIndexForTx, excludedIndices, logger, IncomingNoteDao.fromPayloadAndNoteInfo);
27
+ note = await produceNoteDaosForKey(simulator, db, addressPoint, payload, txHash, firstNullifier, l2BlockNumber, l2BlockHash, noteHashes, dataStartIndexForTx, excludedIndices, logger, NoteDao.fromPayloadAndNoteInfo);
28
28
  }
29
29
  return {
30
- incomingNote,
30
+ note,
31
31
  };
32
32
  }
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjZV9ub3RlX2Rhb3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbm90ZV9kZWNyeXB0aW9uX3V0aWxzL3Byb2R1Y2Vfbm90ZV9kYW9zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUVuRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV2RTs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQkc7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLGVBQWUsQ0FDbkMsU0FBd0IsRUFDeEIsRUFBZSxFQUNmLFlBQW1DLEVBQ25DLE9BQXNCLEVBQ3RCLE1BQWMsRUFDZCxhQUFxQixFQUNyQixXQUFtQixFQUNuQixVQUFnQixFQUNoQixtQkFBMkIsRUFDM0IsZUFBNEIsRUFDNUIsTUFBYztJQUVkLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNsQixNQUFNLElBQUksS0FBSyxDQUFDLGdEQUFnRCxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVELElBQUksWUFBeUMsQ0FBQztJQUU5QyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2pCLFlBQVksR0FBRyxNQUFNLHFCQUFxQixDQUN4QyxTQUFTLEVBQ1QsRUFBRSxFQUNGLFlBQVksRUFDWixPQUFPLEVBQ1AsTUFBTSxFQUNOLGFBQWEsRUFDYixXQUFXLEVBQ1gsVUFBVSxFQUNWLG1CQUFtQixFQUNuQixlQUFlLEVBQ2YsTUFBTSxFQUNOLGVBQWUsQ0FBQyxzQkFBc0IsQ0FDdkMsQ0FBQztJQUNKLENBQUM7SUFFRCxPQUFPO1FBQ0wsWUFBWTtLQUNiLENBQUM7QUFDSixDQUFDIn0=
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjZV9ub3RlX2Rhb3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbm90ZV9kZWNyeXB0aW9uX3V0aWxzL3Byb2R1Y2Vfbm90ZV9kYW9zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVsRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV2RTs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQkc7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLGVBQWUsQ0FDbkMsU0FBd0IsRUFDeEIsRUFBZSxFQUNmLFlBQW1DLEVBQ25DLE9BQXNCLEVBQ3RCLE1BQWMsRUFDZCxjQUFrQixFQUNsQixhQUFxQixFQUNyQixXQUFtQixFQUNuQixVQUFnQixFQUNoQixtQkFBMkIsRUFDM0IsZUFBNEIsRUFDNUIsTUFBYztJQUVkLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNsQixNQUFNLElBQUksS0FBSyxDQUFDLGdEQUFnRCxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVELElBQUksSUFBeUIsQ0FBQztJQUU5QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2pCLElBQUksR0FBRyxNQUFNLHFCQUFxQixDQUNoQyxTQUFTLEVBQ1QsRUFBRSxFQUNGLFlBQVksRUFDWixPQUFPLEVBQ1AsTUFBTSxFQUNOLGNBQWMsRUFDZCxhQUFhLEVBQ2IsV0FBVyxFQUNYLFVBQVUsRUFDVixtQkFBbUIsRUFDbkIsZUFBZSxFQUNmLE1BQU0sRUFDTixPQUFPLENBQUMsc0JBQXNCLENBQy9CLENBQUM7SUFDSixDQUFDO0lBRUQsT0FBTztRQUNMLElBQUk7S0FDTCxDQUFDO0FBQ0osQ0FBQyJ9
@@ -4,5 +4,5 @@ import { type Logger } from '@aztec/foundation/log';
4
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
- 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>;
7
+ export declare function produceNoteDaosForKey<T>(simulator: AcirSimulator, db: PxeDatabase, pkM: PublicKey, payload: L1NotePayload, txHash: TxHash, firstNullifier: Fr, 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>;
8
8
  //# sourceMappingURL=produce_note_daos_for_key.d.ts.map
@@ -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,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
+ {"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,cAAc,EAAE,EAAE,EAClB,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,CA2BxB"}
@@ -1,11 +1,11 @@
1
1
  import { getOrderedNoteItems } from './add_public_values_to_payload.js';
2
2
  import { bruteForceNoteInfo } from './brute_force_note_info.js';
3
- export async function produceNoteDaosForKey(simulator, db, pkM, payload, txHash, l2BlockNumber, l2BlockHash, noteHashes, dataStartIndexForTx, excludedIndices, logger, daoConstructor) {
3
+ export async function produceNoteDaosForKey(simulator, db, pkM, payload, txHash, firstNullifier, l2BlockNumber, l2BlockHash, noteHashes, dataStartIndexForTx, excludedIndices, logger, daoConstructor) {
4
4
  let noteDao;
5
5
  try {
6
6
  // We get the note by merging publicly and privately delivered note values.
7
7
  const note = await getOrderedNoteItems(db, payload);
8
- const noteInfo = await bruteForceNoteInfo(simulator, noteHashes, txHash, payload.contractAddress, payload.storageSlot, payload.noteTypeId, note, excludedIndices, true);
8
+ const noteInfo = await bruteForceNoteInfo(simulator, noteHashes, txHash, firstNullifier, payload.contractAddress, payload.storageSlot, payload.noteTypeId, note, excludedIndices, true);
9
9
  excludedIndices?.add(noteInfo.noteHashIndex);
10
10
  noteDao = daoConstructor(note, payload, noteInfo, l2BlockNumber, l2BlockHash, dataStartIndexForTx, pkM);
11
11
  }
@@ -14,4 +14,4 @@ export async function produceNoteDaosForKey(simulator, db, pkM, payload, txHash,
14
14
  }
15
15
  return noteDao;
16
16
  }
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjZV9ub3RlX2Rhb3NfZm9yX2tleS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub3RlX2RlY3J5cHRpb25fdXRpbHMvcHJvZHVjZV9ub3RlX2Rhb3NfZm9yX2tleS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN4RSxPQUFPLEVBQWlCLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFL0UsTUFBTSxDQUFDLEtBQUssVUFBVSxxQkFBcUIsQ0FDekMsU0FBd0IsRUFDeEIsRUFBZSxFQUNmLEdBQWMsRUFDZCxPQUFzQixFQUN0QixNQUFjLEVBQ2QsYUFBcUIsRUFDckIsV0FBbUIsRUFDbkIsVUFBZ0IsRUFDaEIsbUJBQTJCLEVBQzNCLGVBQTRCLEVBQzVCLE1BQWMsRUFDZCxjQVFNO0lBRU4sSUFBSSxPQUFzQixDQUFDO0lBRTNCLElBQUksQ0FBQztRQUNILDJFQUEyRTtRQUMzRSxNQUFNLElBQUksR0FBRyxNQUFNLG1CQUFtQixDQUFDLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUVwRCxNQUFNLFFBQVEsR0FBRyxNQUFNLGtCQUFrQixDQUN2QyxTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFDTixPQUFPLENBQUMsZUFBZSxFQUN2QixPQUFPLENBQUMsV0FBVyxFQUNuQixPQUFPLENBQUMsVUFBVSxFQUNsQixJQUFJLEVBQ0osZUFBZSxFQUNmLElBQUksQ0FDTCxDQUFDO1FBQ0YsZUFBZSxFQUFFLEdBQUcsQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLENBQUM7UUFFN0MsT0FBTyxHQUFHLGNBQWMsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQzFHLENBQUM7SUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1FBQ1gsTUFBTSxDQUFDLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO0lBQy9FLENBQUM7SUFFRCxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDIn0=
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjZV9ub3RlX2Rhb3NfZm9yX2tleS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub3RlX2RlY3J5cHRpb25fdXRpbHMvcHJvZHVjZV9ub3RlX2Rhb3NfZm9yX2tleS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN4RSxPQUFPLEVBQWlCLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFL0UsTUFBTSxDQUFDLEtBQUssVUFBVSxxQkFBcUIsQ0FDekMsU0FBd0IsRUFDeEIsRUFBZSxFQUNmLEdBQWMsRUFDZCxPQUFzQixFQUN0QixNQUFjLEVBQ2QsY0FBa0IsRUFDbEIsYUFBcUIsRUFDckIsV0FBbUIsRUFDbkIsVUFBZ0IsRUFDaEIsbUJBQTJCLEVBQzNCLGVBQTRCLEVBQzVCLE1BQWMsRUFDZCxjQVFNO0lBRU4sSUFBSSxPQUFzQixDQUFDO0lBRTNCLElBQUksQ0FBQztRQUNILDJFQUEyRTtRQUMzRSxNQUFNLElBQUksR0FBRyxNQUFNLG1CQUFtQixDQUFDLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUVwRCxNQUFNLFFBQVEsR0FBRyxNQUFNLGtCQUFrQixDQUN2QyxTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFDTixjQUFjLEVBQ2QsT0FBTyxDQUFDLGVBQWUsRUFDdkIsT0FBTyxDQUFDLFdBQVcsRUFDbkIsT0FBTyxDQUFDLFVBQVUsRUFDbEIsSUFBSSxFQUNKLGVBQWUsRUFDZixJQUFJLENBQ0wsQ0FBQztRQUNGLGVBQWUsRUFBRSxHQUFHLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRTdDLE9BQU8sR0FBRyxjQUFjLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUMxRyxDQUFDO0lBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNYLE1BQU0sQ0FBQyxLQUFLLENBQUMsc0NBQXNDLENBQUMsdUJBQXVCLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBRUQsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQyJ9
@@ -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 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';
1
+ import { type AuthWitness, type AztecNode, type EventMetadataDefinition, type ExtendedNote, type GetUnencryptedLogsResponse, type InBlock, type L2Block, type LogFilter, type NotesFilter, 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 { CompleteAddress, ContractClassWithId, ContractInstanceWithAddress, GasFees, L1_TO_L2_MSG_TREE_HEIGHT, NodeInfo, PartialAddress } from '@aztec/circuits.js';
3
3
  import { type AbiDecoded, type ContractArtifact } from '@aztec/foundation/abi';
4
4
  import { type AztecAddress } from '@aztec/foundation/aztec-address';
@@ -21,6 +21,7 @@ export declare class PXEService implements PXE {
21
21
  private simulator;
22
22
  private log;
23
23
  private packageVersion;
24
+ private proverEnabled;
24
25
  constructor(keyStore: KeyStore, node: AztecNode, db: PxeDatabase, tipsStore: L2TipsStore, proofCreator: PrivateKernelProver, config: PXEServiceConfig, logSuffix?: string);
25
26
  /**
26
27
  * Starts the PXE Service by beginning the synchronization process between the Aztec node and the database.
@@ -49,7 +50,7 @@ export declare class PXEService implements PXE {
49
50
  }): Promise<void>;
50
51
  getContracts(): Promise<AztecAddress[]>;
51
52
  getPublicStorageAt(contract: AztecAddress, slot: Fr): Promise<Fr>;
52
- getIncomingNotes(filter: IncomingNotesFilter): Promise<UniqueNote[]>;
53
+ getNotes(filter: NotesFilter): Promise<UniqueNote[]>;
53
54
  getL1ToL2MembershipWitness(contractAddress: AztecAddress, messageHash: Fr, secret: Fr): Promise<[bigint, SiblingPath<typeof L1_TO_L2_MSG_TREE_HEIGHT>]>;
54
55
  addNote(note: ExtendedNote, scope?: AztecAddress): Promise<void>;
55
56
  addNullifiedNote(note: ExtendedNote): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"pxe_service.d.ts","sourceRoot":"","sources":["../../src/pxe_service/pxe_service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pxe_service.d.ts","sourceRoot":"","sources":["../../src/pxe_service/pxe_service.ts"],"names":[],"mappings":"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"}