@aztec/prover-client 0.75.0-commit.c03ba01a2a4122e43e90d5133ba017e54b90e9d2 → 0.76.0

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 (136) hide show
  1. package/dest/bin/get-proof-inputs.d.ts +2 -0
  2. package/dest/bin/get-proof-inputs.d.ts.map +1 -0
  3. package/dest/bin/get-proof-inputs.js +16 -18
  4. package/dest/block_builder/index.d.ts +6 -0
  5. package/dest/block_builder/index.d.ts.map +1 -0
  6. package/dest/block_builder/index.js +1 -0
  7. package/dest/block_builder/light.d.ts +31 -0
  8. package/dest/block_builder/light.d.ts.map +1 -0
  9. package/dest/block_builder/light.js +13 -23
  10. package/dest/config.d.ts +17 -0
  11. package/dest/config.d.ts.map +1 -0
  12. package/dest/config.js +11 -9
  13. package/dest/index.d.ts +4 -0
  14. package/dest/index.d.ts.map +1 -0
  15. package/dest/index.js +1 -0
  16. package/dest/mocks/fixtures.d.ts +19 -0
  17. package/dest/mocks/fixtures.d.ts.map +1 -0
  18. package/dest/mocks/fixtures.js +26 -28
  19. package/dest/mocks/test_context.d.ts +49 -0
  20. package/dest/mocks/test_context.d.ts.map +1 -0
  21. package/dest/mocks/test_context.js +46 -72
  22. package/dest/orchestrator/block-building-helpers.d.ts +50 -0
  23. package/dest/orchestrator/block-building-helpers.d.ts.map +1 -0
  24. package/dest/orchestrator/block-building-helpers.js +81 -99
  25. package/dest/orchestrator/block-proving-state.d.ts +71 -0
  26. package/dest/orchestrator/block-proving-state.d.ts.map +1 -0
  27. package/dest/orchestrator/block-proving-state.js +74 -99
  28. package/dest/orchestrator/epoch-proving-state.d.ts +56 -0
  29. package/dest/orchestrator/epoch-proving-state.d.ts.map +1 -0
  30. package/dest/orchestrator/epoch-proving-state.js +41 -57
  31. package/dest/orchestrator/index.d.ts +2 -0
  32. package/dest/orchestrator/index.d.ts.map +1 -0
  33. package/dest/orchestrator/index.js +1 -0
  34. package/dest/orchestrator/orchestrator.d.ts +108 -0
  35. package/dest/orchestrator/orchestrator.d.ts.map +1 -0
  36. package/dest/orchestrator/orchestrator.js +654 -650
  37. package/dest/orchestrator/orchestrator_metrics.d.ts +8 -0
  38. package/dest/orchestrator/orchestrator_metrics.d.ts.map +1 -0
  39. package/dest/orchestrator/orchestrator_metrics.js +3 -4
  40. package/dest/orchestrator/tx-proving-state.d.ts +31 -0
  41. package/dest/orchestrator/tx-proving-state.d.ts.map +1 -0
  42. package/dest/orchestrator/tx-proving-state.js +52 -53
  43. package/dest/prover-client/factory.d.ts +6 -0
  44. package/dest/prover-client/factory.d.ts.map +1 -0
  45. package/dest/prover-client/factory.js +1 -0
  46. package/dest/prover-client/index.d.ts +3 -0
  47. package/dest/prover-client/index.d.ts.map +1 -0
  48. package/dest/prover-client/index.js +1 -0
  49. package/dest/prover-client/prover-client.d.ts +42 -0
  50. package/dest/prover-client/prover-client.d.ts.map +1 -0
  51. package/dest/prover-client/prover-client.js +25 -30
  52. package/dest/prover-client/server-epoch-prover.d.ts +25 -0
  53. package/dest/prover-client/server-epoch-prover.d.ts.map +1 -0
  54. package/dest/prover-client/server-epoch-prover.js +4 -4
  55. package/dest/proving_broker/broker_prover_facade.d.ts +39 -0
  56. package/dest/proving_broker/broker_prover_facade.d.ts.map +1 -0
  57. package/dest/proving_broker/broker_prover_facade.js +59 -70
  58. package/dest/proving_broker/config.d.ts +61 -0
  59. package/dest/proving_broker/config.d.ts.map +1 -0
  60. package/dest/proving_broker/config.js +37 -22
  61. package/dest/proving_broker/factory.d.ts +5 -0
  62. package/dest/proving_broker/factory.d.ts.map +1 -0
  63. package/dest/proving_broker/factory.js +2 -1
  64. package/dest/proving_broker/fixtures.d.ts +5 -0
  65. package/dest/proving_broker/fixtures.d.ts.map +1 -0
  66. package/dest/proving_broker/fixtures.js +1 -0
  67. package/dest/proving_broker/index.d.ts +10 -0
  68. package/dest/proving_broker/index.d.ts.map +1 -0
  69. package/dest/proving_broker/index.js +1 -0
  70. package/dest/proving_broker/proof_store/factory.d.ts +6 -0
  71. package/dest/proving_broker/proof_store/factory.d.ts.map +1 -0
  72. package/dest/proving_broker/proof_store/factory.js +12 -9
  73. package/dest/proving_broker/proof_store/gcs_proof_store.d.ts +13 -0
  74. package/dest/proving_broker/proof_store/gcs_proof_store.d.ts.map +1 -0
  75. package/dest/proving_broker/proof_store/gcs_proof_store.js +7 -11
  76. package/dest/proving_broker/proof_store/index.d.ts +4 -0
  77. package/dest/proving_broker/proof_store/index.d.ts.map +1 -0
  78. package/dest/proving_broker/proof_store/index.js +1 -0
  79. package/dest/proving_broker/proof_store/inline_proof_store.d.ts +14 -0
  80. package/dest/proving_broker/proof_store/inline_proof_store.d.ts.map +1 -0
  81. package/dest/proving_broker/proof_store/inline_proof_store.js +7 -11
  82. package/dest/proving_broker/proof_store/proof_store.d.ts +35 -0
  83. package/dest/proving_broker/proof_store/proof_store.d.ts.map +1 -0
  84. package/dest/proving_broker/proof_store/proof_store.js +2 -3
  85. package/dest/proving_broker/proving_agent.d.ts +45 -0
  86. package/dest/proving_broker/proving_agent.d.ts.map +1 -0
  87. package/dest/proving_broker/proving_agent.js +124 -120
  88. package/dest/proving_broker/proving_agent_instrumentation.d.ts +8 -0
  89. package/dest/proving_broker/proving_agent_instrumentation.d.ts.map +1 -0
  90. package/dest/proving_broker/proving_agent_instrumentation.js +3 -3
  91. package/dest/proving_broker/proving_broker.d.ts +72 -0
  92. package/dest/proving_broker/proving_broker.d.ts.map +1 -0
  93. package/dest/proving_broker/proving_broker.js +449 -491
  94. package/dest/proving_broker/proving_broker_database/memory.d.ts +16 -0
  95. package/dest/proving_broker/proving_broker_database/memory.d.ts.map +1 -0
  96. package/dest/proving_broker/proving_broker_database/memory.js +13 -19
  97. package/dest/proving_broker/proving_broker_database/persisted.d.ts +21 -0
  98. package/dest/proving_broker/proving_broker_database/persisted.d.ts.map +1 -0
  99. package/dest/proving_broker/proving_broker_database/persisted.js +21 -41
  100. package/dest/proving_broker/proving_broker_database.d.ts +39 -0
  101. package/dest/proving_broker/proving_broker_database.d.ts.map +1 -0
  102. package/dest/proving_broker/proving_broker_database.js +2 -3
  103. package/dest/proving_broker/proving_broker_instrumentation.d.ts +25 -0
  104. package/dest/proving_broker/proving_broker_instrumentation.d.ts.map +1 -0
  105. package/dest/proving_broker/proving_broker_instrumentation.js +21 -28
  106. package/dest/proving_broker/proving_job_controller.d.ts +31 -0
  107. package/dest/proving_broker/proving_job_controller.d.ts.map +1 -0
  108. package/dest/proving_broker/proving_job_controller.js +62 -81
  109. package/dest/proving_broker/rpc.d.ts +26 -0
  110. package/dest/proving_broker/rpc.d.ts.map +1 -0
  111. package/dest/proving_broker/rpc.js +36 -26
  112. package/dest/test/mock_prover.d.ts +35 -0
  113. package/dest/test/mock_prover.d.ts.map +1 -0
  114. package/dest/test/mock_prover.js +13 -11
  115. package/package.json +12 -13
  116. package/src/index.ts +1 -1
  117. package/src/mocks/test_context.ts +23 -22
  118. package/src/orchestrator/block-building-helpers.ts +1 -38
  119. package/src/orchestrator/block-proving-state.ts +15 -15
  120. package/src/orchestrator/epoch-proving-state.ts +7 -10
  121. package/src/orchestrator/orchestrator.ts +36 -39
  122. package/src/orchestrator/tx-proving-state.ts +13 -13
  123. package/src/proving_broker/rpc.ts +24 -4
  124. package/src/test/mock_prover.ts +7 -1
  125. package/dest/prover-agent/index.js +0 -3
  126. package/dest/prover-agent/memory-proving-queue.js +0 -249
  127. package/dest/prover-agent/prover-agent.js +0 -201
  128. package/dest/prover-agent/proving-error.js +0 -8
  129. package/dest/prover-agent/queue_metrics.js +0 -24
  130. package/dest/prover-agent/rpc.js +0 -20
  131. package/src/prover-agent/index.ts +0 -3
  132. package/src/prover-agent/memory-proving-queue.ts +0 -416
  133. package/src/prover-agent/prover-agent.ts +0 -248
  134. package/src/prover-agent/proving-error.ts +0 -9
  135. package/src/prover-agent/queue_metrics.ts +0 -29
  136. package/src/prover-agent/rpc.ts +0 -22
