@aztec/stdlib 0.83.1-nightly.20250404 → 0.84.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dest/abi/abi.d.ts +2 -2
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +1 -1
  4. package/dest/abi/contract_artifact.d.ts.map +1 -1
  5. package/dest/abi/contract_artifact.js +21 -9
  6. package/dest/contract/artifact_hash.d.ts +5 -5
  7. package/dest/contract/artifact_hash.d.ts.map +1 -1
  8. package/dest/contract/artifact_hash.js +8 -8
  9. package/dest/contract/index.d.ts +1 -1
  10. package/dest/contract/index.d.ts.map +1 -1
  11. package/dest/contract/index.js +1 -1
  12. package/dest/contract/interfaces/contract_class.d.ts +23 -19
  13. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  14. package/dest/contract/interfaces/contract_class.js +4 -4
  15. package/dest/contract/private_function_membership_proof.d.ts +1 -1
  16. package/dest/contract/private_function_membership_proof.js +6 -6
  17. package/dest/contract/utility_function_membership_proof.d.ts +27 -0
  18. package/dest/contract/utility_function_membership_proof.d.ts.map +1 -0
  19. package/dest/contract/{unconstrained_function_membership_proof.js → utility_function_membership_proof.js} +13 -13
  20. package/dest/interfaces/pxe.d.ts +7 -8
  21. package/dest/interfaces/pxe.d.ts.map +1 -1
  22. package/dest/interfaces/pxe.js +1 -1
  23. package/dest/noir/index.d.ts +3 -1
  24. package/dest/noir/index.d.ts.map +1 -1
  25. package/dest/noir/index.js +1 -0
  26. package/dest/tests/factories.d.ts +2 -2
  27. package/dest/tests/factories.d.ts.map +1 -1
  28. package/dest/tests/factories.js +3 -3
  29. package/package.json +6 -6
  30. package/src/abi/abi.ts +2 -2
  31. package/src/abi/contract_artifact.ts +22 -8
  32. package/src/contract/artifact_hash.ts +9 -9
  33. package/src/contract/index.ts +1 -1
  34. package/src/contract/interfaces/contract_class.ts +21 -17
  35. package/src/contract/private_function_membership_proof.ts +6 -6
  36. package/src/contract/{unconstrained_function_membership_proof.ts → utility_function_membership_proof.ts} +18 -18
  37. package/src/interfaces/pxe.ts +8 -9
  38. package/src/noir/index.ts +2 -1
  39. package/src/tests/factories.ts +4 -4
  40. package/dest/contract/unconstrained_function_membership_proof.d.ts +0 -27
  41. package/dest/contract/unconstrained_function_membership_proof.d.ts.map +0 -1
