@aztec/stdlib 4.2.0-nightly.20260319 → 4.2.0-nightly.20260320
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.
- package/dest/avm/avm_accumulated_data.js +2 -2
- package/dest/avm/avm_circuit_public_inputs.js +2 -2
- package/dest/checkpoint/validate.js +2 -2
- package/dest/hash/hash.d.ts +16 -1
- package/dest/hash/hash.d.ts.map +1 -1
- package/dest/hash/hash.js +24 -0
- package/dest/interfaces/aztec-node-admin.d.ts +1 -4
- package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
- package/dest/interfaces/aztec-node.d.ts +2 -1
- package/dest/interfaces/aztec-node.d.ts.map +1 -1
- package/dest/interfaces/block-builder.d.ts +26 -7
- package/dest/interfaces/block-builder.d.ts.map +1 -1
- package/dest/interfaces/block-builder.js +1 -4
- package/dest/interfaces/configs.d.ts +2 -7
- package/dest/interfaces/configs.d.ts.map +1 -1
- package/dest/interfaces/configs.js +0 -1
- package/dest/kernel/claimed_length_array.js +1 -1
- package/dest/kernel/hints/private_kernel_reset_hints.d.ts +1 -1
- package/dest/kernel/hints/private_kernel_reset_hints.d.ts.map +1 -1
- package/dest/kernel/padded_side_effects.js +1 -1
- package/dest/kernel/private_to_avm_accumulated_data.js +2 -2
- package/dest/kernel/private_to_public_accumulated_data.js +2 -2
- package/dest/kernel/private_to_rollup_accumulated_data.js +1 -1
- package/dest/logs/private_log.js +1 -1
- package/dest/logs/public_log.d.ts +1 -1
- package/dest/logs/public_log.d.ts.map +1 -1
- package/dest/logs/public_log.js +7 -1
- package/dest/noir/index.d.ts +3 -3
- package/dest/noir/index.d.ts.map +1 -1
- package/dest/parity/parity_base_private_inputs.js +1 -1
- package/dest/proofs/chonk_proof.d.ts +1 -1
- package/dest/proofs/chonk_proof.d.ts.map +1 -1
- package/dest/proofs/chonk_proof.js +7 -1
- package/dest/rollup/base_rollup_hints.js +2 -2
- package/dest/rollup/block_root_rollup_private_inputs.js +5 -5
- package/dest/rollup/checkpoint_rollup_public_inputs.js +1 -1
- package/dest/rollup/checkpoint_root_rollup_private_inputs.js +3 -3
- package/dest/rollup/root_rollup_public_inputs.js +1 -1
- package/dest/rollup/tree_snapshot_diff_hints.js +2 -2
- package/dest/tx/protocol_contracts.js +2 -2
- package/dest/vks/vk_data.js +1 -1
- package/package.json +9 -9
- package/src/avm/avm_accumulated_data.ts +6 -6
- package/src/avm/avm_circuit_public_inputs.ts +4 -4
- package/src/checkpoint/validate.ts +2 -2
- package/src/hash/hash.ts +29 -0
- package/src/interfaces/aztec-node.ts +1 -0
- package/src/interfaces/block-builder.ts +27 -9
- package/src/interfaces/configs.ts +1 -6
- package/src/kernel/claimed_length_array.ts +2 -2
- package/src/kernel/hints/private_kernel_reset_hints.ts +5 -2
- package/src/kernel/hints/read_request_hints.ts +3 -3
- package/src/kernel/padded_side_effects.ts +3 -3
- package/src/kernel/private_to_avm_accumulated_data.ts +4 -4
- package/src/kernel/private_to_public_accumulated_data.ts +10 -10
- package/src/kernel/private_to_rollup_accumulated_data.ts +5 -5
- package/src/logs/private_log.ts +1 -1
- package/src/logs/public_log.ts +11 -1
- package/src/noir/index.ts +2 -2
- package/src/parity/parity_base_private_inputs.ts +1 -1
- package/src/proofs/chonk_proof.ts +9 -1
- package/src/rollup/base_rollup_hints.ts +2 -2
- package/src/rollup/block_root_rollup_private_inputs.ts +8 -8
- package/src/rollup/checkpoint_rollup_public_inputs.ts +2 -2
- package/src/rollup/checkpoint_root_rollup_private_inputs.ts +4 -4
- package/src/rollup/root_rollup_public_inputs.ts +2 -2
- package/src/rollup/tree_snapshot_diff_hints.ts +5 -5
- package/src/tx/protocol_contracts.ts +2 -2
- package/src/vks/vk_data.ts +1 -1
|
@@ -52,4 +52,4 @@ export declare class PublicLog {
|
|
|
52
52
|
static get schema(): ZodFor<PublicLog>;
|
|
53
53
|
[inspect.custom](): string;
|
|
54
54
|
}
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2xvZy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xvZ3MvcHVibGljX2xvZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxPQUFPLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxFQUFFLEtBQUssTUFBTSxFQUFXLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQXFCLE1BQU0sNkJBQTZCLENBQUM7QUFFM0YsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUcvQixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFPekQscUJBQWEsY0FBYztJQUdoQixNQUFNLEVBQUUsTUFBTTtJQUNkLE9BQU8sRUFBRSxFQUFFLEVBQUU7SUFGdEIsWUFDUyxNQUFNLEVBQUUsTUFBTSxFQUNkLE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFRckI7SUFFRCxPQUFPLENBQUMsTUFBTSxDQUFDLG1CQUFtQjtJQU1sQyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLFdBQVcsa0JBSS9EO0lBRUQsWUFBWSxTQUVYO0lBRUQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFLGtCQUVoQztJQUVELE1BQU0sZ0JBVUw7SUFFRCxNQUFNLEtBQUssTUFBTSxJQUFJLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FPMUM7SUFFRCxRQUFRLElBQUksTUFBTSxDQUVqQjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLGtCQU85QztJQUdELFFBQVEsSUFBSSxFQUFFLEVBQUUsQ0FFZjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLFdBQVcsa0JBUzNDO0lBRUQsTUFBTSxDQUFDLEtBQUssbUJBRVg7SUFFRDs7Ozs7O09BTUc7SUFDSCxNQUFNLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBRSxHQUFHLEdBQUcsY0FBYyxDQUsvQztJQUVELE9BQU8sWUFFTjtDQUNGO0FBRUQscUJBQWEsU0FBUzthQUVGLGVBQWUsRUFBRSxZQUFZO2FBQzdCLE1BQU0sRUFBRSxFQUFFLEVBQUU7SUFGOUIsWUFDa0IsZUFBZSxFQUFFLFlBQVksRUFDN0IsTUFBTSxFQUFFLEVBQUUsRUFBRSxFQUMxQjtJQUVKLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxTQUFTLENBQUMsYUFFdEM7SUFFRCxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsU0FBUyxDQUFDLGlDQUUzQztJQUVELFFBQVEsSUFBSSxFQUFFLEVBQUUsQ0FFZjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxHQUFHLFdBQVcsYUFJM0M7SUFFRCxZQUFZLFdBRVg7SUFFRCxrRkFBa0Y7SUFDbEYsZ0JBQWdCLFNBR2Y7SUFFRCwwQkFBMEIsU0FFekI7SUFFRCxPQUFPLFlBRU47SUFFRCxNQUFNLENBQUMsS0FBSyxjQUVYO0lBRUQsUUFBUSxJQUFJLE1BQU0sQ0FFakI7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxhQU85QztJQUVELE1BQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLEdBQUcsR0FBRyxTQUFTLENBSzFDO0lBRUQsT0FBYSxNQUFNLHVCQUtsQjtJQUVELE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxXQU1qQjtJQUVELGVBQWUsSUFBSSxNQUFNLENBRXhCO0lBRUQsTUFBTSxLQUFLLE1BQU0sSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLENBT3JDO0lBRUQsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksTUFBTSxDQUt6QjtDQUNGIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public_log.d.ts","sourceRoot":"","sources":["../../src/logs/public_log.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"public_log.d.ts","sourceRoot":"","sources":["../../src/logs/public_log.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,KAAK,MAAM,EAAW,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAqB,MAAM,6BAA6B,CAAC;AAE3F,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAG/B,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAOzD,qBAAa,cAAc;IAGhB,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,EAAE,EAAE;IAFtB,YACS,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,EAAE,EAAE,EAQrB;IAED,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAMlC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,kBAI/D;IAED,YAAY,SAEX;IAED,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,kBAEhC;IAED,MAAM,gBAUL;IAED,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,cAAc,CAAC,CAO1C;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,kBAO9C;IAGD,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,kBAS3C;IAED,MAAM,CAAC,KAAK,mBAEX;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,cAAc,CAK/C;IAED,OAAO,YAEN;CACF;AAED,qBAAa,SAAS;aAEF,eAAe,EAAE,YAAY;aAC7B,MAAM,EAAE,EAAE,EAAE;IAF9B,YACkB,eAAe,EAAE,YAAY,EAC7B,MAAM,EAAE,EAAE,EAAE,EAC1B;IAEJ,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,aAEtC;IAED,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC,iCAE3C;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,aAI3C;IAED,YAAY,WAEX;IAED,kFAAkF;IAClF,gBAAgB,SAGf;IAED,0BAA0B,SAEzB;IAED,OAAO,YAEN;IAED,MAAM,CAAC,KAAK,cAEX;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,aAO9C;IAED,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,SAAS,CAK1C;IAED,OAAa,MAAM,uBAKlB;IAED,MAAM,CAAC,KAAK,EAAE,IAAI,WAMjB;IAED,eAAe,IAAI,MAAM,CAExB;IAED,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,CAOrC;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAKzB;CACF"}
|
package/dest/logs/public_log.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
var _computedKey;
|
|
2
|
-
import { FLAT_PUBLIC_LOGS_PAYLOAD_LENGTH, PUBLIC_LOG_HEADER_LENGTH } from '@aztec/constants';
|
|
2
|
+
import { FLAT_PUBLIC_LOGS_PAYLOAD_LENGTH, MAX_PUBLIC_LOG_SIZE_IN_FIELDS, PUBLIC_LOG_HEADER_LENGTH } from '@aztec/constants';
|
|
3
3
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
4
4
|
import { schemas } from '@aztec/foundation/schemas';
|
|
5
5
|
import { BufferReader, FieldReader, serializeToBuffer } from '@aztec/foundation/serialize';
|
|
@@ -66,6 +66,9 @@ export class FlatPublicLogs {
|
|
|
66
66
|
static fromBuffer(buffer) {
|
|
67
67
|
const reader = BufferReader.asReader(buffer);
|
|
68
68
|
const length = reader.readNumber();
|
|
69
|
+
if (length > FLAT_PUBLIC_LOGS_PAYLOAD_LENGTH) {
|
|
70
|
+
throw new Error(`FlatPublicLogs length ${length} exceeds maximum ${FLAT_PUBLIC_LOGS_PAYLOAD_LENGTH}`);
|
|
71
|
+
}
|
|
69
72
|
return this.fromUnpaddedPayload(reader.readArray(length, Fr));
|
|
70
73
|
}
|
|
71
74
|
// ToFields and fromFields expect the noir style representation, with constant length payload.
|
|
@@ -152,6 +155,9 @@ export class PublicLog {
|
|
|
152
155
|
static fromBuffer(buffer) {
|
|
153
156
|
const reader = BufferReader.asReader(buffer);
|
|
154
157
|
const fieldsLength = reader.readNumber();
|
|
158
|
+
if (fieldsLength > MAX_PUBLIC_LOG_SIZE_IN_FIELDS) {
|
|
159
|
+
throw new Error(`PublicLog fields length ${fieldsLength} exceeds maximum ${MAX_PUBLIC_LOG_SIZE_IN_FIELDS}`);
|
|
160
|
+
}
|
|
155
161
|
return new PublicLog(reader.readObject(AztecAddress), reader.readArray(fieldsLength, Fr));
|
|
156
162
|
}
|
|
157
163
|
static fromPlainObject(obj) {
|
package/dest/noir/index.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ export declare const AZTEC_VIEW_ATTRIBUTE = "abi_view";
|
|
|
9
9
|
export interface NoirFunctionAbi {
|
|
10
10
|
/** The parameters of the function. */
|
|
11
11
|
parameters: ABIParameter[];
|
|
12
|
-
/** The return type of the function. */
|
|
12
|
+
/** The return type of the function, or null for void functions. */
|
|
13
13
|
return_type: {
|
|
14
14
|
/**
|
|
15
15
|
* The type of the return value.
|
|
@@ -19,7 +19,7 @@ export interface NoirFunctionAbi {
|
|
|
19
19
|
* The visibility of the return value.
|
|
20
20
|
*/
|
|
21
21
|
visibility: ABIParameterVisibility;
|
|
22
|
-
};
|
|
22
|
+
} | null;
|
|
23
23
|
/** Mapping of error selector => error type */
|
|
24
24
|
error_types: Partial<Record<string, AbiErrorType>>;
|
|
25
25
|
}
|
|
@@ -142,4 +142,4 @@ export declare function isNoirContractCompilationArtifacts(artifact: NoirCompila
|
|
|
142
142
|
*/
|
|
143
143
|
export declare function isNoirProgramCompilationArtifacts(artifact: NoirCompilationResult): artifact is NoirProgramCompilationArtifacts;
|
|
144
144
|
export {};
|
|
145
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
145
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2lyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUNWLFlBQVksRUFDWixzQkFBc0IsRUFDdEIsWUFBWSxFQUNaLE9BQU8sRUFDUCxRQUFRLEVBQ1IsWUFBWSxFQUNaLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUV2QixlQUFPLE1BQU0sdUJBQXVCLGdCQUFnQixDQUFDO0FBQ3JELGVBQU8sTUFBTSxzQkFBc0IsZUFBZSxDQUFDO0FBQ25ELGVBQU8sTUFBTSx1QkFBdUIsZ0JBQWdCLENBQUM7QUFDckQsZUFBTyxNQUFNLHlCQUF5QixrQkFBa0IsQ0FBQztBQUN6RCxlQUFPLE1BQU0sMkJBQTJCLG9CQUFvQixDQUFDO0FBQzdELGVBQU8sTUFBTSxvQkFBb0IsYUFBYSxDQUFDO0FBRS9DLHVDQUF1QztBQUN2QyxNQUFNLFdBQVcsZUFBZTtJQUM5QixzQ0FBc0M7SUFDdEMsVUFBVSxFQUFFLFlBQVksRUFBRSxDQUFDO0lBQzNCLG1FQUFtRTtJQUNuRSxXQUFXLEVBQUU7UUFDWDs7V0FFRztRQUNILFFBQVEsRUFBRSxPQUFPLENBQUM7UUFDbEI7O1dBRUc7UUFDSCxVQUFVLEVBQUUsc0JBQXNCLENBQUM7S0FDcEMsR0FBRyxJQUFJLENBQUM7SUFDVCw4Q0FBOEM7SUFDOUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUM7Q0FDcEQ7QUFFRDs7R0FFRztBQUNILFVBQVUsaUJBQWlCO0lBQ3pCLGdDQUFnQztJQUNoQyxJQUFJLEVBQUUsTUFBTSxDQUFDO0lBQ2IsNkNBQTZDO0lBQzdDLGdCQUFnQixFQUFFLE9BQU8sQ0FBQztJQUMxQiw2Q0FBNkM7SUFDN0MsaUJBQWlCLEVBQUUsTUFBTSxFQUFFLENBQUM7SUFDNUIsK0JBQStCO0lBQy9CLEdBQUcsRUFBRSxlQUFlLENB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
|
package/dest/noir/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/noir/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,sBAAsB,EACtB,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,SAAS,EACV,MAAM,eAAe,CAAC;AAEvB,eAAO,MAAM,uBAAuB,gBAAgB,CAAC;AACrD,eAAO,MAAM,sBAAsB,eAAe,CAAC;AACnD,eAAO,MAAM,uBAAuB,gBAAgB,CAAC;AACrD,eAAO,MAAM,yBAAyB,kBAAkB,CAAC;AACzD,eAAO,MAAM,2BAA2B,oBAAoB,CAAC;AAC7D,eAAO,MAAM,oBAAoB,aAAa,CAAC;AAE/C,uCAAuC;AACvC,MAAM,WAAW,eAAe;IAC9B,sCAAsC;IACtC,UAAU,EAAE,YAAY,EAAE,CAAC;IAC3B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/noir/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,7 +31,7 @@ export class ParityBasePrivateInputs {
|
|
|
31
31
|
* @param buffer - The buffer to deserialize from.
|
|
32
32
|
*/ static fromBuffer(buffer) {
|
|
33
33
|
const reader = BufferReader.asReader(buffer);
|
|
34
|
-
return new ParityBasePrivateInputs(reader.
|
|
34
|
+
return new ParityBasePrivateInputs(reader.readTuple(NUM_MSGS_PER_BASE_PARITY, Fr), Fr.fromBuffer(reader));
|
|
35
35
|
}
|
|
36
36
|
/**
|
|
37
37
|
* Deserializes the inputs from a hex string.
|
|
@@ -25,4 +25,4 @@ export declare class ChonkProofWithPublicInputs {
|
|
|
25
25
|
toBuffer(): Buffer<ArrayBufferLike>;
|
|
26
26
|
static fromBufferArray(fields: Uint8Array[]): ChonkProofWithPublicInputs;
|
|
27
27
|
}
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hvbmtfcHJvb2YuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcm9vZnMvY2hvbmtfcHJvb2YudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXBELE9BQU8sRUFBRSxZQUFZLEVBQXFCLE1BQU0sNkJBQTZCLENBQUM7QUFHOUUscUJBQWEsVUFBVTtJQUtaLE1BQU0sRUFBRSxFQUFFLEVBQUU7SUFKckIsWUFJUyxNQUFNLEVBQUUsRUFBRSxFQUFFLEVBS3BCO0lBRU0sa0JBQWtCLENBQUMsWUFBWSxFQUFFLEVBQUUsRUFBRSw4QkFFM0M7SUFFTSxPQUFPLFlBRWI7SUFFRCxNQUFNLENBQUMsS0FBSyxlQUVYO0lBRUQsTUFBTSxDQUFDLE1BQU0sZUFZWjtJQUVELE1BQU0sS0FBSyxNQUFNLG1EQUVoQjtJQUdELE1BQU0sNEJBRUw7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLFVBQVUsQ0FRM0Q7SUFFTSxRQUFRLDRCQUVkO0NBQ0Y7QUFFRCxxQkFBYSwwQkFBMEI7SUFJNUIsc0JBQXNCLEVBQUUsRUFBRSxFQUFFO0lBSHJDLFlBR1Msc0JBQXNCLEVBQUUsRUFBRSxFQUFFLEVBS3BDO0lBRU0sZUFBZSxTQUdyQjtJQUVNLGtCQUFrQixlQUd4QjtJQUVNLE9BQU8sWUFFYjtJQUVELE1BQU0sQ0FBQyxLQUFLLCtCQUVYO0lBRUQsTUFBTSxLQUFLLE1BQU0sbUVBRWhCO0lBR0QsTUFBTSw0QkFFTDtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLEdBQUcsMEJBQTBCLENBVTNFO0lBRU0sUUFBUSw0QkFFZDtJQUdELE1BQU0sQ0FBQyxlQUFlLENBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxHQUFHLDBCQUEwQixDQUd2RTtDQUNGIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chonk_proof.d.ts","sourceRoot":"","sources":["../../src/proofs/chonk_proof.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAG9E,qBAAa,UAAU;IAKZ,MAAM,EAAE,EAAE,EAAE;IAJrB,YAIS,MAAM,EAAE,EAAE,EAAE,EAKpB;IAEM,kBAAkB,CAAC,YAAY,EAAE,EAAE,EAAE,8BAE3C;IAEM,OAAO,YAEb;IAED,MAAM,CAAC,KAAK,eAEX;IAED,MAAM,CAAC,MAAM,eAYZ;IAED,MAAM,KAAK,MAAM,mDAEhB;IAGD,MAAM,4BAEL;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,UAAU,
|
|
1
|
+
{"version":3,"file":"chonk_proof.d.ts","sourceRoot":"","sources":["../../src/proofs/chonk_proof.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAG9E,qBAAa,UAAU;IAKZ,MAAM,EAAE,EAAE,EAAE;IAJrB,YAIS,MAAM,EAAE,EAAE,EAAE,EAKpB;IAEM,kBAAkB,CAAC,YAAY,EAAE,EAAE,EAAE,8BAE3C;IAEM,OAAO,YAEb;IAED,MAAM,CAAC,KAAK,eAEX;IAED,MAAM,CAAC,MAAM,eAYZ;IAED,MAAM,KAAK,MAAM,mDAEhB;IAGD,MAAM,4BAEL;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,UAAU,CAQ3D;IAEM,QAAQ,4BAEd;CACF;AAED,qBAAa,0BAA0B;IAI5B,sBAAsB,EAAE,EAAE,EAAE;IAHrC,YAGS,sBAAsB,EAAE,EAAE,EAAE,EAKpC;IAEM,eAAe,SAGrB;IAEM,kBAAkB,eAGxB;IAEM,OAAO,YAEb;IAED,MAAM,CAAC,KAAK,+BAEX;IAED,MAAM,KAAK,MAAM,mEAEhB;IAGD,MAAM,4BAEL;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,0BAA0B,CAU3E;IAEM,QAAQ,4BAEd;IAGD,MAAM,CAAC,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,0BAA0B,CAGvE;CACF"}
|
|
@@ -51,7 +51,10 @@ export class ChonkProof {
|
|
|
51
51
|
static fromBuffer(buffer) {
|
|
52
52
|
const reader = BufferReader.asReader(buffer);
|
|
53
53
|
const proofLength = reader.readNumber();
|
|
54
|
-
|
|
54
|
+
if (proofLength !== CHONK_PROOF_LENGTH) {
|
|
55
|
+
throw new Error(`Invalid ChonkProof length from buffer: ${proofLength}, expected ${CHONK_PROOF_LENGTH}`);
|
|
56
|
+
}
|
|
57
|
+
const proof = reader.readArray(CHONK_PROOF_LENGTH, Fr);
|
|
55
58
|
return new ChonkProof(proof);
|
|
56
59
|
}
|
|
57
60
|
toBuffer() {
|
|
@@ -92,6 +95,9 @@ export class ChonkProofWithPublicInputs {
|
|
|
92
95
|
static fromBuffer(buffer) {
|
|
93
96
|
const reader = BufferReader.asReader(buffer);
|
|
94
97
|
const proofLength = reader.readNumber();
|
|
98
|
+
if (proofLength < CHONK_PROOF_LENGTH) {
|
|
99
|
+
throw new Error(`Invalid ChonkProofWithPublicInputs length from buffer: ${proofLength}, expected at least ${CHONK_PROOF_LENGTH}`);
|
|
100
|
+
}
|
|
95
101
|
const proof = reader.readArray(proofLength, Fr);
|
|
96
102
|
return new ChonkProofWithPublicInputs(proof);
|
|
97
103
|
}
|
|
@@ -69,7 +69,7 @@ export class PrivateBaseRollupHints {
|
|
|
69
69
|
}
|
|
70
70
|
static fromBuffer(buffer) {
|
|
71
71
|
const reader = BufferReader.asReader(buffer);
|
|
72
|
-
return new PrivateBaseRollupHints(reader.readObject(PartialStateReference), reader.readObject(SpongeBlob), reader.readObject(TreeSnapshotDiffHints), reader.readObject(PublicDataTreeLeafPreimage), reader.
|
|
72
|
+
return new PrivateBaseRollupHints(reader.readObject(PartialStateReference), reader.readObject(SpongeBlob), reader.readObject(TreeSnapshotDiffHints), reader.readObject(PublicDataTreeLeafPreimage), reader.readTuple(ARCHIVE_HEIGHT, Fr), makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, ()=>reader.readObject(ContractClassLogFields)), reader.readObject(BlockConstantData));
|
|
73
73
|
}
|
|
74
74
|
static fromString(str) {
|
|
75
75
|
return PrivateBaseRollupHints.fromBuffer(hexToBuffer(str));
|
|
@@ -122,7 +122,7 @@ export class PublicBaseRollupHints {
|
|
|
122
122
|
}
|
|
123
123
|
static fromBuffer(buffer) {
|
|
124
124
|
const reader = BufferReader.asReader(buffer);
|
|
125
|
-
return new PublicBaseRollupHints(reader.readObject(SpongeBlob), reader.readObject(AppendOnlyTreeSnapshot), reader.
|
|
125
|
+
return new PublicBaseRollupHints(reader.readObject(SpongeBlob), reader.readObject(AppendOnlyTreeSnapshot), reader.readTuple(ARCHIVE_HEIGHT, Fr), makeTuple(MAX_CONTRACT_CLASS_LOGS_PER_TX, ()=>reader.readObject(ContractClassLogFields)));
|
|
126
126
|
}
|
|
127
127
|
static fromString(str) {
|
|
128
128
|
return PublicBaseRollupHints.fromBuffer(hexToBuffer(str));
|
|
@@ -51,7 +51,7 @@ export class BlockRootFirstRollupPrivateInputs {
|
|
|
51
51
|
return new BlockRootFirstRollupPrivateInputs(ProofData.fromBuffer(reader, ParityPublicInputs), [
|
|
52
52
|
ProofData.fromBuffer(reader, TxRollupPublicInputs),
|
|
53
53
|
ProofData.fromBuffer(reader, TxRollupPublicInputs)
|
|
54
|
-
], AppendOnlyTreeSnapshot.fromBuffer(reader), reader.
|
|
54
|
+
], AppendOnlyTreeSnapshot.fromBuffer(reader), reader.readTuple(L1_TO_L2_MSG_SUBTREE_ROOT_SIBLING_PATH_LENGTH, Fr), reader.readTuple(ARCHIVE_HEIGHT, Fr));
|
|
55
55
|
}
|
|
56
56
|
toJSON() {
|
|
57
57
|
return this.toBuffer();
|
|
@@ -100,7 +100,7 @@ export class BlockRootSingleTxFirstRollupPrivateInputs {
|
|
|
100
100
|
}
|
|
101
101
|
static fromBuffer(buffer) {
|
|
102
102
|
const reader = BufferReader.asReader(buffer);
|
|
103
|
-
return new BlockRootSingleTxFirstRollupPrivateInputs(ProofData.fromBuffer(reader, ParityPublicInputs), ProofData.fromBuffer(reader, TxRollupPublicInputs), AppendOnlyTreeSnapshot.fromBuffer(reader), reader.
|
|
103
|
+
return new BlockRootSingleTxFirstRollupPrivateInputs(ProofData.fromBuffer(reader, ParityPublicInputs), ProofData.fromBuffer(reader, TxRollupPublicInputs), AppendOnlyTreeSnapshot.fromBuffer(reader), reader.readTuple(L1_TO_L2_MSG_SUBTREE_ROOT_SIBLING_PATH_LENGTH, Fr), reader.readTuple(ARCHIVE_HEIGHT, Fr));
|
|
104
104
|
}
|
|
105
105
|
toJSON() {
|
|
106
106
|
return this.toBuffer();
|
|
@@ -167,7 +167,7 @@ export class BlockRootEmptyTxFirstRollupPrivateInputs {
|
|
|
167
167
|
}
|
|
168
168
|
static fromBuffer(buffer) {
|
|
169
169
|
const reader = BufferReader.asReader(buffer);
|
|
170
|
-
return new BlockRootEmptyTxFirstRollupPrivateInputs(ProofData.fromBuffer(reader, ParityPublicInputs), AppendOnlyTreeSnapshot.fromBuffer(reader), StateReference.fromBuffer(reader), CheckpointConstantData.fromBuffer(reader), reader.readUInt64(), reader.
|
|
170
|
+
return new BlockRootEmptyTxFirstRollupPrivateInputs(ProofData.fromBuffer(reader, ParityPublicInputs), AppendOnlyTreeSnapshot.fromBuffer(reader), StateReference.fromBuffer(reader), CheckpointConstantData.fromBuffer(reader), reader.readUInt64(), reader.readTuple(L1_TO_L2_MSG_SUBTREE_ROOT_SIBLING_PATH_LENGTH, Fr), reader.readTuple(ARCHIVE_HEIGHT, Fr));
|
|
171
171
|
}
|
|
172
172
|
toJSON() {
|
|
173
173
|
return this.toBuffer();
|
|
@@ -204,7 +204,7 @@ export class BlockRootRollupPrivateInputs {
|
|
|
204
204
|
return new BlockRootRollupPrivateInputs([
|
|
205
205
|
ProofData.fromBuffer(reader, TxRollupPublicInputs),
|
|
206
206
|
ProofData.fromBuffer(reader, TxRollupPublicInputs)
|
|
207
|
-
], reader.
|
|
207
|
+
], reader.readTuple(ARCHIVE_HEIGHT, Fr));
|
|
208
208
|
}
|
|
209
209
|
toJSON() {
|
|
210
210
|
return this.toBuffer();
|
|
@@ -238,7 +238,7 @@ export class BlockRootSingleTxRollupPrivateInputs {
|
|
|
238
238
|
}
|
|
239
239
|
static fromBuffer(buffer) {
|
|
240
240
|
const reader = BufferReader.asReader(buffer);
|
|
241
|
-
return new BlockRootSingleTxRollupPrivateInputs(ProofData.fromBuffer(reader, TxRollupPublicInputs), reader.
|
|
241
|
+
return new BlockRootSingleTxRollupPrivateInputs(ProofData.fromBuffer(reader, TxRollupPublicInputs), reader.readTuple(ARCHIVE_HEIGHT, Fr));
|
|
242
242
|
}
|
|
243
243
|
toJSON() {
|
|
244
244
|
return this.toBuffer();
|
|
@@ -54,7 +54,7 @@ import { EpochConstantData } from './epoch_constant_data.js';
|
|
|
54
54
|
}
|
|
55
55
|
static fromBuffer(buffer) {
|
|
56
56
|
const reader = BufferReader.asReader(buffer);
|
|
57
|
-
return new CheckpointRollupPublicInputs(reader.readObject(EpochConstantData), reader.readObject(AppendOnlyTreeSnapshot), reader.readObject(AppendOnlyTreeSnapshot), reader.readObject(AppendOnlyTreeSnapshot), reader.readObject(AppendOnlyTreeSnapshot), reader.
|
|
57
|
+
return new CheckpointRollupPublicInputs(reader.readObject(EpochConstantData), reader.readObject(AppendOnlyTreeSnapshot), reader.readObject(AppendOnlyTreeSnapshot), reader.readObject(AppendOnlyTreeSnapshot), reader.readObject(AppendOnlyTreeSnapshot), reader.readTuple(MAX_CHECKPOINTS_PER_EPOCH, Fr), reader.readTuple(MAX_CHECKPOINTS_PER_EPOCH, FeeRecipient), reader.readObject(BlobAccumulator), reader.readObject(BlobAccumulator), reader.readObject(FinalBlobBatchingChallenges));
|
|
58
58
|
}
|
|
59
59
|
toBuffer() {
|
|
60
60
|
return serializeToBuffer(this.constants, this.previousArchive, this.newArchive, this.previousOutHash, this.newOutHash, this.checkpointHeaderHashes, this.fees, this.startBlobAccumulator, this.endBlobAccumulator, this.finalBlobChallenges);
|
|
@@ -72,11 +72,11 @@ export class CheckpointRootRollupHints {
|
|
|
72
72
|
}
|
|
73
73
|
static fromBuffer(buffer) {
|
|
74
74
|
const reader = BufferReader.asReader(buffer);
|
|
75
|
-
return new CheckpointRootRollupHints(BlockHeader.fromBuffer(reader), reader.
|
|
76
|
-
// reader.
|
|
75
|
+
return new CheckpointRootRollupHints(BlockHeader.fromBuffer(reader), reader.readTuple(ARCHIVE_HEIGHT, Fr), reader.readObject(AppendOnlyTreeSnapshot), reader.readTuple(OUT_HASH_TREE_HEIGHT, Fr), reader.readObject(BlobAccumulator), reader.readObject(FinalBlobBatchingChallenges), // Below line gives error 'Type instantiation is excessively deep and possibly infinite. ts(2589)'
|
|
76
|
+
// reader.readTuple(FIELDS_PER_BLOB, Fr),
|
|
77
77
|
Array.from({
|
|
78
78
|
length: FIELDS_PER_BLOB * BLOBS_PER_CHECKPOINT
|
|
79
|
-
}, ()=>Fr.fromBuffer(reader)), reader.
|
|
79
|
+
}, ()=>Fr.fromBuffer(reader)), reader.readTuple(BLOBS_PER_CHECKPOINT, BLS12Point), Fr.fromBuffer(reader));
|
|
80
80
|
}
|
|
81
81
|
toString() {
|
|
82
82
|
return bufferToHex(this.toBuffer());
|
|
@@ -57,7 +57,7 @@ import { EpochConstantData } from './epoch_constant_data.js';
|
|
|
57
57
|
* @returns The deserialized `RootRollupPublicInputs` object.
|
|
58
58
|
*/ static fromBuffer(buffer) {
|
|
59
59
|
const reader = BufferReader.asReader(buffer);
|
|
60
|
-
return new RootRollupPublicInputs(Fr.fromBuffer(reader), Fr.fromBuffer(reader), Fr.fromBuffer(reader), reader.
|
|
60
|
+
return new RootRollupPublicInputs(Fr.fromBuffer(reader), Fr.fromBuffer(reader), Fr.fromBuffer(reader), reader.readTuple(MAX_CHECKPOINTS_PER_EPOCH, Fr), reader.readTuple(MAX_CHECKPOINTS_PER_EPOCH, FeeRecipient), EpochConstantData.fromBuffer(reader), reader.readObject(FinalBlobAccumulator));
|
|
61
61
|
}
|
|
62
62
|
toString() {
|
|
63
63
|
return bufferToHex(this.toBuffer());
|
|
@@ -65,9 +65,9 @@ import { NullifierLeafPreimage } from '../trees/index.js';
|
|
|
65
65
|
* @returns A new TreeSnapshotDiffHints instance.
|
|
66
66
|
*/ static fromBuffer(buffer) {
|
|
67
67
|
const reader = BufferReader.asReader(buffer);
|
|
68
|
-
return new TreeSnapshotDiffHints(reader.
|
|
68
|
+
return new TreeSnapshotDiffHints(reader.readTuple(NOTE_HASH_SUBTREE_ROOT_SIBLING_PATH_LENGTH, Fr), reader.readTuple(MAX_NULLIFIERS_PER_TX, NullifierLeafPreimage), reader.readTuple(MAX_NULLIFIERS_PER_TX, {
|
|
69
69
|
fromBuffer: (buffer)=>MembershipWitness.fromBuffer(buffer, NULLIFIER_TREE_HEIGHT)
|
|
70
|
-
}), reader.
|
|
70
|
+
}), reader.readTuple(MAX_NULLIFIERS_PER_TX, Fr), reader.readNumbers(MAX_NULLIFIERS_PER_TX), reader.readTuple(NULLIFIER_SUBTREE_ROOT_SIBLING_PATH_LENGTH, Fr), MembershipWitness.fromBuffer(reader, PUBLIC_DATA_TREE_HEIGHT));
|
|
71
71
|
}
|
|
72
72
|
static empty() {
|
|
73
73
|
return new TreeSnapshotDiffHints(makeTuple(NOTE_HASH_SUBTREE_ROOT_SIBLING_PATH_LENGTH, Fr.zero), makeTuple(MAX_NULLIFIERS_PER_TX, NullifierLeafPreimage.empty), makeTuple(MAX_NULLIFIERS_PER_TX, ()=>MembershipWitness.empty(NULLIFIER_TREE_HEIGHT)), makeTuple(MAX_NULLIFIERS_PER_TX, Fr.zero), makeTuple(MAX_NULLIFIERS_PER_TX, ()=>0), makeTuple(NULLIFIER_SUBTREE_ROOT_SIBLING_PATH_LENGTH, Fr.zero), MembershipWitness.empty(PUBLIC_DATA_TREE_HEIGHT));
|
|
@@ -20,14 +20,14 @@ export class ProtocolContracts {
|
|
|
20
20
|
}
|
|
21
21
|
static fromFields(fields) {
|
|
22
22
|
const reader = FieldReader.asReader(fields);
|
|
23
|
-
return new ProtocolContracts(reader.
|
|
23
|
+
return new ProtocolContracts(reader.readTuple(MAX_PROTOCOL_CONTRACTS, AztecAddress));
|
|
24
24
|
}
|
|
25
25
|
toFields() {
|
|
26
26
|
return serializeToFields(...ProtocolContracts.getFields(this));
|
|
27
27
|
}
|
|
28
28
|
static fromBuffer(buffer) {
|
|
29
29
|
const reader = BufferReader.asReader(buffer);
|
|
30
|
-
return new ProtocolContracts(reader.
|
|
30
|
+
return new ProtocolContracts(reader.readTuple(MAX_PROTOCOL_CONTRACTS, AztecAddress));
|
|
31
31
|
}
|
|
32
32
|
toBuffer() {
|
|
33
33
|
return serializeToBuffer(...ProtocolContracts.getFields(this));
|
package/dest/vks/vk_data.js
CHANGED
|
@@ -22,7 +22,7 @@ export class VkData {
|
|
|
22
22
|
}
|
|
23
23
|
static fromBuffer(buffer) {
|
|
24
24
|
const reader = BufferReader.asReader(buffer);
|
|
25
|
-
return new VkData(reader.readObject(VerificationKeyData), reader.readNumber(), reader.
|
|
25
|
+
return new VkData(reader.readObject(VerificationKeyData), reader.readNumber(), reader.readTuple(VK_TREE_HEIGHT, Fr));
|
|
26
26
|
}
|
|
27
27
|
toBuffer() {
|
|
28
28
|
return serializeToBuffer(this.vk, this.leafIndex, this.siblingPath);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/stdlib",
|
|
3
|
-
"version": "4.2.0-nightly.
|
|
3
|
+
"version": "4.2.0-nightly.20260320",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"inherits": [
|
|
6
6
|
"../package.common.json",
|
|
@@ -90,14 +90,14 @@
|
|
|
90
90
|
},
|
|
91
91
|
"dependencies": {
|
|
92
92
|
"@aws-sdk/client-s3": "^3.892.0",
|
|
93
|
-
"@aztec/bb.js": "4.2.0-nightly.
|
|
94
|
-
"@aztec/blob-lib": "4.2.0-nightly.
|
|
95
|
-
"@aztec/constants": "4.2.0-nightly.
|
|
96
|
-
"@aztec/ethereum": "4.2.0-nightly.
|
|
97
|
-
"@aztec/foundation": "4.2.0-nightly.
|
|
98
|
-
"@aztec/l1-artifacts": "4.2.0-nightly.
|
|
99
|
-
"@aztec/noir-noirc_abi": "4.2.0-nightly.
|
|
100
|
-
"@aztec/validator-ha-signer": "4.2.0-nightly.
|
|
93
|
+
"@aztec/bb.js": "4.2.0-nightly.20260320",
|
|
94
|
+
"@aztec/blob-lib": "4.2.0-nightly.20260320",
|
|
95
|
+
"@aztec/constants": "4.2.0-nightly.20260320",
|
|
96
|
+
"@aztec/ethereum": "4.2.0-nightly.20260320",
|
|
97
|
+
"@aztec/foundation": "4.2.0-nightly.20260320",
|
|
98
|
+
"@aztec/l1-artifacts": "4.2.0-nightly.20260320",
|
|
99
|
+
"@aztec/noir-noirc_abi": "4.2.0-nightly.20260320",
|
|
100
|
+
"@aztec/validator-ha-signer": "4.2.0-nightly.20260320",
|
|
101
101
|
"@google-cloud/storage": "^7.15.0",
|
|
102
102
|
"axios": "^1.13.5",
|
|
103
103
|
"json-stringify-deterministic": "1.0.12",
|
|
@@ -88,11 +88,11 @@ export class AvmAccumulatedData {
|
|
|
88
88
|
static fromBuffer(buffer: Buffer | BufferReader) {
|
|
89
89
|
const reader = BufferReader.asReader(buffer);
|
|
90
90
|
return new this(
|
|
91
|
-
reader.
|
|
92
|
-
reader.
|
|
93
|
-
reader.
|
|
91
|
+
reader.readTuple(MAX_NOTE_HASHES_PER_TX, Fr),
|
|
92
|
+
reader.readTuple(MAX_NULLIFIERS_PER_TX, Fr),
|
|
93
|
+
reader.readTuple(MAX_L2_TO_L1_MSGS_PER_TX, ScopedL2ToL1Message),
|
|
94
94
|
reader.readObject(FlatPublicLogs),
|
|
95
|
-
reader.
|
|
95
|
+
reader.readTuple(MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, PublicDataWrite),
|
|
96
96
|
);
|
|
97
97
|
}
|
|
98
98
|
|
|
@@ -115,9 +115,9 @@ export class AvmAccumulatedData {
|
|
|
115
115
|
return new this(
|
|
116
116
|
reader.readFieldArray(MAX_NOTE_HASHES_PER_TX),
|
|
117
117
|
reader.readFieldArray(MAX_NULLIFIERS_PER_TX),
|
|
118
|
-
reader.
|
|
118
|
+
reader.readTuple(MAX_L2_TO_L1_MSGS_PER_TX, ScopedL2ToL1Message),
|
|
119
119
|
reader.readObject(FlatPublicLogs),
|
|
120
|
-
reader.
|
|
120
|
+
reader.readTuple(MAX_TOTAL_PUBLIC_DATA_UPDATE_REQUESTS_PER_TX, PublicDataWrite),
|
|
121
121
|
);
|
|
122
122
|
}
|
|
123
123
|
|
|
@@ -143,8 +143,8 @@ export class AvmCircuitPublicInputs {
|
|
|
143
143
|
reader.readObject(AztecAddress),
|
|
144
144
|
reader.readObject(Fr),
|
|
145
145
|
reader.readObject(PublicCallRequestArrayLengths),
|
|
146
|
-
reader.
|
|
147
|
-
reader.
|
|
146
|
+
reader.readTuple(MAX_ENQUEUED_CALLS_PER_TX, PublicCallRequest),
|
|
147
|
+
reader.readTuple(MAX_ENQUEUED_CALLS_PER_TX, PublicCallRequest),
|
|
148
148
|
reader.readObject(PublicCallRequest),
|
|
149
149
|
reader.readObject(PrivateToAvmAccumulatedDataArrayLengths),
|
|
150
150
|
reader.readObject(PrivateToAvmAccumulatedDataArrayLengths),
|
|
@@ -206,8 +206,8 @@ export class AvmCircuitPublicInputs {
|
|
|
206
206
|
AztecAddress.fromFields(reader),
|
|
207
207
|
reader.readField(),
|
|
208
208
|
PublicCallRequestArrayLengths.fromFields(reader),
|
|
209
|
-
reader.
|
|
210
|
-
reader.
|
|
209
|
+
reader.readTuple(MAX_ENQUEUED_CALLS_PER_TX, PublicCallRequest),
|
|
210
|
+
reader.readTuple(MAX_ENQUEUED_CALLS_PER_TX, PublicCallRequest),
|
|
211
211
|
PublicCallRequest.fromFields(reader),
|
|
212
212
|
PrivateToAvmAccumulatedDataArrayLengths.fromFields(reader),
|
|
213
213
|
PrivateToAvmAccumulatedDataArrayLengths.fromFields(reader),
|
|
@@ -36,7 +36,7 @@ export function validateCheckpoint(
|
|
|
36
36
|
): void {
|
|
37
37
|
validateCheckpointStructure(checkpoint);
|
|
38
38
|
validateCheckpointLimits(checkpoint, opts);
|
|
39
|
-
|
|
39
|
+
validateCheckpointBlocksLimits(checkpoint, opts);
|
|
40
40
|
}
|
|
41
41
|
|
|
42
42
|
/**
|
|
@@ -125,7 +125,7 @@ export function validateCheckpointStructure(checkpoint: Checkpoint): void {
|
|
|
125
125
|
}
|
|
126
126
|
|
|
127
127
|
/** Validates checkpoint blocks gas limits */
|
|
128
|
-
function
|
|
128
|
+
function validateCheckpointBlocksLimits(
|
|
129
129
|
checkpoint: Checkpoint,
|
|
130
130
|
opts: {
|
|
131
131
|
maxL2BlockGas?: number;
|
package/src/hash/hash.ts
CHANGED
|
@@ -58,6 +58,35 @@ export function siloNullifier(contract: AztecAddress, innerNullifier: Fr): Promi
|
|
|
58
58
|
return poseidon2HashWithSeparator([contract, innerNullifier], DomainSeparator.SILOED_NULLIFIER);
|
|
59
59
|
}
|
|
60
60
|
|
|
61
|
+
/**
|
|
62
|
+
* Computes the siloed private initialization nullifier for a contract, given its address and initialization hash.
|
|
63
|
+
* @param contract - The contract address.
|
|
64
|
+
* @param initializationHash - The contract's initialization hash.
|
|
65
|
+
* @returns The siloed private initialization nullifier.
|
|
66
|
+
*/
|
|
67
|
+
export async function computeSiloedPrivateInitializationNullifier(
|
|
68
|
+
contract: AztecAddress,
|
|
69
|
+
initializationHash: Fr,
|
|
70
|
+
): Promise<Fr> {
|
|
71
|
+
const innerNullifier = await poseidon2HashWithSeparator(
|
|
72
|
+
[contract, initializationHash],
|
|
73
|
+
DomainSeparator.PRIVATE_INITIALIZATION_NULLIFIER,
|
|
74
|
+
);
|
|
75
|
+
return siloNullifier(contract, innerNullifier);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Computes the siloed public initialization nullifier for a contract. Not all contracts emit this nullifier: it is only
|
|
80
|
+
* emitted when the contract has public functions that perform initialization checks (i.e. external public functions that
|
|
81
|
+
* are not `#[noinitcheck]` or `#[only_self]`).
|
|
82
|
+
* @param contract - The contract address.
|
|
83
|
+
* @returns The siloed public initialization nullifier.
|
|
84
|
+
*/
|
|
85
|
+
export async function computeSiloedPublicInitializationNullifier(contract: AztecAddress): Promise<Fr> {
|
|
86
|
+
const innerNullifier = await poseidon2HashWithSeparator([contract], DomainSeparator.PUBLIC_INITIALIZATION_NULLIFIER);
|
|
87
|
+
return siloNullifier(contract, innerNullifier);
|
|
88
|
+
}
|
|
89
|
+
|
|
61
90
|
/**
|
|
62
91
|
* Computes the protocol nullifier, which is the hash of the initial tx request siloed with the null msg sender address.
|
|
63
92
|
* @param txRequestHash - The hash of the initial tx request.
|
|
@@ -122,6 +122,7 @@ export interface AztecNode
|
|
|
122
122
|
* @param referenceBlock - The block parameter (block number, block hash, or 'latest') at which to get the data.
|
|
123
123
|
* @param nullifier - Nullifier we try to find the low nullifier witness for.
|
|
124
124
|
* @returns The low nullifier membership witness (if found).
|
|
125
|
+
* @throws If the nullifier already exists in the tree, since non-inclusion cannot be proven.
|
|
125
126
|
* @remarks Low nullifier witness can be used to perform a nullifier non-inclusion proof by leveraging the "linked
|
|
126
127
|
* list structure" of leaves and proving that a lower nullifier is pointing to a bigger next value than the nullifier
|
|
127
128
|
* we are trying to prove non-inclusion for.
|
|
@@ -35,7 +35,8 @@ export interface IBlockFactory extends ProcessedTxHandler {
|
|
|
35
35
|
setBlockCompleted(expectedBlockHeader?: BlockHeader): Promise<L2Block>;
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
|
|
38
|
+
/** Limits passed to the public processor for tx processing within a block. */
|
|
39
|
+
export type PublicProcessorLimits = {
|
|
39
40
|
/** Maximum number of txs to process. */
|
|
40
41
|
maxTransactions?: number;
|
|
41
42
|
/** L2 and DA gas limits. */
|
|
@@ -46,7 +47,30 @@ export interface PublicProcessorLimits {
|
|
|
46
47
|
deadline?: Date;
|
|
47
48
|
/** Whether this processor is building a proposal (as opposed to re-executing one). Skipping txs due to gas or blob limits is only done during proposal building. */
|
|
48
49
|
isBuildingProposal?: boolean;
|
|
49
|
-
}
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
/** Base fields shared by both proposer and validator block builder options. */
|
|
53
|
+
type BlockBuilderOptionsBase = PublicProcessorLimits & {
|
|
54
|
+
/** Minimum number of successfully processed txs required. Block is rejected if fewer succeed. */
|
|
55
|
+
minValidTxs: number;
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
/** Proposer mode: redistribution params are required. */
|
|
59
|
+
type ProposerBlockBuilderOptions = BlockBuilderOptionsBase & {
|
|
60
|
+
isBuildingProposal: true;
|
|
61
|
+
/** Maximum number of blocks per checkpoint, derived from the timetable. */
|
|
62
|
+
maxBlocksPerCheckpoint: number;
|
|
63
|
+
/** Per-block gas budget multiplier. Budget = (remaining / remainingBlocks) * multiplier. */
|
|
64
|
+
perBlockAllocationMultiplier: number;
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
/** Validator mode: no redistribution params needed. */
|
|
68
|
+
type ValidatorBlockBuilderOptions = BlockBuilderOptionsBase & {
|
|
69
|
+
isBuildingProposal: false;
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
/** Options for building a block within a checkpoint. When proposing, redistribution params are required. */
|
|
73
|
+
export type BlockBuilderOptions = ProposerBlockBuilderOptions | ValidatorBlockBuilderOptions;
|
|
50
74
|
|
|
51
75
|
export interface PublicProcessorValidator {
|
|
52
76
|
preprocessValidator?: TxValidator<Tx>;
|
|
@@ -64,9 +88,6 @@ export type FullNodeBlockBuilderConfig = Pick<L1RollupConstants, 'l1GenesisTime'
|
|
|
64
88
|
| 'maxTxsPerCheckpoint'
|
|
65
89
|
| 'maxL2BlockGas'
|
|
66
90
|
| 'maxDABlockGas'
|
|
67
|
-
| 'redistributeCheckpointBudget'
|
|
68
|
-
| 'perBlockAllocationMultiplier'
|
|
69
|
-
| 'maxBlocksPerCheckpoint'
|
|
70
91
|
>;
|
|
71
92
|
|
|
72
93
|
export const FullNodeBlockBuilderConfigKeys: (keyof FullNodeBlockBuilderConfig)[] = [
|
|
@@ -82,9 +103,6 @@ export const FullNodeBlockBuilderConfigKeys: (keyof FullNodeBlockBuilderConfig)[
|
|
|
82
103
|
'maxL2BlockGas',
|
|
83
104
|
'maxDABlockGas',
|
|
84
105
|
'rollupManaLimit',
|
|
85
|
-
'redistributeCheckpointBudget',
|
|
86
|
-
'perBlockAllocationMultiplier',
|
|
87
|
-
'maxBlocksPerCheckpoint',
|
|
88
106
|
] as const;
|
|
89
107
|
|
|
90
108
|
/** Thrown when the number of successfully processed transactions is below the required minimum. */
|
|
@@ -115,7 +133,7 @@ export interface ICheckpointBlockBuilder {
|
|
|
115
133
|
pendingTxs: Iterable<Tx> | AsyncIterable<Tx>,
|
|
116
134
|
blockNumber: BlockNumber,
|
|
117
135
|
timestamp: bigint,
|
|
118
|
-
opts:
|
|
136
|
+
opts: BlockBuilderOptions,
|
|
119
137
|
): Promise<BuildBlockInCheckpointResult>;
|
|
120
138
|
}
|
|
121
139
|
|
|
@@ -29,8 +29,6 @@ export interface SequencerConfig {
|
|
|
29
29
|
perBlockAllocationMultiplier?: number;
|
|
30
30
|
/** Redistribute remaining checkpoint budget evenly across remaining blocks instead of allowing a single block to consume the entire remaining budget. */
|
|
31
31
|
redistributeCheckpointBudget?: boolean;
|
|
32
|
-
/** Computed max number of blocks per checkpoint from timetable. */
|
|
33
|
-
maxBlocksPerCheckpoint?: number;
|
|
34
32
|
/** Recipient of block reward. */
|
|
35
33
|
coinbase?: EthAddress;
|
|
36
34
|
/** Address to receive fees. */
|
|
@@ -99,7 +97,6 @@ export const SequencerConfigSchema = zodFor<SequencerConfig>()(
|
|
|
99
97
|
maxDABlockGas: z.number().optional(),
|
|
100
98
|
perBlockAllocationMultiplier: z.number().optional(),
|
|
101
99
|
redistributeCheckpointBudget: z.boolean().optional(),
|
|
102
|
-
maxBlocksPerCheckpoint: z.number().optional(),
|
|
103
100
|
coinbase: schemas.EthAddress.optional(),
|
|
104
101
|
feeRecipient: schemas.AztecAddress.optional(),
|
|
105
102
|
acvmWorkingDirectory: z.string().optional(),
|
|
@@ -148,9 +145,7 @@ type SequencerConfigOptionalKeys =
|
|
|
148
145
|
| 'maxTxsPerCheckpoint'
|
|
149
146
|
| 'maxL2BlockGas'
|
|
150
147
|
| 'maxDABlockGas'
|
|
151
|
-
| '
|
|
152
|
-
| 'redistributeCheckpointBudget'
|
|
153
|
-
| 'maxBlocksPerCheckpoint';
|
|
148
|
+
| 'redistributeCheckpointBudget';
|
|
154
149
|
|
|
155
150
|
export type ResolvedSequencerConfig = Prettify<
|
|
156
151
|
Required<Omit<SequencerConfig, SequencerConfigOptionalKeys>> & Pick<SequencerConfig, SequencerConfigOptionalKeys>
|
|
@@ -25,7 +25,7 @@ export class ClaimedLengthArray<T extends Serializable, N extends number> {
|
|
|
25
25
|
arrayLength: N,
|
|
26
26
|
): ClaimedLengthArray<T, N> {
|
|
27
27
|
const reader = BufferReader.asReader(buffer);
|
|
28
|
-
const array = reader.readArray(arrayLength, deserializer)
|
|
28
|
+
const array = reader.readArray(arrayLength, deserializer) as Tuple<T, N>;
|
|
29
29
|
const claimedLength = reader.readNumber();
|
|
30
30
|
return new ClaimedLengthArray(array, claimedLength);
|
|
31
31
|
}
|
|
@@ -42,7 +42,7 @@ export class ClaimedLengthArray<T extends Serializable, N extends number> {
|
|
|
42
42
|
arrayLength: N,
|
|
43
43
|
): ClaimedLengthArray<T, N> {
|
|
44
44
|
const reader = FieldReader.asReader(fields);
|
|
45
|
-
const array = reader.
|
|
45
|
+
const array = reader.readTuple(arrayLength, deserializer);
|
|
46
46
|
const claimedLength = reader.readU32();
|
|
47
47
|
return new ClaimedLengthArray(array, claimedLength);
|
|
48
48
|
}
|
|
@@ -105,8 +105,11 @@ export class PrivateKernelResetHints<
|
|
|
105
105
|
fromBuffer: buf =>
|
|
106
106
|
nullifierReadRequestHintsFromBuffer(buf, numNullifierReadRequestPending, numNullifierReadRequestSettled),
|
|
107
107
|
}),
|
|
108
|
-
reader.readArray(numKeyValidationHints, KeyValidationHint),
|
|
109
|
-
reader.readArray(numTransientDataSquashingHints, TransientDataSquashingHint)
|
|
108
|
+
reader.readArray(numKeyValidationHints, KeyValidationHint) as Tuple<KeyValidationHint, KEY_VALIDATION_HINTS_LEN>,
|
|
109
|
+
reader.readArray(numTransientDataSquashingHints, TransientDataSquashingHint) as Tuple<
|
|
110
|
+
TransientDataSquashingHint,
|
|
111
|
+
TRANSIENT_DATA_HINTS_LEN
|
|
112
|
+
>,
|
|
110
113
|
);
|
|
111
114
|
}
|
|
112
115
|
}
|
|
@@ -158,11 +158,11 @@ export class ReadRequestResetHints<
|
|
|
158
158
|
> {
|
|
159
159
|
const reader = BufferReader.asReader(buffer);
|
|
160
160
|
return new ReadRequestResetHints(
|
|
161
|
-
reader.readArray(readRequestLen, ReadRequestAction),
|
|
162
|
-
reader.readArray(numPendingReads, PendingReadHint),
|
|
161
|
+
reader.readArray(readRequestLen, ReadRequestAction) as Tuple<ReadRequestAction, READ_REQUEST_LEN>,
|
|
162
|
+
reader.readArray(numPendingReads, PendingReadHint) as Tuple<PendingReadHint, PENDING_READ_HINTS_LEN>,
|
|
163
163
|
reader.readArray(numSettledReads, {
|
|
164
164
|
fromBuffer: r => SettledReadHint.fromBuffer(r, treeHeight, leafPreimageFromBuffer),
|
|
165
|
-
}),
|
|
165
|
+
}) as Tuple<SettledReadHint<TREE_HEIGHT, LEAF_PREIMAGE>, SETTLED_READ_HINTS_LEN>,
|
|
166
166
|
);
|
|
167
167
|
}
|
|
168
168
|
|
|
@@ -19,9 +19,9 @@ export class PaddedSideEffects {
|
|
|
19
19
|
static fromBuffer(buffer: Buffer | BufferReader) {
|
|
20
20
|
const reader = BufferReader.asReader(buffer);
|
|
21
21
|
return new PaddedSideEffects(
|
|
22
|
-
reader.
|
|
23
|
-
reader.
|
|
24
|
-
reader.
|
|
22
|
+
reader.readTuple(MAX_NOTE_HASHES_PER_TX, Fr),
|
|
23
|
+
reader.readTuple(MAX_NULLIFIERS_PER_TX, Fr),
|
|
24
|
+
reader.readTuple(MAX_PRIVATE_LOGS_PER_TX, PrivateLog),
|
|
25
25
|
);
|
|
26
26
|
}
|
|
27
27
|
|