@aztec/archiver 0.1.0-alpha47 → 0.1.0-alpha49

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.
@@ -2,7 +2,7 @@
2
2
  import { EthAddress } from '@aztec/foundation/eth-address';
3
3
  import { Fr } from '@aztec/foundation/fields';
4
4
  import { ContractDeploymentEmitterAbi, InboxAbi, RollupAbi } from '@aztec/l1-artifacts';
5
- import { ContractDataAndBytecode, L1ToL2Message, L2Block } from '@aztec/types';
5
+ import { ExtendedContractData, L1ToL2Message, L2Block } from '@aztec/types';
6
6
  import { Log, PublicClient } from 'viem';
7
7
  /**
8
8
  * Processes newly received MessageAdded (L1 to L2) logs.
@@ -53,11 +53,11 @@ export declare function getContractDeploymentLogs(publicClient: PublicClient, co
53
53
  * Processes newly received ContractDeployment logs.
54
54
  * @param blockHashMapping - A mapping from block number to relevant block hash.
55
55
  * @param logs - ContractDeployment logs.
56
- * @returns The set of retrieved contract data and bytecode items.
56
+ * @returns The set of retrieved extended contract data items.
57
57
  */
58
58
  export declare function processContractDeploymentLogs(blockHashMapping: {
59
59
  [key: number]: Buffer | undefined;
60
- }, logs: Log<bigint, number, undefined, true, typeof ContractDeploymentEmitterAbi, 'ContractDeployment'>[]): [ContractDataAndBytecode[], number][];
60
+ }, logs: Log<bigint, number, undefined, true, typeof ContractDeploymentEmitterAbi, 'ContractDeployment'>[]): [ExtendedContractData[], number][];
61
61
  /**
62
62
  * Get relevant `MessageAdded` logs emitted by Inbox on chain.
63
63
  * @param publicClient - The viem public client to use for transaction retrieval.
@@ -1 +1 @@
1
- {"version":3,"file":"eth_log_handlers.d.ts","sourceRoot":"","sources":["../../src/archiver/eth_log_handlers.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,4BAA4B,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACxF,OAAO,EAGL,uBAAuB,EAGvB,aAAa,EAEb,OAAO,EACR,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAO,GAAG,EAAE,YAAY,EAA0D,MAAM,MAAM,CAAC;AAEtG;;;;GAIG;AACH,wBAAgB,oCAAoC,CAClD,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,QAAQ,EAAE,cAAc,CAAC,EAAE,GAC5E,aAAa,EAAE,CAkBjB;AAED;;;;GAIG;AACH,wBAAgB,kCAAkC,CAChD,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,QAAQ,EAAE,wBAAwB,CAAC,EAAE,GACtF,EAAE,EAAE,CAMN;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,YAAY,EAAE,YAAY,EAC1B,qBAAqB,EAAE,MAAM,EAC7B,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,SAAS,EAAE,kBAAkB,CAAC,EAAE,sBAcnF;AA+BD;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAC3C,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,UAAU,EACzB,SAAS,EAAE,MAAM;;;;;;;;;;UAalB;AAED;;;;;;GAMG;AACH,wBAAsB,yBAAyB,CAC7C,YAAY,EAAE,YAAY,EAC1B,gCAAgC,EAAE,UAAU,EAC5C,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,4BAA4B,EAAE,oBAAoB,CAAC,EAAE,CAAC,CAU5G;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,gBAAgB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;CAAE,EACvD,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,4BAA4B,EAAE,oBAAoB,CAAC,EAAE,GACtG,CAAC,uBAAuB,EAAE,EAAE,MAAM,CAAC,EAAE,CAsBvC;AAED;;;;;;GAMG;AACH,wBAAsB,2BAA2B,CAC/C,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,UAAU,EACxB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,QAAQ,EAAE,cAAc,CAAC,EAAE,CAAC,CAUlF;AAED;;;;;;GAMG;AACH,wBAAsB,6BAA6B,CACjD,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,UAAU,EACxB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,QAAQ,EAAE,wBAAwB,CAAC,EAAE,CAAC,CAU5F"}
1
+ {"version":3,"file":"eth_log_handlers.d.ts","sourceRoot":"","sources":["../../src/archiver/eth_log_handlers.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,EAAE,EAAS,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,4BAA4B,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACxF,OAAO,EAIL,oBAAoB,EAEpB,aAAa,EAEb,OAAO,EACR,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAO,GAAG,EAAE,YAAY,EAA0D,MAAM,MAAM,CAAC;AAEtG;;;;GAIG;AACH,wBAAgB,oCAAoC,CAClD,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,QAAQ,EAAE,cAAc,CAAC,EAAE,GAC5E,aAAa,EAAE,CAkBjB;AAED;;;;GAIG;AACH,wBAAgB,kCAAkC,CAChD,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,QAAQ,EAAE,wBAAwB,CAAC,EAAE,GACtF,EAAE,EAAE,CAMN;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,YAAY,EAAE,YAAY,EAC1B,qBAAqB,EAAE,MAAM,EAC7B,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,SAAS,EAAE,kBAAkB,CAAC,EAAE,sBAcnF;AA+BD;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAC3C,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,UAAU,EACzB,SAAS,EAAE,MAAM;;;;;;;;;;UAalB;AAED;;;;;;GAMG;AACH,wBAAsB,yBAAyB,CAC7C,YAAY,EAAE,YAAY,EAC1B,gCAAgC,EAAE,UAAU,EAC5C,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,4BAA4B,EAAE,oBAAoB,CAAC,EAAE,CAAC,CAU5G;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,gBAAgB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;CAAE,EACvD,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,4BAA4B,EAAE,oBAAoB,CAAC,EAAE,GACtG,CAAC,oBAAoB,EAAE,EAAE,MAAM,CAAC,EAAE,CA8BpC;AAED;;;;;;GAMG;AACH,wBAAsB,2BAA2B,CAC/C,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,UAAU,EACxB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,QAAQ,EAAE,cAAc,CAAC,EAAE,CAAC,CAUlF;AAED;;;;;;GAMG;AACH,wBAAsB,6BAA6B,CACjD,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,UAAU,EACxB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,QAAQ,EAAE,wBAAwB,CAAC,EAAE,CAAC,CAU5F"}
@@ -1,8 +1,8 @@
1
1
  import { AztecAddress } from '@aztec/foundation/aztec-address';
2
2
  import { EthAddress } from '@aztec/foundation/eth-address';
3
- import { Fr } from '@aztec/foundation/fields';
3
+ import { Fr, Point } from '@aztec/foundation/fields';
4
4
  import { ContractDeploymentEmitterAbi, InboxAbi, RollupAbi } from '@aztec/l1-artifacts';
5
- import { BufferReader, ContractData, ContractDataAndBytecode, EncodedContractFunction, L1Actor, L1ToL2Message, L2Actor, L2Block, } from '@aztec/types';
5
+ import { BufferReader, ContractData, EncodedContractFunction, ExtendedContractData, L1Actor, L1ToL2Message, L2Actor, L2Block, } from '@aztec/types';
6
6
  import { decodeFunctionData, getAbiItem, getAddress, hexToBytes } from 'viem';
7
7
  /**
8
8
  * Processes newly received MessageAdded (L1 to L2) logs.
@@ -116,10 +116,10 @@ export async function getContractDeploymentLogs(publicClient, contractDeployment
116
116
  * Processes newly received ContractDeployment logs.
117
117
  * @param blockHashMapping - A mapping from block number to relevant block hash.
118
118
  * @param logs - ContractDeployment logs.
119
- * @returns The set of retrieved contract data and bytecode items.
119
+ * @returns The set of retrieved extended contract data items.
120
120
  */