@@ -208,19 +208,18 @@ export interface PXE {
208
208
  */
209
209
  getCurrentBaseFees(): Promise<GasFees>;
210
210
  /**
211
- * Simulate the execution of an unconstrained function on a deployed contract without actually modifying state.
212
- * This is useful to inspect contract state, for example fetching a variable value or calling a getter function.
213
- * The function takes function name and arguments as parameters, along with the contract address
214
- * and optionally the sender's address.
211
+ * Simulate the execution of a contract utility function.
215
212
  *
216
- * @param functionName - The name of the function to be called in the contract.
213
+ * @param functionName - The name of the utility contract function to be called.
217
214
  * @param args - The arguments to be provided to the function.
218
215
  * @param to - The address of the contract to be called.
216
+ * @param authwits - (Optional) The authentication witnesses required for the function call.
219
217
  * @param from - (Optional) The msg sender to set for the call.
220
- * @param scopes - (Optional) The accounts whose notes we can access in this call. Currently optional and will default to all.
221
- * @returns The result of the view function call, structured based on the function ABI.
218
+ * @param scopes - (Optional) The accounts whose notes we can access in this call. Currently optional and will
219
+ * default to all.
220
+ * @returns The result of the utility function call, structured based on the function ABI.
222
221
  */
223
- simulateUnconstrained(functionName: string, args: any[], to: AztecAddress, authwits?: AuthWitness[], from?: AztecAddress, scopes?: AztecAddress[]): Promise<AbiDecoded>;
222
+ simulateUtility(functionName: string, args: any[], to: AztecAddress, authwits?: AuthWitness[], from?: AztecAddress, scopes?: AztecAddress[]): Promise<AbiDecoded>;
224
223
  /**
225
224
  * Gets public logs based on the provided filter.
226
225
  * @param filter - The filter to apply to the logs.
@@ -1 +1 @@
1
- {"version":3,"file":"pxe.d.ts","sourceRoot":"","sources":["../../src/interfaces/pxe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAU,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAItD,OAAO,EAAE,KAAK,OAAO,EAAiB,KAAK,gBAAgB,EAA0B,MAAM,eAAe,CAAC;AAC3G,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,KAAK,OAAO,EAAoB,MAAM,sBAAsB,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EACL,eAAe,EACf,KAAK,mBAAmB,EAExB,KAAK,2BAA2B,EAEhC,KAAK,QAAQ,EAEb,KAAK,cAAc,EACnB,KAAK,yBAAyB,EAE/B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,KAAK,SAAS,EAAmB,MAAM,uBAAuB,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,KAAK,WAAW,EAAqB,MAAM,yBAAyB,CAAC;AAE9E,OAAO,EAAE,sBAAsB,EAAE,EAAE,EAAE,kBAAkB,EAAE,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACvH,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EACL,KAAK,4BAA4B,EAEjC,KAAK,qBAAqB,EAE3B,MAAM,wBAAwB,CAAC;AAGhC;;;;;GAKG;AACH,MAAM,WAAW,GAAG;IAClB;;;;OAIG;IACH,qBAAqB,CAAC,aAAa,EAAE,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAE3D;;;;;;;;;OASG;IACH,eAAe,CAAC,SAAS,EAAE,EAAE,EAAE,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAEzF;;;OAGG;IACH,qBAAqB,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IAEpD;;;;;;;;OAQG;IACH,cAAc,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAE7D;;;OAGG;IACH,UAAU,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAEtC;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnD;;;;OAIG;IACH,qBAAqB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjE;;;;;;;OAOG;IACH,gBAAgB,CAAC,QAAQ,EAAE;QAAE,QAAQ,EAAE,2BAA2B,CAAC;QAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAElH;;;;;;OAMG;IACH,cAAc,CAAC,eAAe,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzF;;;OAGG;IACH,YAAY,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAExC;;;;;;;;;OASG;IACH,OAAO,CAAC,SAAS,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,sBAAsB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAEjH;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,UAAU,CACR,SAAS,EAAE,kBAAkB,EAC7B,cAAc,EAAE,OAAO,EACvB,SAAS,CAAC,EAAE,YAAY,EACxB,gBAAgB,CAAC,EAAE,OAAO,EAC1B,kBAAkB,CAAC,EAAE,OAAO,EAC5B,MAAM,CAAC,EAAE,YAAY,EAAE,GACtB,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAE/B;;;;;;;;OAQG;IACH,SAAS,CACP,SAAS,EAAE,kBAAkB,EAC7B,WAAW,EAAE,OAAO,GAAG,iBAAiB,GAAG,MAAM,EACjD,SAAS,CAAC,EAAE,YAAY,GACvB,OAAO,CAAC,eAAe,CAAC,CAAC;IAE5B;;;;OAIG;IACH,MAAM,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEhC;;;;;;;OAOG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAEjD;;;;OAIG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC,CAAC;IAEpE;;;;;;;;;;OAUG;IACH,kBAAkB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;IAElE;;;;OAIG;IACH,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAErD;;;;;;;OAOG;IACH,0BAA0B,CACxB,eAAe,EAAE,YAAY,EAC7B,WAAW,EAAE,EAAE,EACf,MAAM,EAAE,EAAE,GACT,OAAO,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,wBAAwB,CAAC,CAAC,CAAC,CAAC;IAEnE;;;;;OAKG;IACH,0BAA0B,CAAC,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAE3G;;;;OAIG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAEvD;;;OAGG;IACH,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAEvC;;;;;;;;;;;;OAYG;IACH,qBAAqB,CACnB,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,GAAG,EAAE,EACX,EAAE,EAAE,YAAY,EAChB,QAAQ,CAAC,EAAE,WAAW,EAAE,EACxB,IAAI,CAAC,EAAE,YAAY,EACnB,MAAM,CAAC,EAAE,YAAY,EAAE,GACtB,OAAO,CAAC,UAAU,CAAC,CAAC;IAEvB;;;;OAIG;IACH,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAEjE;;;;OAIG;IACH,oBAAoB,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;IAE/E;;;OAGG;IACH,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAElC;;;OAGG;IACH,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAExC;;;;OAIG;IACH,WAAW,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEjC;;OAEG;IACH,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAE/B;;;;;;;;;;OAUG;IACH,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAEtE;;;;;;;;;;;;;OAaG;IACH,wBAAwB,CAAC,EAAE,EAAE,EAAE,EAAE,eAAe,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAE5F;;;;;;;;OAQG;IACH,gBAAgB,CAAC,CAAC,EAChB,eAAe,EAAE,YAAY,EAC7B,aAAa,EAAE,uBAAuB,EACtC,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,YAAY,EAAE,GACzB,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IAEhB;;;;;;OAMG;IACH,eAAe,CAAC,CAAC,EAAE,aAAa,EAAE,uBAAuB,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;CACvG;AAGD,MAAM,MAAM,uBAAuB,GAAG;IACpC,aAAa,EAAE,aAAa,CAAC;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB,CAAC;AAQF,oDAAoD;AACpD,oBAAY,SAAS;IACnB,SAAS,cAAc;IACvB,WAAW,gBAAgB;CAC5B;AAED,wDAAwD;AACxD,MAAM,WAAW,OAAO;IACtB,2DAA2D;IAC3D,UAAU,EAAE,MAAM,CAAC;IACnB,kCAAkC;IAClC,yBAAyB,EAAE,yBAAyB,CAAC;CACtD;AAED,MAAM,WAAW,gBAAgB;IAC/B,gBAAgB,CAAC,EAAE,2BAA2B,GAAG,SAAS,CAAC;IAC3D,qBAAqB,EAAE,OAAO,CAAC;IAC/B,0BAA0B,EAAE,OAAO,CAAC;CACrC;AAED,MAAM,WAAW,qBAAqB;IACpC,aAAa,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;IAChD,iCAAiC,EAAE,OAAO,CAAC;IAC3C,QAAQ,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;CACzC;AAmBD,eAAO,MAAM,SAAS,EAAE,YAAY,CAAC,GAAG,CAmFvC,CAAC"}
1
+ {"version":3,"file":"pxe.d.ts","sourceRoot":"","sources":["../../src/interfaces/pxe.ts"],"names":[],"mappings":"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"}
@@ -91,7 +91,7 @@ export const PXESchema = {
91
91
  z.undefined()
92
92
  ])),
93
93
  getCurrentBaseFees: z.function().returns(GasFees.schema),
94
- simulateUnconstrained: z.function().args(z.string(), z.array(z.any()), schemas.AztecAddress, optional(z.array(AuthWitness.schema)), optional(schemas.AztecAddress), optional(z.array(schemas.AztecAddress))).returns(AbiDecodedSchema),
94
+ simulateUtility: z.function().args(z.string(), z.array(z.any()), schemas.AztecAddress, optional(z.array(AuthWitness.schema)), optional(schemas.AztecAddress), optional(z.array(schemas.AztecAddress))).returns(AbiDecodedSchema),
95
95
  getPublicLogs: z.function().args(LogFilterSchema).returns(GetPublicLogsResponseSchema),
96
96
  getContractClassLogs: z.function().args(LogFilterSchema).returns(GetContractClassLogsResponseSchema),
97
97
  getBlockNumber: z.function().returns(z.number()),
@@ -1,6 +1,7 @@
1
1
  import type { ABIParameter, ABIParameterVisibility, AbiErrorType, AbiType, AbiValue, DebugFileMap, DebugInfo } from '../abi/abi.js';
2
2
  export declare const AZTEC_PRIVATE_ATTRIBUTE = "private";
3
3
  export declare const AZTEC_PUBLIC_ATTRIBUTE = "public";
4
+ export declare const AZTEC_UTILITY_ATTRIBUTE = "utility";
4
5
  export declare const AZTEC_INTERNAL_ATTRIBUTE = "internal";
5
6
  export declare const AZTEC_INITIALIZER_ATTRIBUTE = "initializer";
6
7
  export declare const AZTEC_VIEW_ATTRIBUTE = "view";
@@ -25,7 +26,7 @@ export interface NoirFunctionAbi {
25
26
  /**
26
27
  * The compilation result of an Aztec.nr function.
27
28
  */
28
- export interface NoirFunctionEntry {
29
+ interface NoirFunctionEntry {
29
30
  /** The name of the function. */
30
31
  name: string;
31
32
  /** Whether the function is unconstrained. */
@@ -129,4 +130,5 @@ export declare function isNoirContractCompilationArtifacts(artifact: NoirCompila
129
130
  * Check if it has Contract unique property
130
131
  */
131
132
  export declare function isNoirProgramCompilationArtifacts(artifact: NoirCompilationResult): artifact is NoirProgramCompilationArtifacts;
133
+ export {};
132
134
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/noir/index.ts"],"names":[],"mappings":"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"}
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,YAAY,CAAC;AACjD,eAAO,MAAM,sBAAsB,WAAW,CAAC;AAC/C,eAAO,MAAM,uBAAuB,YAAY,CAAC;AACjD,eAAO,MAAM,wBAAwB,aAAa,CAAC;AACnD,eAAO,MAAM,2BAA2B,gBAAgB,CAAC;AACzD,eAAO,MAAM,oBAAoB,SAAS,CAAC;AAE3C,uCAAuC;AACvC,MAAM,WAAW,eAAe;IAC9B,sCAAsC;IACtC,UAAU,EAAE,YAAY,EAAE,CAAC;IAC3B,uCAAuC;IACvC,WAAW,EAAE;QACX;;WAEG;QACH,QAAQ,EAAE,OAAO,CAAC;QAClB;;WAEG;QACH,UAAU,EAAE,sBAAsB,CAAC;KACpC,CAAC;IACF,8CAA8C;IAC9C,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;CACpD;AAED;;GAEG;AACH,UAAU,iBAAiB;IACzB,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,6CAA6C;IAC7C,gBAAgB,EAAE,OAAO,CAAC;IAC1B,6CAA6C;IAC7C,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,+BAA+B;IAC/B,GAAG,EAAE,eAAe,CAAC;IACrB,8CAA8C;IAC9C,QAAQ,EAAE,MAAM,CAAC;IACjB,uBAAuB;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4BAA4B;IAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,4DAA4D;IAC5D,aAAa,EAAE,MAAM,CAAC;IACtB,8DAA8D;IAC9D,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,qCAAqC;IACrC,SAAS,EAAE,iBAAiB,EAAE,CAAC;IAC/B,iCAAiC;IACjC,OAAO,EAAE;QACP,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QACnC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;KACrC,CAAC;IACF,kEAAkE;IAClE,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,+BAA+B;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,GAAG,EAAE,eAAe,CAAC;IACrB,6CAA6C;IAC7C,QAAQ,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,aAAa,EAAE,MAAM,CAAC;IACtB,kEAAkE;IAClE,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED,MAAM,WAAW,2BAA4B,SAAQ,mBAAmB;IACtE,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,aAAa,EAAE,SAAS,EAAE,CAAC;IAC3B;;OAEG;IACH,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,gCAAgC;IAC/C;;OAEG;IACH,QAAQ,EAAE,oBAAoB,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,+BAA+B;IAC9C;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,OAAO,EAAE,mBAAmB,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,gCAAgC,GAAG,+BAA+B,CAAC;AAEvG;;GAEG;AACH,wBAAgB,kCAAkC,CAChD,QAAQ,EAAE,qBAAqB,GAC9B,QAAQ,IAAI,gCAAgC,CAE9C;AAED;;GAEG;AACH,wBAAgB,iCAAiC,CAC/C,QAAQ,EAAE,qBAAqB,GAC9B,QAAQ,IAAI,+BAA+B,CAE7C"}
@@ -1,5 +1,6 @@
1
1
  export const AZTEC_PRIVATE_ATTRIBUTE = 'private';
2
2
  export const AZTEC_PUBLIC_ATTRIBUTE = 'public';
3
+ export const AZTEC_UTILITY_ATTRIBUTE = 'utility';
3
4
  export const AZTEC_INTERNAL_ATTRIBUTE = 'internal';
4
5
  export const AZTEC_INITIALIZER_ATTRIBUTE = 'initializer';
5
6
  export const AZTEC_VIEW_ATTRIBUTE = 'view';
@@ -13,7 +13,7 @@ import { AvmBytecodeCommitmentHint, AvmCircuitInputs, AvmContractClassHint, AvmC
13
13
  import { PublicDataRead } from '../avm/public_data_read.js';
14
14
  import { PublicDataWrite } from '../avm/public_data_write.js';
15
15
  import { AztecAddress } from '../aztec-address/index.js';
16
- import { type ContractClassPublic, type ContractInstanceWithAddress, type ExecutablePrivateFunctionWithMembershipProof, type UnconstrainedFunctionWithMembershipProof } from '../contract/index.js';
16
+ import { type ContractClassPublic, type ContractInstanceWithAddress, type ExecutablePrivateFunctionWithMembershipProof, type UtilityFunctionWithMembershipProof } from '../contract/index.js';
17
17
  import { Gas, GasFees, GasSettings } from '../gas/index.js';
18
18
  import type { MerkleTreeReadOperations } from '../interfaces/merkle_tree_operations.js';
19
19
  import { RollupValidationRequests } from '../kernel/hints/rollup_validation_requests.js';
@@ -343,7 +343,7 @@ export declare function makePrivateBaseStateDiffHints(seed?: number): PrivateBas
343
343
  export declare function makePrivateBaseRollupInputs(seed?: number): PrivateBaseRollupInputs;
344
344
  export declare function makePublicBaseRollupInputs(seed?: number): PublicBaseRollupInputs;
345
345
  export declare function makeExecutablePrivateFunctionWithMembershipProof(seed?: number): ExecutablePrivateFunctionWithMembershipProof;
346
- export declare function makeUnconstrainedFunctionWithMembershipProof(seed?: number): UnconstrainedFunctionWithMembershipProof;
346
+ export declare function makeUtilityFunctionWithMembershipProof(seed?: number): UtilityFunctionWithMembershipProof;
347
347
  export declare function makeContractClassPublic(seed?: number, publicBytecode?: Buffer): Promise<ContractClassPublic>;
348
348
  export declare function makeArray<T>(length: number, fn: (i: number) => T, offset?: number): T[];
349
349
  export declare function makeArrayAsync<T>(length: number, fn: (i: number) => Promise<T>, offset?: number): Promise<Awaited<T>[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"factories.d.ts","sourceRoot":"","sources":["../../src/tests/factories.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"factories.d.ts","sourceRoot":"","sources":["../../src/tests/factories.ts"],"names":[],"mappings":"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"}
@@ -682,11 +682,11 @@ export function makeExecutablePrivateFunctionWithMembershipProof(seed = 0) {
682
682
  privateFunctionTreeLeafIndex: seed + 3,
683
683
  artifactMetadataHash: fr(seed + 4),
684
684
  functionMetadataHash: fr(seed + 5),
685
- unconstrainedFunctionsArtifactTreeRoot: fr(seed + 6),
685
+ utilityFunctionsTreeRoot: fr(seed + 6),
686
686
  vkHash: fr(seed + 7)
687
687
  };
688
688
  }
689
- export function makeUnconstrainedFunctionWithMembershipProof(seed = 0) {
689
+ export function makeUtilityFunctionWithMembershipProof(seed = 0) {
690
690
  return {
691
691
  selector: makeSelector(seed),
692
692
  bytecode: makeBytes(100, seed + 1),
@@ -713,7 +713,7 @@ export async function makeContractClassPublic(seed = 0, publicBytecode) {
713
713
  packedBytecode,
714
714
  privateFunctionsRoot,
715
715
  privateFunctions: [],
716
- unconstrainedFunctions: [],
716
+ utilityFunctions: [],
717
717
  version: 1
718
718
  };
719
719
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/stdlib",
3
- "version": "0.83.1-nightly.20250404",
3
+ "version": "0.84.0",
4
4
  "type": "module",
5
5
  "inherits": [
6
6
  "../package.common.json",
@@ -67,11 +67,11 @@
67
67
  "test": "NODE_NO_WARNINGS=1 node --experimental-vm-modules ../node_modules/.bin/jest --passWithNoTests --maxWorkers=${JEST_MAX_WORKERS:-8}"
68
68
  },
69
69
  "dependencies": {
70
- "@aztec/bb.js": "0.83.1-nightly.20250404",
71
- "@aztec/blob-lib": "0.83.1-nightly.20250404",
72
- "@aztec/constants": "0.83.1-nightly.20250404",
73
- "@aztec/ethereum": "0.83.1-nightly.20250404",
74
- "@aztec/foundation": "0.83.1-nightly.20250404",
70
+ "@aztec/bb.js": "0.84.0",
71
+ "@aztec/blob-lib": "0.84.0",
72
+ "@aztec/constants": "0.84.0",
73
+ "@aztec/ethereum": "0.84.0",
74
+ "@aztec/foundation": "0.84.0",
75
75
  "@google-cloud/storage": "^7.15.0",
76
76
  "lodash.chunk": "^4.2.0",
77
77
  "lodash.isequal": "^4.5.0",
package/src/abi/abi.ts CHANGED
@@ -165,7 +165,7 @@ const AbiErrorTypeSchema = z.union([
165
165
  export enum FunctionType {
166
166
  PRIVATE = 'private',
167
167
  PUBLIC = 'public',
168
- UNCONSTRAINED = 'unconstrained',
168
+ UTILITY = 'utility',
169
169
  }
170
170
 
171
171
  /** The abi entry of a function. */
@@ -339,7 +339,7 @@ export interface ContractArtifact {
339
339
  /** The name of the contract. */
340
340
  name: string;
341
341
 
342
- /** The functions of the contract. Includes private and unconstrained functions, plus the public dispatch function. */
342
+ /** The functions of the contract. Includes private and utility functions, plus the public dispatch function. */
343
343
  functions: FunctionArtifact[];
344
344
 
345
345
  /** The public functions of the contract, excluding dispatch. */
@@ -21,6 +21,7 @@ import {
21
21
  AZTEC_INTERNAL_ATTRIBUTE,
22
22
  AZTEC_PRIVATE_ATTRIBUTE,
23
23
  AZTEC_PUBLIC_ATTRIBUTE,
24
+ AZTEC_UTILITY_ATTRIBUTE,
24
25
  AZTEC_VIEW_ATTRIBUTE,
25
26
  type NoirCompiledContract,
26
27
  } from '../noir/index.js';
@@ -155,14 +156,14 @@ function generateFunctionAbi(fn: NoirCompiledContractFunction, contract: NoirCom
155
156
  const isInternal = fn.custom_attributes.includes(AZTEC_INTERNAL_ATTRIBUTE);
156
157
  const isStatic = fn.custom_attributes.includes(AZTEC_VIEW_ATTRIBUTE);
157
158
 
158
- // If the function is not unconstrained, the first item is inputs or CallContext which we should omit
159
+ // If the function is not a utility function, the first item is inputs or CallContext which we should omit
159
160
  let parameters = fn.abi.parameters.map(generateFunctionParameter);
160
161
  if (hasKernelFunctionInputs(parameters)) {
161
162
  parameters = parameters.slice(1);
162
163
  }
163
164
 
164
165
  let returnTypes: AbiType[] = [];
165
- if (functionType === FunctionType.UNCONSTRAINED) {
166
+ if (functionType === FunctionType.UTILITY) {
166
167
  returnTypes = fn.abi.return_type ? [fn.abi.return_type.abi_type] : returnTypes;
167
168
  } else {
168
169
  const pathToFind = `${contract.name}::${fn.name}_abi`;
@@ -215,18 +216,31 @@ function generateFunctionArtifact(
215
216
  }
216
217
 
217
218
  function getFunctionType(fn: NoirCompiledContractFunction): FunctionType {
218
- if (fn.custom_attributes.includes(AZTEC_PRIVATE_ATTRIBUTE)) {
219
+ if (fn.custom_attributes.some(attr => attr.endsWith(AZTEC_PRIVATE_ATTRIBUTE))) {
219
220
  return FunctionType.PRIVATE;
220
- } else if (fn.custom_attributes.includes(AZTEC_PUBLIC_ATTRIBUTE)) {
221
+ } else if (fn.custom_attributes.some(attr => attr.endsWith(AZTEC_PUBLIC_ATTRIBUTE))) {
221
222
  return FunctionType.PUBLIC;
222
- } else if (fn.is_unconstrained) {
223
- return FunctionType.UNCONSTRAINED;
223
+ } else if (fn.custom_attributes.some(attr => attr.endsWith(AZTEC_UTILITY_ATTRIBUTE))) {
224
+ return FunctionType.UTILITY;
224
225
  } else {
225
- // Default to a private function (see simple_macro_example_expanded for an example of this behavior)
226
- return FunctionType.PRIVATE;
226
+ throw new Error(`Invalid function type for a noir contract function ${fn.name}`);
227
227
  }
228
228
  }
229
229
 
230
+ // TODO(https://github.com/noir-lang/noir/issues/7912): Replace the above function with this one once the linked issue
231
+ // is fixed.
232
+ // function getFunctionType(fn: NoirCompiledContractFunction): FunctionType {
233
+ // if (fn.custom_attributes.includes(AZTEC_PRIVATE_ATTRIBUTE)) {
234
+ // return FunctionType.PRIVATE;
235
+ // } else if (fn.custom_attributes.includes(AZTEC_PUBLIC_ATTRIBUTE)) {
236
+ // return FunctionType.PUBLIC;
237
+ // } else if (fn.custom_attributes.includes(AZTEC_UTILITY_ATTRIBUTE)) {
238
+ // return FunctionType.UTILITY;
239
+ // } else {
240
+ // throw new Error(`Invalid function type for a noir contract function ${fn.name}`);
241
+ // }
242
+ // }
243
+
230
244
  /**
231
245
  * Returns true if the first parameter is kernel function inputs.
232
246
  *
@@ -21,26 +21,26 @@ const sha256Fr = reduceFn(sha256, Fr);
21
21
  * sha256(fn.selector, fn.metadata_hash, sha256(fn.bytecode))
22
22
  * private_functions_artifact_tree_root = merkleize(private_functions_artifact_leaves)
23
23
  *
24
- * unconstrained_functions_artifact_leaves = artifact.unconstrained_functions.map fn =>
24
+ * utility_functions_artifact_leaves = artifact.utility_functions.map fn =>
25
25
  * sha256(fn.selector, fn.metadata_hash, sha256(fn.bytecode))
26
- * unconstrained_functions_artifact_tree_root = merkleize(unconstrained_functions_artifact_leaves)
26
+ * utility_functions_artifact_tree_root = merkleize(utility_functions_artifact_leaves)
27
27
  *
28
28
  * version = 1
29
29
  * artifact_hash = sha256(
30
30
  * version,
31
31
  * private_functions_artifact_tree_root,
32
- * unconstrained_functions_artifact_tree_root,
32
+ * utility_functions_artifact_tree_root,
33
33
  * artifact_metadata,
34
34
  * )
35
35
  * ```
36
36
  * @param artifact - Artifact to calculate the hash for.
37
37
  */
38
38
  export async function computeArtifactHash(
39
- artifact: ContractArtifact | { privateFunctionRoot: Fr; unconstrainedFunctionRoot: Fr; metadataHash: Fr },
39
+ artifact: ContractArtifact | { privateFunctionRoot: Fr; utilityFunctionRoot: Fr; metadataHash: Fr },
40
40
  ): Promise<Fr> {
41
- if ('privateFunctionRoot' in artifact && 'unconstrainedFunctionRoot' in artifact && 'metadataHash' in artifact) {
42
- const { privateFunctionRoot, unconstrainedFunctionRoot, metadataHash } = artifact;
43
- const preimage = [privateFunctionRoot, unconstrainedFunctionRoot, metadataHash].map(x => x.toBuffer());
41
+ if ('privateFunctionRoot' in artifact && 'utilityFunctionRoot' in artifact && 'metadataHash' in artifact) {
42
+ const { privateFunctionRoot, utilityFunctionRoot, metadataHash } = artifact;
43
+ const preimage = [privateFunctionRoot, utilityFunctionRoot, metadataHash].map(x => x.toBuffer());
44
44
  return sha256Fr(Buffer.concat([numToUInt8(VERSION), ...preimage]));
45
45
  }
46
46
 
@@ -52,9 +52,9 @@ export async function computeArtifactHash(
52
52
 
53
53
  export async function computeArtifactHashPreimage(artifact: ContractArtifact) {
54
54
  const privateFunctionRoot = await computeArtifactFunctionTreeRoot(artifact, FunctionType.PRIVATE);
55
- const unconstrainedFunctionRoot = await computeArtifactFunctionTreeRoot(artifact, FunctionType.UNCONSTRAINED);
55
+ const utilityFunctionRoot = await computeArtifactFunctionTreeRoot(artifact, FunctionType.UTILITY);
56
56
  const metadataHash = computeArtifactMetadataHash(artifact);
57
- return { privateFunctionRoot, unconstrainedFunctionRoot, metadataHash };
57
+ return { privateFunctionRoot, utilityFunctionRoot, metadataHash };
58
58
  }
59
59
 
60
60
  export function computeArtifactMetadataHash(artifact: ContractArtifact) {
@@ -6,7 +6,7 @@ export * from './contract_instance.js';
6
6
  export * from './contract_instance_update.js';
7
7
  export * from './private_function.js';
8
8
  export * from './private_function_membership_proof.js';
9
- export * from './unconstrained_function_membership_proof.js';
9
+ export * from './utility_function_membership_proof.js';
10
10
  export * from './interfaces/index.js';
11
11
  export * from './contract_function_dao.js';
12
12
  export * from './partial_address.js';
@@ -15,7 +15,11 @@ const VERSION = 1 as const;
15
15
  export interface ContractClass {
16
16
  /** Version of the contract class. */
17
17
  version: typeof VERSION;
18
- /** Hash of the contract artifact. The specification of this hash is not enforced by the protocol. Should include commitments to unconstrained code and compilation metadata. Intended to be used by clients to verify that an off-chain fetched artifact matches a registered class. */
18
+ /**
19
+ * Hash of the contract artifact. The specification of this hash is not enforced by the protocol. Should include
20
+ * commitments to code of utility functions and compilation metadata. Intended to be used by clients to verify that
21
+ * an off-chain fetched artifact matches a registered class.
22
+ */
19
23
  artifactHash: Fr;
20
24
  /** List of individual private functions, constructors included. */
21
25
  privateFunctions: PrivateFunction[];
@@ -46,25 +50,25 @@ const ExecutablePrivateFunctionSchema = PrivateFunctionSchema.and(
46
50
  z.object({ bytecode: schemas.Buffer }),
47
51
  ) satisfies ZodFor<ExecutablePrivateFunction>;
48
52
 
49
- /** Unconstrained function definition. */
50
- export interface UnconstrainedFunction {
53
+ /** Utility function definition. */
54
+ export interface UtilityFunction {
51
55
  /** Selector of the function. Calculated as the hash of the method name and parameters. The specification of this is not enforced by the protocol. */
52
56
  selector: FunctionSelector;
53
57
  /** Brillig. */
54
58
  bytecode: Buffer;
55
59
  }
56
60
 
57
- const UnconstrainedFunctionSchema = z.object({
61
+ const UtilityFunctionSchema = z.object({
58
62
  /** lala */
59
63
  selector: FunctionSelector.schema,
60
64
  bytecode: schemas.Buffer,
61
- }) satisfies ZodFor<UnconstrainedFunction>;
65
+ }) satisfies ZodFor<UtilityFunction>;
62
66
 
63
67
  /** Sibling paths and sibling commitments for proving membership of a private function within a contract class. */
64
68
  export type PrivateFunctionMembershipProof = {
65
69
  artifactMetadataHash: Fr;
66
70
  functionMetadataHash: Fr;
67
- unconstrainedFunctionsArtifactTreeRoot: Fr;
71
+ utilityFunctionsTreeRoot: Fr;
68
72
  privateFunctionTreeSiblingPath: Fr[];
69
73
  privateFunctionTreeLeafIndex: number;
70
74
  artifactTreeSiblingPath: Fr[];
@@ -74,18 +78,18 @@ export type PrivateFunctionMembershipProof = {
74
78
  const PrivateFunctionMembershipProofSchema = z.object({
75
79
  artifactMetadataHash: schemas.Fr,
76
80
  functionMetadataHash: schemas.Fr,
77
- unconstrainedFunctionsArtifactTreeRoot: schemas.Fr,
81
+ utilityFunctionsTreeRoot: schemas.Fr,
78
82
  privateFunctionTreeSiblingPath: z.array(schemas.Fr),
79
83
  privateFunctionTreeLeafIndex: schemas.Integer,
80
84
  artifactTreeSiblingPath: z.array(schemas.Fr),
81
85
  artifactTreeLeafIndex: schemas.Integer,
82
86
  }) satisfies ZodFor<PrivateFunctionMembershipProof>;
83
87
 
84
- /** A private function with a memebership proof. */
88
+ /** A private function with a membership proof. */
85
89
  export type ExecutablePrivateFunctionWithMembershipProof = ExecutablePrivateFunction & PrivateFunctionMembershipProof;
86
90
 
87
- /** Sibling paths and commitments for proving membership of an unconstrained function within a contract class. */
88
- export type UnconstrainedFunctionMembershipProof = {
91
+ /** Sibling paths and commitments for proving membership of a utility function within a contract class. */
92
+ export type UtilityFunctionMembershipProof = {
89
93
  artifactMetadataHash: Fr;
90
94
  functionMetadataHash: Fr;
91
95
  privateFunctionsArtifactTreeRoot: Fr;
@@ -93,16 +97,16 @@ export type UnconstrainedFunctionMembershipProof = {
93
97
  artifactTreeLeafIndex: number;
94
98
  };
95
99
 
96
- const UnconstrainedFunctionMembershipProofSchema = z.object({
100
+ const UtilityFunctionMembershipProofSchema = z.object({
97
101
  artifactMetadataHash: schemas.Fr,
98
102
  functionMetadataHash: schemas.Fr,
99
103
  privateFunctionsArtifactTreeRoot: schemas.Fr,
100
104
  artifactTreeSiblingPath: z.array(schemas.Fr),
101
105
  artifactTreeLeafIndex: schemas.Integer,
102
- }) satisfies ZodFor<UnconstrainedFunctionMembershipProof>;
106
+ }) satisfies ZodFor<UtilityFunctionMembershipProof>;
103
107
 
104
- /** An unconstrained function with a membership proof. */
105
- export type UnconstrainedFunctionWithMembershipProof = UnconstrainedFunction & UnconstrainedFunctionMembershipProof;
108
+ /** A utility function with a membership proof. */
109
+ export type UtilityFunctionWithMembershipProof = UtilityFunction & UtilityFunctionMembershipProof;
106
110
 
107
111
  export const ContractClassSchema = z.object({
108
112
  version: z.literal(VERSION),
@@ -128,10 +132,10 @@ export const ContractClassWithIdSchema = ContractClassSchema.extend({
128
132
  id: schemas.Fr,
129
133
  }) satisfies ZodFor<ContractClassWithId>;
130
134
 
131
- /** A contract class with public bytecode information, and optional private and unconstrained. */
135
+ /** A contract class with public bytecode information, and optional private and utility functions. */
132
136
  export type ContractClassPublic = {
133
137
  privateFunctions: ExecutablePrivateFunctionWithMembershipProof[];
134
- unconstrainedFunctions: UnconstrainedFunctionWithMembershipProof[];
138
+ utilityFunctions: UtilityFunctionWithMembershipProof[];
135
139
  } & Pick<ContractClassCommitments, 'id' | 'privateFunctionsRoot'> &
136
140
  Omit<ContractClass, 'privateFunctions'>;
137
141
 
@@ -143,7 +147,7 @@ export const ContractClassPublicSchema = z
143
147
  id: schemas.Fr,
144
148
  privateFunctionsRoot: schemas.Fr,
145
149
  privateFunctions: z.array(ExecutablePrivateFunctionSchema.and(PrivateFunctionMembershipProofSchema)),
146
- unconstrainedFunctions: z.array(UnconstrainedFunctionSchema.and(UnconstrainedFunctionMembershipProofSchema)),
150
+ utilityFunctions: z.array(UtilityFunctionSchema.and(UtilityFunctionMembershipProofSchema)),
147
151
  })
148
152
  .and(ContractClassSchema.omit({ privateFunctions: true })) satisfies ZodFor<ContractClassPublic>;
149
153
 
@@ -51,7 +51,7 @@ export async function createPrivateFunctionMembershipProof(
51
51
  }
52
52
 
53
53
  // Compute preimage for the artifact hash
54
- const { unconstrainedFunctionRoot: unconstrainedFunctionsArtifactTreeRoot, metadataHash: artifactMetadataHash } =
54
+ const { utilityFunctionRoot: utilityFunctionsTreeRoot, metadataHash: artifactMetadataHash } =
55
55
  await computeArtifactHashPreimage(artifact);
56
56
 
57
57
  // We need two sibling paths because private function information is split across two trees:
@@ -74,7 +74,7 @@ export async function createPrivateFunctionMembershipProof(
74
74
  functionLeaf: '0x' + functionLeaf.toString('hex'),
75
75
  artifactMetadataHash,
76
76
  privateFunctionsTreeRoot: '0x' + functionsTree.root.toString('hex'),
77
- unconstrainedFunctionsArtifactTreeRoot,
77
+ utilityFunctionsTreeRoot,
78
78
  artifactFunctionTreeSiblingPath: artifactTreeSiblingPath.map(fr => fr.toString()).join(','),
79
79
  privateFunctionTreeSiblingPath: functionsTreeSiblingPath.map(fr => fr.toString()).join(','),
80
80
  });
@@ -84,7 +84,7 @@ export async function createPrivateFunctionMembershipProof(
84
84
  artifactTreeLeafIndex,
85
85
  artifactMetadataHash,
86
86
  functionMetadataHash,
87
- unconstrainedFunctionsArtifactTreeRoot,
87
+ utilityFunctionsTreeRoot,
88
88
  privateFunctionTreeSiblingPath: functionsTreeSiblingPath,
89
89
  privateFunctionTreeLeafIndex: functionsTreeLeafIndex,
90
90
  };
@@ -106,7 +106,7 @@ export async function createPrivateFunctionMembershipProof(
106
106
  * // Compute artifact leaf and assert it belongs to the artifact
107
107
  * artifact_function_leaf = sha256(selector, metadata_hash, sha256(bytecode))
108
108
  * computed_artifact_private_function_tree_root = compute_root(artifact_function_leaf, artifact_function_tree_sibling_path)
109
- * computed_artifact_hash = sha256(computed_artifact_private_function_tree_root, unconstrained_functions_artifact_tree_root, artifact_metadata_hash)
109
+ * computed_artifact_hash = sha256(computed_artifact_private_function_tree_root, utility_functions_artifact_tree_root, artifact_metadata_hash)
110
110
  * assert computed_artifact_hash == contract_class.artifact_hash
111
111
  * ```
112
112
  * @param fn - Function to check membership proof for.
@@ -147,7 +147,7 @@ export async function isValidPrivateFunctionMembershipProof(
147
147
  const computedArtifactPrivateFunctionTreeRoot = Fr.fromBuffer(computedArtifactPrivateFunctionTreeRootBuffer);
148
148
  const computedArtifactHash = await computeArtifactHash({
149
149
  privateFunctionRoot: computedArtifactPrivateFunctionTreeRoot,
150
- unconstrainedFunctionRoot: fn.unconstrainedFunctionsArtifactTreeRoot,
150
+ utilityFunctionRoot: fn.utilityFunctionsTreeRoot,
151
151
  metadataHash: fn.artifactMetadataHash,
152
152
  });
153
153
  if (!contractClass.artifactHash.equals(computedArtifactHash)) {
@@ -156,7 +156,7 @@ export async function isValidPrivateFunctionMembershipProof(
156
156
  computedArtifactHash,
157
157
  computedFunctionArtifactHash: functionArtifactHash,
158
158
  computedArtifactPrivateFunctionTreeRoot,
159
- unconstrainedFunctionRoot: fn.unconstrainedFunctionsArtifactTreeRoot,
159
+ utilityFunctionRoot: fn.utilityFunctionsTreeRoot,
160
160
  metadataHash: fn.artifactMetadataHash,
161
161
  artifactFunctionTreeSiblingPath: fn.artifactTreeSiblingPath.map(fr => fr.toString()).join(','),
162
162
  });
@@ -13,29 +13,29 @@ import {
13
13
  } from './artifact_hash.js';
14
14
  import type {
15
15
  ContractClassPublic,
16
- UnconstrainedFunctionMembershipProof,
17
- UnconstrainedFunctionWithMembershipProof,
16
+ UtilityFunctionMembershipProof,
17
+ UtilityFunctionWithMembershipProof,
18
18
  } from './interfaces/index.js';
19
19
 
20
20
  /**
21
- * Creates a membership proof for an unconstrained function in a contract class, to be verified via `isValidUnconstrainedFunctionMembershipProof`.
21
+ * Creates a membership proof for a utility function in a contract class, to be verified via `isValidUtilityFunctionMembershipProof`.
22
22
  * @param selector - Selector of the function to create the proof for.
23
23
  * @param artifact - Artifact of the contract class where the function is defined.
24
24
  */
25
- export async function createUnconstrainedFunctionMembershipProof(
25
+ export async function createUtilityFunctionMembershipProof(
26
26
  selector: FunctionSelector,
27
27
  artifact: ContractArtifact,
28
- ): Promise<UnconstrainedFunctionMembershipProof> {
28
+ ): Promise<UtilityFunctionMembershipProof> {
29
29
  const log = createLogger('circuits:function_membership_proof');
30
30
 
31
31
  // Locate function artifact
32
- const uncontrainedFunctions = artifact.functions.filter(fn => fn.functionType === FunctionType.UNCONSTRAINED);
33
- const unconstrainedFunctionsAndSelectors = await Promise.all(
34
- uncontrainedFunctions.map(async fn => ({ fn, selector: await FunctionSelector.fromNameAndParameters(fn) })),
32
+ const utilityFunctions = artifact.functions.filter(fn => fn.functionType === FunctionType.UTILITY);
33
+ const utilityFunctionsAndSelectors = await Promise.all(
34
+ utilityFunctions.map(async fn => ({ fn, selector: await FunctionSelector.fromNameAndParameters(fn) })),
35
35
  );
36
- const fn = unconstrainedFunctionsAndSelectors.find(fnAndSelector => selector.equals(fnAndSelector.selector))?.fn;
36
+ const fn = utilityFunctionsAndSelectors.find(fnAndSelector => selector.equals(fnAndSelector.selector))?.fn;
37
37
  if (!fn) {
38
- throw new Error(`Unconstrained function with selector ${selector.toString()} not found`);
38
+ throw new Error(`Utility function with selector ${selector.toString()} not found`);
39
39
  }
40
40
  // Compute preimage for the artifact hash
41
41
  const { privateFunctionRoot: privateFunctionsArtifactTreeRoot, metadataHash: artifactMetadataHash } =
@@ -44,11 +44,11 @@ export async function createUnconstrainedFunctionMembershipProof(
44
44
  // Compute the sibling path for the "artifact tree"
45
45
  const functionMetadataHash = computeFunctionMetadataHash(fn);
46
46
  const functionArtifactHash = await computeFunctionArtifactHash({ ...fn, functionMetadataHash });
47
- const artifactTree = (await computeArtifactFunctionTree(artifact, FunctionType.UNCONSTRAINED))!;
47
+ const artifactTree = (await computeArtifactFunctionTree(artifact, FunctionType.UTILITY))!;
48
48
  const artifactTreeLeafIndex = artifactTree.getIndex(functionArtifactHash.toBuffer());
49
49
  const artifactTreeSiblingPath = artifactTree.getSiblingPath(artifactTreeLeafIndex).map(Fr.fromBuffer);
50
50
 
51
- log.debug(`Computed proof for unconstrained function with selector ${selector.toString()}`, {
51
+ log.debug(`Computed proof for utility function with selector ${selector.toString()}`, {
52
52
  functionArtifactHash,
53
53
  functionMetadataHash,
54
54
  artifactMetadataHash,
@@ -66,7 +66,7 @@ export async function createUnconstrainedFunctionMembershipProof(
66
66
  }
67
67
 
68
68
  /**
69
- * Verifies that an unconstrained function with a membership proof as emitted by the ClassRegisterer contract is valid,
69
+ * Verifies that a utility function with a membership proof as emitted by the ClassRegisterer contract is valid,
70
70
  * as defined in the protocol specs at contract-deployment/classes:
71
71
  *
72
72
  * ```
@@ -75,15 +75,15 @@ export async function createUnconstrainedFunctionMembershipProof(
75
75
  *
76
76
  * // Compute artifact leaf and assert it belongs to the artifact
77
77
  * artifact_function_leaf = sha256(selector, metadata_hash, sha256(bytecode))
78
- * computed_artifact_unconstrained_function_tree_root = compute_root(artifact_function_leaf, artifact_function_tree_sibling_path, artifact_function_tree_leaf_index)
79
- * computed_artifact_hash = sha256(private_functions_artifact_tree_root, computed_artifact_unconstrained_function_tree_root, artifact_metadata_hash)
78
+ * computed_artifact_utility_function_tree_root = compute_root(artifact_function_leaf, artifact_function_tree_sibling_path, artifact_function_tree_leaf_index)
79
+ * computed_artifact_hash = sha256(private_functions_artifact_tree_root, computed_artifact_utility_function_tree_root, artifact_metadata_hash)
80
80
  * assert computed_artifact_hash == contract_class.artifact_hash
81
81
  * ```
82
82
  * @param fn - Function to check membership proof for.
83
83
  * @param contractClass - In which contract class the function is expected to be.
84
84
  */
85
- export async function isValidUnconstrainedFunctionMembershipProof(
86
- fn: UnconstrainedFunctionWithMembershipProof,
85
+ export async function isValidUtilityFunctionMembershipProof(
86
+ fn: UtilityFunctionWithMembershipProof,
87
87
  contractClass: Pick<ContractClassPublic, 'artifactHash'>,
88
88
  ) {
89
89
  const log = createLogger('circuits:function_membership_proof');
@@ -98,7 +98,7 @@ export async function isValidUnconstrainedFunctionMembershipProof(
98
98
  const computedArtifactFunctionTreeRoot = Fr.fromBuffer(computedArtifactFunctionTreeRootBuffer);
99
99
  const computedArtifactHash = await computeArtifactHash({
100
100
  privateFunctionRoot: fn.privateFunctionsArtifactTreeRoot,
101
- unconstrainedFunctionRoot: computedArtifactFunctionTreeRoot,
101
+ utilityFunctionRoot: computedArtifactFunctionTreeRoot,
102
102
  metadataHash: fn.artifactMetadataHash,
103
103
  });
104
104
  if (!contractClass.artifactHash.equals(computedArtifactHash)) {