@@ -1,12 +1,11 @@
1
1
  import { makeBloatedProcessedTx } from '@aztec/circuit-types/test';
2
- import { TreeSnapshots } from '@aztec/circuits.js';
2
+ import { TreeSnapshots, } from '@aztec/circuits.js';
3
3
  import { times, timesParallel } from '@aztec/foundation/collection';
4
4
  import { Fr } from '@aztec/foundation/fields';
5
5
  import { TestDateProvider } from '@aztec/foundation/timer';
6
6
  import { getVKTreeRoot } from '@aztec/noir-protocol-circuits-types/vks';
7
7
  import { protocolContractTreeRoot } from '@aztec/protocol-contracts';
8
- import { PublicProcessor, PublicTxSimulator, WASMSimulatorWithBlobs } from '@aztec/simulator/server';
9
- import { getTelemetryClient } from '@aztec/telemetry-client';
8
+ import { PublicProcessor, PublicTxSimulator, WASMSimulatorWithBlobs, } from '@aztec/simulator/server';
10
9
  import { NativeWorldStateService } from '@aztec/world-state/native';
11
10
  import { jest } from '@jest/globals';
12
11
  import { promises as fs } from 'fs';
@@ -15,30 +14,17 @@ import { TestCircuitProver } from '../../../bb-prover/src/test/test_circuit_prov
15
14
  import { AvmFinalizedCallResult } from '../../../simulator/src/avm/avm_contract_call_result.js';
