@aztec/aztec 0.87.6 → 1.0.0-nightly.20250604

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.
@@ -91,8 +91,8 @@ export async function startNode(options, signalHandlers, services, adminServices
91
91
  };
92
92
  let account;
93
93
  if (!sequencerConfig.publisherPrivateKey || sequencerConfig.publisherPrivateKey === NULL_KEY) {
94
- if (sequencerConfig.validatorPrivateKey) {
95
- sequencerConfig.publisherPrivateKey = sequencerConfig.validatorPrivateKey;
94
+ if (sequencerConfig.validatorPrivateKeys?.length) {
95
+ sequencerConfig.publisherPrivateKey = sequencerConfig.validatorPrivateKeys[0];
96
96
  } else if (!options.l1Mnemonic) {
97
97
  userLog('--sequencer.publisherPrivateKey or --l1-mnemonic is required to start Aztec Node with --sequencer option');
98
98
  throw new Error('Private key or Mnemonic is required to start Aztec Node with --sequencer option');
@@ -3,6 +3,7 @@ import { type AztecNodeConfig, AztecNodeService } from '@aztec/aztec-node';
3
3
  import { type BlobSinkClientInterface } from '@aztec/blob-sink/client';
4
4
  import { Fr } from '@aztec/foundation/fields';
5
5
  import { type LogFn } from '@aztec/foundation/log';
6
+ import { DateProvider } from '@aztec/foundation/timer';
6
7
  import { type PXEServiceConfig } from '@aztec/pxe/server';
7
8
  import type { AztecNode } from '@aztec/stdlib/interfaces/client';
8
9
  import type { PublicDataTreeLeaf } from '@aztec/stdlib/trees';
@@ -34,6 +35,7 @@ export declare function deployContractsToL1(aztecNodeConfig: AztecNodeConfig, hd
34
35
  slashFactoryAddress?: import("@aztec/foundation/schemas").EthAddress | undefined;
35
36
  feeAssetHandlerAddress?: import("@aztec/foundation/schemas").EthAddress | undefined;
36
37
  stakingAssetHandlerAddress?: import("@aztec/foundation/schemas").EthAddress | undefined;
38
+ gseAddress?: import("@aztec/foundation/schemas").EthAddress | undefined;
37
39
  } & {
38
40
  rollupAddress: import("@aztec/foundation/schemas").EthAddress;
39
41
  } & {
@@ -67,6 +69,7 @@ export declare function createSandbox(config: Partial<SandboxConfig> | undefined
67
69
  export declare function createAztecNode(config?: Partial<AztecNodeConfig>, deps?: {
68
70
  telemetry?: TelemetryClient;
69
71
  blobSinkClient?: BlobSinkClientInterface;
72
+ dateProvider?: DateProvider;
70
73
  }, options?: {
71
74
  prefilledPublicData?: PublicDataTreeLeaf[];
72
75
  }): Promise<AztecNodeService>;
@@ -1 +1 @@
1
- {"version":3,"file":"sandbox.d.ts","sourceRoot":"","sources":["../../src/sandbox/sandbox.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,KAAK,eAAe,EAAE,gBAAgB,EAAoB,MAAM,mBAAmB,CAAC;AAE7F,OAAO,EAAE,KAAK,uBAAuB,EAAwB,MAAM,yBAAyB,CAAC;AAU7F,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,KAAK,KAAK,EAAgB,MAAM,uBAAuB,CAAC;AAGjE,OAAO,EAAE,KAAK,gBAAgB,EAAyC,MAAM,mBAAmB,CAAC;AACjG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EACL,KAAK,eAAe,EAGrB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,iBAAiB,EAA2D,MAAM,MAAM,CAAC;AAavH;;;;GAIG;AACH,wBAAsB,mBAAmB,CACvC,eAAe,EAAE,eAAe,EAChC,SAAS,EAAE,SAAS,GAAG,iBAAiB,EACxC,oBAAoB,yCAAS,EAC7B,IAAI,GAAE;IACJ,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kBAAkB,CAAC,EAAE,EAAE,CAAC;IACxB,4BAA4B,CAAC,EAAE,MAAM,CAAC;CAClC;;;;;;;;;;;;;;;;;;;;GA4BP;AAED,wBAAwB;AACxB,MAAM,MAAM,aAAa,GAAG,eAAe,GAAG;IAC5C,0DAA0D;IAC1D,UAAU,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,KAAK,EAAE,OAAO,CAAC;IACf,uDAAuD;IACvD,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,YAAK,EAAE,OAAO,EAAE,KAAK;;;;GA2FtF;AAED;;;GAGG;AACH,wBAAsB,eAAe,CACnC,MAAM,GAAE,OAAO,CAAC,eAAe,CAAM,EACrC,IAAI,GAAE;IAAE,SAAS,CAAC,EAAE,eAAe,CAAC;IAAC,cAAc,CAAC,EAAE,uBAAuB,CAAA;CAAO,EACpF,OAAO,GAAE;IAAE,mBAAmB,CAAC,EAAE,kBAAkB,EAAE,CAAA;CAAO,6BAW7D;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,GAAE,OAAO,CAAC,gBAAgB,CAAM,mDAI3F"}
1
+ {"version":3,"file":"sandbox.d.ts","sourceRoot":"","sources":["../../src/sandbox/sandbox.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,KAAK,eAAe,EAAE,gBAAgB,EAAoB,MAAM,mBAAmB,CAAC;AAE7F,OAAO,EAAE,KAAK,uBAAuB,EAAwB,MAAM,yBAAyB,CAAC;AAU7F,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,KAAK,KAAK,EAAgB,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,YAAY,EAAoB,MAAM,yBAAyB,CAAC;AAGzE,OAAO,EAAE,KAAK,gBAAgB,EAAyC,MAAM,mBAAmB,CAAC;AACjG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EACL,KAAK,eAAe,EAGrB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,iBAAiB,EAA2D,MAAM,MAAM,CAAC;AAavH;;;;GAIG;AACH,wBAAsB,mBAAmB,CACvC,eAAe,EAAE,eAAe,EAChC,SAAS,EAAE,SAAS,GAAG,iBAAiB,EACxC,oBAAoB,yCAAS,EAC7B,IAAI,GAAE;IACJ,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kBAAkB,CAAC,EAAE,EAAE,CAAC;IACxB,4BAA4B,CAAC,EAAE,MAAM,CAAC;CAClC;;;;;;;;;;;;;;;;;;;;;GA4BP;AAED,wBAAwB;AACxB,MAAM,MAAM,aAAa,GAAG,eAAe,GAAG;IAC5C,0DAA0D;IAC1D,UAAU,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,KAAK,EAAE,OAAO,CAAC;IACf,uDAAuD;IACvD,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,YAAK,EAAE,OAAO,EAAE,KAAK;;;;GAqGtF;AAED;;;GAGG;AACH,wBAAsB,eAAe,CACnC,MAAM,GAAE,OAAO,CAAC,eAAe,CAAM,EACrC,IAAI,GAAE;IAAE,SAAS,CAAC,EAAE,eAAe,CAAC;IAAC,cAAc,CAAC,EAAE,uBAAuB,CAAC;IAAC,YAAY,CAAC,EAAE,YAAY,CAAA;CAAO,EACjH,OAAO,GAAE;IAAE,mBAAmB,CAAC,EAAE,kBAAkB,EAAE,CAAA;CAAO,6BAW7D;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,GAAE,OAAO,CAAC,gBAAgB,CAAM,mDAI3F"}
@@ -9,6 +9,7 @@ import { GENESIS_ARCHIVE_ROOT } from '@aztec/constants';
9
9
  import { NULL_KEY, createEthereumChain, deployL1Contracts, getL1ContractsConfigEnvVars, waitForPublicClient } from '@aztec/ethereum';
10
10
  import { Fr } from '@aztec/foundation/fields';
11
11
  import { createLogger } from '@aztec/foundation/log';
12
+ import { TestDateProvider } from '@aztec/foundation/timer';
12
13
  import { getVKTreeRoot } from '@aztec/noir-protocol-circuits-types/vk-tree';
13
14
  import { protocolContractTreeRoot } from '@aztec/protocol-contracts';
14
15
  import { createPXEService, getPXEServiceConfig } from '@aztec/pxe/server';
@@ -66,9 +67,11 @@ const localAnvil = foundry;
66
67
  const privKey = hdAccount.getHdKey().privateKey;
67
68
  aztecNodeConfig.publisherPrivateKey = `0x${Buffer.from(privKey).toString('hex')}`;
68
69
  }
69
- if (!aztecNodeConfig.validatorPrivateKey || aztecNodeConfig.validatorPrivateKey === NULL_KEY) {
70
+ if (!aztecNodeConfig.validatorPrivateKeys?.length) {
70
71
  const privKey = hdAccount.getHdKey().privateKey;
71
- aztecNodeConfig.validatorPrivateKey = `0x${Buffer.from(privKey).toString('hex')}`;
72
+ aztecNodeConfig.validatorPrivateKeys = [
73
+ `0x${Buffer.from(privKey).toString('hex')}`
74
+ ];
72
75
  }
73
76
  const initialAccounts = await (async ()=>{
74
77
  if (config.testAccounts === true || config.testAccounts === undefined) {
@@ -90,6 +93,7 @@ const localAnvil = foundry;
90
93
  ] : [];
91
94
  const { genesisArchiveRoot, prefilledPublicData, fundingNeeded } = await getGenesisValues(fundedAddresses);
92
95
  let watcher = undefined;
96
+ const dateProvider = new TestDateProvider();
93
97
  if (!aztecNodeConfig.p2pEnabled) {
94
98
  const l1ContractAddresses = await deployContractsToL1(aztecNodeConfig, hdAccount, undefined, {
95
99
  assumeProvenThroughBlockNumber: Number.MAX_SAFE_INTEGER,
@@ -110,7 +114,7 @@ const localAnvil = foundry;
110
114
  });
111
115
  watcher = new AnvilTestWatcher(new EthCheatCodes([
112
116
  l1RpcUrl
113
- ]), l1ContractAddresses.rollupAddress, publicClient);
117
+ ]), l1ContractAddresses.rollupAddress, publicClient, dateProvider);
114
118
  watcher.setIsSandbox(true);
115
119
  await watcher.start();
116
120
  }
@@ -119,7 +123,8 @@ const localAnvil = foundry;
119
123
  const blobSinkClient = createBlobSinkClient();
120
124
  const node = await createAztecNode(aztecNodeConfig, {
121
125
  telemetry,
122
- blobSinkClient
126
+ blobSinkClient,
127
+ dateProvider
123
128
  }, {
124
129
  prefilledPublicData
125
130
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/aztec",
3
- "version": "0.87.6",
3
+ "version": "1.0.0-nightly.20250604",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": "./dest/index.js"
@@ -27,35 +27,35 @@
27
27
  "../package.common.json"
28
28
  ],
29
29
  "dependencies": {
30
- "@aztec/accounts": "0.87.6",
31
- "@aztec/archiver": "0.87.6",
32
- "@aztec/aztec-faucet": "0.87.6",
33
- "@aztec/aztec-node": "0.87.6",
34
- "@aztec/aztec.js": "0.87.6",
35
- "@aztec/bb-prover": "0.87.6",
36
- "@aztec/bb.js": "0.87.6",
37
- "@aztec/blob-sink": "0.87.6",
38
- "@aztec/bot": "0.87.6",
39
- "@aztec/builder": "0.87.6",
40
- "@aztec/cli": "0.87.6",
41
- "@aztec/cli-wallet": "0.87.6",
42
- "@aztec/constants": "0.87.6",
43
- "@aztec/entrypoints": "0.87.6",
44
- "@aztec/ethereum": "0.87.6",
45
- "@aztec/foundation": "0.87.6",
46
- "@aztec/kv-store": "0.87.6",
47
- "@aztec/noir-contracts.js": "0.87.6",
48
- "@aztec/noir-protocol-circuits-types": "0.87.6",
49
- "@aztec/p2p": "0.87.6",
50
- "@aztec/p2p-bootstrap": "0.87.6",
51
- "@aztec/protocol-contracts": "0.87.6",
52
- "@aztec/prover-client": "0.87.6",
53
- "@aztec/prover-node": "0.87.6",
54
- "@aztec/pxe": "0.87.6",
55
- "@aztec/stdlib": "0.87.6",
56
- "@aztec/telemetry-client": "0.87.6",
57
- "@aztec/txe": "0.87.6",
58
- "@aztec/world-state": "0.87.6",
30
+ "@aztec/accounts": "1.0.0-nightly.20250604",
31
+ "@aztec/archiver": "1.0.0-nightly.20250604",
32
+ "@aztec/aztec-faucet": "1.0.0-nightly.20250604",
33
+ "@aztec/aztec-node": "1.0.0-nightly.20250604",
34
+ "@aztec/aztec.js": "1.0.0-nightly.20250604",
35
+ "@aztec/bb-prover": "1.0.0-nightly.20250604",
36
+ "@aztec/bb.js": "1.0.0-nightly.20250604",
37
+ "@aztec/blob-sink": "1.0.0-nightly.20250604",
38
+ "@aztec/bot": "1.0.0-nightly.20250604",
39
+ "@aztec/builder": "1.0.0-nightly.20250604",
40
+ "@aztec/cli": "1.0.0-nightly.20250604",
41
+ "@aztec/cli-wallet": "1.0.0-nightly.20250604",
42
+ "@aztec/constants": "1.0.0-nightly.20250604",
43
+ "@aztec/entrypoints": "1.0.0-nightly.20250604",
44
+ "@aztec/ethereum": "1.0.0-nightly.20250604",
45
+ "@aztec/foundation": "1.0.0-nightly.20250604",
46
+ "@aztec/kv-store": "1.0.0-nightly.20250604",
47
+ "@aztec/noir-contracts.js": "1.0.0-nightly.20250604",
48
+ "@aztec/noir-protocol-circuits-types": "1.0.0-nightly.20250604",
49
+ "@aztec/p2p": "1.0.0-nightly.20250604",
50
+ "@aztec/p2p-bootstrap": "1.0.0-nightly.20250604",
51
+ "@aztec/protocol-contracts": "1.0.0-nightly.20250604",
52
+ "@aztec/prover-client": "1.0.0-nightly.20250604",
53
+ "@aztec/prover-node": "1.0.0-nightly.20250604",
54
+ "@aztec/pxe": "1.0.0-nightly.20250604",
55
+ "@aztec/stdlib": "1.0.0-nightly.20250604",
56
+ "@aztec/telemetry-client": "1.0.0-nightly.20250604",
57
+ "@aztec/txe": "1.0.0-nightly.20250604",
58
+ "@aztec/world-state": "1.0.0-nightly.20250604",
59
59
  "@types/chalk": "^2.2.0",
60
60
  "abitype": "^0.8.11",
61
61
  "chalk": "^5.3.0",
@@ -134,8 +134,8 @@ export async function startNode(
134
134
  };
135
135
  let account;
136
136
  if (!sequencerConfig.publisherPrivateKey || sequencerConfig.publisherPrivateKey === NULL_KEY) {
137
- if (sequencerConfig.validatorPrivateKey) {
138
- sequencerConfig.publisherPrivateKey = sequencerConfig.validatorPrivateKey as `0x${string}`;
137
+ if (sequencerConfig.validatorPrivateKeys?.length) {
138
+ sequencerConfig.publisherPrivateKey = sequencerConfig.validatorPrivateKeys[0] as `0x${string}`;
139
139
  } else if (!options.l1Mnemonic) {
140
140
  userLog(
141
141
  '--sequencer.publisherPrivateKey or --l1-mnemonic is required to start Aztec Node with --sequencer option',
@@ -15,6 +15,7 @@ import {
15
15
  } from '@aztec/ethereum';
16
16
  import { Fr } from '@aztec/foundation/fields';
17
17
  import { type LogFn, createLogger } from '@aztec/foundation/log';
18
+ import { DateProvider, TestDateProvider } from '@aztec/foundation/timer';
18
19
  import { getVKTreeRoot } from '@aztec/noir-protocol-circuits-types/vk-tree';
19
20
  import { protocolContractTreeRoot } from '@aztec/protocol-contracts';
20
21
  import { type PXEServiceConfig, createPXEService, getPXEServiceConfig } from '@aztec/pxe/server';
@@ -116,9 +117,9 @@ export async function createSandbox(config: Partial<SandboxConfig> = {}, userLog
116
117
  const privKey = hdAccount.getHdKey().privateKey;
117
118
  aztecNodeConfig.publisherPrivateKey = `0x${Buffer.from(privKey!).toString('hex')}`;
118
119
  }
119
- if (!aztecNodeConfig.validatorPrivateKey || aztecNodeConfig.validatorPrivateKey === NULL_KEY) {
120
+ if (!aztecNodeConfig.validatorPrivateKeys?.length) {
120
121
  const privKey = hdAccount.getHdKey().privateKey;
121
- aztecNodeConfig.validatorPrivateKey = `0x${Buffer.from(privKey!).toString('hex')}`;
122
+ aztecNodeConfig.validatorPrivateKeys = [`0x${Buffer.from(privKey!).toString('hex')}`];
122
123
  }
123
124
 
124
125
  const initialAccounts = await (async () => {
@@ -141,6 +142,7 @@ export async function createSandbox(config: Partial<SandboxConfig> = {}, userLog
141
142
  const { genesisArchiveRoot, prefilledPublicData, fundingNeeded } = await getGenesisValues(fundedAddresses);
142
143
 
143
144
  let watcher: AnvilTestWatcher | undefined = undefined;
145
+ const dateProvider = new TestDateProvider();
144
146
  if (!aztecNodeConfig.p2pEnabled) {
145
147
  const l1ContractAddresses = await deployContractsToL1(aztecNodeConfig, hdAccount, undefined, {
146
148
  assumeProvenThroughBlockNumber: Number.MAX_SAFE_INTEGER,
@@ -159,7 +161,12 @@ export async function createSandbox(config: Partial<SandboxConfig> = {}, userLog
159
161
  transport: fallback([httpViemTransport(l1RpcUrl)]) as any,
160
162
  });
161
163
 
162
- watcher = new AnvilTestWatcher(new EthCheatCodes([l1RpcUrl]), l1ContractAddresses.rollupAddress, publicClient);
164
+ watcher = new AnvilTestWatcher(
165
+ new EthCheatCodes([l1RpcUrl]),
166
+ l1ContractAddresses.rollupAddress,
167
+ publicClient,
168
+ dateProvider,
169
+ );
163
170
  watcher.setIsSandbox(true);
164
171
  await watcher.start();
165
172
  }
@@ -167,7 +174,11 @@ export async function createSandbox(config: Partial<SandboxConfig> = {}, userLog
167
174
  const telemetry = initTelemetryClient(getTelemetryClientConfig());
168
175
  // Create a local blob sink client inside the sandbox, no http connectivity
169
176
  const blobSinkClient = createBlobSinkClient();
170
- const node = await createAztecNode(aztecNodeConfig, { telemetry, blobSinkClient }, { prefilledPublicData });
177
+ const node = await createAztecNode(
178
+ aztecNodeConfig,
179
+ { telemetry, blobSinkClient, dateProvider },
180
+ { prefilledPublicData },
181
+ );
171
182
  const pxeServiceConfig = { proverEnabled: aztecNodeConfig.realProofs };
172
183
  const pxe = await createAztecPXE(node, pxeServiceConfig);
173
184
 
@@ -200,7 +211,7 @@ export async function createSandbox(config: Partial<SandboxConfig> = {}, userLog
200
211
  */
201
212
  export async function createAztecNode(
202
213
  config: Partial<AztecNodeConfig> = {},
203
- deps: { telemetry?: TelemetryClient; blobSinkClient?: BlobSinkClientInterface } = {},
214
+ deps: { telemetry?: TelemetryClient; blobSinkClient?: BlobSinkClientInterface; dateProvider?: DateProvider } = {},
204
215
  options: { prefilledPublicData?: PublicDataTreeLeaf[] } = {},
205
216
  ) {
206
217
  // TODO(#12272): will clean this up. This is criminal.