@aztec/sequencer-client 0.1.0-alpha23 → 0.1.0-alpha40

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 (86) hide show
  1. package/.tsbuildinfo +1 -1
  2. package/dest/block_builder/index.d.ts +2 -2
  3. package/dest/block_builder/index.d.ts.map +1 -1
  4. package/dest/block_builder/solo_block_builder.d.ts +7 -7
  5. package/dest/block_builder/solo_block_builder.d.ts.map +1 -1
  6. package/dest/block_builder/solo_block_builder.js +49 -53
  7. package/dest/block_builder/solo_block_builder.test.d.ts +2 -2
  8. package/dest/block_builder/solo_block_builder.test.d.ts.map +1 -1
  9. package/dest/block_builder/solo_block_builder.test.js +27 -26
  10. package/dest/block_builder/types.d.ts +1 -1
  11. package/dest/block_builder/types.d.ts.map +1 -1
  12. package/dest/client/sequencer-client.d.ts +1 -1
  13. package/dest/client/sequencer-client.d.ts.map +1 -1
  14. package/dest/client/sequencer-client.js +3 -3
  15. package/dest/config.d.ts +2 -2
  16. package/dest/config.d.ts.map +1 -1
  17. package/dest/config.js +8 -5
  18. package/dest/global_variable_builder/global_builder.d.ts +17 -0
  19. package/dest/global_variable_builder/global_builder.d.ts.map +1 -1
  20. package/dest/global_variable_builder/global_builder.js +1 -1
  21. package/dest/global_variable_builder/viem-reader.d.ts +0 -12
  22. package/dest/global_variable_builder/viem-reader.d.ts.map +1 -1
  23. package/dest/global_variable_builder/viem-reader.js +2 -14
  24. package/dest/prover/empty.d.ts.map +1 -1
  25. package/dest/prover/empty.js +1 -1
  26. package/dest/prover/index.d.ts +23 -0
  27. package/dest/prover/index.d.ts.map +1 -1
  28. package/dest/publisher/config.d.ts +3 -3
  29. package/dest/publisher/config.d.ts.map +1 -1
  30. package/dest/publisher/l1-publisher.d.ts +3 -3
  31. package/dest/publisher/l1-publisher.d.ts.map +1 -1
  32. package/dest/publisher/l1-publisher.js +5 -3
  33. package/dest/publisher/l1-publisher.test.js +2 -2
  34. package/dest/publisher/viem-tx-sender.d.ts +4 -4
  35. package/dest/publisher/viem-tx-sender.d.ts.map +1 -1
  36. package/dest/publisher/viem-tx-sender.js +11 -11
  37. package/dest/sequencer/config.d.ts +1 -1
  38. package/dest/sequencer/config.d.ts.map +1 -1
  39. package/dest/sequencer/processed_tx.d.ts +2 -2
  40. package/dest/sequencer/processed_tx.d.ts.map +1 -1
  41. package/dest/sequencer/processed_tx.js +3 -3
  42. package/dest/sequencer/public_processor.d.ts +11 -10
  43. package/dest/sequencer/public_processor.d.ts.map +1 -1
  44. package/dest/sequencer/public_processor.js +24 -22
  45. package/dest/sequencer/public_processor.test.js +15 -17
  46. package/dest/sequencer/sequencer.d.ts +4 -4
  47. package/dest/sequencer/sequencer.d.ts.map +1 -1
  48. package/dest/sequencer/sequencer.js +18 -15
  49. package/dest/sequencer/sequencer.test.js +5 -5
  50. package/dest/sequencer/utils.d.ts +2 -2
  51. package/dest/sequencer/utils.d.ts.map +1 -1
  52. package/dest/sequencer/utils.js +8 -5
  53. package/dest/simulator/index.d.ts +2 -2
  54. package/dest/simulator/public_executor.d.ts +3 -20
  55. package/dest/simulator/public_executor.d.ts.map +1 -1
  56. package/dest/simulator/public_executor.js +16 -35
  57. package/dest/simulator/public_kernel.d.ts.map +1 -1
  58. package/dest/simulator/public_kernel.js +1 -1
  59. package/dest/simulator/rollup.d.ts.map +1 -1
  60. package/dest/simulator/rollup.js +1 -1
  61. package/package.json +10 -10
  62. package/src/block_builder/index.ts +3 -2
  63. package/src/block_builder/solo_block_builder.test.ts +46 -38
  64. package/src/block_builder/solo_block_builder.ts +79 -88
  65. package/src/block_builder/types.ts +1 -1
  66. package/src/client/sequencer-client.ts +3 -3
  67. package/src/config.ts +11 -7
  68. package/src/global_variable_builder/global_builder.ts +17 -0
  69. package/src/global_variable_builder/viem-reader.ts +5 -15
  70. package/src/prover/empty.ts +1 -0
  71. package/src/prover/index.ts +26 -0
  72. package/src/publisher/config.ts +3 -2
  73. package/src/publisher/l1-publisher.test.ts +3 -2
  74. package/src/publisher/l1-publisher.ts +18 -8
  75. package/src/publisher/viem-tx-sender.ts +14 -13
  76. package/src/sequencer/config.ts +1 -1
  77. package/src/sequencer/processed_tx.ts +3 -3
  78. package/src/sequencer/public_processor.test.ts +38 -18
  79. package/src/sequencer/public_processor.ts +33 -25
  80. package/src/sequencer/sequencer.test.ts +7 -5
  81. package/src/sequencer/sequencer.ts +20 -16
  82. package/src/sequencer/utils.ts +19 -11
  83. package/src/simulator/index.ts +2 -2
  84. package/src/simulator/public_executor.ts +15 -34
  85. package/src/simulator/public_kernel.ts +1 -0
  86. package/src/simulator/rollup.ts +1 -0
@@ -1,9 +1,8 @@
1
- import { ARGS_LENGTH, CallContext, CircuitsWasm, EthAddress, Fr, FunctionData, GlobalVariables, MAX_PRIVATE_CALL_STACK_LENGTH_PER_TX, MAX_PUBLIC_CALL_STACK_LENGTH_PER_TX, PUBLIC_DATA_TREE_HEIGHT, makeEmptyProof, makeTuple, } from '@aztec/circuits.js';
1
+ import { ARGS_LENGTH, CallContext, CircuitsWasm, EthAddress, Fr, FunctionData, GlobalVariables, HistoricBlockData, MAX_PRIVATE_CALL_STACK_LENGTH_PER_TX, MAX_PUBLIC_CALL_STACK_LENGTH_PER_TX, PUBLIC_DATA_TREE_HEIGHT, makeEmptyProof, makeTuple, } from '@aztec/circuits.js';
2
2
  import { computeCallStackItemHash } from '@aztec/circuits.js/abis';
3
3
  import { makeAztecAddress, makeKernelPublicInputs, makePublicCallRequest, makeSelector, } from '@aztec/circuits.js/factories';
4
4
  import { padArrayEnd } from '@aztec/foundation/collection';
5
- import { SiblingPath } from '@aztec/merkle-tree';
6
- import { ContractPublicData, EncodedContractFunction, FunctionL2Logs, mockTx, Tx, TxL2Logs, } from '@aztec/types';
5
+ import { ContractDataAndBytecode, EncodedContractFunction, FunctionL2Logs, SiblingPath, Tx, TxL2Logs, mockTx, } from '@aztec/types';
7
6
  import { mock } from 'jest-mock-extended';
8
7
  import pick from 'lodash.pick';
9
8
  import times from 'lodash.times';
@@ -24,27 +23,27 @@ describe('public_processor', () => {
24
23
  publicExecutor = mock();
25
24
  publicProver = mock();
26
25
  contractDataSource = mock();
27
- contractData = ContractPublicData.random();
26
+ contractData = ContractDataAndBytecode.random();
28
27
  publicFunction = EncodedContractFunction.random();
29
28
  proof = makeEmptyProof();
30
29
  root = Buffer.alloc(32, 5);
31
30
  publicProver.getPublicCircuitProof.mockResolvedValue(proof);
32
31
  publicProver.getPublicKernelCircuitProof.mockResolvedValue(proof);
33
32
  db.getTreeInfo.mockResolvedValue({ root });
34
- contractDataSource.getL2ContractPublicData.mockResolvedValue(contractData);
33
+ contractDataSource.getContractDataAndBytecode.mockResolvedValue(contractData);
35
34
  contractDataSource.getPublicFunction.mockResolvedValue(publicFunction);
36
35
  });
