@aztec/stdlib 4.0.0-rc.7 → 4.0.0-rc.9

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 (45) hide show
  1. package/dest/avm/revert_code.d.ts +16 -1
  2. package/dest/avm/revert_code.d.ts.map +1 -1
  3. package/dest/avm/revert_code.js +15 -5
  4. package/dest/logs/debug_log_store.d.ts +30 -0
  5. package/dest/logs/debug_log_store.d.ts.map +1 -0
  6. package/dest/logs/debug_log_store.js +30 -0
  7. package/dest/logs/extended_directional_app_tagging_secret.d.ts +47 -0
  8. package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +1 -0
  9. package/dest/logs/{directional_app_tagging_secret.js → extended_directional_app_tagging_secret.js} +23 -15
  10. package/dest/logs/index.d.ts +3 -2
  11. package/dest/logs/index.d.ts.map +1 -1
  12. package/dest/logs/index.js +2 -1
  13. package/dest/logs/pre_tag.d.ts +16 -11
  14. package/dest/logs/pre_tag.d.ts.map +1 -1
  15. package/dest/logs/pre_tag.js +2 -2
  16. package/dest/logs/siloed_tag.d.ts +5 -3
  17. package/dest/logs/siloed_tag.d.ts.map +1 -1
  18. package/dest/logs/siloed_tag.js +6 -1
  19. package/dest/logs/tag.js +1 -1
  20. package/dest/tests/factories.d.ts +3 -1
  21. package/dest/tests/factories.d.ts.map +1 -1
  22. package/dest/tests/factories.js +8 -0
  23. package/dest/tx/profiling.d.ts +4 -4
  24. package/dest/tx/profiling.d.ts.map +1 -1
  25. package/dest/tx/profiling.js +3 -3
  26. package/dest/tx/public_simulation_output.d.ts +4 -2
  27. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  28. package/dest/tx/public_simulation_output.js +7 -3
  29. package/dest/tx/tx_receipt.d.ts +16 -2
  30. package/dest/tx/tx_receipt.d.ts.map +1 -1
  31. package/dest/tx/tx_receipt.js +11 -3
  32. package/package.json +9 -9
  33. package/src/avm/revert_code.ts +15 -0
  34. package/src/logs/debug_log_store.ts +54 -0
  35. package/src/logs/{directional_app_tagging_secret.ts → extended_directional_app_tagging_secret.ts} +24 -16
  36. package/src/logs/index.ts +2 -1
  37. package/src/logs/pre_tag.ts +5 -5
  38. package/src/logs/siloed_tag.ts +8 -2
  39. package/src/logs/tag.ts +1 -1
  40. package/src/tests/factories.ts +9 -0
  41. package/src/tx/profiling.ts +5 -5
  42. package/src/tx/public_simulation_output.ts +4 -0
  43. package/src/tx/tx_receipt.ts +10 -0
  44. package/dest/logs/directional_app_tagging_secret.d.ts +0 -40
  45. package/dest/logs/directional_app_tagging_secret.d.ts.map +0 -1
@@ -472,12 +472,12 @@ export declare class TxProfileResult {
472
472
  static get schema(): ZodFor<TxProfileResult>;
473
473
  static random(): TxProfileResult;
474
474
  }
475
- export declare class UtilitySimulationResult {
475
+ export declare class UtilityExecutionResult {
476
476
  result: Fr[];
477
477
  stats?: SimulationStats | undefined;
478
478
  constructor(result: Fr[], stats?: SimulationStats | undefined);
479
- static get schema(): ZodFor<UtilitySimulationResult>;
480
- static random(): UtilitySimulationResult;
479
+ static get schema(): ZodFor<UtilityExecutionResult>;
480
+ static random(): UtilityExecutionResult;
481
481
  }
482
482
  export {};
483
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsaW5nLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHgvcHJvZmlsaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsS0FBSyxNQUFNLEVBQXFCLE1BQU0sMkJBQTJCLENBQUM7QUFFM0UsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsS0FBSyxvQkFBb0IsRUFBOEIsTUFBTSwyQ0FBMkMsQ0FBQztBQUVsSCxNQUFNLE1BQU0sY0FBYyxHQUFHO0lBQzNCLDBFQUEwRTtJQUMxRSxVQUFVLEVBQUUsTUFBTSxDQUFDO0lBQ25CLDhFQUE4RTtJQUM5RSxpQkFBaUIsRUFBRSxNQUFNLENBQUM7SUFDMUIsc0NBQXNDO0lBQ3RDLGtCQUFrQixFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQzdCLDBFQUEwRTtJQUMxRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDO0NBQzlCLENBQUM7QUFTRixNQUFNLE1BQU0sU0FBUyxHQUFHO0lBQ3RCLDRCQUE0QjtJQUM1QixTQUFTLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLFNBQVMsRUFBRTtRQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsQ0FBQTtLQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2pFLHNEQUFzRDtJQUN0RCxVQUFVLEVBQUUsY0FBYyxDQUFDO0NBQzVCLENBQUM7QUFPRixLQUFLLGNBQWMsR0FBRztJQUNwQixZQUFZLEVBQUUsTUFBTSxDQUFDO0lBQ3JCLElBQUksRUFBRSxNQUFNLENBQUM7SUFDYixPQUFPLENBQUMsRUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFO1FBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFBO0tBQUUsQ0FB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
483
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsaW5nLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHgvcHJvZmlsaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsS0FBSyxNQUFNLEVBQXFCLE1BQU0sMkJBQTJCLENBQUM7QUFFM0UsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsS0FBSyxvQkFBb0IsRUFBOEIsTUFBTSwyQ0FBMkMsQ0FBQztBQUVsSCxNQUFNLE1BQU0sY0FBYyxHQUFHO0lBQzNCLDBFQUEwRTtJQUMxRSxVQUFVLEVBQUUsTUFBTSxDQUFDO0lBQ25CLDhFQUE4RTtJQUM5RSxpQkFBaUIsRUFBRSxNQUFNLENBQUM7SUFDMUIsc0NBQXNDO0lBQ3RDLGtCQUFrQixFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQzdCLDBFQUEwRTtJQUMxRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsRUFBRSxDQUFDO0NBQzlCLENBQUM7QUFTRixNQUFNLE1BQU0sU0FBUyxHQUFHO0lBQ3RCLDRCQUE0QjtJQUM1QixTQUFTLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLFNBQVMsRUFBRTtRQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsQ0FBQTtLQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2pFLHNEQUFzRDtJQUN0RCxVQUFVLEVBQUUsY0FBYyxDQUFDO0NBQzVCLENBQUM7QUFPRixLQUFLLGNBQWMsR0FBRztJQUNwQixZQUFZLEVBQUUsTUFBTSxDQUFDO0lBQ3JCLElBQUksRUFBRSxNQUFNLENBQUM7SUFDYixPQUFPLENBQUMsRUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFO1FBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFBO0tBQUUsQ0FBQyxDQUFDO0NBQy9DLENBQUM7QUFRRixNQUFNLE1BQU0sY0FBYyxHQUFHO0lBQzNCLElBQUksQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUNkLE9BQU8sQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUNqQixXQUFXLEVBQUUsY0FBYyxFQUFFLENBQUM7SUFDOUIsV0FBVyxFQUFFLE1BQU0sQ0FBQztJQUNwQixLQUFLLEVBQUUsTUFBTSxDQUFDO0NBQ2YsQ0FBQztBQUVGLGVBQU8sTUFBTSxvQkFBb0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFNL0IsQ0FBQztBQUVILE1BQU0sV0FBVyxZQUFZO0lBQzNCLE9BQU8sRUFBRSxjQUFjLENBQUM7SUFDeEIsWUFBWSxDQUFDLEVBQUUsU0FBUyxDQUFDO0NBQzFCO0FBRUQsZUFBTyxNQUFNLGtCQUFrQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFHN0IsQ0FBQztBQUVILE1BQU0sV0FBVyxpQkFBaUI7SUFDaEMsSUFBSSxFQUFFLE1BQU0sQ0FBQztJQUNiLGdCQUFnQixDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQzFCLFVBQVUsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUNwQixXQUFXLEVBQUUsY0FBYyxFQUFFLENBQUM7SUFDOUIsV0FBVyxFQUFFLE1BQU0sQ0FBQztJQUNwQixLQUFLLEVBQUUsTUFBTSxDQUFDO0NBQ2Y7QUFFRCxlQUFPLE1BQU0sdUJBQXVCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBT2xDLENBQUM7QUFFSCxNQUFNLFdBQVcsZUFBZTtJQUM5QixPQUFPLEVBQUUsaUJBQWlCLENBQUM7SUFDM0IsWUFBWSxFQUFFLFNBQVMsQ0FBQztDQUN6QjtBQUVELGVBQU8sTUFBTSxxQkFBcUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFHaEMsQ0FBQztBQUVILHFCQUFhLGVBQWU7SUFFakIsY0FBYyxFQUFFLG9CQUFvQixFQUFFO0lBQ3RDLEtBQUssRUFBRSxZQUFZO0lBRjVCLFlBQ1MsY0FBYyxFQUFFLG9CQUFvQixFQUFFLEVBQ3RDLEtBQUssRUFBRSxZQUFZLEVBQ3hCO0lBQ0osTUFBTSxLQUFLLE1BQU0sSUFBSSxNQUFNLENBQUMsZUFBZSxDQUFDLENBTzNDO0lBRUQsTUFBTSxDQUFDLE1BQU0sSUFBSSxlQUFlLENBc0MvQjtDQUNGO0FBRUQscUJBQWEsc0JBQXNCO0lBRXhCLE1BQU0sRUFBRSxFQUFFLEVBQUU7SUFDWixLQUFLLENBQUM7SUFGZixZQUNTLE1BQU0sRUFBRSxFQUFFLEVBQUUsRUFDWixLQUFLLENBQUMsNkJBQWlCLEVBQzVCO0lBRUosTUFBTSxLQUFLLE1BQU0sSUFBSSxNQUFNLENBQUMsc0JBQXNCLENBQUMsQ0FPbEQ7SUFFRCxNQUFNLENBQUMsTUFBTSxJQUFJLHNCQUFzQixDQXlCdEM7Q0FDRiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"profiling.d.ts","sourceRoot":"","sources":["../../src/tx/profiling.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"profiling.d.ts","sourceRoot":"","sources":["../../src/tx/profiling.ts"],"names":[],"mappings":"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"}
@@ -111,7 +111,7 @@ export class TxProfileResult {
111
111
  });
112
112
  }