121
121
  export function processContractDeploymentLogs(blockHashMapping, logs) {
122
- const contractDataAndBytecode = [];
122
+ const extendedContractData = [];
123
123
  for (let i = 0; i < logs.length; i++) {
124
124
  const log = logs[i];
125
125
  const l2BlockNum = Number(log.args.l2BlockNum);
@@ -129,15 +129,17 @@ export function processContractDeploymentLogs(blockHashMapping, logs) {
129
129
  continue;
130
130
  }
131
131
  const publicFnsReader = BufferReader.asReader(Buffer.from(log.args.acir.slice(2), 'hex'));
132
- const contractData = new ContractDataAndBytecode(new ContractData(AztecAddress.fromString(log.args.aztecAddress), EthAddress.fromString(log.args.portalAddress)), publicFnsReader.readVector(EncodedContractFunction));
133
- if (contractDataAndBytecode[i]) {
134
- contractDataAndBytecode[i][0].push(contractData);
132
+ const partialAddress = Fr.fromBuffer(Buffer.from(hexToBytes(log.args.partialAddress)));
133
+ const publicKey = new Point(Fr.fromBuffer(Buffer.from(hexToBytes(log.args.pubKeyX))), Fr.fromBuffer(Buffer.from(hexToBytes(log.args.pubKeyY))));
134
+ const contractData = new ExtendedContractData(new ContractData(AztecAddress.fromString(log.args.aztecAddress), EthAddress.fromString(log.args.portalAddress)), publicFnsReader.readVector(EncodedContractFunction), partialAddress, publicKey);
135
+ if (extendedContractData[i]) {
136
+ extendedContractData[i][0].push(contractData);
135
137
  }
136
138
  else {
137
- contractDataAndBytecode[i] = [[contractData], l2BlockNum];
139
+ extendedContractData[i] = [[contractData], l2BlockNum];
138
140
  }
139
141
  }
140
- return contractDataAndBytecode;
142
+ return extendedContractData;
141
143
  }
142
144
  /**
143
145
  * Get relevant `MessageAdded` logs emitted by Inbox on chain.
@@ -175,4 +177,4 @@ export async function getL1ToL2MessageCancelledLogs(publicClient, inboxAddress,
175
177
  fromBlock,
176
178
  });
177
179
  }
178
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXRoX2xvZ19oYW5kbGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcmNoaXZlci9ldGhfbG9nX2hhbmRsZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDM0QsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzlDLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEYsT0FBTyxFQUNMLFlBQVksRUFDWixZQUFZLEVBQ1osdUJBQXVCLEVBQ3ZCLHVCQUF1QixFQUN2QixPQUFPLEVBQ1AsYUFBYSxFQUNiLE9BQU8sRUFDUCxPQUFPLEdBQ1IsTUFBTSxjQUFjLENBQUM7QUFFdEIsT0FBTyxFQUEwQixrQkFBa0IsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV0Rzs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLG9DQUFvQyxDQUNsRCxJQUE2RTtJQUU3RSxNQUFNLGNBQWMsR0FBb0IsRUFBRSxDQUFDO0lBQzNDLEtBQUssTUFBTSxHQUFHLElBQUksSUFBSSxFQUFFO1FBQ3RCLE1BQU0sRUFBRSxNQUFNLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLEdBQ3hHLEdBQUcsQ0FBQyxJQUFJLENBQUM7UUFDWCxjQUFjLENBQUMsSUFBSSxDQUNqQixJQUFJLGFBQWEsQ0FDZixJQUFJLE9BQU8sQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxFQUFFLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxFQUNqRSxJQUFJLE9BQU8s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
180
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXRoX2xvZ19oYW5kbGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcmNoaXZlci9ldGhfbG9nX2hhbmRsZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDM0QsT0FBTyxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hGLE9BQU8sRUFDTCxZQUFZLEVBQ1osWUFBWSxFQUNaLHVCQUF1QixFQUN2QixvQkFBb0IsRUFDcEIsT0FBTyxFQUNQLGFBQWEsRUFDYixPQUFPLEVBQ1AsT0FBTyxHQUNSLE1BQU0sY0FBYyxDQUFDO0FBRXRCLE9BQU8sRUFBMEIsa0JBQWtCLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdEc7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxvQ0FBb0MsQ0FDbEQsSUFBNkU7SUFFN0UsTUFBTSxjQUFjLEdBQW9CLEVBQUUsQ0FBQztJQUMzQyxLQUFLLE1BQU0sR0FBRyxJQUFJLElBQUksRUFBRTtRQUN0QixNQUFNLEVBQUUsTUFBTSxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxHQUN4RyxHQUFHLENBQUMsSUFBSSxDQUFDO1FBQ1gsY0FBYyxDQUFDLElBQUksQ0FDakIsSUFBSSxhQUFhLENBQ2YsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRSxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUMsRUFDakUs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
package/dest/index.js CHANGED
@@ -30,7 +30,7 @@ async function main() {
30
30
  if (process.argv[1] === fileURLToPath(import.meta.url).replace(/\/index\.js$/, '')) {
31
31
  // eslint-disable-next-line @typescript-eslint/no-floating-promises
32
32
  main().catch(err => {
33
- log.fatal(err);
33
+ log.error(err);
34
34
  process.exit(1);
35
35
  });
36
36
  }
package/package.json CHANGED
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "name": "@aztec/archiver",
3
- "version": "0.1.0-alpha47",
3
+ "version": "0.1.0-alpha49",
4
4
  "exports": "./dest/index.js",
5
5
  "type": "module",
6
6
  "dependencies": {
7
- "@aztec/circuits.js": "0.1.0-alpha47",
8
- "@aztec/ethereum": "0.1.0-alpha47",
9
- "@aztec/foundation": "0.1.0-alpha47",
10
- "@aztec/l1-artifacts": "0.1.0-alpha47",
11
- "@aztec/types": "0.1.0-alpha47",
7
+ "@aztec/circuits.js": "0.1.0-alpha49",
8
+ "@aztec/ethereum": "0.1.0-alpha49",
9
+ "@aztec/foundation": "0.1.0-alpha49",
10
+ "@aztec/l1-artifacts": "0.1.0-alpha49",
11
+ "@aztec/types": "0.1.0-alpha49",
12
12
  "@types/lodash.omit": "^4.5.7",
13
13
  "debug": "^4.3.4",
14
14
  "lodash.omit": "^4.5.0",
@@ -3,14 +3,7 @@ import { EthAddress } from '@aztec/foundation/eth-address';
3
3
  import { Fr } from '@aztec/foundation/fields';
4
4
  import { sleep } from '@aztec/foundation/sleep';
5
5
  import { ContractDeploymentEmitterAbi, InboxAbi, RollupAbi } from '@aztec/l1-artifacts';
6
- import {
7
- ContractData,
8
- ContractDataAndBytecode,
9
- EncodedContractFunction,
10
- L2Block,
11
- L2BlockL2Logs,
12
- LogType,
13
- } from '@aztec/types';
6
+ import { ExtendedContractData, L2Block, L2BlockL2Logs, LogType } from '@aztec/types';
14
7
 
15
8
  import { MockProxy, mock } from 'jest-mock-extended';
16
9
  import { Chain, HttpTransport, Log, PublicClient, Transaction, encodeFunctionData, toHex } from 'viem';
@@ -155,21 +148,18 @@ function makeL2BlockProcessedEvent(l1BlockNum: bigint, l2BlockNum: bigint) {
155
148
  * @returns An ContractDeployment event.
156
149
  */
157
150
  function makeContractDeploymentEvent(l1BlockNum: bigint, l2Block: L2Block) {
158
- // const contractData = ContractData.random();
159
- const aztecAddress = AztecAddress.random();
160
- const portalAddress = EthAddress.random();
161
- const contractData = new ContractDataAndBytecode(new ContractData(aztecAddress, portalAddress), [
162
- EncodedContractFunction.random(),
163
- EncodedContractFunction.random(),
164
- ]);
165
- const acir = contractData.bytecode?.toString('hex');
151
+ const extendedContractData = ExtendedContractData.random();
152
+ const acir = extendedContractData.bytecode?.toString('hex');
166
153
  return {
167
154
  blockNumber: l1BlockNum,
168
155
  args: {
169
156
  l2BlockNum: BigInt(l2Block.number),
170
- aztecAddress: aztecAddress.toString(),
171
- portalAddress: portalAddress.toString(),
157
+ aztecAddress: extendedContractData.contractData.contractAddress.toString(),
158
+ portalAddress: extendedContractData.contractData.portalContractAddress.toString(),
172
159
  l2BlockHash: `0x${l2Block.getCalldataHash().toString('hex')}`,
160
+ partialAddress: extendedContractData.partialAddress.toString(true),
161
+ pubKeyX: extendedContractData.publicKey.x.toString(true),
162
+ pubKeyY: extendedContractData.publicKey.y.toString(true),
173
163
  acir: '0x' + acir,
174
164
  },
175
165
  transactionHash: `0x${l2Block.number}`,
@@ -7,9 +7,9 @@ import { DebugLogger, createDebugLogger } from '@aztec/foundation/log';
7
7
  import { RunningPromise } from '@aztec/foundation/running-promise';
8
8
  import {
9
9
  ContractData,
10
- ContractDataAndBytecode,
11
10
  ContractDataSource,
12
11
  EncodedContractFunction,
12
+ ExtendedContractData,
13
13
  INITIAL_L2_BLOCK_NUM,
14
14
  L1ToL2Message,
15
15
  L1ToL2MessageSource,
@@ -17,7 +17,9 @@ import {
17
17
  L2BlockL2Logs,
18
18
  L2BlockSource,
19
19
  L2LogsSource,
20
+ L2Tx,
20
21
  LogType,
22
+ TxHash,
21
23
  } from '@aztec/types';
22
24
 
23
25
  import omit from 'lodash.omit';
@@ -222,9 +224,9 @@ export class Archiver implements L2BlockSource, L2LogsSource, ContractDataSource
222
224
  // store contracts for which we have retrieved L2 blocks
223
225
  const lastKnownL2BlockNum = retrievedBlocks.retrievedData[retrievedBlocks.retrievedData.length - 1].number;
224
226
  retrievedContracts.retrievedData.forEach(async ([contracts, l2BlockNum], index) => {
225
- this.log(`Retrieved contract data and bytecode for l2 block number: ${index}`);
227
+ this.log(`Retrieved extended contract data for l2 block number: ${index}`);
226
228
  if (l2BlockNum <= lastKnownL2BlockNum) {
227
- await this.store.addContractDataAndBytecode(contracts, l2BlockNum);
229
+ await this.store.addExtendedContractData(contracts, l2BlockNum);
228
230
  }
229
231
  });
230
232
 
@@ -238,7 +240,7 @@ export class Archiver implements L2BlockSource, L2LogsSource, ContractDataSource
238
240
  // remove logs to serve "lightweight" block information. Logs can be fetched separately if needed.
239
241
  await this.store.addL2Blocks(
240
242
  retrievedBlocks.retrievedData.map(block =>
241
- L2Block.fromFields(omit(block, ['newEncryptedLogs', 'newUnencryptedLogs'])),
243
+ L2Block.fromFields(omit(block, ['newEncryptedLogs', 'newUnencryptedLogs']), block.getBlockHash()),
242
244
  ),
243
245
  );
244
246
 
@@ -286,14 +288,17 @@ export class Archiver implements L2BlockSource, L2LogsSource, ContractDataSource
286
288
  return blocks.length === 0 ? undefined : blocks[0];
287
289
  }
288
290
 
291
+ public getL2Tx(txHash: TxHash): Promise<L2Tx | undefined> {
292
+ return this.store.getL2Tx(txHash);
293
+ }
294
+
289
295
  /**
290
- * Lookup the L2 contract data for this contract.
291
- * Contains the contract's public function bytecode.
296
+ * Get the extended contract data for this contract.
292
297
  * @param contractAddress - The contract data address.
293
- * @returns The contract data.
298
+ * @returns The extended contract data or undefined if not found.
294
299
  */
295
- public getContractDataAndBytecode(contractAddress: AztecAddress): Promise<ContractDataAndBytecode | undefined> {
296
- return this.store.getContractDataAndBytecode(contractAddress);
300
+ getExtendedContractData(contractAddress: AztecAddress): Promise<ExtendedContractData | undefined> {
301
+ return this.store.getExtendedContractData(contractAddress);
297
302
  }
298
303
 
299
304
  /**
@@ -301,8 +306,8 @@ export class Archiver implements L2BlockSource, L2LogsSource, ContractDataSource
301
306
  * @param blockNum - The block number to get all contract data from.
302
307
  * @returns All new contract data in the block (if found).
303
308
  */
304
- public getContractDataAndBytecodeInBlock(blockNum: number): Promise<ContractDataAndBytecode[]> {
305
- return this.store.getContractDataAndBytecodeInBlock(blockNum);
309
+ public getExtendedContractDataInBlock(blockNum: number): Promise<ExtendedContractData[]> {
310
+ return this.store.getExtendedContractDataInBlock(blockNum);
306
311
  }
307
312
 
308
313
  /**
@@ -335,7 +340,7 @@ export class Archiver implements L2BlockSource, L2LogsSource, ContractDataSource
335
340
  contractAddress: AztecAddress,
336
341
  selector: FunctionSelector,
337
342
  ): Promise<EncodedContractFunction | undefined> {
338
- const contractData = await this.getContractDataAndBytecode(contractAddress);
343
+ const contractData = await this.getExtendedContractData(contractAddress);
339
344
  return contractData?.getPublicFunction(selector);
340
345
  }
341
346
 
@@ -2,19 +2,21 @@ import { Fr, NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP } from '@aztec/circuits.js';
2
2
  import { AztecAddress } from '@aztec/foundation/aztec-address';
3
3
  import {
4
4
  ContractData,
5
- ContractDataAndBytecode,
5
+ ExtendedContractData,
6
6
  INITIAL_L2_BLOCK_NUM,
7
7
  L1ToL2Message,
8
8
  L2Block,
9
9
  L2BlockL2Logs,
10
+ L2Tx,
10
11
  LogType,
12
+ TxHash,
11
13
  } from '@aztec/types';
12
14
 
13
15
  import { L1ToL2MessageStore, PendingL1ToL2MessageStore } from './l1_to_l2_message_store.js';
14
16
 
15
17
  /**
16
18
  * Interface describing a data store to be used by the archiver to store all its relevant data
17
- * (blocks, encrypted logs, aztec contract data and bytecode).
19
+ * (blocks, encrypted logs, aztec contract data extended contract data).
18
20
  */
19
21
  export interface ArchiverDataStore {
20
22
  /**
@@ -32,6 +34,13 @@ export interface ArchiverDataStore {
32
34
  */
33
35
  getL2Blocks(from: number, limit: number): Promise<L2Block[]>;
34
36
 
37
+ /**
38
+ * Gets an l2 tx.
39
+ * @param txHash - The txHash of the l2 tx.
40
+ * @returns The requested L2 tx.
41
+ */
42
+ getL2Tx(txHash: TxHash): Promise<L2Tx | undefined>;
43
+
35
44
  /**
36
45
  * Append new logs to the store's list.
37
46
  * @param data - The logs to be added to the store.
@@ -86,26 +95,26 @@ export interface ArchiverDataStore {
86
95
  getLogs(from: number, limit: number, logType: LogType): Promise<L2BlockL2Logs[]>;
87
96
 
88
97
  /**
89
- * Store new Contract data and bytecode from an L2 block to the store's list.
98
+ * Add new extended contract data from an L2 block to the store's list.
90
99
  * @param data - List of contracts' data to be added.
91
100
  * @param blockNum - Number of the L2 block the contract data was deployed in.
92
101
  * @returns True if the operation is successful.
93
102
  */
94
- addContractDataAndBytecode(data: ContractDataAndBytecode[], blockNum: number): Promise<boolean>;
103
+ addExtendedContractData(data: ExtendedContractData[], blockNum: number): Promise<boolean>;
95
104
 
96
105
  /**
97
- * Lookup the L2 contract data for a contract address.
106
+ * Get the extended contract data for this contract.
98
107
  * @param contractAddress - The contract data address.
99
- * @returns The contract's public data.
108
+ * @returns The extended contract data or undefined if not found.
100
109
  */
101
- getContractDataAndBytecode(contractAddress: AztecAddress): Promise<ContractDataAndBytecode | undefined>;
110
+ getExtendedContractData(contractAddress: AztecAddress): Promise<ExtendedContractData | undefined>;
102
111
 
103
112
  /**
104
- * Lookup all contract data and bytecode in an L2 block.
113
+ * Lookup all extended contract data in an L2 block.
105
114
  * @param blockNum - The block number to get all contract data from.
106
- * @returns All contract data and bytecode in the block (if found).
115
+ * @returns All extended contract data in the block (if found).
107
116
  */
108
- getContractDataAndBytecodeInBlock(blockNum: number): Promise<ContractDataAndBytecode[]>;
117
+ getExtendedContractDataInBlock(blockNum: number): Promise<ExtendedContractData[]>;
109
118
 
110
119
  /**
111
120
  * Get basic info for an L2 contract.
@@ -145,6 +154,11 @@ export class MemoryArchiverStore implements ArchiverDataStore {
145
154
  */
146
155
  private l2Blocks: L2Block[] = [];
147
156
 
157
+ /**
158
+ * An array containing all the L2 Txs in the L2 blocks that have been fetched so far.
159
+ */
160
+ private l2Txs: L2Tx[] = [];
161
+
148
162
  /**
149
163
  * An array containing all the encrypted logs that have been fetched so far.
150
164
  * Note: Index in the "outer" array equals to (corresponding L2 block's number - INITIAL_L2_BLOCK_NUM).
@@ -158,14 +172,14 @@ export class MemoryArchiverStore implements ArchiverDataStore {
158
172
  private unencryptedLogs: L2BlockL2Logs[] = [];
159
173
 
160
174
  /**
161
- * A sparse array containing all the contract data and bytecode that have been fetched so far.
175
+ * A sparse array containing all the extended contract data that have been fetched so far.
162
176
  */
163
- private contractDataAndBytecodeByBlock: (ContractDataAndBytecode[] | undefined)[] = [];
177
+ private extendedContractDataByBlock: (ExtendedContractData[] | undefined)[] = [];
164
178
 
165
179
  /**
166
- * A mapping of contract address to contract data and bytecode.
180
+ * A mapping of contract address to extended contract data.
167
181
  */
168
- private contractDataAndBytecode: Map<string, ContractDataAndBytecode> = new Map();
182
+ private extendedContractData: Map<string, ExtendedContractData> = new Map();
169
183
 
170
184
  /**
171
185
  * Contains all the confirmed L1 to L2 messages (i.e. messages that were consumed in an L2 block)
@@ -187,6 +201,7 @@ export class MemoryArchiverStore implements ArchiverDataStore {
187
201
  */
188
202
  public addL2Blocks(blocks: L2Block[]): Promise<boolean> {
189
203
  this.l2Blocks.push(...blocks);
204
+ this.l2Txs.push(...blocks.flatMap(b => b.getTxs()));
190
205
  return Promise.resolve(true);
191
206
  }
192
207
 
@@ -240,23 +255,23 @@ export class MemoryArchiverStore implements ArchiverDataStore {
240
255
  }
241
256
 
242
257
  /**
243
- * Store new Contract data and bytecode from an L2 block to the store's list.
258
+ * Store new extended contract data from an L2 block to the store's list.
244
259
  * @param data - List of contracts' data to be added.
245
260
  * @param blockNum - Number of the L2 block the contract data was deployed in.
246
261
  * @returns True if the operation is successful (always in this implementation).
247
262
  */
248
- public addContractDataAndBytecode(data: ContractDataAndBytecode[], blockNum: number): Promise<boolean> {
263
+ public addExtendedContractData(data: ExtendedContractData[], blockNum: number): Promise<boolean> {
249
264
  // Add to the contracts mapping
250
265
  for (const contractData of data) {
251
266
  const key = contractData.contractData.contractAddress.toString();
252
- this.contractDataAndBytecode.set(key, contractData);
267
+ this.extendedContractData.set(key, contractData);
253
268
  }
254
269
 
255
270
  // Add the index per block
256
- if (this.contractDataAndBytecodeByBlock[blockNum]?.length) {
257
- this.contractDataAndBytecodeByBlock[blockNum]?.push(...data);
271
+ if (this.extendedContractDataByBlock[blockNum]?.length) {
272
+ this.extendedContractDataByBlock[blockNum]?.push(...data);
258
273
  } else {
259
- this.contractDataAndBytecodeByBlock[blockNum] = [...data];
274
+ this.extendedContractDataByBlock[blockNum] = [...data];
260
275
  }
261
276
  return Promise.resolve(true);
262
277
  }
@@ -280,6 +295,16 @@ export class MemoryArchiverStore implements ArchiverDataStore {
280
295
  return Promise.resolve(this.l2Blocks.slice(startIndex, endIndex));
281
296
  }
282
297
 
298
+ /**
299
+ * Gets an l2 tx.
300
+ * @param txHash - The txHash of the l2 tx.
301
+ * @returns The requested L2 tx.
302
+ */
303
+ public getL2Tx(txHash: TxHash): Promise<L2Tx | undefined> {
304
+ const l2Tx = this.l2Txs.find(tx => tx.txHash.equals(txHash));
305
+ return Promise.resolve(l2Tx);
306
+ }
307
+
283
308
  /**
284
309
  * Gets up to `limit` amount of pending L1 to L2 messages, sorted by fee
285
310
  * @param limit - The number of messages to return (by default NUMBER_OF_L1_L2_MESSAGES_PER_ROLLUP).
@@ -323,25 +348,25 @@ export class MemoryArchiverStore implements ArchiverDataStore {
323
348
  }
324
349
 
325
350
  /**
326
- * Lookup the L2 contract data for a contract address.
351
+ * Get the extended contract data for this contract.
327
352
  * @param contractAddress - The contract data address.
328
- * @returns The contract's public data.
353
+ * @returns The extended contract data or undefined if not found.
329
354
  */
330
- public getContractDataAndBytecode(contractAddress: AztecAddress): Promise<ContractDataAndBytecode | undefined> {
331
- const result = this.contractDataAndBytecode.get(contractAddress.toString());
355
+ getExtendedContractData(contractAddress: AztecAddress): Promise<ExtendedContractData | undefined> {
356
+ const result = this.extendedContractData.get(contractAddress.toString());
332
357
  return Promise.resolve(result);
333
358
  }
334
359
 
335
360
  /**
336
361
  * Lookup all contract data in an L2 block.
337
362
  * @param blockNum - The block number to get all contract data from.
338
- * @returns All contract data and bytecode in the block (if found).
363
+ * @returns All extended contract data in the block (if found).
339
364
  */
340
- public getContractDataAndBytecodeInBlock(blockNum: number): Promise<ContractDataAndBytecode[]> {
365
+ public getExtendedContractDataInBlock(blockNum: number): Promise<ExtendedContractData[]> {
341
366
  if (blockNum > this.l2Blocks.length) {
342
367
  return Promise.resolve([]);
343
368
  }
344
- return Promise.resolve(this.contractDataAndBytecodeByBlock[blockNum] || []);
369
+ return Promise.resolve(this.extendedContractDataByBlock[blockNum] || []);
345
370
  }
346
371
 
347
372
  /**
@@ -1,6 +1,6 @@
1
1
  import { EthAddress } from '@aztec/foundation/eth-address';
2
2
  import { Fr } from '@aztec/foundation/fields';
3
- import { ContractDataAndBytecode, L1ToL2Message, L2Block } from '@aztec/types';
3
+ import { ExtendedContractData, L1ToL2Message, L2Block } from '@aztec/types';
4
4
 
5
5
  import { PublicClient } from 'viem';
6
6
 
@@ -73,7 +73,7 @@ export async function retrieveBlocks(
73
73
  * @param currentBlockNumber - Latest available block number in the ETH node.
74
74
  * @param searchStartBlock - The block number to use for starting the search.
75
75
  * @param blockHashMapping - A mapping from block number to relevant block hash.
76
- * @returns An array of ContractDataAndBytecode and their equivalent L2 Block number along with the next eth block to search from..
76
+ * @returns An array of ExtendedContractData and their equivalent L2 Block number along with the next eth block to search from..
77
77
  */
78
78
  export async function retrieveNewContractData(
79
79
  publicClient: PublicClient,
@@ -82,8 +82,8 @@ export async function retrieveNewContractData(
82
82
  currentBlockNumber: bigint,
83
83
  searchStartBlock: bigint,
84
84
  blockHashMapping: { [key: number]: Buffer | undefined },
85
- ): Promise<DataRetrieval<[ContractDataAndBytecode[], number]>> {
86
- let retrievedNewContracts: [ContractDataAndBytecode[], number][] = [];
85
+ ): Promise<DataRetrieval<[ExtendedContractData[], number]>> {
86
+ let retrievedNewContracts: [ExtendedContractData[], number][] = [];
87
87
  do {
88
88
  if (searchStartBlock > currentBlockNumber) {
89
89
  break;
@@ -1,12 +1,12 @@
1
1
  import { AztecAddress } from '@aztec/foundation/aztec-address';
2
2
  import { EthAddress } from '@aztec/foundation/eth-address';
3
- import { Fr } from '@aztec/foundation/fields';
3
+ import { Fr, Point } from '@aztec/foundation/fields';
4
4
  import { ContractDeploymentEmitterAbi, InboxAbi, RollupAbi } from '@aztec/l1-artifacts';
5
5
  import {
6
6
  BufferReader,
7
7
  ContractData,
8
- ContractDataAndBytecode,
9
8
  EncodedContractFunction,
9
+ ExtendedContractData,
10
10
  L1Actor,
11
11
  L1ToL2Message,
12
12
  L2Actor,
@@ -163,13 +163,13 @@ export async function getContractDeploymentLogs(
163
163
  * Processes newly received ContractDeployment logs.
164
164
  * @param blockHashMapping - A mapping from block number to relevant block hash.
165
165
  * @param logs - ContractDeployment logs.
166
- * @returns The set of retrieved contract data and bytecode items.
166
+ * @returns The set of retrieved extended contract data items.
167
167
  */
168
168
  export function processContractDeploymentLogs(
169
169
  blockHashMapping: { [key: number]: Buffer | undefined },
170
170
  logs: Log<bigint, number, undefined, true, typeof ContractDeploymentEmitterAbi, 'ContractDeployment'>[],
171
- ): [ContractDataAndBytecode[], number][] {
172
- const contractDataAndBytecode: [ContractDataAndBytecode[], number][] = [];
171
+ ): [ExtendedContractData[], number][] {
172
+ const extendedContractData: [ExtendedContractData[], number][] = [];
173
173
  for (let i = 0; i < logs.length; i++) {
174
174
  const log = logs[i];
175
175
  const l2BlockNum = Number(log.args.l2BlockNum);
@@ -179,17 +179,25 @@ export function processContractDeploymentLogs(
179
179
  continue;
180
180
  }
181
181
  const publicFnsReader = BufferReader.asReader(Buffer.from(log.args.acir.slice(2), 'hex'));
182
- const contractData = new ContractDataAndBytecode(
182
+ const partialAddress = Fr.fromBuffer(Buffer.from(hexToBytes(log.args.partialAddress)));
183
+ const publicKey = new Point(
184
+ Fr.fromBuffer(Buffer.from(hexToBytes(log.args.pubKeyX))),
185
+ Fr.fromBuffer(Buffer.from(hexToBytes(log.args.pubKeyY))),
186
+ );
187
+
188
+ const contractData = new ExtendedContractData(
183
189
  new ContractData(AztecAddress.fromString(log.args.aztecAddress), EthAddress.fromString(log.args.portalAddress)),
184
190
  publicFnsReader.readVector(EncodedContractFunction),
191
+ partialAddress,
192
+ publicKey,
185
193
  );
186
- if (contractDataAndBytecode[i]) {
187
- contractDataAndBytecode[i][0].push(contractData);
194
+ if (extendedContractData[i]) {
195
+ extendedContractData[i][0].push(contractData);
188
196
  } else {
189
- contractDataAndBytecode[i] = [[contractData], l2BlockNum];
197
+ extendedContractData[i] = [[contractData], l2BlockNum];
190
198
  }
191
199
  }
192
- return contractDataAndBytecode;
200
+ return extendedContractData;
193
201
  }
194
202
 
195
203
  /**
package/src/index.ts CHANGED
@@ -47,7 +47,7 @@ async function main() {
47
47
  if (process.argv[1] === fileURLToPath(import.meta.url).replace(/\/index\.js$/, '')) {
48
48
  // eslint-disable-next-line @typescript-eslint/no-floating-promises
49
49
  main().catch(err => {
50
- log.fatal(err);
50
+ log.error(err);
51
51
  process.exit(1);
52
52
  });
53
53
  }