@aztec/stdlib 3.0.0-nightly.20251009 → 3.0.0-nightly.20251011

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.
@@ -4,9 +4,9 @@ import { AztecAddress } from '../aztec-address/index.js';
4
4
  import type { Ordered } from './utils/interfaces.js';
5
5
  export declare class Nullifier implements Ordered {
6
6
  value: Fr;
7
- counter: number;
8
7
  noteHash: Fr;
9
- constructor(value: Fr, counter: number, noteHash: Fr);
8
+ counter: number;
9
+ constructor(value: Fr, noteHash: Fr, counter: number);
10
10
  toFields(): Fr[];
11
11
  static fromFields(fields: Fr[] | FieldReader): Nullifier;
12
12
  isEmpty(): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"nullifier.d.ts","sourceRoot":"","sources":["../../src/kernel/nullifier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,WAAW,EAAqB,MAAM,6BAA6B,CAAC;AAE3F,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAErD,qBAAa,SAAU,YAAW,OAAO;IAE9B,KAAK,EAAE,EAAE;IACT,OAAO,EAAE,MAAM;IACf,QAAQ,EAAE,EAAE;gBAFZ,KAAK,EAAE,EAAE,EACT,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,EAAE;IAGrB,QAAQ,IAAI,EAAE,EAAE;IAIhB,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW;IAK5C,OAAO;IAIP,MAAM,CAAC,KAAK;IAIZ,QAAQ,IAAI,MAAM;IAIlB,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY;IAK/C,QAAQ,IAAI,MAAM;IAIlB,KAAK,CAAC,eAAe,EAAE,YAAY;CAGpC;AAED,qBAAa,eAAgB,YAAW,OAAO;IAEpC,SAAS,EAAE,SAAS;IACpB,eAAe,EAAE,YAAY;gBAD7B,SAAS,EAAE,SAAS,EACpB,eAAe,EAAE,YAAY;IAGtC,IAAI,OAAO,WAEV;IAED,IAAI,KAAK,OAER;IAED,IAAI,iBAAiB,OAEpB;IAED,QAAQ,IAAI,EAAE,EAAE;IAIhB,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW;IAK5C,OAAO;IAIP,MAAM,CAAC,KAAK;IAIZ,QAAQ,IAAI,MAAM;IAIlB,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY;IAK/C,QAAQ,IAAI,MAAM;CAGnB"}
1
+ {"version":3,"file":"nullifier.d.ts","sourceRoot":"","sources":["../../src/kernel/nullifier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,WAAW,EAAqB,MAAM,6BAA6B,CAAC;AAE3F,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAErD,qBAAa,SAAU,YAAW,OAAO;IAE9B,KAAK,EAAE,EAAE;IACT,QAAQ,EAAE,EAAE;IACZ,OAAO,EAAE,MAAM;gBAFf,KAAK,EAAE,EAAE,EACT,QAAQ,EAAE,EAAE,EACZ,OAAO,EAAE,MAAM;IAGxB,QAAQ,IAAI,EAAE,EAAE;IAIhB,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW;IAK5C,OAAO;IAIP,MAAM,CAAC,KAAK;IAIZ,QAAQ,IAAI,MAAM;IAIlB,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY;IAK/C,QAAQ,IAAI,MAAM;IAIlB,KAAK,CAAC,eAAe,EAAE,YAAY;CAGpC;AAED,qBAAa,eAAgB,YAAW,OAAO;IAEpC,SAAS,EAAE,SAAS;IACpB,eAAe,EAAE,YAAY;gBAD7B,SAAS,EAAE,SAAS,EACpB,eAAe,EAAE,YAAY;IAGtC,IAAI,OAAO,WAEV;IAED,IAAI,KAAK,OAER;IAED,IAAI,iBAAiB,OAEpB;IAED,QAAQ,IAAI,EAAE,EAAE;IAIhB,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW;IAK5C,OAAO;IAIP,MAAM,CAAC,KAAK;IAIZ,QAAQ,IAAI,MAAM;IAIlB,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY;IAK/C,QAAQ,IAAI,MAAM;CAGnB"}
@@ -3,39 +3,39 @@ import { BufferReader, FieldReader, serializeToBuffer } from '@aztec/foundation/
3
3
  import { AztecAddress } from '../aztec-address/index.js';
4
4
  export class Nullifier {
5
5
  value;
6
- counter;
7
6
  noteHash;
8
- constructor(value, counter, noteHash){
7
+ counter;
8
+ constructor(value, noteHash, counter){
9
9
  this.value = value;
10
- this.counter = counter;
11
10
  this.noteHash = noteHash;
11
+ this.counter = counter;
12
12
  }
13
13
  toFields() {
14
14
  return [
15
15
  this.value,
16
- new Fr(this.counter),
17
- this.noteHash
16
+ this.noteHash,
17
+ new Fr(this.counter)
18
18
  ];
19
19
  }
20
20
  static fromFields(fields) {
21
21
  const reader = FieldReader.asReader(fields);
22
- return new Nullifier(reader.readField(), reader.readU32(), reader.readField());
22
+ return new Nullifier(reader.readField(), reader.readField(), reader.readU32());
23
23
  }
24
24
  isEmpty() {
25
- return this.value.isZero() && !this.counter && this.noteHash.isZero();
25
+ return this.value.isZero() && this.noteHash.isZero() && !this.counter;
26
26
  }
27
27
  static empty() {
28
- return new Nullifier(Fr.zero(), 0, Fr.zero());
28
+ return new Nullifier(Fr.zero(), Fr.zero(), 0);
29
29
  }
30
30
  toBuffer() {
31
- return serializeToBuffer(this.value, this.counter, this.noteHash);
31
+ return serializeToBuffer(this.value, this.noteHash, this.counter);
32
32
  }
33
33
  static fromBuffer(buffer) {
34
34
  const reader = BufferReader.asReader(buffer);
35
- return new Nullifier(Fr.fromBuffer(reader), reader.readNumber(), Fr.fromBuffer(reader));
35
+ return new Nullifier(Fr.fromBuffer(reader), Fr.fromBuffer(reader), reader.readNumber());
36
36
  }
37
37
  toString() {
38
- return `value=${this.value} counter=${this.counter} noteHash=${this.noteHash}`;
38
+ return `value=${this.value} noteHash=${this.noteHash} counter=${this.counter}`;
39
39
  }
40
40
  scope(contractAddress) {
41
41
  return new ScopedNullifier(this, contractAddress);
@@ -1,11 +1,9 @@
1
1
  import { Buffer32 } from '@aztec/foundation/buffer';
2
2
  import type { TopicType } from './topic_type.js';
3
3
  export declare class P2PMessage {
4
- readonly publishTime: Date;
5
- readonly id: Buffer32;
6
4
  readonly payload: Buffer;
7
- constructor(publishTime: Date, id: Buffer32, payload: Buffer);
8
- static fromGossipable(message: Gossipable): Promise<P2PMessage>;
5
+ constructor(payload: Buffer);
6
+ static fromGossipable(message: Gossipable): P2PMessage;
9
7
  static fromMessageData(messageData: Buffer): P2PMessage;
10
8
  toMessageData(): Buffer;
11
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"gossipable.d.ts","sourceRoot":"","sources":["../../src/p2p/gossipable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD,qBAAa,UAAU;aAEH,WAAW,EAAE,IAAI;aACjB,EAAE,EAAE,QAAQ;aACZ,OAAO,EAAE,MAAM;gBAFf,WAAW,EAAE,IAAI,EACjB,EAAE,EAAE,QAAQ,EACZ,OAAO,EAAE,MAAM;WAGpB,cAAc,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAIrE,MAAM,CAAC,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU;IAQvD,aAAa,IAAI,MAAM;CAOxB;AAED;;;;GAIG;AACH,8BAAsB,UAAU;IAC9B,OAAO,CAAC,QAAQ,CAAuB;IACvC;;;OAGG;IACH,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC;IAE3B;;;OAGG;IACG,oBAAoB,IAAI,OAAO,CAAC,QAAQ,CAAC;IAQ/C,QAAQ,CAAC,4BAA4B,IAAI,OAAO,CAAC,QAAQ,CAAC;IAE1D;;;OAGG;IACH,QAAQ,CAAC,QAAQ,IAAI,MAAM;IAE3B,SAAS,IAAI,MAAM;IAInB;;;;OAIG;IACH,QAAQ,CAAC,OAAO,IAAI,MAAM;CAC3B"}
1
+ {"version":3,"file":"gossipable.d.ts","sourceRoot":"","sources":["../../src/p2p/gossipable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGpD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD,qBAAa,UAAU;aACO,OAAO,EAAE,MAAM;gBAAf,OAAO,EAAE,MAAM;IAE3C,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,UAAU,GAAG,UAAU;IAItD,MAAM,CAAC,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU;IAMvD,aAAa,IAAI,MAAM;CAGxB;AAED;;;;GAIG;AACH,8BAAsB,UAAU;IAC9B,OAAO,CAAC,QAAQ,CAAuB;IACvC;;;OAGG;IACH,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC;IAE3B;;;OAGG;IACG,oBAAoB,IAAI,OAAO,CAAC,QAAQ,CAAC;IAQ/C,QAAQ,CAAC,4BAA4B,IAAI,OAAO,CAAC,QAAQ,CAAC;IAE1D;;;OAGG;IACH,QAAQ,CAAC,QAAQ,IAAI,MAAM;IAE3B,SAAS,IAAI,MAAM;IAInB;;;;OAIG;IACH,QAAQ,CAAC,OAAO,IAAI,MAAM;CAC3B"}
@@ -1,28 +1,19 @@
1
- import { Buffer32 } from '@aztec/foundation/buffer';
2
- import { BufferReader, bigintToUInt64BE, serializeToBuffer } from '@aztec/foundation/serialize';
1
+ import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
3
2
  export class P2PMessage {
4
- publishTime;
5
- id;
6
3
  payload;
7
- constructor(publishTime, id, payload){
8
- this.publishTime = publishTime;
9
- this.id = id;
4
+ constructor(payload){
10
5
  this.payload = payload;
11
6
  }
12
- static async fromGossipable(message) {
13
- return new P2PMessage(new Date(), await message.p2pMessageIdentifier(), message.toBuffer());
7
+ static fromGossipable(message) {
8
+ return new P2PMessage(message.toBuffer());
14
9
  }
15
10
  static fromMessageData(messageData) {
16
11
  const reader = new BufferReader(messageData);
17
- const publishTime = reader.readUInt64();
18
- const id = Buffer32.fromBuffer(reader);
19
12
  const payload = reader.readBuffer();
20
- return new P2PMessage(new Date(Number(publishTime)), id, payload);
13
+ return new P2PMessage(payload);
21
14
  }
22
15
  toMessageData() {
23
16
  return serializeToBuffer([
24
- bigintToUInt64BE(BigInt(this.publishTime.getTime())),
25
- this.id,
26
17
  serializeToBuffer(this.payload.length, this.payload)
27
18
  ]);
28
19
  }
@@ -97,7 +97,7 @@ function makeNoteHash(seed) {
97
97
  return new NoteHash(fr(seed), seed + 1);
98
98
  }
99
99
  function makeNullifier(seed) {
100
- return new Nullifier(fr(seed), seed + 1, fr(seed + 2));
100
+ return new Nullifier(fr(seed), fr(seed + 1), seed + 2);
101
101
  }
102
102
  function makePrivateLog(seed) {
103
103
  return new PrivateLog(makeTuple(PRIVATE_LOG_SIZE_IN_FIELDS, fr, seed), PRIVATE_LOG_SIZE_IN_FIELDS);
@@ -40,7 +40,7 @@ export const mockTx = async (seed = 1, { numberOfNonRevertiblePublicCallRequests
40
40
  const totalPublicCallRequests = numberOfNonRevertiblePublicCallRequests + numberOfRevertiblePublicCallRequests + (hasPublicTeardownCallRequest ? 1 : 0);
41
41
  const isForPublic = totalPublicCallRequests > 0;
42
42
  const data = PrivateKernelTailCircuitPublicInputs.empty();
43
- const firstNullifier = new Nullifier(new Fr(seed + 1), 0, Fr.ZERO);
43
+ const firstNullifier = new Nullifier(new Fr(seed + 1), Fr.ZERO, 0);
44
44
  data.constants.txContext.gasSettings = GasSettings.default({
45
45
  maxFeesPerGas: new GasFees(10, 10),
46
46
  maxPriorityFeesPerGas
@@ -72,7 +72,7 @@ export const mockTx = async (seed = 1, { numberOfNonRevertiblePublicCallRequests
72
72
  }
73
73
  data.forPublic.nonRevertibleAccumulatedData = nonRevertibleBuilder.pushNullifier(firstNullifier.value).withPublicCallRequests(publicCallRequests.slice(numberOfRevertiblePublicCallRequests)).build();
74
74
  for(let i = 0; i < numberOfRevertibleNullifiers; i++){
75
- const revertibleNullifier = new Nullifier(new Fr(seed + 2 + i), 0, Fr.ZERO);
75
+ const revertibleNullifier = new Nullifier(new Fr(seed + 2 + i), Fr.ZERO, 0);
76
76
  revertibleBuilder.pushNullifier(revertibleNullifier.value);
77
77
  }
78
78
  data.forPublic.revertibleAccumulatedData = revertibleBuilder.withPublicCallRequests(publicCallRequests.slice(0, numberOfRevertiblePublicCallRequests)).build();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/stdlib",
3
- "version": "3.0.0-nightly.20251009",
3
+ "version": "3.0.0-nightly.20251011",
4
4
  "type": "module",
5
5
  "inherits": [
6
6
  "../package.common.json",
@@ -70,13 +70,13 @@
70
70
  },
71
71
  "dependencies": {
72
72
  "@aws-sdk/client-s3": "^3.892.0",
73
- "@aztec/bb.js": "3.0.0-nightly.20251009",
74
- "@aztec/blob-lib": "3.0.0-nightly.20251009",
75
- "@aztec/constants": "3.0.0-nightly.20251009",
76
- "@aztec/ethereum": "3.0.0-nightly.20251009",
77
- "@aztec/foundation": "3.0.0-nightly.20251009",
78
- "@aztec/l1-artifacts": "3.0.0-nightly.20251009",
79
- "@aztec/noir-noirc_abi": "3.0.0-nightly.20251009",
73
+ "@aztec/bb.js": "3.0.0-nightly.20251011",
74
+ "@aztec/blob-lib": "3.0.0-nightly.20251011",
75
+ "@aztec/constants": "3.0.0-nightly.20251011",
76
+ "@aztec/ethereum": "3.0.0-nightly.20251011",
77
+ "@aztec/foundation": "3.0.0-nightly.20251011",
78
+ "@aztec/l1-artifacts": "3.0.0-nightly.20251011",
79
+ "@aztec/noir-noirc_abi": "3.0.0-nightly.20251011",
80
80
  "@google-cloud/storage": "^7.15.0",
81
81
  "axios": "^1.12.0",
82
82
  "json-stringify-deterministic": "1.0.12",
@@ -7,38 +7,38 @@ import type { Ordered } from './utils/interfaces.js';
7
7
  export class Nullifier implements Ordered {
8
8
  constructor(
9
9
  public value: Fr,
10
- public counter: number,
11
10
  public noteHash: Fr,
11
+ public counter: number,
12
12
  ) {}
13
13
 
14
14
  toFields(): Fr[] {
15
- return [this.value, new Fr(this.counter), this.noteHash];
15
+ return [this.value, this.noteHash, new Fr(this.counter)];
16
16
  }
17
17
 
18
18
  static fromFields(fields: Fr[] | FieldReader) {
19
19
  const reader = FieldReader.asReader(fields);
20
- return new Nullifier(reader.readField(), reader.readU32(), reader.readField());
20
+ return new Nullifier(reader.readField(), reader.readField(), reader.readU32());
21
21
  }
22
22
 
23
23
  isEmpty() {
24
- return this.value.isZero() && !this.counter && this.noteHash.isZero();
24
+ return this.value.isZero() && this.noteHash.isZero() && !this.counter;
25
25
  }
26
26
 
27
27
  static empty() {
28
- return new Nullifier(Fr.zero(), 0, Fr.zero());
28
+ return new Nullifier(Fr.zero(), Fr.zero(), 0);
29
29
  }
30
30
 
31
31
  toBuffer(): Buffer {
32
- return serializeToBuffer(this.value, this.counter, this.noteHash);
32
+ return serializeToBuffer(this.value, this.noteHash, this.counter);
33
33
  }
34
34
 
35
35
  static fromBuffer(buffer: Buffer | BufferReader) {
36
36
  const reader = BufferReader.asReader(buffer);
37
- return new Nullifier(Fr.fromBuffer(reader), reader.readNumber(), Fr.fromBuffer(reader));
37
+ return new Nullifier(Fr.fromBuffer(reader), Fr.fromBuffer(reader), reader.readNumber());
38
38
  }
39
39
 
40
40
  toString(): string {
41
- return `value=${this.value} counter=${this.counter} noteHash=${this.noteHash}`;
41
+ return `value=${this.value} noteHash=${this.noteHash} counter=${this.counter}`;
42
42
  }
43
43
 
44
44
  scope(contractAddress: AztecAddress) {
@@ -1,33 +1,23 @@
1
1
  import { Buffer32 } from '@aztec/foundation/buffer';
2
- import { BufferReader, bigintToUInt64BE, serializeToBuffer } from '@aztec/foundation/serialize';
2
+ import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
3
3
 
4
4
  import type { TopicType } from './topic_type.js';
5
5
 
6
6
  export class P2PMessage {
7
- constructor(
8
- public readonly publishTime: Date,
9
- public readonly id: Buffer32,
10
- public readonly payload: Buffer,
11
- ) {}
7
+ constructor(public readonly payload: Buffer) {}
12
8
 
13
- static async fromGossipable(message: Gossipable): Promise<P2PMessage> {
14
- return new P2PMessage(new Date(), await message.p2pMessageIdentifier(), message.toBuffer());
9
+ static fromGossipable(message: Gossipable): P2PMessage {
10
+ return new P2PMessage(message.toBuffer());
15
11
  }
16
12
 
17
13
  static fromMessageData(messageData: Buffer): P2PMessage {
18
14
  const reader = new BufferReader(messageData);
19
- const publishTime = reader.readUInt64();
20
- const id = Buffer32.fromBuffer(reader);
21
15
  const payload = reader.readBuffer();
22
- return new P2PMessage(new Date(Number(publishTime)), id, payload);
16
+ return new P2PMessage(payload);
23
17
  }
24
18
 
25
19
  toMessageData(): Buffer {
26
- return serializeToBuffer([
27
- bigintToUInt64BE(BigInt(this.publishTime.getTime())),
28
- this.id,
29
- serializeToBuffer(this.payload.length, this.payload),
30
- ]);
20
+ return serializeToBuffer([serializeToBuffer(this.payload.length, this.payload)]);
31
21
  }
32
22
  }
33
23
 
@@ -193,7 +193,7 @@ function makeNoteHash(seed: number) {
193
193
  }
194
194
 
195
195
  function makeNullifier(seed: number) {
196
- return new Nullifier(fr(seed), seed + 1, fr(seed + 2));
196
+ return new Nullifier(fr(seed), fr(seed + 1), seed + 2);
197
197
  }
198
198
 
199
199
  function makePrivateLog(seed: number) {
@@ -109,7 +109,7 @@ export const mockTx = async (
109
109
  (hasPublicTeardownCallRequest ? 1 : 0);
110
110
  const isForPublic = totalPublicCallRequests > 0;
111
111
  const data = PrivateKernelTailCircuitPublicInputs.empty();
112
- const firstNullifier = new Nullifier(new Fr(seed + 1), 0, Fr.ZERO);
112
+ const firstNullifier = new Nullifier(new Fr(seed + 1), Fr.ZERO, 0);
113
113
  data.constants.txContext.gasSettings = GasSettings.default({
114
114
  maxFeesPerGas: new GasFees(10, 10),
115
115
  maxPriorityFeesPerGas,
@@ -151,7 +151,7 @@ export const mockTx = async (
151
151
  .build();
152
152
 
153
153
  for (let i = 0; i < numberOfRevertibleNullifiers; i++) {
154
- const revertibleNullifier = new Nullifier(new Fr(seed + 2 + i), 0, Fr.ZERO);
154
+ const revertibleNullifier = new Nullifier(new Fr(seed + 2 + i), Fr.ZERO, 0);
155
155
  revertibleBuilder.pushNullifier(revertibleNullifier.value);
156
156
  }
157
157