37
36
  describe('with mock circuits', () => {
38
37
  let publicKernel;
39
38
  beforeEach(() => {
40
39
  publicKernel = mock();
41
- processor = new PublicProcessor(db, publicExecutor, publicKernel, publicProver, contractDataSource);
40
+ processor = new PublicProcessor(db, publicExecutor, publicKernel, publicProver, contractDataSource, GlobalVariables.empty(), HistoricBlockData.empty());
42
41
  });
43
42
  it('skips txs without public execution requests', async function () {
44
43
  const tx = mockTx();
45
44
  tx.data.end.publicCallStack = makeTuple(MAX_PUBLIC_CALL_STACK_LENGTH_PER_TX, Fr.zero);
46
45
  const hash = await tx.getTxHash();
47
- const [processed, failed] = await processor.process([tx], GlobalVariables.empty());
46
+ const [processed, failed] = await processor.process([tx]);
48
47
  expect(processed).toEqual([
49
48
  { isEmpty: false, hash, ...pick(tx, 'data', 'proof', 'encryptedLogs', 'unencryptedLogs') },
50
49
  ]);
@@ -53,7 +52,7 @@ describe('public_processor', () => {
53
52
  it('returns failed txs without aborting entire operation', async function () {
54
53
  publicExecutor.execute.mockRejectedValue(new Error(`Failed`));
55
54
  const tx = mockTx();
56
- const [processed, failed] = await processor.process([tx], GlobalVariables.empty());
55
+ const [processed, failed] = await processor.process([tx]);
57
56
  expect(processed).toEqual([]);
58
57
  expect(failed).toEqual([tx]);
59
58
  });
@@ -68,7 +67,7 @@ describe('public_processor', () => {
68
67
  const path = times(PUBLIC_DATA_TREE_HEIGHT, i => Buffer.alloc(32, i));
69
68
  db.getSiblingPath.mockResolvedValue(new SiblingPath(PUBLIC_DATA_TREE_HEIGHT, path));
70
69
  publicKernel = new WasmPublicKernelCircuitSimulator();
71
- processor = new PublicProcessor(db, publicExecutor, publicKernel, publicProver, contractDataSource);
70
+ processor = new PublicProcessor(db, publicExecutor, publicKernel, publicProver, contractDataSource, GlobalVariables.empty(), HistoricBlockData.empty());
72
71
  });
73
72
  const expectedTxByHash = async (tx) => expect.objectContaining({
74
73
  hash: await tx.getTxHash(),
@@ -90,7 +89,7 @@ describe('public_processor', () => {
90
89
  }
91
90
  throw new Error(`Unexpected execution request: ${execution}`);
92
91
  });
93
- const [processed, failed] = await processor.process([tx], GlobalVariables.empty());
92
+ const [processed, failed] = await processor.process([tx]);
94
93
  expect(processed).toHaveLength(1);
95
94
  expect(processed).toEqual([await expectedTxByHash(tx)]);
96
95
  expect(failed).toHaveLength(0);
@@ -106,15 +105,14 @@ describe('public_processor', () => {
106
105
  const tx = new Tx(kernelOutput, proof, TxL2Logs.random(2, 3), TxL2Logs.random(3, 2), [], [callRequest]);
107
106
  const publicExecutionResult = makePublicExecutionResultFromRequest(callRequest);
108
107
  publicExecutionResult.nestedExecutions = [
109
- makePublicExecutionResult({
110
- from: publicExecutionResult.execution.contractAddress,
108
+ makePublicExecutionResult(publicExecutionResult.execution.contractAddress, {
111
109
  to: makeAztecAddress(30),
112
- functionData: new FunctionData(makeSelector(5), false, false),
110
+ functionData: new FunctionData(makeSelector(5), false, false, false),
113
111
  args: new Array(ARGS_LENGTH).fill(Fr.ZERO),
114
112
  }),
115
113
  ];
116
114
  publicExecutor.execute.mockResolvedValue(publicExecutionResult);
117
- const [processed, failed] = await processor.process([tx], GlobalVariables.empty());
115
+ const [processed, failed] = await processor.process([tx]);
118
116
  expect(processed).toHaveLength(1);
119
117
  expect(processed).toEqual([await expectedTxByHash(tx)]);
120
118
  expect(failed).toHaveLength(0);
@@ -135,8 +133,8 @@ function makePublicExecutionResultFromRequest(item) {
135
133
  unencryptedLogs: new FunctionL2Logs([]),
136
134
  };
137
135
  }
138
- function makePublicExecutionResult(tx, nestedExecutions = []) {
139
- const callContext = new CallContext(tx.from, tx.to, EthAddress.ZERO, false, false, false);
136
+ function makePublicExecutionResult(from, tx, nestedExecutions = []) {
137
+ const callContext = new CallContext(from, tx.to, EthAddress.ZERO, false, false, false);
140
138
  const execution = {
141
139
  callContext,
142
140
  contractAddress: tx.to,
@@ -155,4 +153,4 @@ function makePublicExecutionResult(tx, nestedExecutions = []) {
155
153
  unencryptedLogs: new FunctionL2Logs([]),
156
154
  };
157
155
  }
158
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX3Byb2Nlc3Nvci50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcXVlbmNlci9wdWJsaWNfcHJvY2Vzc29yLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNMLFdBQVcsRUFDWCxXQUFXLEVBQ1gsWUFBWSxFQUNaLFVBQVUsRUFDVixFQUFFLEVBQ0YsWUFBWSxFQUNaLGVBQWUsRUFDZixvQ0FBb0MsRUFDcEMsbUNBQW1DLEVBQ25DLHVCQUF1QixFQUd2QixjQUFjLEVBQ2QsU0FBUyxHQUNWLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkUsT0FBTyxFQUNMLGdCQUFnQixFQUNoQixzQkFBc0IsRUFDdEIscUJBQXFCLEVBQ3JCLFlBQVksR0FDYixNQUFNLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDakQsT0FBTyxFQUVMLGtCQUFrQixFQUNsQix1QkFBdUIsRUFFdkIsY0FBYyxFQUNkLE1BQU0sRUFDTixFQUFFLEVBQ0YsUUFBUSxHQUNULE1BQU0sY0FBYyxDQUFDO0FBRXRCLE9BQU8sRUFBYSxJQUFJLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNyRCxPQUFPLElBQUksTUFBTSxhQUFhLENBQUM7QUFDL0IsT0FBTyxLQUFLLE1BQU0sY0FBYyxDQUFDO0FBR2pDLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUV4RCxRQUFRLENBQUMsa0JBQWtCLEVBQUUsR0FBRyxFQUFFO0lBQ2hDLElBQUksRUFBbUMsQ0FBQztJQUN4QyxJQUFJLGNBQXlDLENBQUM7SUFDOUMsSUFB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
156
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX3Byb2Nlc3Nvci50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcXVlbmNlci9wdWJsaWNfcHJvY2Vzc29yLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUNMLFdBQVcsRUFFWCxXQUFXLEVBQ1gsWUFBWSxFQUNaLFVBQVUsRUFDVixFQUFFLEVBQ0YsWUFBWSxFQUNaLGVBQWUsRUFDZixpQkFBaUIsRUFDakIsb0NBQW9DLEVBQ3BDLG1DQUFtQyxFQUNuQyx1QkFBdUIsRUFHdkIsY0FBYyxFQUNkLFNBQVMsR0FDVixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ25FLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsc0JBQXNCLEVBQ3RCLHFCQUFxQixFQUNyQixZQUFZLEdBQ2IsTUFBTSw4QkFBOEIsQ0FBQztBQUN0QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDM0QsT0FBTyxFQUNMLHVCQUF1QixFQUV2Qix1QkFBdUIsRUFFdkIsY0FBYyxFQUNkLFdBQVcsRUFDWCxFQUFFLEVBQ0YsUUFBUSxFQUNSLE1BQU0sR0FDUCxNQUFNLGNBQWMsQ0FBQztBQUd0QixPQUFPLEVBQWEsSUFBSSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxJQUFJLE1BQU0sYUFBYSxDQUFDO0FBQy9CLE9BQU8sS0FBSyxNQUFNLGNBQWMsQ0FBQztBQUlqQyxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFeEQsUUFBUSxDQUFDLGtCQUFrQixFQUFFLEdBQUcsRUFBRTtJQUNoQyxJQUFJLEVBQW1DLENBQUM7SUFDeEMsSUFBSSxjQUF5QyxDQUFDO0lBQzlDLElBQUksWUFBcUMsQ0FBQztJQUMxQyxJQUFJLGtCQUFpRCxDQUFDO0lBRXRELElBQUksY0FBdUMsQ0FBQztJQUM1QyxJQUFJLFlBQXFDLENBQUM7SUFDMUMsSUFBSSxLQUFZLENBQUM7SUFDakIsSUFBSSxJQUFZLENBQUM7SUFFakIsSUFBSSxTQUEwQixDQUFDO0lBRS9CLFVBQVUsQ0FBQyxHQUFHLEVBQUU7UUFDZCxFQUFFLEdBQUcsSUFBSSxFQUF3QixDQUFDO1FBQ2xDLGNBQWMsR0FBRyxJQUFJLEVBQWtCLENBQUM7UUFDeEMsWUFBWSxHQUFHLElBQUksRUFBZ0IsQ0FBQztRQUNwQyxrQkFBa0IsR0FBRyxJQUFJLEVBQXNCLENBQUM7UUFFaEQsWUFBWSxHQUFHLHVCQUF1QixDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2hELGNBQWMsR0FBRyx1QkFBdUIsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNsRCxLQUFLLEdBQUcsY0FBYyxFQUFFLENBQUM7UUFDekIsSUFBSSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRTNCLFlBQVksQ0FBQyxxQkFBcUIsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM1RCxZQUFZLENBQUMsMkJBQTJCLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEUsRUFBRSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLElBQUksRUFBYyxDQUFDLENBQUM7UUFDdkQsa0JBQWtCLENBQUMsMEJBQTBCLENBQUMsaUJBQWlCLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDOUUsa0JBQWtCLENBQUMsaUJBQWlCLENBQUMsaUJBQWlCLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDekUsQ0FBQyxDQUFDLENBQUM7SUFFSCxRQUFRLENBQUMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFO1FBQ2xDLElBQUksWUFBcUQsQ0FBQztRQUUxRCxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsWUFBWSxHQUFHLElBQUksRUFBZ0MsQ0FBQztZQUNwRCxTQUFTLEdBQUcsSUFBSSxlQUFlLENBQzdCLEVBQUUsRUFDRixjQUFjLEVBQ2QsWUFBWSxFQUNaLFlBQVksRUFDWixrQkFBa0IsRUFDbEIsZUFBZSxDQUFDLEtBQUssRUFBRSxFQUN2QixpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsQ0FDMUIsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUgsRUFBRSxDQUFDLDZDQUE2QyxFQUFFLEtBQUs7WUFDckQsTUFBTSxFQUFFLEdBQUcsTUFBTSxFQUFFLENBQUM7WUFDcEIsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsZUFBZSxHQUFHLFNBQVMsQ0FBQyxtQ0FBbUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdEYsTUFBTSxJQUFJLEdBQUcsTUFBTSxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbEMsTUFBTSxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsR0FBRyxNQUFNLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBRTFELE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLENBQUM7Z0JBQ3hCLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsRUFBRSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLGlCQUFpQixDQUFDLEVBQUU7YUFDM0YsQ0FBQyxDQUFDO1lBQ0gsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FBQztRQUVILEVBQUUsQ0FBQyxzREFBc0QsRUFBRSxLQUFLO1lBQzlELGNBQWMsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztZQUU5RCxNQUFNLEVBQUUsR0FBRyxNQUFNLEVBQUUsQ0FBQztZQUNwQixNQUFNLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxHQUFHLE1BQU0sU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFFMUQsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUM5QixNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMvQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0lBRUgsUUFBUSxDQUFDLHNCQUFzQixFQUFFLEdBQUcsRUFBRTtRQUNwQyxJQUFJLFlBQTBDLENBQUM7UUFDL0MsSUFBSSxJQUFrQixDQUFDO1FBRXZCLFNBQVMsQ0FBQyxLQUFLLElBQUksRUFBRTtZQUNuQixJQUFJLEdBQUcsTUFBTSxZQUFZLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDbEMsQ0FBQyxDQUFDLENBQUM7UUFFSCxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLHVCQUF1QixFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN0RSxFQUFFLENBQUMsY0FBYyxDQUFDLGlCQUFpQixDQUFDLElBQUksV0FBVyxDQUFTLHVCQUF1QixFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDNUYsWUFBWSxHQUFHLElBQUksZ0NBQWdDLEVBQUUsQ0FBQztZQUN0RCxTQUFTLEdBQUcsSUFBSSxlQUFlLENBQzdCLEVBQUUsRUFDRixjQUFjLEVBQ2QsWUFBWSxFQUNaLFlBQVksRUFDWixrQkFBa0IsRUFDbEIsZUFBZSxDQUFDLEtBQUssRUFBRSxFQUN2QixpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsQ0FDMUIsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxnQkFBZ0IsR0FBRyxLQUFLLEVBQUUsRUFBTSxFQUFFLEVBQUUsQ0FDeEMsTUFBTSxDQUFDLGdCQUFnQixDQUFDO1lBQ3RCLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQyxTQUFTLEVBQUU7WUFDMUIsS0FBSztTQUNOLENBQUMsQ0FBQztRQUVMLEVBQUUsQ0FBQyxzQ0FBc0MsRUFBRSxLQUFLO1lBQzlDLE1BQU0sWUFBWSxHQUF3QixDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxFQUFFLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDdkcsTUFBTSxjQUFjLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDakcsTUFBTSxlQUFlLEdBQUcsY0FBYyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLHdCQUF3QixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBRXpGLE1BQU0sWUFBWSxHQUFHLHNCQUFzQixDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2xELFlBQVksQ0FBQyxHQUFHLENBQUMsZUFBZSxHQUFHLFdBQVcsQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDLElBQUksRUFBRSxtQ0FBbUMsQ0FBQyxDQUFDO1lBQzlHLFlBQVksQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEdBQUcsV0FBVyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxFQUFFLG9DQUFvQyxDQUFDLENBQUM7WUFFbkcsTUFBTSxFQUFFLEdBQUcsSUFBSSxFQUFFLENBQUMsWUFBWSxFQUFFLEtBQUssRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsWUFBWSxDQUFDLENBQUM7WUFFdkcsY0FBYyxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsRUFBRTtnQkFDcEQsS0FBSyxNQUFNLE9BQU8sSUFBSSxZQUFZLEVBQUU7b0JBQ2xDLElBQUksU0FBUyxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxFQUFFO3dCQUM3RCxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsb0NBQW9DLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztxQkFDdkU7aUJBQ0Y7Z0JBQ0QsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQ0FBaUMsU0FBUyxFQUFFLENBQUMsQ0FBQztZQUNoRSxDQUFDLENBQUMsQ0FBQztZQUVILE1BQU0sQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLEdBQUcsTUFBTSxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUUxRCxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2xDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLGdCQUFnQixDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN4RCxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQy9CLE1BQU0sQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDMUQsQ0FBQyxDQUFDLENBQUM7UUFFSCxFQUFFLENBQUMsOERBQThELEVBQUUsS0FBSztZQUN0RSxNQUFNLFdBQVcsR0FBc0IscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDcEUsTUFBTSxhQUFhLEdBQUcsTUFBTSxXQUFXLENBQUMscUJBQXFCLEVBQUUsQ0FBQztZQUNoRSxNQUFNLGFBQWEsR0FBRyx3QkFBd0IsQ0FBQyxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUM7WUFFcEUsTUFBTSxZQUFZLEdBQUcsc0JBQXNCLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDbEQsWUFBWSxDQUFDLEdBQUcsQ0FBQyxlQUFlLEdBQUcsV0FBVyxDQUFDLENBQUMsYUFBYSxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksRUFBRSxtQ0FBbUMsQ0FBQyxDQUFDO1lBQzlHLFlBQVksQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEdBQUcsV0FBVyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxFQUFFLG9DQUFvQyxDQUFDLENBQUM7WUFFbkcsTUFBTSxFQUFFLEdBQUcsSUFBSSxFQUFFLENBQUMsWUFBWSxFQUFFLEtBQUssRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1lBRXhHLE1BQU0scUJBQXFCLEdBQUcsb0NBQW9DLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDaEYscUJBQXFCLENBQUMsZ0JBQWdCLEdBQUc7Z0JBQ3ZDLHlCQUF5QixDQUFDLHFCQUFxQixDQUFDLFNBQVMsQ0FBQyxlQUFlLEVBQUU7b0JBQ3pFLEVBQUUsRUFBRSxnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7b0JBQ3hCLFlBQVksRUFBRSxJQUFJLFlBQVksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUM7b0JBQ3BFLElBQUksRUFBRSxJQUFJLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQztpQkFDM0MsQ0FBQzthQUNILENBQUM7WUFDRixjQUFjLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLHFCQUFxQixDQUFDLENBQUM7WUFFaEUsTUFBTSxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsR0FBRyxNQUFNLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBRTFELE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDbEMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sZ0JBQWdCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3hELE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDL0IsTUFBTSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMxRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUM7QUFFSCxTQUFTLG9DQUFvQyxDQUFDLElBQXVCO0lBQ25FLE9BQU87UUFDTCxTQUFTLEVBQUUsSUFBSTtRQUNmLGdCQUFnQixFQUFFLEVBQUU7UUFDcEIsWUFBWSxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDMUIsY0FBYyxFQUFFLEVBQUU7UUFDbEIsaUJBQWlCLEVBQUUsRUFBRTtRQUNyQixhQUFhLEVBQUUsRUFBRTtRQUNqQixvQkFBb0IsRUFBRSxFQUFFO1FBQ3hCLDZCQUE2QixFQUFFLEVBQUU7UUFDakMsZUFBZSxFQUFFLElBQUksY0FBYyxDQUFDLEVBQUUsQ0FBQztLQUN4QyxDQUFDO0FBQ0osQ0FBQztBQUVELFNBQVMseUJBQXlCLENBQ2hDLElBQWtCLEVBQ2xCLEVBQWdCLEVBQ2hCLG1CQUE0QyxFQUFFO0lBRTlDLE1BQU0sV0FBVyxHQUFHLElBQUksV0FBVyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLFVBQVUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN2RixNQUFNLFNBQVMsR0FBb0I7UUFDakMsV0FBVztRQUNYLGVBQWUsRUFBRSxFQUFFLENBQUMsRUFBRTtRQUN0QixZQUFZLEVBQUUsRUFBRSxDQUFDLFlBQVk7UUFDN0IsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJO0tBQ2QsQ0FBQztJQUNGLE9BQU87UUFDTCxTQUFTO1FBQ1QsZ0JBQWdCO1FBQ2hCLFlBQVksRUFBRSxFQUFFO1FBQ2hCLGNBQWMsRUFBRSxFQUFFO1FBQ2xCLGFBQWEsRUFBRSxFQUFFO1FBQ2pCLGlCQUFpQixFQUFFLEVBQUU7UUFDckIsb0JBQW9CLEVBQUUsRUFBRTtRQUN4Qiw2QkFBNkIsRUFBRSxFQUFFO1FBQ2pDLGVBQWUsRUFBRSxJQUFJLGNBQWMsQ0FBQyxFQUFFLENBQUM7S0FDeEMsQ0FBQztBQUNKLENBQUMifQ==
@@ -1,14 +1,14 @@
1
+ import { GlobalVariables } from '@aztec/circuits.js';
1
2
  import { Fr } from '@aztec/foundation/fields';
2
3
  import { P2P } from '@aztec/p2p';
3
4
  import { L1ToL2MessageSource, L2Block, L2BlockSource, Tx } from '@aztec/types';
4
5
  import { WorldStateSynchroniser } from '@aztec/world-state';
5
6
  import { BlockBuilder } from '../block_builder/index.js';
7
+ import { GlobalVariableBuilder } from '../global_variable_builder/global_builder.js';
6
8
  import { L1Publisher } from '../publisher/l1-publisher.js';
7
9
  import { SequencerConfig } from './config.js';
8
10
  import { ProcessedTx } from './processed_tx.js';
9
11
  import { PublicProcessorFactory } from './public_processor.js';
10
- import { GlobalVariables } from '@aztec/circuits.js';
11
- import { GlobalVariableBuilder } from '../global_variable_builder/global_builder.js';
12
12
  /**
13
13
  * Sequencer client
14
14
  * - Wins a period of time to become the sequencer (depending on finalised protocol).
@@ -62,11 +62,11 @@ export declare class Sequencer {
62
62
  */
63
63
  protected work(): Promise<void>;
64
64
  /**
65
- * Gets new contract public data from the txs and publishes it on chain.
65
+ * Gets new contract data and bytecode from the txs and publishes it on chain.
66
66
  * @param validTxs - The set of real transactions being published as part of the block.
67
67
  * @param block - The L2Block to be published.
68
68
  */
69
- protected publishContractPublicData(validTxs: Tx[], block: L2Block): Promise<void>;
69
+ protected publishContractDataAndBytecode(validTxs: Tx[], block: L2Block): Promise<void>;
70
70
  /**
71
71
  * Publishes the L2Block to the rollup contract.
72
72
  * @param block - The L2Block to be published.
@@ -1 +1 @@
1
- {"version":3,"file":"sequencer.d.ts","sourceRoot":"","sources":["../../src/sequencer/sequencer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAG9C,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAGL,mBAAmB,EACnB,OAAO,EACP,aAAa,EAEb,EAAE,EACH,MAAM,cAAc,CAAC;AACtB,OAAO,EAAoB,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAE9E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AAErF;;;;;;;;GAQG;AACH,qBAAa,SAAS;IAWlB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,mBAAmB;IAC3B,OAAO,CAAC,sBAAsB;IAE9B,OAAO,CAAC,GAAG;IAnBb,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,cAAc,CAAM;IAC5B,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,kBAAkB,CAAK;IAC/B,OAAO,CAAC,KAAK,CAA0B;IACvC,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,OAAO,CAAK;gBAGV,SAAS,EAAE,WAAW,EACtB,cAAc,EAAE,qBAAqB,EACrC,SAAS,EAAE,GAAG,EACd,UAAU,EAAE,sBAAsB,EAClC,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,aAAa,EAC5B,mBAAmB,EAAE,mBAAmB,EACxC,sBAAsB,EAAE,sBAAsB,EACtD,MAAM,EAAE,eAAe,EACf,GAAG,8CAAuC;IAapD;;OAEG;IACU,KAAK;IASlB;;OAEG;IACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAOlC;;OAEG;IACI,OAAO;IAMd;;;OAGG;IACI,MAAM;;;cAIG,WAAW;IAK3B;;OAEG;cACa,IAAI;IAkEpB;;;;OAIG;cACa,yBAAyB,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO;IA2BxE;;;OAGG;cACa,cAAc,CAAC,KAAK,EAAE,OAAO;cAa7B,YAAY,CAAC,GAAG,EAAE,EAAE,EAAE;IA4BtC;;;OAGG;cACa,aAAa;IAS7B;;;;;;;OAOG;cACa,UAAU,CACxB,GAAG,EAAE,WAAW,EAAE,EAClB,iBAAiB,EAAE,EAAE,EAAE,EACvB,OAAO,EAAE,WAAW,EACpB,eAAe,EAAE,eAAe;IAalC;;;;OAIG;cACa,wBAAwB,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;IAIzD;;;;;OAKG;cACa,eAAe,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;CAgB1D;AAED;;GAEG;AACH,oBAAY,cAAc;IACxB;;OAEG;IACH,IAAI,IAAA;IACJ;;OAEG;IACH,eAAe,IAAA;IACf;;OAEG;IACH,cAAc,IAAA;IACd;;OAEG;IACH,wBAAwB,IAAA;IACxB;;OAEG;IACH,gBAAgB,IAAA;IAChB;;OAEG;IACH,OAAO,IAAA;CACR"}
1
+ {"version":3,"file":"sequencer.d.ts","sourceRoot":"","sources":["../../src/sequencer/sequencer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAG9C,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAGL,mBAAmB,EACnB,OAAO,EACP,aAAa,EAEb,EAAE,EACH,MAAM,cAAc,CAAC;AACtB,OAAO,EAAoB,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAI9E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAE/D;;;;;;;;GAQG;AACH,qBAAa,SAAS;IAWlB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,mBAAmB;IAC3B,OAAO,CAAC,sBAAsB;IAE9B,OAAO,CAAC,GAAG;IAnBb,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,cAAc,CAAM;IAC5B,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,kBAAkB,CAAK;IAC/B,OAAO,CAAC,KAAK,CAA0B;IACvC,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,OAAO,CAAK;gBAGV,SAAS,EAAE,WAAW,EACtB,cAAc,EAAE,qBAAqB,EACrC,SAAS,EAAE,GAAG,EACd,UAAU,EAAE,sBAAsB,EAClC,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,aAAa,EAC5B,mBAAmB,EAAE,mBAAmB,EACxC,sBAAsB,EAAE,sBAAsB,EACtD,MAAM,EAAE,eAAe,EACf,GAAG,8CAAuC;IAapD;;OAEG;IACU,KAAK;IASlB;;OAEG;IACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAOlC;;OAEG;IACI,OAAO;IAMd;;;OAGG;IACI,MAAM;;;cAIG,WAAW;IAK3B;;OAEG;cACa,IAAI;IAoEpB;;;;OAIG;cACa,8BAA8B,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO;IA2B7E;;;OAGG;cACa,cAAc,CAAC,KAAK,EAAE,OAAO;cAa7B,YAAY,CAAC,GAAG,EAAE,EAAE,EAAE;IA4BtC;;;OAGG;cACa,aAAa;IAS7B;;;;;;;OAOG;cACa,UAAU,CACxB,GAAG,EAAE,WAAW,EAAE,EAClB,iBAAiB,EAAE,EAAE,EAAE,EACvB,OAAO,EAAE,WAAW,EACpB,eAAe,EAAE,eAAe;IAalC;;;;OAIG;cACa,wBAAwB,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;IAIzD;;;;;OAKG;cACa,eAAe,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;CAgB1D;AAED;;GAEG;AACH,oBAAY,cAAc;IACxB;;OAEG;IACH,IAAI,IAAA;IACJ;;OAEG;IACH,eAAe,IAAA;IACf;;OAEG;IACH,cAAc,IAAA;IACd;;OAEG;IACH,wBAAwB,IAAA;IACxB;;OAEG;IACH,gBAAgB,IAAA;IAChB;;OAEG;IACH,OAAO,IAAA;CACR"}
@@ -1,7 +1,8 @@
1
+ import { GlobalVariables } from '@aztec/circuits.js';
1
2
  import { Fr } from '@aztec/foundation/fields';
2
3
  import { createDebugLogger } from '@aztec/foundation/log';
3
4
  import { RunningPromise } from '@aztec/foundation/running-promise';
4
- import { ContractData, ContractPublicData, MerkleTreeId, Tx, } from '@aztec/types';
5
+ import { ContractData, ContractDataAndBytecode, MerkleTreeId, Tx, } from '@aztec/types';
5
6
  import times from 'lodash.times';
6
7
  import { ceilPowerOfTwo } from '../utils.js';
7
8
  /**
@@ -28,7 +29,7 @@ export class Sequencer {
28
29
  this.minTxsPerBLock = 1;
29
30
  this.lastPublishedBlock = 0;
30
31
  this.state = SequencerState.STOPPED;
31
- this.pollingIntervalMs = config.transactionPollingInterval ?? 1000;
32
+ this.pollingIntervalMs = config.transactionPollingIntervalMS ?? 1000;
32
33
  if (config.maxTxsPerBlock) {
33
34
  this.maxTxsPerBlock = config.maxTxsPerBlock;
34
35
  }
@@ -103,11 +104,12 @@ export class Sequencer {
103
104
  this.log(`Processing ${validTxs.length} txs...`);
104
105
  this.state = SequencerState.CREATING_BLOCK;
105
106
  const blockNumber = (await this.l2BlockSource.getBlockHeight()) + 1;
106
- const globalVariables = await this.globalsBuilder.buildGlobalVariables(new Fr(blockNumber));
107
+ const newGlobalVariables = await this.globalsBuilder.buildGlobalVariables(new Fr(blockNumber));
108
+ const prevGlobalVariables = (await this.l2BlockSource.getL2Block(-1))?.globalVariables ?? GlobalVariables.empty();
107
109
  // Process txs and drop the ones that fail processing
108
110
  // We create a fresh processor each time to reset any cached state (eg storage writes)
109
- const processor = this.publicProcessorFactory.create();
110
- const [processedTxs, failedTxs] = await processor.process(validTxs, globalVariables);
111
+ const processor = await this.publicProcessorFactory.create(prevGlobalVariables, newGlobalVariables);
112
+ const [processedTxs, failedTxs] = await processor.process(validTxs);
111
113
  if (failedTxs.length > 0) {
112
114
  this.log(`Dropping failed txs ${(await Tx.getHashes(failedTxs)).join(', ')}`);
113
115
  await this.p2pClient.deleteTxs(await Tx.getHashes(failedTxs));
@@ -122,24 +124,25 @@ export class Sequencer {
122
124
  this.log('Successfully retrieved L1 to L2 messages from contract');
123
125
  // Build the new block by running the rollup circuits
124
126
  this.log(`Assembling block with txs ${processedTxs.map(tx => tx.hash).join(', ')}`);
125
- const emptyTx = await processor.makeEmptyProcessedTx(this.chainId, this.version);
126
- const block = await this.buildBlock(processedTxs, l1ToL2Messages, emptyTx, globalVariables);
127
+ const emptyTx = await processor.makeEmptyProcessedTx();
128
+ const block = await this.buildBlock(processedTxs, l1ToL2Messages, emptyTx, newGlobalVariables);
127
129
  this.log(`Assembled block ${block.number}`);
128
- await this.publishContractPublicData(validTxs, block);
130
+ await this.publishContractDataAndBytecode(validTxs, block);
129
131
  await this.publishL2Block(block);
132
+ this.log.info(`Submitted rollup block ${block.number} with ${processedTxs.length} transactions`);
130
133
  }
131
134
  catch (err) {
132
- this.log(err);
133
- this.log(`Rolling back world state DB`);
135
+ this.log.error(err);
136
+ this.log.error(`Rolling back world state DB`);
134
137
  await this.worldState.getLatest().rollback();
135
138
  }
136
139
  }
137
140
  /**
138
- * Gets new contract public data from the txs and publishes it on chain.
141
+ * Gets new contract data and bytecode from the txs and publishes it on chain.
139
142
  * @param validTxs - The set of real transactions being published as part of the block.
140
143
  * @param block - The L2Block to be published.
141
144
  */
142
- async publishContractPublicData(validTxs, block) {
145
+ async publishContractDataAndBytecode(validTxs, block) {
143
146
  // Publishes contract data for txs to the network and awaits the tx to be mined
144
147
  this.state = SequencerState.PUBLISHING_CONTRACT_DATA;
145
148
  const newContractData = validTxs
@@ -147,12 +150,12 @@ export class Sequencer {
147
150
  // Currently can only have 1 new contract per tx
148
151
  const newContract = tx.data?.end.newContracts[0];
149
152
  if (newContract && tx.newContractPublicFunctions?.length) {
150
- return new ContractPublicData(new ContractData(newContract.contractAddress, newContract.portalContractAddress), tx.newContractPublicFunctions);
153
+ return new ContractDataAndBytecode(new ContractData(newContract.contractAddress, newContract.portalContractAddress), tx.newContractPublicFunctions);
151
154
  }
152
155
  })
153
156
  .filter((cd) => cd !== undefined);
154
157
  const blockHash = block.getCalldataHash();
155
- this.log(`Publishing contract public data with block hash ${blockHash.toString('hex')}`);
158
+ this.log(`Publishing contract data and bytecode with block hash ${blockHash.toString('hex')}`);
156
159
  const publishedContractData = await this.publisher.processNewContractData(block.number, blockHash, newContractData);
157
160
  if (publishedContractData) {
158
161
  this.log(`Successfully published new contract data for block ${block.number}`);
@@ -290,4 +293,4 @@ export var SequencerState;
290
293
  */
291
294
  SequencerState[SequencerState["STOPPED"] = 5] = "STOPPED";
292
295
  })(SequencerState || (SequencerState = {}));
293
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VxdWVuY2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcXVlbmNlci9zZXF1ZW5jZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUVuRSxPQUFPLEVBQ0wsWUFBWSxFQUNaLGtCQUFrQixFQUlsQixZQUFZLEVBQ1osRUFBRSxHQUNILE1BQU0sY0FBYyxDQUFDO0FBRXRCLE9BQU8sS0FBSyxNQUFNLGNBQWMsQ0FBQztBQUdqQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBTzdDOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxPQUFPLFNBQVM7SUFVcEIsWUFDVSxTQUFzQixFQUN0QixjQUFxQyxFQUNyQyxTQUFjLEVBQ2QsVUFBa0MsRUFDbEMsWUFBMEIsRUFDMUIsYUFBNEIsRUFDNUIsbUJBQXdDLEVBQ3hDLHNCQUE4QyxFQUN0RCxNQUF1QixFQUNmLE1BQU0saUJBQWlCLENBQUMsaUJBQWlCLENBQUM7UUFUMUMsY0FBUyxHQUFULFNBQVMsQ0FBYTtRQUN0QixtQkFBYyxHQUFkLGNBQWMsQ0FBdUI7UUFDckMsY0FBUyxHQUFULFNBQVMsQ0FBSztRQUNkLGVBQVUsR0FBVixVQUFVLENBQXdCO1FBQ2xDLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUU5QyxRQUFHLEdBQUgsR0FBRyxDQUF1QztRQWpCNUMsbUJBQWMsR0FBRyxFQUFFLENBQUM7UUFDcEIsbUJBQWMsR0FBRyxDQUFDLENBQUM7UUFDbkIsdUJBQWtC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
296
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VxdWVuY2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcXVlbmNlci9zZXF1ZW5jZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFbkUsT0FBTyxFQUNMLFlBQVksRUFDWix1QkFBdUIsRUFJdkIsWUFBWSxFQUNaLEVBQUUsR0FDSCxNQUFNLGNBQWMsQ0FBQztBQUd0QixPQUFPLEtBQUssTUFBTSxjQUFjLENBQUM7QUFLakMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUs3Qzs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sT0FBTyxTQUFTO0lBVXBCLFlBQ1UsU0FBc0IsRUFDdEIsY0FBcUMsRUFDckMsU0FBYyxFQUNkLFVBQWtDLEVBQ2xDLFlBQTBCLEVBQzFCLGFBQTRCLEVBQzVCLG1CQUF3QyxFQUN4QyxzQkFBOEMsRUFDdEQsTUFBdUIsRUFDZixNQUFNLGlCQUFpQixDQUFDLGlCQUFpQixDQUFDO1FBVDFDLGNBQVMsR0FBVCxTQUFTLENBQWE7UUFDdEIsbUJBQWMsR0FBZCxjQUFjLENBQXVCO1FBQ3JDLGNBQVMsR0FBVCxTQUFTLENBQUs7UUFDZCxlQUFVLEdBQVYsVUFBVSxDQUF3QjtRQUNsQyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1Qix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFFOUMsUUFBRyxHQUFILEdBQUcsQ0FBdUM7UUFqQjVDLG1CQUFjLEdBQUcsRUFBRSxD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
@@ -1,6 +1,6 @@
1
- import { CombinedHistoricTreeRoots, Fr, GlobalVariables, NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP, makeEmptyProof, } from '@aztec/circuits.js';
1
+ import { Fr, GlobalVariables, HistoricBlockData, NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP, makeEmptyProof, } from '@aztec/circuits.js';
2
2
  import { P2PClientState } from '@aztec/p2p';
3
- import { L2Block, MerkleTreeId, mockTx, Tx, TxHash } from '@aztec/types';
3
+ import { L2Block, MerkleTreeId, Tx, TxHash, mockTx } from '@aztec/types';
4
4
  import { WorldStateRunningState } from '@aztec/world-state';
5
5
  import { mock } from 'jest-mock-extended';
6
6
  import times from 'lodash.times';
@@ -36,10 +36,10 @@ describe('sequencer', () => {
36
36
  });
37
37
  publicProcessor = mock({
38
38
  process: async (txs) => [await Promise.all(txs.map(tx => makeProcessedTx(tx))), []],
39
- makeEmptyProcessedTx: () => makeEmptyProcessedTx(CombinedHistoricTreeRoots.empty(), chainId, version),
39
+ makeEmptyProcessedTx: () => makeEmptyProcessedTx(HistoricBlockData.empty(), chainId, version),
40
40
  });
41
41
  publicProcessorFactory = mock({
42
- create: () => publicProcessor,
42
+ create: (_, __) => Promise.resolve(publicProcessor),
43
43
  });
44
44
  l2BlockSource = mock({
45
45
  getBlockHeight: () => Promise.resolve(lastBlockNumber),
@@ -96,4 +96,4 @@ class TestSubject extends Sequencer {
96
96
  return super.initialSync();
97
97
  }
98
98
  }
99
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VxdWVuY2VyLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VxdWVuY2VyL3NlcXVlbmNlci50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx5QkFBeUIsRUFDekIsRUFBRSxFQUNGLGVBQWUsRUFDZixtQ0FBbUMsRUFDbkMsY0FBYyxHQUNmLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFPLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNqRCxPQUFPLEVBQXVCLE9BQU8sRUFBaUIsWUFBWSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsTUFBTSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzdHLE9BQU8sRUFBd0Isc0JBQXNCLEVBQTBCLE1BQU0sb0JBQW9CLENBQUM7QUFDMUcsT0FBTyxFQUFhLElBQUksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3JELE9BQU8sS0FBSyxNQUFNLGNBQWMsQ0FBQztBQUdqQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFMUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzNDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsR0FBRyxFQUFFO0lBQ3pCLElBQUksU0FBaUMsQ0FBQztJQUN0QyxJQUFJLHFCQUF1RCxDQUFDO0lBQzVELElBQUksR0FBbUIsQ0FBQztJQUN4QixJQUFJLFVBQTZDLENBQUM7SUFDbEQsSUFBSSxZQUFxQyxDQUFDO0lBQzFDLElBQUksYUFBOEMsQ0FBQztJQUNuRCxJQUFJLGVBQTJDLENBQUM7SUFDaEQsSUFBSSxhQUF1QyxDQUFDO0lBQzVDLElBQUksbUJBQW1ELENBQUM7SUFDeEQsSUFBSSxzQkFBeUQsQ0FBQztJQUU5RCxJQUFJLGVBQXVCLENBQUM7SUFFNUIsSUFBSSxTQUFzQixDQUFDO0lBRTNCLE1BQU0sT0FBTyxHQUFHLEVBQUUsQ0FBQyxJQUFJ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
99
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VxdWVuY2VyLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VxdWVuY2VyL3NlcXVlbmNlci50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxFQUFFLEVBQ0YsZUFBZSxFQUNmLGlCQUFpQixFQUNqQixtQ0FBbUMsRUFDbkMsY0FBYyxHQUNmLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFPLGNBQWMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNqRCxPQUFPLEVBQXVCLE9BQU8sRUFBaUIsWUFBWSxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzdHLE9BQU8sRUFBd0Isc0JBQXNCLEVBQTBCLE1BQU0sb0JBQW9CLENBQUM7QUFFMUcsT0FBTyxFQUFhLElBQUksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3JELE9BQU8sS0FBSyxNQUFNLGNBQWMsQ0FBQztBQUtqQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFMUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsR0FBRyxFQUFFO0lBQ3pCLElBQUksU0FBaUMsQ0FBQztJQUN0QyxJQUFJLHFCQUF1RCxDQUFDO0lBQzVELElBQUksR0FBbUIsQ0FBQztJQUN4QixJQUFJLFVBQTZDLENBQUM7SUFDbEQsSUFBSSxZQUFxQyxDQUFDO0lBQzFDLElBQUksYUFBOEMsQ0FBQztJQUNuRCxJQUFJLGVBQTJDLENBQUM7SUFDaEQsSUFBSSxhQUF1QyxDQUFDO0lBQzVDLElBQUksbUJBQW1ELENBQUM7SUFDeEQsSUFBSSxzQkFBeUQsQ0FBQztJQUU5RCxJQUFJLGVBQXVCLENBQUM7SUFFNUIsSUFBSSxTQUFzQixDQUFDO0lBRTNCLE1BQU0sT0FBTyxHQUFHLEVBQUUsQ0FBQyxJQUFJ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
@@ -1,7 +1,7 @@
1
- import { CombinedHistoricTreeRoots } from '@aztec/circuits.js';
1
+ import { GlobalVariables, HistoricBlockData } from '@aztec/circuits.js';
2
2
  import { MerkleTreeOperations } from '@aztec/world-state';
3
3
  /**
4
4
  * Fetches the private, nullifier, contract tree and l1 to l2 messages tree roots from a given db and assembles a CombinedHistoricTreeRoots object.
5
5
  */
6
- export declare function getCombinedHistoricTreeRoots(db: MerkleTreeOperations): Promise<CombinedHistoricTreeRoots>;
6
+ export declare function getHistoricBlockData(db: MerkleTreeOperations, prevBlockGlobalVariables?: GlobalVariables): Promise<HistoricBlockData>;
7
7
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/sequencer/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAgC,MAAM,oBAAoB,CAAC;AAE7F,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D;;GAEG;AACH,wBAAsB,4BAA4B,CAAC,EAAE,EAAE,oBAAoB,sCAU1E"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/sequencer/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,eAAe,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE1F,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,EAAE,EAAE,oBAAoB,EACxB,wBAAwB,GAAE,eAAyC,8BAgBpE"}
@@ -1,9 +1,12 @@
1
- import { CombinedHistoricTreeRoots, Fr, PrivateHistoricTreeRoots } from '@aztec/circuits.js';
2
- import { MerkleTreeId } from '@aztec/types';
1
+ import { CircuitsWasm, Fr, GlobalVariables, HistoricBlockData } from '@aztec/circuits.js';
2
+ import { computeGlobalsHash } from '@aztec/circuits.js/abis';
3
3
  /**
4
4
  * Fetches the private, nullifier, contract tree and l1 to l2 messages tree roots from a given db and assembles a CombinedHistoricTreeRoots object.
5
5
  */
6
- export async function getCombinedHistoricTreeRoots(db) {
7
- return new CombinedHistoricTreeRoots(new PrivateHistoricTreeRoots(Fr.fromBuffer((await db.getTreeInfo(MerkleTreeId.PRIVATE_DATA_TREE)).root), Fr.fromBuffer((await db.getTreeInfo(MerkleTreeId.NULLIFIER_TREE)).root), Fr.fromBuffer((await db.getTreeInfo(MerkleTreeId.CONTRACT_TREE)).root), Fr.fromBuffer((await db.getTreeInfo(MerkleTreeId.L1_TO_L2_MESSAGES_TREE)).root), Fr.ZERO));
6
+ export async function getHistoricBlockData(db, prevBlockGlobalVariables = GlobalVariables.empty()) {
7
+ const wasm = await CircuitsWasm.get();
8
+ const prevGlobalsHash = computeGlobalsHash(wasm, prevBlockGlobalVariables);
9
+ const roots = db.getTreeRoots();
10
+ return new HistoricBlockData(Fr.fromBuffer(roots.privateDataTreeRoot), Fr.fromBuffer(roots.nullifierTreeRoot), Fr.fromBuffer(roots.contractDataTreeRoot), Fr.fromBuffer(roots.l1Tol2MessagesTreeRoot), Fr.fromBuffer(roots.blocksTreeRoot), Fr.ZERO, Fr.fromBuffer(roots.publicDataTreeRoot), prevGlobalsHash);
8
11
  }
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VxdWVuY2VyL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxFQUFFLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM3RixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRzVDOztHQUVHO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSw0QkFBNEIsQ0FBQyxFQUF3QjtJQUN6RSxPQUFPLElBQUkseUJBQXlCLENBQ2xDLElBQUksd0JBQXdCLENBQzFCLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFDMUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFDdkUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFDdEUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUMvRSxFQUFFLENBQUMsSUFBSSxDQUNSLENBQ0YsQ0FBQztBQUNKLENBQUMifQ==
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VxdWVuY2VyL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsRUFBRSxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzFGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRzdEOztHQUVHO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxvQkFBb0IsQ0FDeEMsRUFBd0IsRUFDeEIsMkJBQTRDLGVBQWUsQ0FBQyxLQUFLLEVBQUU7SUFFbkUsTUFBTSxJQUFJLEdBQUcsTUFBTSxZQUFZLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDdEMsTUFBTSxlQUFlLEdBQUcsa0JBQWtCLENBQUMsSUFBSSxFQUFFLHdCQUF3QixDQUFDLENBQUM7SUFDM0UsTUFBTSxLQUFLLEdBQUcsRUFBRSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBRWhDLE9BQU8sSUFBSSxpQkFBaUIsQ0FDMUIsRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsRUFDeEMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsRUFDdEMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsb0JBQW9CLENBQUMsRUFDekMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsc0JBQXNCLENBQUMsRUFDM0MsRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLEVBQ25DLEVBQUUsQ0FBQyxJQUFJLEVBQ1AsRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsRUFDdkMsZUFBZSxDQUNoQixDQUFDO0FBQ0osQ0FBQyJ9
@@ -28,13 +28,13 @@ export interface RollupSimulator {
28
28
  export interface PublicKernelCircuitSimulator {
29
29
  /**
30
30
  * Simulates the public kernel circuit (with a previous private kernel circuit run) from its inputs.
31
- * @param input - Inputs to the circuit.
31
+ * @param inputs - Inputs to the circuit.
32
32
  * @returns The public inputs as outputs of the simulation.
33
33
  */
34
34
  publicKernelCircuitPrivateInput(inputs: PublicKernelInputs): Promise<PublicKernelPublicInputs>;
35
35
  /**
36
36
  * Simulates the public kernel circuit (with no previous public kernel circuit run) from its inputs.
37
- * @param input - Inputs to the circuit.
37
+ * @param inputs - Inputs to the circuit.
38
38
  * @returns The public inputs as outputs of the simulation.
39
39
  */
40
40
  publicKernelCircuitNonFirstIteration(inputs: PublicKernelInputs): Promise<PublicKernelPublicInputs>;
@@ -1,5 +1,5 @@
1
1
  import { CommitmentDataOracleInputs, CommitmentsDB, MessageLoadOracleInputs, PublicExecutor } from '@aztec/acir-simulator';
2
- import { AztecAddress, Fr, PrivateHistoricTreeRoots } from '@aztec/circuits.js';
2
+ import { AztecAddress, Fr, HistoricBlockData } from '@aztec/circuits.js';
3
3
  import { ContractDataSource, L1ToL2MessageSource } from '@aztec/types';
4
4
  import { MerkleTreeOperations } from '@aztec/world-state';
5
5
  /**
@@ -8,7 +8,7 @@ import { MerkleTreeOperations } from '@aztec/world-state';
8
8
  * @param contractDataSource - A contract data source.
9
9
  * @returns A new instance of a PublicExecutor.
10
10
  */
11
- export declare function getPublicExecutor(merkleTree: MerkleTreeOperations, contractDataSource: ContractDataSource, l1toL2MessageSource: L1ToL2MessageSource): PublicExecutor;
11
+ export declare function getPublicExecutor(merkleTree: MerkleTreeOperations, contractDataSource: ContractDataSource, l1toL2MessageSource: L1ToL2MessageSource, blockData: HistoricBlockData): PublicExecutor;
12
12
  /**
13
13
  * Implements WorldState db using a world state database.
14
14
  */
@@ -16,24 +16,7 @@ export declare class WorldStateDB implements CommitmentsDB {
16
16
  private db;
17
17
  private l1ToL2MessageSource;
18
18
  constructor(db: MerkleTreeOperations, l1ToL2MessageSource: L1ToL2MessageSource);
19
- /**
20
- * Gets a confirmed L1 to L2 message for the given message key.
21
- * TODO(Maddiaa): Can be combined with aztec-node method that does the same thing.
22
- * @param messageKey - The message Key.
23
- * @returns - The l1 to l2 message object
24
- */
25
19
  getL1ToL2Message(messageKey: Fr): Promise<MessageLoadOracleInputs>;
26
- /**
27
- * Gets a message index and sibling path to some commitment in the private data tree.
28
- * @param address - The contract address owning storage.
29
- * @param commitment - The preimage of the siloed data.
30
- * @returns - The Commitment data oracle object
31
- */
32
- getCommitmentOracle(address: AztecAddress, commitment: Fr): Promise<CommitmentDataOracleInputs>;
33
- /**
34
- * Gets the current tree roots from the merkle db.
35
- * @returns current tree roots.
36
- */
37
- getTreeRoots(): PrivateHistoricTreeRoots;
20
+ getCommitmentOracle(address: AztecAddress, innerCommitment: Fr): Promise<CommitmentDataOracleInputs>;
38
21
  }
39
22
  //# sourceMappingURL=public_executor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"public_executor.d.ts","sourceRoot":"","sources":["../../src/simulator/public_executor.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,aAAa,EACb,uBAAuB,EAEvB,cAAc,EAEf,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,YAAY,EAA4B,EAAE,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAE1G,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAgB,MAAM,cAAc,CAAC;AACrF,OAAO,EAAE,oBAAoB,EAAkC,MAAM,oBAAoB,CAAC;AAE1F;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,oBAAoB,EAChC,kBAAkB,EAAE,kBAAkB,EACtC,mBAAmB,EAAE,mBAAmB,kBAOzC;AAiDD;;GAEG;AACH,qBAAa,YAAa,YAAW,aAAa;IACpC,OAAO,CAAC,EAAE;IAAwB,OAAO,CAAC,mBAAmB;gBAArD,EAAE,EAAE,oBAAoB,EAAU,mBAAmB,EAAE,mBAAmB;IAE9F;;;;;OAKG;IACU,gBAAgB,CAAC,UAAU,EAAE,EAAE,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAa/E;;;;;OAKG;IACU,mBAAmB,CAAC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,EAAE,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAY5G;;;OAGG;IACI,YAAY,IAAI,wBAAwB;CAWhD"}
1
+ {"version":3,"file":"public_executor.d.ts","sourceRoot":"","sources":["../../src/simulator/public_executor.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,aAAa,EACb,uBAAuB,EAEvB,cAAc,EAEf,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,YAAY,EAA4B,EAAE,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEnG,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAgB,MAAM,cAAc,CAAC;AACrF,OAAO,EAAE,oBAAoB,EAAkC,MAAM,oBAAoB,CAAC;AAE1F;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,oBAAoB,EAChC,kBAAkB,EAAE,kBAAkB,EACtC,mBAAmB,EAAE,mBAAmB,EACxC,SAAS,EAAE,iBAAiB,kBAQ7B;AAoDD;;GAEG;AACH,qBAAa,YAAa,YAAW,aAAa;IACpC,OAAO,CAAC,EAAE;IAAwB,OAAO,CAAC,mBAAmB;gBAArD,EAAE,EAAE,oBAAoB,EAAU,mBAAmB,EAAE,mBAAmB;IAEjF,gBAAgB,CAAC,UAAU,EAAE,EAAE,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAalE,mBAAmB,CAAC,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,EAAE,GAAG,OAAO,CAAC,0BAA0B,CAAC;CAelH"}
@@ -1,5 +1,5 @@
1
1
  import { PublicExecutor, } from '@aztec/acir-simulator';
2
- import { CircuitsWasm, Fr, PrivateHistoricTreeRoots } from '@aztec/circuits.js';
2
+ import { CircuitsWasm, Fr } from '@aztec/circuits.js';
3
3
  import { siloCommitment } from '@aztec/circuits.js/abis';
4
4
  import { MerkleTreeId } from '@aztec/types';
5
5
  import { computePublicDataTreeLeafIndex } from '@aztec/world-state';
@@ -9,8 +9,8 @@ import { computePublicDataTreeLeafIndex } from '@aztec/world-state';
9
9
  * @param contractDataSource - A contract data source.
10
10
  * @returns A new instance of a PublicExecutor.
11
11
  */
12
- export function getPublicExecutor(merkleTree, contractDataSource, l1toL2MessageSource) {
13
- return new PublicExecutor(new WorldStatePublicDB(merkleTree), new ContractsDataSourcePublicDB(contractDataSource), new WorldStateDB(merkleTree, l1toL2MessageSource));
12
+ export function getPublicExecutor(merkleTree, contractDataSource, l1toL2MessageSource, blockData) {
13
+ return new PublicExecutor(new WorldStatePublicDB(merkleTree), new ContractsDataSourcePublicDB(contractDataSource), new WorldStateDB(merkleTree, l1toL2MessageSource), blockData);
14
14
  }
15
15
  /**
16
16
  * Implements the PublicContractsDB using a ContractDataSource.
@@ -22,8 +22,11 @@ class ContractsDataSourcePublicDB {
22
22
  async getBytecode(address, functionSelector) {
23
23
  return (await this.db.getPublicFunction(address, functionSelector))?.bytecode;
24
24
  }
25
+ async getIsInternal(address, functionSelector) {
26
+ return (await this.db.getPublicFunction(address, functionSelector))?.isInternal;
27
+ }
25
28
  async getPortalContractAddress(address) {
26
- return (await this.db.getL2ContractInfo(address))?.portalContractAddress;
29
+ return (await this.db.getContractData(address))?.portalContractAddress;
27
30
  }
28
31
  }
29
32
  /**
@@ -67,12 +70,6 @@ export class WorldStateDB {
67
70
  this.db = db;
68
71
  this.l1ToL2MessageSource = l1ToL2MessageSource;
69
72
  }
70
- /**
71
- * Gets a confirmed L1 to L2 message for the given message key.
72
- * TODO(Maddiaa): Can be combined with aztec-node method that does the same thing.
73
- * @param messageKey - The message Key.
74
- * @returns - The l1 to l2 message object
75
- */
76
73
  async getL1ToL2Message(messageKey) {
77
74
  // todo: #697 - make this one lookup.
78
75
  const message = await this.l1ToL2MessageSource.getConfirmedL1ToL2Message(messageKey);
@@ -80,39 +77,23 @@ export class WorldStateDB {
80
77
  const siblingPath = await this.db.getSiblingPath(MerkleTreeId.L1_TO_L2_MESSAGES_TREE, index);
81
78
  return {
82
79
  message: message.toFieldArray(),
83
- index,
84
80
  siblingPath: siblingPath.toFieldArray(),
81
+ index,
85
82
  };
86
83
  }
87
- /**
88
- * Gets a message index and sibling path to some commitment in the private data tree.
89
- * @param address - The contract address owning storage.
90
- * @param commitment - The preimage of the siloed data.
91
- * @returns - The Commitment data oracle object
92
- */
93
- async getCommitmentOracle(address, commitment) {
94
- const siloedCommitment = siloCommitment(await CircuitsWasm.get(), address, commitment);
84
+ async getCommitmentOracle(address, innerCommitment) {
85
+ const siloedCommitment = siloCommitment(await CircuitsWasm.get(), address, innerCommitment);
86
+ // TODO(https://github.com/AztecProtocol/aztec-packages/issues/1386): shoild be
87
+ // unique commitment that exists in tree (should be siloed and then made unique via
88
+ // nonce). Once public kernel or base rollup circuit injects nonces, this can be updated
89
+ // to use uniqueSiloedCommitment.
95
90
  const index = (await this.db.findLeafIndex(MerkleTreeId.PRIVATE_DATA_TREE, siloedCommitment.toBuffer()));
96
91
  const siblingPath = await this.db.getSiblingPath(MerkleTreeId.PRIVATE_DATA_TREE, index);
97
92
  return {
98
93
  commitment: siloedCommitment,
99
- index,
100
94
  siblingPath: siblingPath.toFieldArray(),
95
+ index,
101
96
  };
102
97
  }
103
- /**
104
- * Gets the current tree roots from the merkle db.
105
- * @returns current tree roots.
106
- */
107
- getTreeRoots() {
108
- const roots = this.db.getCommitmentTreeRoots();
109
- return PrivateHistoricTreeRoots.from({
110
- privateKernelVkTreeRoot: Fr.ZERO,
111
- privateDataTreeRoot: Fr.fromBuffer(roots.privateDataTreeRoot),
112
- contractTreeRoot: Fr.fromBuffer(roots.contractDataTreeRoot),
113
- nullifierTreeRoot: Fr.fromBuffer(roots.nullifierTreeRoot),
114
- l1ToL2MessagesTreeRoot: Fr.fromBuffer(roots.l1Tol2MessagesTreeRoot),
115
- });
116
- }
117
98
  }
118
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2V4ZWN1dG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NpbXVsYXRvci9wdWJsaWNfZXhlY3V0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUtMLGNBQWMsR0FFZixNQUFNLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sRUFBZ0IsWUFBWSxFQUFjLEVBQUUsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzFHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQTJDLFlBQVksRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNyRixPQUFPLEVBQXdCLDhCQUE4QixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFMUY7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsaUJBQWlCLENBQy9CLFVBQWdDLEVBQ2hDLGtCQUFzQyxFQUN0QyxtQkFBd0M7SUFFeEMsT0FBTyxJQUFJLGNBQWMsQ0FDdkIsSUFBSSxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsRUFDbEMsSUFBSSwyQkFBMkIsQ0FBQyxrQkFBa0IsQ0FBQyxFQUNuRCxJQUFJLFlBQVksQ0FBQyxVQUFVLEVBQUUsbUJBQW1CLENBQUMsQ0FDbEQsQ0FBQztBQUNKLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sMkJBQTJCO0lBQy9CLFlBQW9CLEVBQXNCO1FBQXRCLE9BQUUsR0FBRixFQUFFLENBQW9CO0lBQUcsQ0FBQztJQUM5QyxLQUFLLENBQUMsV0FBVyxDQUFDLE9BQXFCLEVBQUUsZ0JBQXdCO1FBQy9ELE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFLENBQUMsaUJBQWlCLENBQUMsT0FBTyxFQUFFLGdCQUFnQixDQUFDLENBQUMsRUFBRSxRQUFRLENBQUM7SUFDaEYsQ0FBQztJQUNELEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxPQUFxQjtRQUNsRCxPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsRUFB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
99
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2V4ZWN1dG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NpbXVsYXRvci9wdWJsaWNfZXhlY3V0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUtMLGNBQWMsR0FFZixNQUFNLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sRUFBZ0IsWUFBWSxFQUFjLEVBQUUsRUFBcUIsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUEyQyxZQUFZLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDckYsT0FBTyxFQUF3Qiw4QkFBOEIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRTFGOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQixDQUMvQixVQUFnQyxFQUNoQyxrQkFBc0MsRUFDdEMsbUJBQXdDLEVBQ3hDLFNBQTRCO0lBRTVCLE9BQU8sSUFBSSxjQUFjLENBQ3ZCLElBQUksa0JBQWtCLENBQUMsVUFBVSxDQUFDLEVBQ2xDLElBQUksMkJBQTJCLENBQUMsa0JBQWtCLENBQUMsRUFDbkQsSUFBSSxZQUFZLENBQUMsVUFBVSxFQUFFLG1CQUFtQixDQUFDLEVBQ2pELFNBQVMsQ0FDVixDQUFDO0FBQ0osQ0FBQztBQUVEOztHQUVHO0FBQ0gsTUFBTSwyQkFBMkI7SUFDL0IsWUFBb0IsRUFBc0I7UUFBdEIsT0FBRSxHQUFGLEVBQUUsQ0FBb0I7SUFBRyxDQUFDO0lBQzlDLEtBQUssQ0FBQyxXQUFXLENBQUMsT0FBcUIsRUFBRSxnQkFBd0I7UUFDL0QsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQyxFQUFFLFFBQVEsQ0FBQztJQUNoRixDQUFDO0lBQ0QsS0FBSyxDQUFDLGFBQWEsQ0FBQyxPQUFxQixFQUFFLGdCQUF3QjtRQUNqRSxPQUFPLENB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