16
15
  import { buildBlock } from '../block_builder/light.js';
17
16
  import { ProvingOrchestrator } from '../orchestrator/index.js';
18
- import { MemoryProvingQueue } from '../prover-agent/memory-proving-queue.js';
19
- import { ProverAgent } from '../prover-agent/prover-agent.js';
17
+ import { TestBroker } from '../test/mock_prover.js';
20
18
  import { getEnvironmentConfig, getSimulationProvider, makeGlobals, updateExpectedTreesFromTxs } from './fixtures.js';
21
19
  export class TestContext {
22
- publicTxSimulator;
23
- worldState;
24
- publicProcessor;
25
- simulationProvider;
26
- globalVariables;
27
- prover;
28
- proverAgent;
29
- orchestrator;
30
- blockNumber;
31
- directoriesToCleanup;
32
- logger;
33
- headers;
34
- constructor(publicTxSimulator, worldState, publicProcessor, simulationProvider, globalVariables, prover, proverAgent, orchestrator, blockNumber, directoriesToCleanup, logger){
20
+ constructor(publicTxSimulator, worldState, publicProcessor, simulationProvider, globalVariables, prover, broker, orchestrator, blockNumber, directoriesToCleanup, logger) {
35
21
  this.publicTxSimulator = publicTxSimulator;
36
22
  this.worldState = worldState;
37
23
  this.publicProcessor = publicProcessor;
38
24
  this.simulationProvider = simulationProvider;
39
25
  this.globalVariables = globalVariables;
40
26
  this.prover = prover;
41
- this.proverAgent = proverAgent;
27
+ this.broker = broker;
42
28
  this.orchestrator = orchestrator;
43
29
  this.blockNumber = blockNumber;
44
30
  this.directoriesToCleanup = directoriesToCleanup;
@@ -48,7 +34,7 @@ export class TestContext {
48
34
  get epochProver() {
49
35
  return this.orchestrator;
50
36
  }
51
- static async new(logger, proverCount = 4, createProver = (_)=>Promise.resolve(new TestCircuitProver(new WASMSimulatorWithBlobs())), blockNumber = 1) {
37
+ static async new(logger, proverCount = 4, createProver = _ => Promise.resolve(new TestCircuitProver(new WASMSimulatorWithBlobs())), blockNumber = 1) {
52
38
  const directoriesToCleanup = [];
53
39
  const globalVariables = makeGlobals(blockNumber);
54
40
  const worldStateDB = mock();
@@ -62,29 +48,28 @@ export class TestContext {
62
48
  const config = await getEnvironmentConfig(logger);
63
49
  const simulationProvider = await getSimulationProvider({
64
50
  acvmWorkingDirectory: config?.acvmWorkingDirectory,
65
- acvmBinaryPath: config?.expectedAcvmPath
51
+ acvmBinaryPath: config?.expectedAcvmPath,
66
52
  });
67
53
  if (!config) {
68
54
  localProver = new TestCircuitProver(simulationProvider);
69
- } else {
55
+ }
56
+ else {
70
57
  const bbConfig = {
71
58
  acvmBinaryPath: config.expectedAcvmPath,
72
59
  acvmWorkingDirectory: config.acvmWorkingDirectory,
73
60
  bbBinaryPath: config.expectedBBPath,
74
61
  bbWorkingDirectory: config.bbWorkingDirectory,
75
- bbSkipCleanup: config.bbSkipCleanup
62
+ bbSkipCleanup: config.bbSkipCleanup,
76
63
  };
77
64
  localProver = await createProver(bbConfig);
78
65
  }
79
66
  if (config?.directoryToCleanup && !config.bbSkipCleanup) {
80
67
  directoriesToCleanup.push(config.directoryToCleanup);
81
68
  }
82
- const queue = new MemoryProvingQueue(getTelemetryClient());
83
- const orchestrator = new TestProvingOrchestrator(ws, queue, Fr.ZERO);
84
- const agent = new ProverAgent(localProver, proverCount, undefined);
85
- queue.start();
86
- agent.start(queue);
87
- return new this(publicTxSimulator, ws, processor, simulationProvider, globalVariables, localProver, agent, orchestrator, blockNumber, directoriesToCleanup, logger);
69
+ const broker = new TestBroker(proverCount, localProver);
70
+ const orchestrator = new TestProvingOrchestrator(ws, broker.facade, Fr.ZERO);
71
+ await broker.start();
72
+ return new this(publicTxSimulator, ws, processor, simulationProvider, globalVariables, localProver, broker, orchestrator, blockNumber, directoriesToCleanup, logger);
88
73
  }
89
74
  getFork() {
90
75
  return this.worldState.fork();
@@ -96,56 +81,43 @@ export class TestContext {
96
81
  return this.getBlockHeader(currentBlockNumber - 1);
97
82
  }
98
83
  async cleanup() {
99
- await this.proverAgent.stop();
100
- for (const dir of this.directoriesToCleanup.filter((x)=>x !== '')){
101
- await fs.rm(dir, {
102
- recursive: true,
103
- force: true
104
- });
84
+ await this.broker.stop();
85
+ for (const dir of this.directoriesToCleanup.filter(x => x !== '')) {
86
+ await fs.rm(dir, { recursive: true, force: true });
105
87
  }
106
88
  }
107
- async makeProcessedTx(seedOrOpts) {
108
- const opts = typeof seedOrOpts === 'number' ? {
109
- seed: seedOrOpts
110
- } : seedOrOpts;
89
+ makeProcessedTx(seedOrOpts) {
90
+ const opts = typeof seedOrOpts === 'number' ? { seed: seedOrOpts } : seedOrOpts;
111
91
  const blockNum = (opts?.globalVariables ?? this.globalVariables).blockNumber.toNumber();
112
92
  const header = this.getBlockHeader(blockNum - 1);
113
93
  return makeBloatedProcessedTx({
114
94
  header,
115
- vkTreeRoot: await getVKTreeRoot(),
95
+ vkTreeRoot: getVKTreeRoot(),
116
96
  protocolContractTreeRoot,
117
97
  globalVariables: this.globalVariables,
118
- ...opts
98
+ ...opts,
119
99
  });
120
100
  }
121
- /** Creates a block with the given number of txs and adds it to world-state */ async makePendingBlock(numTxs, numMsgs = 0, blockNumOrGlobals = this.globalVariables, makeProcessedTxOpts = ()=>({})) {
101
+ /** Creates a block with the given number of txs and adds it to world-state */
102
+ async makePendingBlock(numTxs, numMsgs = 0, blockNumOrGlobals = this.globalVariables, makeProcessedTxOpts = () => ({})) {
122
103
  const globalVariables = typeof blockNumOrGlobals === 'number' ? makeGlobals(blockNumOrGlobals) : blockNumOrGlobals;
123
104
  const blockNum = globalVariables.blockNumber.toNumber();
124
105
  const db = await this.worldState.fork();
125
- const msgs = times(numMsgs, (i)=>new Fr(blockNum * 100 + i));
126
- const txs = await timesParallel(numTxs, (i)=>this.makeProcessedTx({
127
- seed: i + blockNum * 1000,
128
- globalVariables,
129
- ...makeProcessedTxOpts(i)
130
- }));
131
- await this.setEndTreeRoots(txs);
106
+ const msgs = times(numMsgs, i => new Fr(blockNum * 100 + i));
107
+ const txs = await timesParallel(numTxs, i => this.makeProcessedTx({ seed: i + blockNum * 1000, globalVariables, ...makeProcessedTxOpts(i) }));
108
+ await this.setTreeRoots(txs);
132
109
  const block = await buildBlock(txs, globalVariables, msgs, db);
133
110
  this.headers.set(blockNum, block.header);
134
111
  await this.worldState.handleL2BlockAndMessages(block, msgs);
135
- return {
136
- block,
137
- txs,
138
- msgs
139
- };
112
+ return { block, txs, msgs };
140
113
  }
141
114
  async processPublicFunctions(txs, maxTransactions) {
142
- const defaultExecutorImplementation = (_stateManager, executionRequest, allocatedGas, _transactionFee, _fnName)=>{
143
- for (const tx of txs){
144
- const allCalls = tx.publicTeardownFunctionCall.isEmpty() ? tx.enqueuedPublicFunctionCalls : [
145
- ...tx.enqueuedPublicFunctionCalls,
146
- tx.publicTeardownFunctionCall
147
- ];
148
- for (const request of allCalls){
115
+ const defaultExecutorImplementation = (_stateManager, executionRequest, allocatedGas, _transactionFee, _fnName) => {
116
+ for (const tx of txs) {
117
+ const allCalls = tx.publicTeardownFunctionCall.isEmpty()
118
+ ? tx.enqueuedPublicFunctionCalls
119
+ : [...tx.enqueuedPublicFunctionCalls, tx.publicTeardownFunctionCall];
120
+ for (const request of allCalls) {
149
121
  if (executionRequest.callContext.equals(request.callContext)) {
150
122
  return Promise.resolve(new AvmFinalizedCallResult(/*reverted=*/ false, /*output=*/ [], /*gasLeft=*/ allocatedGas));
151
123
  }
@@ -155,15 +127,15 @@ export class TestContext {
155
127
  };
156
128
  return await this.processPublicFunctionsWithMockExecutorImplementation(txs, maxTransactions, defaultExecutorImplementation);
157
129
  }
158
- async setEndTreeRoots(txs) {
130
+ async setTreeRoots(txs) {
159
131
  const db = await this.worldState.fork();
160
- for (const tx of txs){
161
- await updateExpectedTreesFromTxs(db, [
162
- tx
163
- ]);
164
- const stateReference = await db.getStateReference();
132
+ for (const tx of txs) {
133
+ const startStateReference = await db.getStateReference();
134
+ await updateExpectedTreesFromTxs(db, [tx]);
135
+ const endStateReference = await db.getStateReference();
165
136
  if (tx.avmProvingRequest) {
166
- tx.avmProvingRequest.inputs.publicInputs.endTreeSnapshots = new TreeSnapshots(stateReference.l1ToL2MessageTree, stateReference.partial.noteHashTree, stateReference.partial.nullifierTree, stateReference.partial.publicDataTree);
137
+ tx.avmProvingRequest.inputs.publicInputs.startTreeSnapshots = new TreeSnapshots(startStateReference.l1ToL2MessageTree, startStateReference.partial.noteHashTree, startStateReference.partial.nullifierTree, startStateReference.partial.publicDataTree);
138
+ tx.avmProvingRequest.inputs.publicInputs.endTreeSnapshots = new TreeSnapshots(endStateReference.l1ToL2MessageTree, endStateReference.partial.noteHashTree, endStateReference.partial.nullifierTree, endStateReference.partial.publicDataTree);
167
139
  }
168
140
  }
169
141
  }
@@ -173,13 +145,14 @@ export class TestContext {
173
145
  if (executorMock) {
174
146
  simulateInternal.mockImplementation(executorMock);
175
147
  }
176
- return await this.publicProcessor.process(txs, {
177
- maxTransactions
178
- });
148
+ return await this.publicProcessor.process(txs, { maxTransactions });
179
149
  }
180
150
  }
181
151
  class TestProvingOrchestrator extends ProvingOrchestrator {
182
- isVerifyBuiltBlockAgainstSyncedStateEnabled = false;
152
+ constructor() {
153
+ super(...arguments);
154
+ this.isVerifyBuiltBlockAgainstSyncedStateEnabled = false;
155
+ }
183
156
  // Disable this check by default, since it requires seeding world state with the block being built
184
157
  // This is only enabled in some tests with multiple blocks that populate the pending chain via makePendingBlock
185
158
  verifyBuiltBlockAgainstSyncedState(l2Block, newArchive) {
@@ -189,3 +162,4 @@ class TestProvingOrchestrator extends ProvingOrchestrator {
189
162
  return Promise.resolve();
190
163
  }
191
164
  }
165
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdF9jb250ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vY2tzL3Rlc3RfY29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRQSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNuRSxPQUFPLEVBS0wsYUFBYSxHQUNkLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFOUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3JFLE9BQU8sRUFDTCxlQUFlLEVBQ2YsaUJBQWlCLEVBRWpCLHNCQUFzQixHQUV2QixNQUFNLHlCQUF5QixDQUFDO0FBRWpDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXBFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckMsT0FBTyxFQUFFLFFBQVEsSUFBSSxFQUFFLEVBQUUsTUFBTSxJQUFJLENBQUM7QUFDcEMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRTFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBRWhHLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sd0JB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
@@ -0,0 +1,50 @@
1
+ /// <reference types="node" resolution-mode="require"/>
2
+ /// <reference types="node" resolution-mode="require"/>
3
+ import { Blob } from '@aztec/blob-lib';
4
+ import { Body, MerkleTreeId, type MerkleTreeWriteOperations, type ProcessedTx, TxEffect } from '@aztec/circuit-types';
5
+ import { AppendOnlyTreeSnapshot, BlockHeader, Fr, type GlobalVariables, MembershipWitness, type ParityPublicInputs, PartialStateReference, PublicDataHint, StateReference } from '@aztec/circuits.js';
6
+ import { type SpongeBlob } from '@aztec/circuits.js/blobs';
7
+ import { type BaseOrMergeRollupPublicInputs, type BlockRootOrBlockMergePublicInputs, ConstantRollupData, PrivateBaseRollupHints, PublicBaseRollupHints } from '@aztec/circuits.js/rollup';
8
+ import { type Logger } from '@aztec/foundation/log';
9
+ import { type Tuple } from '@aztec/foundation/serialize';
10
+ import { type MerkleTreeReadOperations } from '@aztec/world-state';
11
+ /**
12
+ * Type representing the names of the trees for the base rollup.
13
+ */
14
+ type BaseTreeNames = 'NoteHashTree' | 'ContractTree' | 'NullifierTree' | 'PublicDataTree';
15
+ /**
16
+ * Type representing the names of the trees.
17
+ */
18
+ export type TreeNames = BaseTreeNames | 'L1ToL2MessageTree' | 'Archive';
19
+ export declare const buildBaseRollupHints: (tx: ProcessedTx, globalVariables: GlobalVariables, db: MerkleTreeWriteOperations, startSpongeBlob: SpongeBlob) => Promise<PublicBaseRollupHints | PrivateBaseRollupHints>;
20
+ export declare function getPublicDataHint(db: MerkleTreeWriteOperations, leafSlot: bigint): Promise<PublicDataHint>;
21
+ export declare const buildBlobHints: (txEffects: TxEffect[]) => Promise<{
22
+ blobFields: Fr[];
23
+ blobCommitments: [Fr, Fr][];
24
+ blobs: Blob[];
25
+ blobsHash: Fr;
26
+ }>;
27
+ export declare const buildHeaderFromCircuitOutputs: (previousRollupData: BaseOrMergeRollupPublicInputs[], parityPublicInputs: ParityPublicInputs, rootRollupOutputs: BlockRootOrBlockMergePublicInputs, endState: StateReference, logger?: Logger | undefined) => Promise<BlockHeader>;
28
+ export declare const buildHeaderAndBodyFromTxs: (txs: ProcessedTx[], globalVariables: GlobalVariables, l1ToL2Messages: Fr[], db: MerkleTreeReadOperations) => Promise<{
29
+ header: BlockHeader;
30
+ body: Body;
31
+ }>;
32
+ export declare function getBlobsHashFromBlobs(inputs: Blob[]): Buffer;
33
+ export declare function validateBlockRootOutput(blockRootOutput: BlockRootOrBlockMergePublicInputs, blockHeader: BlockHeader, db: MerkleTreeReadOperations): Promise<void>;
34
+ export declare const validateState: (state: StateReference, db: MerkleTreeReadOperations) => Promise<void>;
35
+ export declare function getRootTreeSiblingPath<TID extends MerkleTreeId>(treeId: TID, db: MerkleTreeReadOperations): Promise<Tuple<Fr, {
36
+ readonly 1: 40;
37
+ readonly 4: 29;
38
+ readonly 3: 39;
39
+ readonly 0: 40;
40
+ readonly 2: 40;
41
+ }[TID]>>;
42
+ export declare const getConstantRollupData: (globalVariables: GlobalVariables, db: MerkleTreeReadOperations) => Promise<ConstantRollupData>;
43
+ export declare function getTreeSnapshot(id: MerkleTreeId, db: MerkleTreeReadOperations): Promise<AppendOnlyTreeSnapshot>;
44
+ export declare function makeEmptyMembershipWitness<N extends number>(height: N): MembershipWitness<N>;
45
+ export declare function getSubtreeSiblingPath(treeId: MerkleTreeId, subtreeHeight: number, db: MerkleTreeReadOperations): Promise<Fr[]>;
46
+ export declare function getMembershipWitnessFor<N extends number>(value: Fr, treeId: MerkleTreeId, height: N, db: MerkleTreeReadOperations): Promise<MembershipWitness<N>>;
47
+ export declare function validatePartialState(partialState: PartialStateReference, treeSnapshots: Map<MerkleTreeId, AppendOnlyTreeSnapshot>): void;
48
+ export declare function validateTx(tx: ProcessedTx): void;
49
+ export {};
50
+ //# sourceMappingURL=block-building-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"block-building-helpers.d.ts","sourceRoot":"","sources":["../../src/orchestrator/block-building-helpers.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EACL,IAAI,EACJ,YAAY,EACZ,KAAK,yBAAyB,EAC9B,KAAK,WAAW,EAChB,QAAQ,EAET,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAEL,sBAAsB,EACtB,WAAW,EAEX,EAAE,EACF,KAAK,eAAe,EAGpB,iBAAiB,EAUjB,KAAK,kBAAkB,EACvB,qBAAqB,EACrB,cAAc,EAGd,cAAc,EACf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EACL,KAAK,6BAA6B,EAClC,KAAK,iCAAiC,EACtC,kBAAkB,EAClB,sBAAsB,EAEtB,qBAAqB,EACtB,MAAM,2BAA2B,CAAC;AAInC,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,KAAK,KAAK,EAAmD,MAAM,6BAA6B,CAAC;AAM1G,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAInE;;GAEG;AACH,KAAK,aAAa,GAAG,cAAc,GAAG,cAAc,GAAG,eAAe,GAAG,gBAAgB,CAAC;AAC1F;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,aAAa,GAAG,mBAAmB,GAAG,SAAS,CAAC;AAGxE,eAAO,MAAM,oBAAoB,4KAmJhC,CAAC;AAEF,wBAAsB,iBAAiB,CAAC,EAAE,EAAE,yBAAyB,EAAE,QAAQ,EAAE,MAAM,2BAkBtF;AAED,eAAO,MAAM,cAAc;;;;;EAU1B,CAAC;AAEF,eAAO,MAAM,6BAA6B,oOAoDzC,CAAC;AAEF,eAAO,MAAM,yBAAyB;;;EAoDrC,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,CAG5D;AAGD,wBAAsB,uBAAuB,CAC3C,eAAe,EAAE,iCAAiC,EAClD,WAAW,EAAE,WAAW,EACxB,EAAE,EAAE,wBAAwB,iBAM7B;AAED,eAAO,MAAM,aAAa,wEAmBzB,CAAC;AAEF,wBAAsB,sBAAsB,CAAC,GAAG,SAAS,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,wBAAwB;;;;;;SAI/G;AAED,eAAO,MAAM,qBAAqB,iGAWjC,CAAC;AAEF,wBAAsB,eAAe,CAAC,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,wBAAwB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAGrH;AAED,wBAAgB,0BAA0B,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,wBAMrE;AA4CD,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,YAAY,EACpB,aAAa,EAAE,MAAM,EACrB,EAAE,EAAE,wBAAwB,GAC3B,OAAO,CAAC,EAAE,EAAE,CAAC,CAMf;AAGD,wBAAsB,uBAAuB,CAAC,CAAC,SAAS,MAAM,EAC5D,KAAK,EAAE,EAAE,EACT,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,CAAC,EACT,EAAE,EAAE,wBAAwB,GAC3B,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAY/B;AAED,wBAAgB,oBAAoB,CAClC,YAAY,EAAE,qBAAqB,EACnC,aAAa,EAAE,GAAG,CAAC,YAAY,EAAE,sBAAsB,CAAC,QASzD;AAqBD,wBAAgB,UAAU,CAAC,EAAE,EAAE,WAAW,QAczC"}