113
113
  }
114
- export class UtilitySimulationResult {
114
+ export class UtilityExecutionResult {
115
115
  result;
116
116
  stats;
117
117
  constructor(result, stats){
@@ -122,10 +122,10 @@ export class UtilitySimulationResult {
122
122
  return z.object({
123
123
  result: z.array(schemas.Fr),
124
124
  stats: optional(SimulationStatsSchema)
125
- }).transform(({ result, stats })=>new UtilitySimulationResult(result, stats));
125
+ }).transform(({ result, stats })=>new UtilityExecutionResult(result, stats));
126
126
  }
127
127
  static random() {
128
- return new UtilitySimulationResult([
128
+ return new UtilityExecutionResult([
129
129
  Fr.random()
130
130
  ], {
131
131
  nodeRPCCalls: {
@@ -2,6 +2,7 @@ import { Fr } from '@aztec/foundation/curves/bn254';
2
2
  import { type ZodFor } from '@aztec/foundation/schemas';
3
3
  import { SimulationError } from '../errors/simulation_error.js';
4
4
  import type { GasUsed } from '../gas/gas_used.js';
5
+ import { DebugLog } from '../logs/debug_log.js';
5
6
  import { TxEffect } from '../tx/tx_effect.js';
6
7
  import { GlobalVariables } from './global_variables.js';
7
8
  /** Return values of simulating a circuit. */
@@ -26,8 +27,9 @@ export declare class PublicSimulationOutput {
26
27
  txEffect: TxEffect;
27
28
  publicReturnValues: NestedProcessReturnValues[];
28
29
  gasUsed: GasUsed;
29
- constructor(revertReason: SimulationError | undefined, globalVariables: GlobalVariables, txEffect: TxEffect, publicReturnValues: NestedProcessReturnValues[], gasUsed: GasUsed);
30
+ debugLogs: DebugLog[];
31
+ constructor(revertReason: SimulationError | undefined, globalVariables: GlobalVariables, txEffect: TxEffect, publicReturnValues: NestedProcessReturnValues[], gasUsed: GasUsed, debugLogs?: DebugLog[]);
30
32
  static get schema(): ZodFor<PublicSimulationOutput>;
31
33
  static random(): Promise<PublicSimulationOutput>;
32
34
  }
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX3NpbXVsYXRpb25fb3V0cHV0LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHgvcHVibGljX3NpbXVsYXRpb25fb3V0cHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsS0FBSyxNQUFNLEVBQVcsTUFBTSwyQkFBMkIsQ0FBQztBQUtqRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFaEUsT0FBTyxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFbEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUV4RCw2Q0FBNkM7QUFDN0MsTUFBTSxNQUFNLG1CQUFtQixHQUFHLEVBQUUsRUFBRSxHQUFHLFNBQVMsQ0FBQztBQUVuRCxzREFBc0Q7QUFDdEQscUJBQWEseUJBQXlCO0lBQ3BDLE1BQU0sRUFBRSxtQkFBbUIsQ0FBQztJQUM1QixNQUFNLEVBQUUseUJBQXlCLEVBQUUsQ0FBQztJQUVwQyxZQUFZLE1BQU0sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLENBQUMsRUFBRSx5QkFBeUIsRUFBRSxFQUc1RTtJQUVELE1BQU0sQ0FBQyxLQUFLLEVBQUUseUJBQXlCLEdBQUcsT0FBTyxDQU9oRDtJQUVELE1BQU0sS0FBSyxNQUFNLElBQUksTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBT3JEO0lBRUQsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLHlCQUF5QixDQUsxRDtJQUVELE1BQU0sQ0FBQyxLQUFLLDhCQUVYO0lBRUQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLFNBQUksR0FBRyx5QkFBeUIsQ0FLbEQ7Q0FDRjtBQUVEOztHQUVHO0FBQ0gscUJBQWEsc0JBQXNCO0lBRXhCLFlBQVksRUFBRSxlQUFlLEdBQUcsU0FBUztJQUN6QyxlQUFlLEVBQUUsZUFBZTtJQUNoQyxRQUFRLEVBQUUsUUFBUTtJQUNsQixrQkFBa0IsRUFBRSx5QkFBeUIsRUFBRTtJQUMvQyxPQUFPLEVBQUUsT0FBTztJQUx6QixZQUNTLFlBQVksRUFBRSxlQUFlLEdBQUcsU0FBUyxFQUN6QyxlQUFlLEVBQUUsZUFBZSxFQUNoQyxRQUFRLEVBQUUsUUFBUSxFQUNsQixrQkFBa0IsRUFBRSx5QkFBeUIsRUFBRSxFQUMvQyxPQUFPLEVBQUUsT0FBTyxFQUNyQjtJQUVKLE1BQU0sS0FBSyxNQUFNLElBQUksTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBd0JsRDtJQUVELE9BQWEsTUFBTSxvQ0FRbEI7Q0FDRiJ9
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX3NpbXVsYXRpb25fb3V0cHV0LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHgvcHVibGljX3NpbXVsYXRpb25fb3V0cHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsS0FBSyxNQUFNLEVBQVcsTUFBTSwyQkFBMkIsQ0FBQztBQUtqRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFaEUsT0FBTyxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRWhELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFeEQsNkNBQTZDO0FBQzdDLE1BQU0sTUFBTSxtQkFBbUIsR0FBRyxFQUFFLEVBQUUsR0FBRyxTQUFTLENBQUM7QUFFbkQsc0RBQXNEO0FBQ3RELHFCQUFhLHlCQUF5QjtJQUNwQyxNQUFNLEVBQUUsbUJBQW1CLENBQUM7SUFDNUIsTUFBTSxFQUFFLHlCQUF5QixFQUFFLENBQUM7SUFFcEMsWUFBWSxNQUFNLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxDQUFDLEVBQUUseUJBQXlCLEVBQUUsRUFHNUU7SUFFRCxNQUFNLENBQUMsS0FBSyxFQUFFLHlCQUF5QixHQUFHLE9BQU8sQ0FPaEQ7SUFFRCxNQUFNLEtBQUssTUFBTSxJQUFJLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQU9yRDtJQUVELE1BQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxFQUFFLEdBQUcsR0FBRyx5QkFBeUIsQ0FLMUQ7SUFFRCxNQUFNLENBQUMsS0FBSyw4QkFFWDtJQUVELE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxTQUFJLEdBQUcseUJBQXlCLENBS2xEO0NBQ0Y7QUFFRDs7R0FFRztBQUNILHFCQUFhLHNCQUFzQjtJQUV4QixZQUFZLEVBQUUsZUFBZSxHQUFHLFNBQVM7SUFDekMsZUFBZSxFQUFFLGVBQWU7SUFDaEMsUUFBUSxFQUFFLFFBQVE7SUFDbEIsa0JBQWtCLEVBQUUseUJBQXlCLEVBQUU7SUFDL0MsT0FBTyxFQUFFLE9BQU87SUFDaEIsU0FBUyxFQUFFLFFBQVEsRUFBRTtJQU45QixZQUNTLFlBQVksRUFBRSxlQUFlLEdBQUcsU0FBUyxFQUN6QyxlQUFlLEVBQUUsZUFBZSxFQUNoQyxRQUFRLEVBQUUsUUFBUSxFQUNsQixrQkFBa0IsRUFBRSx5QkFBeUIsRUFBRSxFQUMvQyxPQUFPLEVBQUUsT0FBTyxFQUNoQixTQUFTLEdBQUUsUUFBUSxFQUFPLEVBQy9CO0lBRUosTUFBTSxLQUFLLE1BQU0sSUFBSSxNQUFNLENBQUMsc0JBQXNCLENBQUMsQ0EwQmxEO0lBRUQsT0FBYSxNQUFNLG9DQVFsQjtDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"public_simulation_output.d.ts","sourceRoot":"","sources":["../../src/tx/public_simulation_output.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,KAAK,MAAM,EAAW,MAAM,2BAA2B,CAAC;AAKjE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,6CAA6C;AAC7C,MAAM,MAAM,mBAAmB,GAAG,EAAE,EAAE,GAAG,SAAS,CAAC;AAEnD,sDAAsD;AACtD,qBAAa,yBAAyB;IACpC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,MAAM,EAAE,yBAAyB,EAAE,CAAC;IAEpC,YAAY,MAAM,EAAE,mBAAmB,EAAE,MAAM,CAAC,EAAE,yBAAyB,EAAE,EAG5E;IAED,MAAM,CAAC,KAAK,EAAE,yBAAyB,GAAG,OAAO,CAOhD;IAED,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,yBAAyB,CAAC,CAOrD;IAED,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,yBAAyB,CAK1D;IAED,MAAM,CAAC,KAAK,8BAEX;IAED,MAAM,CAAC,MAAM,CAAC,KAAK,SAAI,GAAG,yBAAyB,CAKlD;CACF;AAED;;GAEG;AACH,qBAAa,sBAAsB;IAExB,YAAY,EAAE,eAAe,GAAG,SAAS;IACzC,eAAe,EAAE,eAAe;IAChC,QAAQ,EAAE,QAAQ;IAClB,kBAAkB,EAAE,yBAAyB,EAAE;IAC/C,OAAO,EAAE,OAAO;IALzB,YACS,YAAY,EAAE,eAAe,GAAG,SAAS,EACzC,eAAe,EAAE,eAAe,EAChC,QAAQ,EAAE,QAAQ,EAClB,kBAAkB,EAAE,yBAAyB,EAAE,EAC/C,OAAO,EAAE,OAAO,EACrB;IAEJ,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,sBAAsB,CAAC,CAwBlD;IAED,OAAa,MAAM,oCAQlB;CACF"}
1
+ {"version":3,"file":"public_simulation_output.d.ts","sourceRoot":"","sources":["../../src/tx/public_simulation_output.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,KAAK,MAAM,EAAW,MAAM,2BAA2B,CAAC;AAKjE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,6CAA6C;AAC7C,MAAM,MAAM,mBAAmB,GAAG,EAAE,EAAE,GAAG,SAAS,CAAC;AAEnD,sDAAsD;AACtD,qBAAa,yBAAyB;IACpC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,MAAM,EAAE,yBAAyB,EAAE,CAAC;IAEpC,YAAY,MAAM,EAAE,mBAAmB,EAAE,MAAM,CAAC,EAAE,yBAAyB,EAAE,EAG5E;IAED,MAAM,CAAC,KAAK,EAAE,yBAAyB,GAAG,OAAO,CAOhD;IAED,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,yBAAyB,CAAC,CAOrD;IAED,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,yBAAyB,CAK1D;IAED,MAAM,CAAC,KAAK,8BAEX;IAED,MAAM,CAAC,MAAM,CAAC,KAAK,SAAI,GAAG,yBAAyB,CAKlD;CACF;AAED;;GAEG;AACH,qBAAa,sBAAsB;IAExB,YAAY,EAAE,eAAe,GAAG,SAAS;IACzC,eAAe,EAAE,eAAe;IAChC,QAAQ,EAAE,QAAQ;IAClB,kBAAkB,EAAE,yBAAyB,EAAE;IAC/C,OAAO,EAAE,OAAO;IAChB,SAAS,EAAE,QAAQ,EAAE;IAN9B,YACS,YAAY,EAAE,eAAe,GAAG,SAAS,EACzC,eAAe,EAAE,eAAe,EAChC,QAAQ,EAAE,QAAQ,EAClB,kBAAkB,EAAE,yBAAyB,EAAE,EAC/C,OAAO,EAAE,OAAO,EAChB,SAAS,GAAE,QAAQ,EAAO,EAC/B;IAEJ,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,sBAAsB,CAAC,CA0BlD;IAED,OAAa,MAAM,oCAQlB;CACF"}
@@ -4,6 +4,7 @@ import times from 'lodash.times';
4
4
  import { z } from 'zod';
5
5
  import { SimulationError } from '../errors/simulation_error.js';
6
6
  import { Gas } from '../gas/gas.js';
7
+ import { DebugLog } from '../logs/debug_log.js';
7
8
  import { NullishToUndefined } from '../schemas/schemas.js';
8
9
  import { TxEffect } from '../tx/tx_effect.js';
9
10
  import { GlobalVariables } from './global_variables.js';
@@ -43,12 +44,14 @@ import { GlobalVariables } from './global_variables.js';
43
44
  txEffect;
44
45
  publicReturnValues;
45
46
  gasUsed;
46
- constructor(revertReason, globalVariables, txEffect, publicReturnValues, gasUsed){
47
+ debugLogs;
48
+ constructor(revertReason, globalVariables, txEffect, publicReturnValues, gasUsed, debugLogs = []){
47
49
  this.revertReason = revertReason;
48
50
  this.globalVariables = globalVariables;
49
51
  this.txEffect = txEffect;
50
52
  this.publicReturnValues = publicReturnValues;
51
53
  this.gasUsed = gasUsed;
54
+ this.debugLogs = debugLogs;
52
55
  }
53
56
  static get schema() {
54
57
  return z.object({
@@ -61,8 +64,9 @@ import { GlobalVariables } from './global_variables.js';
61
64
  teardownGas: Gas.schema,
62
65
  publicGas: Gas.schema,
63
66
  billedGas: Gas.schema
64
- })
65
- }).transform((fields)=>new PublicSimulationOutput(fields.revertReason, fields.globalVariables, fields.txEffect, fields.publicReturnValues, fields.gasUsed));
67
+ }),
68
+ debugLogs: z.array(DebugLog.schema).default([])
69
+ }).transform((fields)=>new PublicSimulationOutput(fields.revertReason, fields.globalVariables, fields.txEffect, fields.publicReturnValues, fields.gasUsed, fields.debugLogs));
66
70
  }
67
71
  static async random() {
68
72
  return new PublicSimulationOutput(await SimulationError.random(), GlobalVariables.empty(), TxEffect.empty(), times(2, NestedProcessReturnValues.random), {
@@ -1,6 +1,7 @@
1
1
  import { BlockNumber } from '@aztec/foundation/branded-types';
2
2
  import { RevertCode } from '../avm/revert_code.js';
3
3
  import { BlockHash } from '../block/block_hash.js';
4
+ import { DebugLog } from '../logs/debug_log.js';
4
5
  import { type ZodFor } from '../schemas/schemas.js';
5
6
  import { TxHash } from './tx_hash.js';
6
7
  /** Block inclusion/finalization status. */
@@ -42,6 +43,12 @@ export declare class TxReceipt {
42
43
  blockHash?: BlockHash | undefined;
43
44
  /** The block number in which the transaction was included. */
44
45
  blockNumber?: BlockNumber | undefined;
46
+ /**
47
+ * Debug logs collected during public function execution. Served only when the node is in test mode and placed on
48
+ * the receipt only because it's a convenient place for it (the logs are printed out by the wallet when a mined
49
+ * tx receipt is obtained).
50
+ */
51
+ debugLogs?: DebugLog[] | undefined;
45
52
  constructor(
46
53
  /** A unique identifier for a transaction. */
47
54
  txHash: TxHash,
@@ -56,7 +63,13 @@ export declare class TxReceipt {
56
63
  /** The hash of the block containing the transaction. */
57
64
  blockHash?: BlockHash | undefined,
58
65
  /** The block number in which the transaction was included. */
59
- blockNumber?: BlockNumber | undefined);
66
+ blockNumber?: BlockNumber | undefined,
67
+ /**
68
+ * Debug logs collected during public function execution. Served only when the node is in test mode and placed on
69
+ * the receipt only because it's a convenient place for it (the logs are printed out by the wallet when a mined
70
+ * tx receipt is obtained).
71
+ */
72
+ debugLogs?: DebugLog[] | undefined);
60
73
  /** Returns true if the transaction was executed successfully. */
61
74
  hasExecutionSucceeded(): boolean;
62
75
  /** Returns true if the transaction execution reverted. */
@@ -77,7 +90,8 @@ export declare class TxReceipt {
77
90
  transactionFee?: bigint;
78
91
  blockHash?: BlockHash;
79
92
  blockNumber?: BlockNumber;
93
+ debugLogs?: DebugLog[];
80
94
  }): TxReceipt;
81
95
  static executionResultFromRevertCode(revertCode: RevertCode): TxExecutionResult;
82
96
  }
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhfcmVjZWlwdC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R4L3R4X3JlY2VpcHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBcUIsTUFBTSxpQ0FBaUMsQ0FBQztBQUlqRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBVyxNQUFNLHVCQUF1QixDQUFDO0FBQzdELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFdEMsMkNBQTJDO0FBQzNDLG9CQUFZLFFBQVE7SUFDbEIsT0FBTyxZQUFZO0lBQ25CLE9BQU8sWUFBWTtJQUNuQixRQUFRLGFBQWE7SUFDckIsWUFBWSxpQkFBaUI7SUFDN0IsTUFBTSxXQUFXO0lBQ2pCLFNBQVMsY0FBYztDQUN4QjtBQUVELGlEQUFpRDtBQUNqRCxlQUFPLE1BQU0sZ0JBQWdCLEVBQUUsUUFBUSxFQU90QyxDQUFDO0FBRUYseURBQXlEO0FBQ3pELG9CQUFZLGlCQUFpQjtJQUMzQixPQUFPLFlBQVk7SUFDbkIsa0JBQWtCLHVCQUF1QjtJQUN6QyxpQkFBaUIsc0JBQXNCO0lBQ3ZDLGFBQWEsa0JBQWtCO0NBQ2hDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxxQkFBYSxTQUFTO0lBRWxCLDZDQUE2QztJQUN0QyxNQUFNLEVBQUUsTUFBTTtJQUNyQixtREFBbUQ7SUFDNUMsTUFBTSxFQUFFLFFBQVE7SUFDdkIsK0VBQStFO0lBQ3hFLGVBQWUsRUFBRSxpQkFBaUIsR0FBRyxTQUFTO0lBQ3JELGdEQUFnRDtJQUN6QyxLQUFLLEVBQUUsTUFBTSxHQUFHLFNBQVM7SUFDaEMsb0RBQW9EO0lBQzdDLGNBQWMsQ0FBQztJQUN0Qix3REFBd0Q7SUFDakQsU0FBUyxDQUFDO0lBQ2pCLDhEQUE4RDtJQUN2RCxXQUFXLENBQUM7SUFkckI7SUFDRSw2Q0FBNkM7SUFDdEMsTUFBTSxFQUFFLE1BQU07SUFDckIsbURBQW1EO0lBQzVDLE1BQU0sRUFBRSxRQUFRO0lBQ3ZCLCtFQUErRTtJQUN4RSxlQUFlLEVBQUUsaUJBQWlCLEdBQUcsU0FBUztJQUNyRCxnREFBZ0Q7SUFDekMsS0FBSyxFQUFFLE1BQU0sR0FBRyxTQUFTO0lBQ2hDLG9EQUFvRDtJQUM3QyxjQUFjLENBQUMsb0JBQVE7SUFDOUIsd0RBQXdEO0lBQ2pELFNBQVMsQ0FBQyx1QkFBVztJQUM1Qiw4REFBOEQ7SUFDdkQsV0FBVyxDQUFDLHlCQUFhLEVBQzlCO0lBRUosaUVBQWlFO0lBQ2pFLHFCQUFxQixJQUFJLE9BQU8sQ0FFL0I7SUFFRCwwREFBMEQ7SUFDMUQsb0JBQW9CLElBQUksT0FBTyxDQUU5QjtJQUVELG1IQUFtSDtJQUNuSCxPQUFPLElBQUksT0FBTyxDQU9qQjtJQUVELGtEQUFrRDtJQUNsRCxTQUFTLElBQUksT0FBTyxDQUVuQjtJQUVELG1EQUFtRDtJQUNuRCxTQUFTLElBQUksT0FBTyxDQUVuQjtJQUVELE1BQU0sQ0FBQyxLQUFLLGNBRVg7SUFFRCxNQUFNLEtBQUssTUFBTSxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FZckM7SUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtRQUNsQixNQUFNLEVBQUUsTUFBTSxDQUFDO1FBQ2YsTUFBTSxFQUFFLFFBQVEsQ0FBQztRQUNqQixlQUFlLENBQUMsRUFBRSxpQkFBaUIsQ0FBQztRQUNwQyxLQUFLLENBQUMsRUFBRSxNQUFNLENBQUM7UUFDZixjQUFjLENBQUMsRUFBRSxNQUFNLENBQUM7UUFDeEIsU0FBUyxDQUFDLEVBQUUsU0FBUyxDQUFDO1FBQ3RCLFdBQVcsQ0FBQyxFQUFFLFdBQVcsQ0FBQztLQUMzQixhQVVBO0lBRUQsT0FBYyw2QkFBNkIsQ0FBQyxVQUFVLEVBQUUsVUFBVSxHQUFHLGlCQUFpQixDQVlyRjtDQUNGIn0=
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhfcmVjZWlwdC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R4L3R4X3JlY2VpcHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBcUIsTUFBTSxpQ0FBaUMsQ0FBQztBQUlqRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsS0FBSyxNQUFNLEVBQVcsTUFBTSx1QkFBdUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXRDLDJDQUEyQztBQUMzQyxvQkFBWSxRQUFRO0lBQ2xCLE9BQU8sWUFBWTtJQUNuQixPQUFPLFlBQVk7SUFDbkIsUUFBUSxhQUFhO0lBQ3JCLFlBQVksaUJBQWlCO0lBQzdCLE1BQU0sV0FBVztJQUNqQixTQUFTLGNBQWM7Q0FDeEI7QUFFRCxpREFBaUQ7QUFDakQsZUFBTyxNQUFNLGdCQUFnQixFQUFFLFFBQVEsRUFPdEMsQ0FBQztBQUVGLHlEQUF5RDtBQUN6RCxvQkFBWSxpQkFBaUI7SUFDM0IsT0FBTyxZQUFZO0lBQ25CLGtCQUFrQix1QkFBdUI7SUFDekMsaUJBQWlCLHNCQUFzQjtJQUN2QyxhQUFhLGtCQUFrQjtDQUNoQztBQUVEOzs7OztHQUtHO0FBQ0gscUJBQWEsU0FBUztJQUVsQiw2Q0FBNkM7SUFDdEMsTUFBTSxFQUFFLE1BQU07SUFDckIsbURBQW1EO0lBQzVDLE1BQU0sRUFBRSxRQUFRO0lBQ3ZCLCtFQUErRTtJQUN4RSxlQUFlLEVBQUUsaUJBQWlCLEdBQUcsU0FBUztJQUNyRCxnREFBZ0Q7SUFDekMsS0FBSyxFQUFFLE1BQU0sR0FBRyxTQUFTO0lBQ2hDLG9EQUFvRDtJQUM3QyxjQUFjLENBQUM7SUFDdEIsd0RBQXdEO0lBQ2pELFNBQVMsQ0FBQztJQUNqQiw4REFBOEQ7SUFDdkQsV0FBVyxDQUFDO0lBQ25COzs7O09BSUc7SUFDSSxTQUFTLENBQUM7SUFwQm5CO0lBQ0UsNkNBQTZDO0lBQ3RDLE1BQU0sRUFBRSxNQUFNO0lBQ3JCLG1EQUFtRDtJQUM1QyxNQUFNLEVBQUUsUUFBUTtJQUN2QiwrRUFBK0U7SUFDeEUsZUFBZSxFQUFFLGlCQUFpQixHQUFHLFNBQVM7SUFDckQsZ0RBQWdEO0lBQ3pDLEtBQUssRUFBRSxNQUFNLEdBQUcsU0FBUztJQUNoQyxvREFBb0Q7SUFDN0MsY0FBYyxDQUFDLG9CQUFRO0lBQzlCLHdEQUF3RDtJQUNqRCxTQUFTLENBQUMsdUJBQVc7SUFDNUIsOERBQThEO0lBQ3ZELFdBQVcsQ0FBQyx5QkFBYTtJQUNoQzs7OztPQUlHO0lBQ0ksU0FBUyxDQUFDLHdCQUFZLEVBQzNCO0lBRUosaUVBQWlFO0lBQ2pFLHFCQUFxQixJQUFJLE9BQU8sQ0FFL0I7SUFFRCwwREFBMEQ7SUFDMUQsb0JBQW9CLElBQUksT0FBTyxDQUU5QjtJQUVELG1IQUFtSDtJQUNuSCxPQUFPLElBQUksT0FBTyxDQU9qQjtJQUVELGtEQUFrRDtJQUNsRCxTQUFTLElBQUksT0FBTyxDQUVuQjtJQUVELG1EQUFtRDtJQUNuRCxTQUFTLElBQUksT0FBTyxDQUVuQjtJQUVELE1BQU0sQ0FBQyxLQUFLLGNBRVg7SUFFRCxNQUFNLEtBQUssTUFBTSxJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FhckM7SUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtRQUNsQixNQUFNLEVBQUUsTUFBTSxDQUFDO1FBQ2YsTUFBTSxFQUFFLFFBQVEsQ0FBQztRQUNqQixlQUFlLENBQUMsRUFBRSxpQkFBaUIsQ0FBQztRQUNwQyxLQUFLLENBQUMsRUFBRSxNQUFNLENBQUM7UUFDZixjQUFjLENBQUMsRUFBRSxNQUFNLENBQUM7UUFDeEIsU0FBUyxDQUFDLEVBQUUsU0FBUyxDQUFDO1FBQ3RCLFdBQVcsQ0FBQyxFQUFFLFdBQVcsQ0FBQztRQUMxQixTQUFTLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQztLQUN4QixhQVdBO0lBRUQsT0FBYyw2QkFBNkIsQ0FBQyxVQUFVLEVBQUUsVUFBVSxHQUFHLGlCQUFpQixDQVlyRjtDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"tx_receipt.d.ts","sourceRoot":"","sources":["../../src/tx/tx_receipt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAqB,MAAM,iCAAiC,CAAC;AAIjF,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,KAAK,MAAM,EAAW,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,2CAA2C;AAC3C,oBAAY,QAAQ;IAClB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,YAAY,iBAAiB;IAC7B,MAAM,WAAW;IACjB,SAAS,cAAc;CACxB;AAED,iDAAiD;AACjD,eAAO,MAAM,gBAAgB,EAAE,QAAQ,EAOtC,CAAC;AAEF,yDAAyD;AACzD,oBAAY,iBAAiB;IAC3B,OAAO,YAAY;IACnB,kBAAkB,uBAAuB;IACzC,iBAAiB,sBAAsB;IACvC,aAAa,kBAAkB;CAChC;AAED;;;;;GAKG;AACH,qBAAa,SAAS;IAElB,6CAA6C;IACtC,MAAM,EAAE,MAAM;IACrB,mDAAmD;IAC5C,MAAM,EAAE,QAAQ;IACvB,+EAA+E;IACxE,eAAe,EAAE,iBAAiB,GAAG,SAAS;IACrD,gDAAgD;IACzC,KAAK,EAAE,MAAM,GAAG,SAAS;IAChC,oDAAoD;IAC7C,cAAc,CAAC;IACtB,wDAAwD;IACjD,SAAS,CAAC;IACjB,8DAA8D;IACvD,WAAW,CAAC;IAdrB;IACE,6CAA6C;IACtC,MAAM,EAAE,MAAM;IACrB,mDAAmD;IAC5C,MAAM,EAAE,QAAQ;IACvB,+EAA+E;IACxE,eAAe,EAAE,iBAAiB,GAAG,SAAS;IACrD,gDAAgD;IACzC,KAAK,EAAE,MAAM,GAAG,SAAS;IAChC,oDAAoD;IAC7C,cAAc,CAAC,oBAAQ;IAC9B,wDAAwD;IACjD,SAAS,CAAC,uBAAW;IAC5B,8DAA8D;IACvD,WAAW,CAAC,yBAAa,EAC9B;IAEJ,iEAAiE;IACjE,qBAAqB,IAAI,OAAO,CAE/B;IAED,0DAA0D;IAC1D,oBAAoB,IAAI,OAAO,CAE9B;IAED,mHAAmH;IACnH,OAAO,IAAI,OAAO,CAOjB;IAED,kDAAkD;IAClD,SAAS,IAAI,OAAO,CAEnB;IAED,mDAAmD;IACnD,SAAS,IAAI,OAAO,CAEnB;IAED,MAAM,CAAC,KAAK,cAEX;IAED,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,CAYrC;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,QAAQ,CAAC;QACjB,eAAe,CAAC,EAAE,iBAAiB,CAAC;QACpC,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,WAAW,CAAC,EAAE,WAAW,CAAC;KAC3B,aAUA;IAED,OAAc,6BAA6B,CAAC,UAAU,EAAE,UAAU,GAAG,iBAAiB,CAYrF;CACF"}
1
+ {"version":3,"file":"tx_receipt.d.ts","sourceRoot":"","sources":["../../src/tx/tx_receipt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAqB,MAAM,iCAAiC,CAAC;AAIjF,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,KAAK,MAAM,EAAW,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,2CAA2C;AAC3C,oBAAY,QAAQ;IAClB,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,YAAY,iBAAiB;IAC7B,MAAM,WAAW;IACjB,SAAS,cAAc;CACxB;AAED,iDAAiD;AACjD,eAAO,MAAM,gBAAgB,EAAE,QAAQ,EAOtC,CAAC;AAEF,yDAAyD;AACzD,oBAAY,iBAAiB;IAC3B,OAAO,YAAY;IACnB,kBAAkB,uBAAuB;IACzC,iBAAiB,sBAAsB;IACvC,aAAa,kBAAkB;CAChC;AAED;;;;;GAKG;AACH,qBAAa,SAAS;IAElB,6CAA6C;IACtC,MAAM,EAAE,MAAM;IACrB,mDAAmD;IAC5C,MAAM,EAAE,QAAQ;IACvB,+EAA+E;IACxE,eAAe,EAAE,iBAAiB,GAAG,SAAS;IACrD,gDAAgD;IACzC,KAAK,EAAE,MAAM,GAAG,SAAS;IAChC,oDAAoD;IAC7C,cAAc,CAAC;IACtB,wDAAwD;IACjD,SAAS,CAAC;IACjB,8DAA8D;IACvD,WAAW,CAAC;IACnB;;;;OAIG;IACI,SAAS,CAAC;IApBnB;IACE,6CAA6C;IACtC,MAAM,EAAE,MAAM;IACrB,mDAAmD;IAC5C,MAAM,EAAE,QAAQ;IACvB,+EAA+E;IACxE,eAAe,EAAE,iBAAiB,GAAG,SAAS;IACrD,gDAAgD;IACzC,KAAK,EAAE,MAAM,GAAG,SAAS;IAChC,oDAAoD;IAC7C,cAAc,CAAC,oBAAQ;IAC9B,wDAAwD;IACjD,SAAS,CAAC,uBAAW;IAC5B,8DAA8D;IACvD,WAAW,CAAC,yBAAa;IAChC;;;;OAIG;IACI,SAAS,CAAC,wBAAY,EAC3B;IAEJ,iEAAiE;IACjE,qBAAqB,IAAI,OAAO,CAE/B;IAED,0DAA0D;IAC1D,oBAAoB,IAAI,OAAO,CAE9B;IAED,mHAAmH;IACnH,OAAO,IAAI,OAAO,CAOjB;IAED,kDAAkD;IAClD,SAAS,IAAI,OAAO,CAEnB;IAED,mDAAmD;IACnD,SAAS,IAAI,OAAO,CAEnB;IAED,MAAM,CAAC,KAAK,cAEX;IAED,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,CAarC;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,QAAQ,CAAC;QACjB,eAAe,CAAC,EAAE,iBAAiB,CAAC;QACpC,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,WAAW,CAAC,EAAE,WAAW,CAAC;QAC1B,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;KACxB,aAWA;IAED,OAAc,6BAA6B,CAAC,UAAU,EAAE,UAAU,GAAG,iBAAiB,CAYrF;CACF"}
@@ -2,6 +2,7 @@ import { BlockNumberSchema } from '@aztec/foundation/branded-types';
2
2
  import { z } from 'zod';
3
3
  import { RevertCode } from '../avm/revert_code.js';
4
4
  import { BlockHash } from '../block/block_hash.js';
5
+ import { DebugLog } from '../logs/debug_log.js';
5
6
  import { schemas } from '../schemas/schemas.js';
6
7
  import { TxHash } from './tx_hash.js';
7
8
  /** Block inclusion/finalization status. */ export var TxStatus = /*#__PURE__*/ function(TxStatus) {
@@ -41,7 +42,12 @@ import { TxHash } from './tx_hash.js';
41
42
  transactionFee;
42
43
  blockHash;
43
44
  blockNumber;
44
- constructor(/** A unique identifier for a transaction. */ txHash, /** The transaction's block finalization status. */ status, /** The execution result of the transaction, only set when tx is in a block. */ executionResult, /** Description of transaction error, if any. */ error, /** The transaction fee paid for the transaction. */ transactionFee, /** The hash of the block containing the transaction. */ blockHash, /** The block number in which the transaction was included. */ blockNumber){
45
+ debugLogs;
46
+ constructor(/** A unique identifier for a transaction. */ txHash, /** The transaction's block finalization status. */ status, /** The execution result of the transaction, only set when tx is in a block. */ executionResult, /** Description of transaction error, if any. */ error, /** The transaction fee paid for the transaction. */ transactionFee, /** The hash of the block containing the transaction. */ blockHash, /** The block number in which the transaction was included. */ blockNumber, /**
47
+ * Debug logs collected during public function execution. Served only when the node is in test mode and placed on
48
+ * the receipt only because it's a convenient place for it (the logs are printed out by the wallet when a mined
49
+ * tx receipt is obtained).
50
+ */ debugLogs){
45
51
  this.txHash = txHash;
46
52
  this.status = status;
47
53
  this.executionResult = executionResult;
@@ -49,6 +55,7 @@ import { TxHash } from './tx_hash.js';
49
55
  this.transactionFee = transactionFee;
50
56
  this.blockHash = blockHash;
51
57
  this.blockNumber = blockNumber;
58
+ this.debugLogs = debugLogs;
52
59
  }
53
60
  /** Returns true if the transaction was executed successfully. */ hasExecutionSucceeded() {
54
61
  return this.executionResult === "success";
@@ -76,11 +83,12 @@ import { TxHash } from './tx_hash.js';
76
83
  error: z.string().optional(),
77
84
  blockHash: BlockHash.schema.optional(),
78
85
  blockNumber: BlockNumberSchema.optional(),
79
- transactionFee: schemas.BigInt.optional()
86
+ transactionFee: schemas.BigInt.optional(),
87
+ debugLogs: z.array(DebugLog.schema).optional()
80
88
  }).transform((fields)=>TxReceipt.from(fields));
81
89
  }
82
90
  static from(fields) {
83
- return new TxReceipt(fields.txHash, fields.status, fields.executionResult, fields.error, fields.transactionFee, fields.blockHash, fields.blockNumber);
91
+ return new TxReceipt(fields.txHash, fields.status, fields.executionResult, fields.error, fields.transactionFee, fields.blockHash, fields.blockNumber, fields.debugLogs);
84
92
  }
85
93
  static executionResultFromRevertCode(revertCode) {
86
94
  if (revertCode.equals(RevertCode.OK)) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/stdlib",
3
- "version": "4.0.0-rc.7",
3
+ "version": "4.0.0-rc.9",
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.0.0-rc.7",
94
- "@aztec/blob-lib": "4.0.0-rc.7",
95
- "@aztec/constants": "4.0.0-rc.7",
96
- "@aztec/ethereum": "4.0.0-rc.7",
97
- "@aztec/foundation": "4.0.0-rc.7",
98
- "@aztec/l1-artifacts": "4.0.0-rc.7",
99
- "@aztec/noir-noirc_abi": "4.0.0-rc.7",
100
- "@aztec/validator-ha-signer": "4.0.0-rc.7",
93
+ "@aztec/bb.js": "4.0.0-rc.9",
94
+ "@aztec/blob-lib": "4.0.0-rc.9",
95
+ "@aztec/constants": "4.0.0-rc.9",
96
+ "@aztec/ethereum": "4.0.0-rc.9",
97
+ "@aztec/foundation": "4.0.0-rc.9",
98
+ "@aztec/l1-artifacts": "4.0.0-rc.9",
99
+ "@aztec/noir-noirc_abi": "4.0.0-rc.9",
100
+ "@aztec/validator-ha-signer": "4.0.0-rc.9",
101
101
  "@google-cloud/storage": "^7.15.0",
102
102
  "axios": "^1.12.0",
103
103
  "json-stringify-deterministic": "1.0.12",
@@ -5,10 +5,25 @@ import { BufferReader, FieldReader } from '@aztec/foundation/serialize';
5
5
  import { inspect } from 'util';
6
6
  import { z } from 'zod';
7
7
 
8
+ /**
9
+ * Tracks which revertible phases of a transaction's public execution reverted.
10
+ *
11
+ * A transaction executes in three sequential phases:
12
+ * 1. SETUP – non-revertible; if this fails the entire transaction is rejected.
13
+ * 2. APP_LOGIC – revertible; its state changes are rolled back on failure.
14
+ * 3. TEARDOWN – revertible; always runs (even after app-logic revert) so the fee-payment contract can clean up.
15
+ *
16
+ * Only APP_LOGIC and TEARDOWN can produce a revert code. SETUP failures throw instead and discard the transaction
17
+ * entirely.
18
+ */
8
19
  export enum RevertCodeEnum {
20
+ /** All phases completed successfully; no state was rolled back. */
9
21
  OK = 0,
22
+ /** APP_LOGIC reverted; its state changes were discarded. If present, TEARDOWN still ran and succeeded. */
10
23
  APP_LOGIC_REVERTED = 1,
24
+ /** TEARDOWN reverted; its state changes were discarded. APP_LOGIC succeeded. */
11
25
  TEARDOWN_REVERTED = 2,
26
+ /** Both APP_LOGIC and TEARDOWN reverted; only SETUP effects are kept. */
12
27
  BOTH_REVERTED = 3,
13
28
  }
14
29
 
@@ -0,0 +1,54 @@
1
+ import type { TxReceipt } from '../tx/tx_receipt.js';
2
+ import type { DebugLog } from './debug_log.js';
3
+
4
+ /**
5
+ * Store for debug logs emitted by public functions during transaction execution.
6
+ *
7
+ * Uses the Null Object pattern: production code uses NullDebugLogStore (no-op), while test mode uses
8
+ * InMemoryDebugLogStore (stores and serves logs).
9
+ */
10
+ export interface DebugLogStore {
11
+ /** Store debug logs for a processed transaction. */
12
+ storeLogs(txHash: string, logs: DebugLog[]): void;
13
+ /** Decorate a TxReceipt with any stored debug logs for the given tx. */
14
+ decorateReceiptWithLogs(txHash: string, receipt: TxReceipt): void;
15
+ /** Whether debug log collection is enabled. */
16
+ readonly isEnabled: boolean;
17
+ }
18
+
19
+ /** No-op implementation for production mode. */
20
+ export class NullDebugLogStore implements DebugLogStore {
21
+ storeLogs(_txHash: string, _logs: DebugLog[]): void {
22
+ return;
23
+ }
24
+ decorateReceiptWithLogs(_txHash: string, _receipt: TxReceipt): void {
25
+ return;
26
+ }
27
+ get isEnabled(): boolean {
28
+ return false;
29
+ }
30
+ }
31
+
32
+ /** In-memory implementation for test mode that stores and serves debug logs. */
33
+ export class InMemoryDebugLogStore implements DebugLogStore {
34
+ private map = new Map<string, DebugLog[]>();
35
+
36
+ storeLogs(txHash: string, logs: DebugLog[]): void {
37
+ if (logs.length > 0) {
38
+ this.map.set(txHash, logs);
39
+ }
40
+ }
41
+
42
+ decorateReceiptWithLogs(txHash: string, receipt: TxReceipt): void {
43
+ if (receipt.isMined()) {
44
+ const debugLogs = this.map.get(txHash);
45
+ if (debugLogs) {
46
+ receipt.debugLogs = debugLogs;
47
+ }
48
+ }
49
+ }
50
+
51
+ get isEnabled(): boolean {
52
+ return true;
53
+ }
54
+ }
@@ -5,22 +5,28 @@ import type { Point } from '@aztec/foundation/curves/grumpkin';
5
5
 
6
6
  import { z } from 'zod';
7
7
 
8
- import type { AztecAddress } from '../aztec-address/index.js';
8
+ import { AztecAddress } from '../aztec-address/index.js';
9
9
  import type { CompleteAddress } from '../contract/complete_address.js';
10
10
  import { computeAddressSecret, computePreaddress } from '../keys/derivation.js';
11
11
 
12
12
  /**
13
- * Directional application tagging secret used for log tagging.
13
+ * Extended directional application tagging secret used for log tagging.
14
14
  *
15
- * "Directional" because the derived secret is bound to the recipient
16
- * address: A→B differs from B→A even with the same participants and app.
15
+ * "Extended" because it bundles the directional app tagging secret with the app (contract) address. This bundling was
16
+ * done because where this type is used we commonly need access to both the secret and the address.
17
17
  *
18
- * Note: It's a bit unfortunate that this type resides in `stdlib` as the rest of the tagging functionality resides
19
- * in `pxe/src/tagging`. We need to use this type in `PreTag` that in turn is used by other types
20
- * in stdlib hence there doesn't seem to be a good way around this.
18
+ * "Directional" because the derived secret is bound to the recipient address: A→B differs from B→A even with the same
19
+ * participants and app.
20
+ *
21
+ * Note: It's a bit unfortunate that this type resides in `stdlib` as the rest of the tagging functionality resides in
22
+ * `pxe/src/tagging`. We need to use this type in `PreTag` that in turn is used by other types in stdlib hence there
23
+ * doesn't seem to be a good way around this.
21
24
  */
22
- export class DirectionalAppTaggingSecret {
23
- private constructor(public readonly value: Fr) {}
25
+ export class ExtendedDirectionalAppTaggingSecret {
26
+ private constructor(
27
+ public readonly secret: Fr,
28
+ public readonly app: AztecAddress,
29
+ ) {}
24
30
 
25
31
  /**
26
32
  * Derives shared tagging secret and from that, the app address and recipient derives the directional app tagging
@@ -39,20 +45,21 @@ export class DirectionalAppTaggingSecret {
39
45
  externalAddress: AztecAddress,
40
46
  app: AztecAddress,
41
47
  recipient: AztecAddress,
42
- ): Promise<DirectionalAppTaggingSecret> {
48
+ ): Promise<ExtendedDirectionalAppTaggingSecret> {
43
49
  const taggingSecretPoint = await computeSharedTaggingSecret(localAddress, localIvsk, externalAddress);
44
50
  const appTaggingSecret = await poseidon2Hash([taggingSecretPoint.x, taggingSecretPoint.y, app]);
45
51
  const directionalAppTaggingSecret = await poseidon2Hash([appTaggingSecret, recipient]);
46
52
 
47
- return new DirectionalAppTaggingSecret(directionalAppTaggingSecret);
53
+ return new ExtendedDirectionalAppTaggingSecret(directionalAppTaggingSecret, app);
48
54
  }
49
55
 
50
56
  toString(): string {
51
- return this.value.toString();
57
+ return `${this.secret.toString()}:${this.app.toString()}`;
52
58
  }
53
59
 
54
- static fromString(str: string): DirectionalAppTaggingSecret {
55
- return new DirectionalAppTaggingSecret(Fr.fromString(str));
60
+ static fromString(str: string): ExtendedDirectionalAppTaggingSecret {
61
+ const [secretStr, appStr] = str.split(':');
62
+ return new ExtendedDirectionalAppTaggingSecret(Fr.fromString(secretStr), AztecAddress.fromString(appStr));
56
63
  }
57
64
  }
58
65
 
@@ -74,6 +81,7 @@ async function computeSharedTaggingSecret(
74
81
  return Grumpkin.mul(externalAddressPoint, await computeAddressSecret(knownPreaddress, localIvsk));
75
82
  }
76
83
 
77
- export const DirectionalAppTaggingSecretSchema = z.object({
78
- value: Fr.schema,
84
+ export const ExtendedDirectionalAppTaggingSecretSchema = z.object({
85
+ secret: Fr.schema,
86
+ app: AztecAddress.schema,
79
87
  });
package/src/logs/index.ts CHANGED
@@ -1,4 +1,4 @@
1
- export * from './directional_app_tagging_secret.js';
1
+ export * from './extended_directional_app_tagging_secret.js';
2
2
  export * from './pre_tag.js';
3
3
  export * from './contract_class_log.js';
4
4
  export * from './public_log.js';
@@ -12,5 +12,6 @@ export * from './shared_secret_derivation.js';
12
12
  export * from './tx_scoped_l2_log.js';
13
13
  export * from './message_context.js';
14
14
  export * from './debug_log.js';
15
+ export * from './debug_log_store.js';
15
16
  export * from './tag.js';
16
17
  export * from './siloed_tag.js';
@@ -3,9 +3,9 @@ import { schemas } from '@aztec/foundation/schemas';
3
3
  import { z } from 'zod';
4
4
 
5
5
  import {
6
- type DirectionalAppTaggingSecret,
7
- DirectionalAppTaggingSecretSchema,
8
- } from './directional_app_tagging_secret.js';
6
+ type ExtendedDirectionalAppTaggingSecret,
7
+ ExtendedDirectionalAppTaggingSecretSchema,
8
+ } from './extended_directional_app_tagging_secret.js';
9
9
 
10
10
  /**
11
11
  * Represents a preimage of a private log tag (see `Tag` in `pxe/src/tagging`).
@@ -15,11 +15,11 @@ import {
15
15
  * around this.
16
16
  */
17
17
  export type PreTag = {
18
- secret: DirectionalAppTaggingSecret;
18
+ extendedSecret: ExtendedDirectionalAppTaggingSecret;
19
19
  index: number;
20
20
  };
21
21
 
22
22
  export const PreTagSchema = z.object({
23
- secret: DirectionalAppTaggingSecretSchema,
23
+ extendedSecret: ExtendedDirectionalAppTaggingSecretSchema,
24
24
  index: schemas.Integer,
25
25
  });
@@ -4,7 +4,8 @@ import type { ZodFor } from '@aztec/foundation/schemas';
4
4
  import type { AztecAddress } from '../aztec-address/index.js';
5
5
  import { computeSiloedPrivateLogFirstField } from '../hash/hash.js';
6
6
  import { schemas } from '../schemas/schemas.js';
7
- import type { Tag } from './tag.js';
7
+ import type { PreTag } from './pre_tag.js';
8
+ import { Tag } from './tag.js';
8
9
 
9
10
  /* eslint-disable @typescript-eslint/no-unsafe-declaration-merging */
10
11
 
@@ -21,7 +22,12 @@ export interface SiloedTag {
21
22
  export class SiloedTag {
22
23
  constructor(public readonly value: Fr) {}
23
24
 
24
- static async compute(tag: Tag, app: AztecAddress): Promise<SiloedTag> {
25
+ static async compute(preTag: PreTag): Promise<SiloedTag> {
26
+ const tag = await Tag.compute(preTag);
27
+ return SiloedTag.computeFromTagAndApp(tag, preTag.extendedSecret.app);
28
+ }
29
+
30
+ static async computeFromTagAndApp(tag: Tag, app: AztecAddress): Promise<SiloedTag> {
25
31
  const siloedTag = await computeSiloedPrivateLogFirstField(app, tag.value);
26
32
  return new SiloedTag(siloedTag);
27
33
  }
package/src/logs/tag.ts CHANGED
@@ -20,7 +20,7 @@ export class Tag {
20
20
  constructor(public readonly value: Fr) {}
21
21
 
22
22
  static async compute(preTag: PreTag): Promise<Tag> {
23
- const tag = await poseidon2Hash([preTag.secret.value, preTag.index]);
23
+ const tag = await poseidon2Hash([preTag.extendedSecret.secret, preTag.index]);
24
24
  return new Tag(tag);
25
25
  }
26
26
 
@@ -128,6 +128,7 @@ import {
128
128
  PublicCallRequestArrayLengths,
129
129
  } from '../kernel/public_call_request.js';
130
130
  import { PublicKeys, computeAddress } from '../keys/index.js';
131
+ import { ExtendedDirectionalAppTaggingSecret } from '../logs/extended_directional_app_tagging_secret.js';
131
132
  import { ContractClassLog, ContractClassLogFields } from '../logs/index.js';
132
133
  import { PrivateLog } from '../logs/private_log.js';
133
134
  import { FlatPublicLogs, PublicLog } from '../logs/public_log.js';
@@ -1757,3 +1758,11 @@ export function makeL2Tips(
1757
1758
  },
1758
1759
  };
1759
1760
  }
1761
+
1762
+ export async function randomExtendedDirectionalAppTaggingSecret(): Promise<ExtendedDirectionalAppTaggingSecret> {
1763
+ const resolvedApp = await AztecAddress.random();
1764
+ // Using the fromString method like this is messy as it leaks the underlying serialization format but I don't want to
1765
+ // expose the type's constructor just for tests since in prod the secret is always constructed via compute. Also this
1766
+ // method is tested in extended_directional_app_tagging_secret.test.ts hence all should be fine.
1767
+ return ExtendedDirectionalAppTaggingSecret.fromString(`${Fr.random().toString()}:${resolvedApp.toString()}`);
1768
+ }
@@ -157,23 +157,23 @@ export class TxProfileResult {
157
157
  }
158
158
  }
159
159
 
160
- export class UtilitySimulationResult {
160
+ export class UtilityExecutionResult {
161
161
  constructor(
162
162
  public result: Fr[],
163
163
  public stats?: SimulationStats,
164
164
  ) {}
165
165
 
166
- static get schema(): ZodFor<UtilitySimulationResult> {
166
+ static get schema(): ZodFor<UtilityExecutionResult> {
167
167
  return z
168
168
  .object({
169
169
  result: z.array(schemas.Fr),
170
170
  stats: optional(SimulationStatsSchema),
171
171
  })
172
- .transform(({ result, stats }) => new UtilitySimulationResult(result, stats));
172
+ .transform(({ result, stats }) => new UtilityExecutionResult(result, stats));
173
173
  }
174
174
 
175
- static random(): UtilitySimulationResult {
176
- return new UtilitySimulationResult([Fr.random()], {
175
+ static random(): UtilityExecutionResult {
176
+ return new UtilityExecutionResult([Fr.random()], {
177
177
  nodeRPCCalls: {
178
178
  perMethod: { getBlockHeader: { times: [1] } },
179
179
  roundTrips: {
@@ -7,6 +7,7 @@ import { z } from 'zod';
7
7
  import { SimulationError } from '../errors/simulation_error.js';
8
8
  import { Gas } from '../gas/gas.js';
9
9
  import type { GasUsed } from '../gas/gas_used.js';
10
+ import { DebugLog } from '../logs/debug_log.js';
10
11
  import { NullishToUndefined } from '../schemas/schemas.js';
11
12
  import { TxEffect } from '../tx/tx_effect.js';
12
13
  import { GlobalVariables } from './global_variables.js';
@@ -71,6 +72,7 @@ export class PublicSimulationOutput {
71
72
  public txEffect: TxEffect,
72
73
  public publicReturnValues: NestedProcessReturnValues[],
73
74
  public gasUsed: GasUsed,
75
+ public debugLogs: DebugLog[] = [],
74
76
  ) {}
75
77
 
76
78
  static get schema(): ZodFor<PublicSimulationOutput> {
@@ -86,6 +88,7 @@ export class PublicSimulationOutput {
86
88
  publicGas: Gas.schema,
87
89
  billedGas: Gas.schema,
88
90
  }),
91
+ debugLogs: z.array(DebugLog.schema).default([]),
89
92
  })
90
93
  .transform(
91
94
  fields =>
@@ -95,6 +98,7 @@ export class PublicSimulationOutput {
95
98
  fields.txEffect,
96
99
  fields.publicReturnValues,
97
100
  fields.gasUsed,
101
+ fields.debugLogs,
98
102
  ),
99
103
  );
100
104
  }