@proto-kit/protocol 0.1.1-develop.1316 → 0.1.1-develop.1343

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 (145) hide show
  1. package/dist/hooks/AccountStateHook.d.ts +3 -3
  2. package/dist/hooks/AccountStateHook.d.ts.map +1 -1
  3. package/dist/hooks/AccountStateHook.js +6 -2
  4. package/dist/hooks/AccountStateHook.js.map +1 -1
  5. package/dist/hooks/LastStateRootBlockHook.d.ts +3 -4
  6. package/dist/hooks/LastStateRootBlockHook.d.ts.map +1 -1
  7. package/dist/hooks/LastStateRootBlockHook.js +4 -4
  8. package/dist/hooks/LastStateRootBlockHook.js.map +1 -1
  9. package/dist/hooks/NoopBlockHook.d.ts +3 -4
  10. package/dist/hooks/NoopBlockHook.d.ts.map +1 -1
  11. package/dist/hooks/NoopBlockHook.js +1 -1
  12. package/dist/hooks/NoopBlockHook.js.map +1 -1
  13. package/dist/hooks/NoopTransactionHook.d.ts +2 -2
  14. package/dist/hooks/NoopTransactionHook.d.ts.map +1 -1
  15. package/dist/hooks/NoopTransactionHook.js +4 -1
  16. package/dist/hooks/NoopTransactionHook.js.map +1 -1
  17. package/dist/index.d.ts +6 -1
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.js +6 -1
  20. package/dist/index.js.map +1 -1
  21. package/dist/model/AppliedStateTransitionBatch.d.ts +114 -0
  22. package/dist/model/AppliedStateTransitionBatch.d.ts.map +1 -0
  23. package/dist/model/AppliedStateTransitionBatch.js +16 -0
  24. package/dist/model/AppliedStateTransitionBatch.js.map +1 -0
  25. package/dist/model/StateTransition.d.ts +1 -0
  26. package/dist/model/StateTransition.d.ts.map +1 -1
  27. package/dist/model/StateTransition.js +5 -0
  28. package/dist/model/StateTransition.js.map +1 -1
  29. package/dist/model/StateTransitionProvableBatch.d.ts +249 -97
  30. package/dist/model/StateTransitionProvableBatch.d.ts.map +1 -1
  31. package/dist/model/StateTransitionProvableBatch.js +72 -65
  32. package/dist/model/StateTransitionProvableBatch.js.map +1 -1
  33. package/dist/model/transaction/RuntimeTransaction.d.ts +1 -0
  34. package/dist/model/transaction/RuntimeTransaction.d.ts.map +1 -1
  35. package/dist/model/transaction/RuntimeTransaction.js +3 -0
  36. package/dist/model/transaction/RuntimeTransaction.js.map +1 -1
  37. package/dist/protocol/ProvableBlockHook.d.ts +13 -3
  38. package/dist/protocol/ProvableBlockHook.d.ts.map +1 -1
  39. package/dist/protocol/ProvableBlockHook.js +16 -0
  40. package/dist/protocol/ProvableBlockHook.js.map +1 -1
  41. package/dist/protocol/ProvableTransactionHook.d.ts +29 -2
  42. package/dist/protocol/ProvableTransactionHook.d.ts.map +1 -1
  43. package/dist/protocol/ProvableTransactionHook.js +9 -0
  44. package/dist/protocol/ProvableTransactionHook.js.map +1 -1
  45. package/dist/prover/accumulators/AppliedBatchHashList.d.ts +18 -0
  46. package/dist/prover/accumulators/AppliedBatchHashList.d.ts.map +1 -0
  47. package/dist/prover/accumulators/AppliedBatchHashList.js +25 -0
  48. package/dist/prover/accumulators/AppliedBatchHashList.js.map +1 -0
  49. package/dist/{utils → prover/accumulators}/StateTransitionReductionList.d.ts +3 -2
  50. package/dist/prover/accumulators/StateTransitionReductionList.d.ts.map +1 -0
  51. package/dist/{utils → prover/accumulators}/StateTransitionReductionList.js +6 -3
  52. package/dist/prover/accumulators/StateTransitionReductionList.js.map +1 -0
  53. package/dist/prover/accumulators/TransactionHashList.d.ts +6 -0
  54. package/dist/prover/accumulators/TransactionHashList.d.ts.map +1 -0
  55. package/dist/prover/accumulators/TransactionHashList.js +8 -0
  56. package/dist/prover/accumulators/TransactionHashList.js.map +1 -0
  57. package/dist/prover/accumulators/WitnessedRootHashList.d.ts +137 -0
  58. package/dist/prover/accumulators/WitnessedRootHashList.d.ts.map +1 -0
  59. package/dist/prover/accumulators/WitnessedRootHashList.js +50 -0
  60. package/dist/prover/accumulators/WitnessedRootHashList.js.map +1 -0
  61. package/dist/prover/block/BlockProvable.d.ts +579 -35
  62. package/dist/prover/block/BlockProvable.d.ts.map +1 -1
  63. package/dist/prover/block/BlockProvable.js +55 -3
  64. package/dist/prover/block/BlockProvable.js.map +1 -1
  65. package/dist/prover/block/BlockProver.d.ts +52 -50
  66. package/dist/prover/block/BlockProver.d.ts.map +1 -1
  67. package/dist/prover/block/BlockProver.js +289 -209
  68. package/dist/prover/block/BlockProver.js.map +1 -1
  69. package/dist/prover/block/accummulators/BlockHashMerkleTree.d.ts +55 -13
  70. package/dist/prover/block/accummulators/BlockHashMerkleTree.d.ts.map +1 -1
  71. package/dist/prover/block/accummulators/BlockHashMerkleTree.js +11 -3
  72. package/dist/prover/block/accummulators/BlockHashMerkleTree.js.map +1 -1
  73. package/dist/prover/statetransition/StateTransitionProvable.d.ts +107 -106
  74. package/dist/prover/statetransition/StateTransitionProvable.d.ts.map +1 -1
  75. package/dist/prover/statetransition/StateTransitionProvable.js +8 -8
  76. package/dist/prover/statetransition/StateTransitionProvable.js.map +1 -1
  77. package/dist/prover/statetransition/StateTransitionProver.d.ts +14 -11
  78. package/dist/prover/statetransition/StateTransitionProver.d.ts.map +1 -1
  79. package/dist/prover/statetransition/StateTransitionProver.js +116 -62
  80. package/dist/prover/statetransition/StateTransitionProver.js.map +1 -1
  81. package/dist/settlement/contracts/DispatchContractProtocolModule.d.ts +1 -1
  82. package/dist/settlement/contracts/DispatchSmartContract.d.ts +1 -1
  83. package/dist/settlement/contracts/SettlementSmartContract.d.ts.map +1 -1
  84. package/dist/settlement/contracts/SettlementSmartContract.js +1 -0
  85. package/dist/settlement/contracts/SettlementSmartContract.js.map +1 -1
  86. package/dist/state/assert/assert.d.ts.map +1 -1
  87. package/dist/state/assert/assert.js +5 -3
  88. package/dist/state/assert/assert.js.map +1 -1
  89. package/dist/state/context/RuntimeMethodExecutionContext.d.ts +3 -3
  90. package/dist/state/context/RuntimeMethodExecutionContext.d.ts.map +1 -1
  91. package/dist/state/context/RuntimeMethodExecutionContext.js +7 -4
  92. package/dist/state/context/RuntimeMethodExecutionContext.js.map +1 -1
  93. package/dist/utils/FieldOptions.d.ts +62 -0
  94. package/dist/utils/FieldOptions.d.ts.map +1 -0
  95. package/dist/utils/FieldOptions.js +13 -0
  96. package/dist/utils/FieldOptions.js.map +1 -0
  97. package/dist/utils/ProvableHashList.d.ts +21 -2
  98. package/dist/utils/ProvableHashList.d.ts.map +1 -1
  99. package/dist/utils/ProvableHashList.js +37 -2
  100. package/dist/utils/ProvableHashList.js.map +1 -1
  101. package/dist/utils/ProvableReductionHashList.d.ts +7 -3
  102. package/dist/utils/ProvableReductionHashList.d.ts.map +1 -1
  103. package/dist/utils/ProvableReductionHashList.js +8 -5
  104. package/dist/utils/ProvableReductionHashList.js.map +1 -1
  105. package/dist/utils/utils.d.ts +10 -1
  106. package/dist/utils/utils.d.ts.map +1 -1
  107. package/dist/utils/utils.js +6 -0
  108. package/dist/utils/utils.js.map +1 -1
  109. package/package.json +2 -2
  110. package/src/hooks/AccountStateHook.ts +12 -3
  111. package/src/hooks/LastStateRootBlockHook.ts +7 -8
  112. package/src/hooks/NoopBlockHook.ts +7 -4
  113. package/src/hooks/NoopTransactionHook.ts +5 -2
  114. package/src/index.ts +6 -1
  115. package/src/model/AppliedStateTransitionBatch.ts +16 -0
  116. package/src/model/StateTransition.ts +6 -0
  117. package/src/model/StateTransitionProvableBatch.ts +94 -105
  118. package/src/model/transaction/RuntimeTransaction.ts +4 -0
  119. package/src/protocol/ProvableBlockHook.ts +51 -3
  120. package/src/protocol/ProvableTransactionHook.ts +67 -3
  121. package/src/prover/accumulators/AppliedBatchHashList.ts +32 -0
  122. package/src/{utils → prover/accumulators}/StateTransitionReductionList.ts +7 -4
  123. package/src/prover/accumulators/TransactionHashList.ts +9 -0
  124. package/src/prover/accumulators/WitnessedRootHashList.ts +61 -0
  125. package/src/prover/block/BlockProvable.ts +128 -9
  126. package/src/prover/block/BlockProver.ts +531 -383
  127. package/src/prover/block/accummulators/BlockHashMerkleTree.ts +11 -3
  128. package/src/prover/statetransition/StateTransitionProvable.ts +17 -11
  129. package/src/prover/statetransition/StateTransitionProver.ts +219 -144
  130. package/src/settlement/contracts/SettlementSmartContract.ts +4 -0
  131. package/src/state/assert/assert.ts +6 -3
  132. package/src/state/context/RuntimeMethodExecutionContext.ts +15 -7
  133. package/src/utils/FieldOptions.ts +13 -0
  134. package/src/utils/ProvableHashList.ts +77 -2
  135. package/src/utils/ProvableReductionHashList.ts +12 -3
  136. package/src/utils/utils.ts +18 -1
  137. package/test/BlockProver.test.ts +2 -0
  138. package/test/TestingProtocol.ts +5 -0
  139. package/test/model/StateTransitionProvableBatch.test.ts +137 -0
  140. package/test/prover/block/BlockProver.test.ts +18 -0
  141. package/test/prover/statetransition/StateTransitionProver.test.ts +240 -0
  142. package/test/utils/ProvableHashList.test.ts +44 -0
  143. package/test/utils/ProvableReductionHashList.test.ts +1 -1
  144. package/dist/utils/StateTransitionReductionList.d.ts.map +0 -1
  145. package/dist/utils/StateTransitionReductionList.js.map +0 -1
@@ -1,16 +1,18 @@
1
1
  import { AreProofsEnabled, PlainZkProgram, RollupMerkleTreeWitness, ZkProgrammable, CompilableModule, type ArtifactRecord, type CompileRegistry } from "@proto-kit/common";
2
2
  import { Field } from "o1js";
3
3
  import { ProvableStateTransition } from "../../model/StateTransition";
4
- import { ProvableStateTransitionType, StateTransitionProvableBatch } from "../../model/StateTransitionProvableBatch";
4
+ import { MerkleWitnessBatch, StateTransitionProvableBatch } from "../../model/StateTransitionProvableBatch";
5
5
  import { StateTransitionProverType } from "../../protocol/Protocol";
6
6
  import { ProtocolModule } from "../../protocol/ProtocolModule";
7
- import { ProvableHashList } from "../../utils/ProvableHashList";
7
+ import { WitnessedRootHashList } from "../accumulators/WitnessedRootHashList";
8
+ import { AppliedBatchHashList } from "../accumulators/AppliedBatchHashList";
9
+ import { AppliedStateTransitionBatchState } from "../../model/AppliedStateTransitionBatch";
8
10
  import { StateTransitionProof, StateTransitionProvable, StateTransitionProverPublicInput, StateTransitionProverPublicOutput } from "./StateTransitionProvable";
9
11
  interface StateTransitionProverExecutionState {
10
- stateRoot: Field;
11
- protocolStateRoot: Field;
12
- stateTransitionList: ProvableHashList<ProvableStateTransition>;
13
- protocolTransitionList: ProvableHashList<ProvableStateTransition>;
12
+ currentBatch: AppliedStateTransitionBatchState;
13
+ batchList: AppliedBatchHashList;
14
+ finalizedRoot: Field;
15
+ witnessedRoots: WitnessedRootHashList;
14
16
  }
15
17
  /**
16
18
  * StateTransitionProver is the prover that proves the application of some state
@@ -18,30 +20,31 @@ interface StateTransitionProverExecutionState {
18
20
  */
19
21
  export declare class StateTransitionProverProgrammable extends ZkProgrammable<StateTransitionProverPublicInput, StateTransitionProverPublicOutput> {
20
22
  private readonly stateTransitionProver;
21
- constructor(stateTransitionProver: StateTransitionProver);
23
+ constructor(stateTransitionProver: Pick<StateTransitionProver, "areProofsEnabled">);
22
24
  get areProofsEnabled(): AreProofsEnabled | undefined;
23
25
  zkProgramFactory(): PlainZkProgram<StateTransitionProverPublicInput, StateTransitionProverPublicOutput>[];
24
26
  /**
25
27
  * Applies the state transitions to the current stateRoot
26
28
  * and returns the new prover state
27
29
  */
28
- applyTransitions(stateRoot: Field, protocolStateRoot: Field, stateTransitionCommitmentFrom: Field, protocolTransitionCommitmentFrom: Field, transitionBatch: StateTransitionProvableBatch): StateTransitionProverExecutionState;
30
+ applyTransitions(state: StateTransitionProverExecutionState, batch: StateTransitionProvableBatch, witnesses: MerkleWitnessBatch): StateTransitionProverExecutionState;
29
31
  /**
30
32
  * Applies a single state transition to the given state
31
33
  * and mutates it in place
32
34
  */
33
- applyTransition(state: StateTransitionProverExecutionState, transition: ProvableStateTransition, type: ProvableStateTransitionType, merkleWitness: RollupMerkleTreeWitness, index?: number): void;
35
+ applyTransition(currentBatch: AppliedStateTransitionBatchState, transition: ProvableStateTransition, witness: RollupMerkleTreeWitness, index?: number): AppliedStateTransitionBatchState;
36
+ private applyTransitionToRoot;
34
37
  /**
35
38
  * Applies a whole batch of StateTransitions at once
36
39
  */
37
- runBatch(publicInput: StateTransitionProverPublicInput, batch: StateTransitionProvableBatch): Promise<StateTransitionProverPublicOutput>;
40
+ proveBatch(publicInput: StateTransitionProverPublicInput, batch: StateTransitionProvableBatch, witnesses: MerkleWitnessBatch, currentAppliedBatch: AppliedStateTransitionBatchState): Promise<StateTransitionProverPublicOutput>;
38
41
  merge(publicInput: StateTransitionProverPublicInput, proof1: StateTransitionProof, proof2: StateTransitionProof): Promise<StateTransitionProverPublicOutput>;
39
42
  }
40
43
  export declare class StateTransitionProver extends ProtocolModule implements StateTransitionProvable, StateTransitionProverType, CompilableModule {
41
44
  zkProgrammable: StateTransitionProverProgrammable;
42
45
  constructor();
43
46
  compile(registry: CompileRegistry): Promise<void | ArtifactRecord>;
44
- runBatch(publicInput: StateTransitionProverPublicInput, batch: StateTransitionProvableBatch): Promise<StateTransitionProverPublicOutput>;
47
+ proveBatch(publicInput: StateTransitionProverPublicInput, batch: StateTransitionProvableBatch, witnesses: MerkleWitnessBatch, startingAppliedBatch: AppliedStateTransitionBatchState): Promise<StateTransitionProverPublicOutput>;
45
48
  merge(publicInput: StateTransitionProverPublicInput, proof1: StateTransitionProof, proof2: StateTransitionProof): Promise<StateTransitionProverPublicOutput>;
46
49
  }
47
50
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"StateTransitionProver.d.ts","sourceRoot":"","sources":["../../../src/prover/statetransition/StateTransitionProver.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,cAAc,EAEd,uBAAuB,EACvB,cAAc,EACd,gBAAgB,EAChB,KAAK,cAAc,EACnB,KAAK,eAAe,EACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,KAAK,EAAkC,MAAM,MAAM,CAAC;AAI7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EACL,2BAA2B,EAC3B,4BAA4B,EAC7B,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAEL,gBAAgB,EACjB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,gCAAgC,EAChC,iCAAiC,EAClC,MAAM,2BAA2B,CAAC;AA0BnC,UAAU,mCAAmC;IAC3C,SAAS,EAAE,KAAK,CAAC;IACjB,iBAAiB,EAAE,KAAK,CAAC;IACzB,mBAAmB,EAAE,gBAAgB,CAAC,uBAAuB,CAAC,CAAC;IAC/D,sBAAsB,EAAE,gBAAgB,CAAC,uBAAuB,CAAC,CAAC;CACnE;AAOD;;;GAGG;AACH,qBAAa,iCAAkC,SAAQ,cAAc,CACnE,gCAAgC,EAChC,iCAAiC,CAClC;IAEG,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBAArB,qBAAqB,EAAE,qBAAqB;IAK/D,IAAW,gBAAgB,IAAI,gBAAgB,GAAG,SAAS,CAE1D;IAEM,gBAAgB,IAAI,cAAc,CACvC,gCAAgC,EAChC,iCAAiC,CAClC,EAAE;IAwDH;;;OAGG;IACI,gBAAgB,CACrB,SAAS,EAAE,KAAK,EAChB,iBAAiB,EAAE,KAAK,EACxB,6BAA6B,EAAE,KAAK,EACpC,gCAAgC,EAAE,KAAK,EACvC,eAAe,EAAE,4BAA4B,GAC5C,mCAAmC;IAoCtC;;;OAGG;IACI,eAAe,CACpB,KAAK,EAAE,mCAAmC,EAC1C,UAAU,EAAE,uBAAuB,EACnC,IAAI,EAAE,2BAA2B,EACjC,aAAa,EAAE,uBAAuB,EACtC,KAAK,SAAI;IAwCX;;OAEG;IAEU,QAAQ,CACnB,WAAW,EAAE,gCAAgC,EAC7C,KAAK,EAAE,4BAA4B,GAClC,OAAO,CAAC,iCAAiC,CAAC;IAkBhC,KAAK,CAChB,WAAW,EAAE,gCAAgC,EAC7C,MAAM,EAAE,oBAAoB,EAC5B,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,iCAAiC,CAAC;CAqE9C;AAED,qBACa,qBACX,SAAQ,cACR,YACE,uBAAuB,EACvB,yBAAyB,EACzB,gBAAgB;IAEX,cAAc,EAAE,iCAAiC,CAAC;;IAO5C,OAAO,CAClB,QAAQ,EAAE,eAAe,GACxB,OAAO,CAAC,IAAI,GAAG,cAAc,CAAC;IAI1B,QAAQ,CACb,WAAW,EAAE,gCAAgC,EAC7C,KAAK,EAAE,4BAA4B,GAClC,OAAO,CAAC,iCAAiC,CAAC;IAItC,KAAK,CACV,WAAW,EAAE,gCAAgC,EAC7C,MAAM,EAAE,oBAAoB,EAC5B,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,iCAAiC,CAAC;CAG9C"}
1
+ {"version":3,"file":"StateTransitionProver.d.ts","sourceRoot":"","sources":["../../../src/prover/statetransition/StateTransitionProver.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,cAAc,EAEd,uBAAuB,EACvB,cAAc,EACd,gBAAgB,EAChB,KAAK,cAAc,EACnB,KAAK,eAAe,EACrB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,KAAK,EAAkC,MAAM,MAAM,CAAC;AAI7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EACL,kBAAkB,EAClB,4BAA4B,EAE7B,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,gCAAgC,EAAE,MAAM,yCAAyC,CAAC;AAE3F,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,gCAAgC,EAChC,iCAAiC,EAClC,MAAM,2BAA2B,CAAC;AAUnC,UAAU,mCAAmC;IAC3C,YAAY,EAAE,gCAAgC,CAAC;IAC/C,SAAS,EAAE,oBAAoB,CAAC;IAChC,aAAa,EAAE,KAAK,CAAC;IACrB,cAAc,EAAE,qBAAqB,CAAC;CACvC;AAOD;;;GAGG;AACH,qBAAa,iCAAkC,SAAQ,cAAc,CACnE,gCAAgC,EAChC,iCAAiC,CAClC;IAEG,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBAArB,qBAAqB,EAAE,IAAI,CAC1C,qBAAqB,EACrB,kBAAkB,CACnB;IAKH,IAAW,gBAAgB,IAAI,gBAAgB,GAAG,SAAS,CAE1D;IAEM,gBAAgB,IAAI,cAAc,CACvC,gCAAgC,EAChC,iCAAiC,CAClC,EAAE;IAmEH;;;OAGG;IACI,gBAAgB,CACrB,KAAK,EAAE,mCAAmC,EAC1C,KAAK,EAAE,4BAA4B,EACnC,SAAS,EAAE,kBAAkB;IA2F/B;;;OAGG;IACI,eAAe,CACpB,YAAY,EAAE,gCAAgC,EAC9C,UAAU,EAAE,uBAAuB,EACnC,OAAO,EAAE,uBAAuB,EAChC,KAAK,SAAI;IAuBX,OAAO,CAAC,qBAAqB;IAqB7B;;OAEG;IAEU,UAAU,CACrB,WAAW,EAAE,gCAAgC,EAC7C,KAAK,EAAE,4BAA4B,EACnC,SAAS,EAAE,kBAAkB,EAC7B,mBAAmB,EAAE,gCAAgC,GACpD,OAAO,CAAC,iCAAiC,CAAC;IAiChC,KAAK,CAChB,WAAW,EAAE,gCAAgC,EAC7C,MAAM,EAAE,oBAAoB,EAC5B,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,iCAAiC,CAAC;CAkE9C;AAED,qBACa,qBACX,SAAQ,cACR,YACE,uBAAuB,EACvB,yBAAyB,EACzB,gBAAgB;IAEX,cAAc,EAAE,iCAAiC,CAAC;;IAO5C,OAAO,CAClB,QAAQ,EAAE,eAAe,GACxB,OAAO,CAAC,IAAI,GAAG,cAAc,CAAC;IAI1B,UAAU,CACf,WAAW,EAAE,gCAAgC,EAC7C,KAAK,EAAE,4BAA4B,EACnC,SAAS,EAAE,kBAAkB,EAC7B,oBAAoB,EAAE,gCAAgC,GACrD,OAAO,CAAC,iCAAiC,CAAC;IAStC,KAAK,CACV,WAAW,EAAE,gCAAgC,EAC7C,MAAM,EAAE,oBAAoB,EAC5B,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,iCAAiC,CAAC;CAG9C"}
@@ -12,20 +12,16 @@ import { Field, Provable, SelfProof, ZkProgram } from "o1js";
12
12
  import { injectable } from "tsyringe";
13
13
  import { constants } from "../../Constants";
14
14
  import { ProvableStateTransition } from "../../model/StateTransition";
15
- import { StateTransitionProvableBatch, } from "../../model/StateTransitionProvableBatch";
15
+ import { MerkleWitnessBatch, StateTransitionProvableBatch, StateTransitionType, } from "../../model/StateTransitionProvableBatch";
16
16
  import { ProtocolModule } from "../../protocol/ProtocolModule";
17
- import { DefaultProvableHashList, } from "../../utils/ProvableHashList";
17
+ import { DefaultProvableHashList } from "../../utils/ProvableHashList";
18
+ import { WitnessedRootHashList } from "../accumulators/WitnessedRootHashList";
19
+ import { AppliedBatchHashList } from "../accumulators/AppliedBatchHashList";
20
+ import { AppliedStateTransitionBatchState } from "../../model/AppliedStateTransitionBatch";
18
21
  import { StateTransitionProverPublicInput, StateTransitionProverPublicOutput, } from "./StateTransitionProvable";
19
22
  const errors = {
20
23
  propertyNotMatching: (property, step) => `${property} not matching ${step}`,
21
- merkleWitnessNotCorrect: (index, type) => {
22
- let s = `MerkleWitness not valid for StateTransition (${index}, type unknown)`;
23
- Provable.asProver(() => {
24
- s = s.replace("unknown", type.isNormal().toBoolean() ? "normal" : "protocol");
25
- });
26
- return s;
27
- },
28
- noWitnessProviderSet: () => new Error("WitnessProvider not set, set it before you use StateTransitionProvider"),
24
+ merkleWitnessNotCorrect: (index) => `MerkleWitness not valid for StateTransition (${index})`,
29
25
  };
30
26
  const StateTransitionSelfProofClass = (SelfProof);
31
27
  /**
@@ -47,10 +43,14 @@ export class StateTransitionProverProgrammable extends ZkProgrammable {
47
43
  publicInput: StateTransitionProverPublicInput,
48
44
  publicOutput: StateTransitionProverPublicOutput,
49
45
  methods: {
50
- runBatch: {
51
- privateInputs: [StateTransitionProvableBatch],
52
- async method(publicInput, batch) {
53
- return await instance.runBatch(publicInput, batch);
46
+ proveBatch: {
47
+ privateInputs: [
48
+ StateTransitionProvableBatch,
49
+ MerkleWitnessBatch,
50
+ AppliedStateTransitionBatchState,
51
+ ],
52
+ async method(publicInput, batch, witnesses, currentAppliedBatch) {
53
+ return await instance.proveBatch(publicInput, batch, witnesses, currentAppliedBatch);
54
54
  },
55
55
  },
56
56
  merge: {
@@ -65,7 +65,7 @@ export class StateTransitionProverProgrammable extends ZkProgrammable {
65
65
  },
66
66
  });
67
67
  const methods = {
68
- runBatch: program.runBatch.bind(program),
68
+ proveBatch: program.proveBatch.bind(program),
69
69
  merge: program.merge.bind(program),
70
70
  };
71
71
  const SelfProofClass = ZkProgram.Proof(program);
@@ -84,18 +84,50 @@ export class StateTransitionProverProgrammable extends ZkProgrammable {
84
84
  * Applies the state transitions to the current stateRoot
85
85
  * and returns the new prover state
86
86
  */
87
- applyTransitions(stateRoot, protocolStateRoot, stateTransitionCommitmentFrom, protocolTransitionCommitmentFrom, transitionBatch) {
88
- const state = {
89
- stateRoot,
90
- protocolStateRoot,
91
- stateTransitionList: new DefaultProvableHashList(ProvableStateTransition, stateTransitionCommitmentFrom),
92
- protocolTransitionList: new DefaultProvableHashList(ProvableStateTransition, protocolTransitionCommitmentFrom),
93
- };
94
- const transitions = transitionBatch.batch;
95
- const types = transitionBatch.transitionTypes;
96
- const merkleWitness = transitionBatch.merkleWitnesses;
87
+ applyTransitions(state, batch, witnesses) {
88
+ const transitions = batch.batch;
97
89
  for (let index = 0; index < constants.stateTransitionProverBatchSize; index++) {
98
- this.applyTransition(state, transitions[index], types[index], merkleWitness[index], index);
90
+ const updatedBatchState = this.applyTransition(state.currentBatch, transitions[index].stateTransition, witnesses.witnesses[index], index);
91
+ // If the current batch is finished, we push it to the list
92
+ // and initialize the next
93
+ const { type, witnessRoot } = transitions[index];
94
+ const closing = type.isClosing();
95
+ const closingAndApply = type.type.equals(StateTransitionType.closeAndApply);
96
+ // Create the newBatch
97
+ // The root is based on if the previous batch will be applied or not
98
+ const base = Provable.if(closingAndApply, updatedBatchState.root, state.finalizedRoot);
99
+ const newBatchState = new AppliedStateTransitionBatchState({
100
+ batchHash: Field(0),
101
+ root: base,
102
+ });
103
+ const updatedBatch = {
104
+ applied: closingAndApply,
105
+ batchHash: updatedBatchState.batchHash,
106
+ };
107
+ state.batchList.pushIf(updatedBatch, closing);
108
+ state.finalizedRoot = Provable.if(closingAndApply, updatedBatchState.root, state.finalizedRoot);
109
+ // Add computed root to the witnessed root list if needed
110
+ witnessRoot
111
+ .implies(closing)
112
+ .assertTrue("Can only witness roots at closing batches");
113
+ state.witnessedRoots.pushIf({
114
+ root: state.finalizedRoot,
115
+ appliedBatchListState: state.batchList.commitment,
116
+ }, witnessRoot);
117
+ const isDummy = ProvableStateTransition.isDummy(transitions[index].stateTransition);
118
+ // Dummy STs cannot change any state, as to prevent any
119
+ // dummy-in-the-middle attacks. This is given if the type is nothing.
120
+ isDummy
121
+ .implies(type.isNothing())
122
+ .assertTrue("Dummies have to be of type 'nothing'");
123
+ isDummy
124
+ .implies(state.currentBatch.batchHash.equals(0))
125
+ .assertTrue("Dummies can only be placed on closed batchLists");
126
+ // Dummies don't close the batch, but we still want to ignore any
127
+ // updated batch, since we need to result to stay.
128
+ // This will break the pipeline if there is a dummy in the middle,
129
+ // but will only end up to invalid proofs (i.e. mismatched batches)
130
+ state.currentBatch = new AppliedStateTransitionBatchState(Provable.if(closing.or(isDummy), AppliedStateTransitionBatchState, newBatchState, updatedBatchState));
99
131
  }
100
132
  return state;
101
133
  }
@@ -103,52 +135,72 @@ export class StateTransitionProverProgrammable extends ZkProgrammable {
103
135
  * Applies a single state transition to the given state
104
136
  * and mutates it in place
105
137
  */
106
- applyTransition(state, transition, type, merkleWitness, index = 0) {
107
- const membershipValid = merkleWitness.checkMembership(state.stateRoot, transition.path, transition.from.value);
138
+ applyTransition(currentBatch, transition, witness, index = 0) {
139
+ const impliedRoot = this.applyTransitionToRoot(transition, currentBatch.root, witness, index);
140
+ // Append ST to the current batch's ST-list
141
+ const stList = new DefaultProvableHashList(ProvableStateTransition, currentBatch.batchHash);
142
+ stList.push(transition);
143
+ // Update batch
144
+ return new AppliedStateTransitionBatchState({
145
+ batchHash: stList.commitment,
146
+ root: impliedRoot,
147
+ });
148
+ }
149
+ applyTransitionToRoot(transition, root, merkleWitness, index) {
150
+ const membershipValid = merkleWitness.checkMembership(root, transition.path, transition.from.value);
108
151
  membershipValid
109
152
  .or(transition.from.isSome.not())
110
- .assertTrue(errors.merkleWitnessNotCorrect(index, type));
153
+ .assertTrue(errors.merkleWitnessNotCorrect(index));
111
154
  const newRoot = merkleWitness.calculateRoot(transition.to.value);
112
- state.stateRoot = Provable.if(transition.to.isSome, newRoot, state.stateRoot);
113
- // Only update protocol state root if ST is also of type protocol
114
- // Since protocol STs are all at the start of the batch, this works
115
- state.protocolStateRoot = Provable.if(transition.to.isSome.and(type.isProtocol()), newRoot, state.protocolStateRoot);
116
- const isNotDummy = transition.path.equals(Field(0)).not();
117
- state.stateTransitionList.pushIf(transition, isNotDummy.and(type.isNormal()));
118
- state.protocolTransitionList.pushIf(transition, isNotDummy.and(type.isProtocol()));
155
+ return Provable.if(transition.to.isSome, newRoot, root);
119
156
  }
120
157
  /**
121
158
  * Applies a whole batch of StateTransitions at once
122
159
  */
123
- async runBatch(publicInput, batch) {
124
- const result = this.applyTransitions(publicInput.stateRoot, publicInput.protocolStateRoot, publicInput.stateTransitionsHash, publicInput.protocolTransitionsHash, batch);
160
+ async proveBatch(publicInput, batch, witnesses, currentAppliedBatch) {
161
+ currentAppliedBatch
162
+ .hashOrZero()
163
+ .assertEquals(publicInput.currentBatchStateHash, "Provided startingAppliedBatch not matching PI hash");
164
+ // Assert that either the currentAppliedBatch is somewhere intermediary
165
+ // or the root is the current "finalized" root
166
+ currentAppliedBatch.root
167
+ .equals(publicInput.root)
168
+ .or(publicInput.currentBatchStateHash.equals(0).not())
169
+ .assertTrue();
170
+ const state = {
171
+ batchList: new AppliedBatchHashList(publicInput.batchesHash),
172
+ currentBatch: currentAppliedBatch,
173
+ finalizedRoot: publicInput.root,
174
+ witnessedRoots: new WitnessedRootHashList(publicInput.witnessedRootsHash),
175
+ };
176
+ const result = this.applyTransitions(state, batch, witnesses);
125
177
  return new StateTransitionProverPublicOutput({
126
- stateRoot: result.stateRoot,
127
- stateTransitionsHash: result.stateTransitionList.commitment,
128
- protocolTransitionsHash: result.protocolTransitionList.commitment,
129
- protocolStateRoot: result.protocolStateRoot,
178
+ batchesHash: result.batchList.commitment,
179
+ currentBatchStateHash: result.currentBatch.hashOrZero(),
180
+ root: result.finalizedRoot,
181
+ witnessedRootsHash: result.witnessedRoots.commitment,
130
182
  });
131
183
  }
132
184
  async merge(publicInput, proof1, proof2) {
133
185
  proof1.verify();
134
186
  proof2.verify();
135
- // Check state
136
- publicInput.stateRoot.assertEquals(proof1.publicInput.stateRoot, errors.propertyNotMatching("stateRoot", "publicInput.from -> proof1.from"));
137
- proof1.publicOutput.stateRoot.assertEquals(proof2.publicInput.stateRoot, errors.propertyNotMatching("stateRoot", "proof1.to -> proof2.from"));
138
- // Check ST list
139
- publicInput.stateTransitionsHash.assertEquals(proof1.publicInput.stateTransitionsHash, errors.propertyNotMatching("stateTransitionsHash", "publicInput.from -> proof1.from"));
140
- proof1.publicOutput.stateTransitionsHash.assertEquals(proof2.publicInput.stateTransitionsHash, errors.propertyNotMatching("stateTransitionsHash", "proof1.to -> proof2.from"));
141
- // Check Protocol ST list
142
- publicInput.protocolTransitionsHash.assertEquals(proof1.publicInput.protocolTransitionsHash, errors.propertyNotMatching("protocolTransitionsHash", "publicInput.from -> proof1.from"));
143
- proof1.publicOutput.protocolTransitionsHash.assertEquals(proof2.publicInput.protocolTransitionsHash, errors.propertyNotMatching("protocolTransitionsHash", "proof1.to -> proof2.from"));
144
- // Check protocol state root
145
- publicInput.protocolStateRoot.assertEquals(proof1.publicInput.protocolStateRoot, errors.propertyNotMatching("protocolStateRoot", "publicInput.from -> proof1.from"));
146
- proof1.publicOutput.protocolStateRoot.assertEquals(proof2.publicInput.protocolStateRoot, errors.propertyNotMatching("protocolStateRoot", "proof1.to -> proof2.from"));
187
+ // Check current batch hash
188
+ publicInput.currentBatchStateHash.assertEquals(proof1.publicInput.currentBatchStateHash, errors.propertyNotMatching("currentBatchStateHash", "publicInput.from -> proof1.from"));
189
+ proof1.publicOutput.currentBatchStateHash.assertEquals(proof2.publicInput.currentBatchStateHash, errors.propertyNotMatching("currentBatchStateHash", "proof1.to -> proof2.from"));
190
+ // Check batches hash
191
+ publicInput.batchesHash.assertEquals(proof1.publicInput.batchesHash, errors.propertyNotMatching("batchesHash", "publicInput.from -> proof1.from"));
192
+ proof1.publicOutput.batchesHash.assertEquals(proof2.publicInput.batchesHash, errors.propertyNotMatching("batchesHash", "proof1.to -> proof2.from"));
193
+ // Check root
194
+ publicInput.root.assertEquals(proof1.publicInput.root, errors.propertyNotMatching("root", "publicInput.from -> proof1.from"));
195
+ proof1.publicOutput.root.assertEquals(proof2.publicInput.root, errors.propertyNotMatching("root", "proof1.to -> proof2.from"));
196
+ // Check root accumulator
197
+ publicInput.witnessedRootsHash.assertEquals(proof1.publicInput.witnessedRootsHash, errors.propertyNotMatching("witnessedRootsHash", "publicInput.from -> proof1.from"));
198
+ proof1.publicOutput.witnessedRootsHash.assertEquals(proof2.publicInput.witnessedRootsHash, errors.propertyNotMatching("witnessedRootsHash", "proof1.to -> proof2.from"));
147
199
  return new StateTransitionProverPublicInput({
148
- stateRoot: proof2.publicOutput.stateRoot,
149
- stateTransitionsHash: proof2.publicOutput.stateTransitionsHash,
150
- protocolTransitionsHash: proof2.publicOutput.protocolTransitionsHash,
151
- protocolStateRoot: proof2.publicOutput.protocolStateRoot,
200
+ currentBatchStateHash: proof2.publicOutput.currentBatchStateHash,
201
+ batchesHash: proof2.publicOutput.batchesHash,
202
+ root: proof2.publicOutput.root,
203
+ witnessedRootsHash: proof2.publicOutput.witnessedRootsHash,
152
204
  });
153
205
  }
154
206
  }
@@ -156,9 +208,11 @@ __decorate([
156
208
  provableMethod(),
157
209
  __metadata("design:type", Function),
158
210
  __metadata("design:paramtypes", [StateTransitionProverPublicInput,
159
- StateTransitionProvableBatch]),
211
+ StateTransitionProvableBatch,
212
+ MerkleWitnessBatch,
213
+ AppliedStateTransitionBatchState]),
160
214
  __metadata("design:returntype", Promise)
161
- ], StateTransitionProverProgrammable.prototype, "runBatch", null);
215
+ ], StateTransitionProverProgrammable.prototype, "proveBatch", null);
162
216
  __decorate([
163
217
  provableMethod(),
164
218
  __metadata("design:type", Function),
@@ -173,8 +227,8 @@ export let StateTransitionProver = class StateTransitionProver extends ProtocolM
173
227
  async compile(registry) {
174
228
  return await this.zkProgrammable.compile(registry);
175
229
  }
176
- runBatch(publicInput, batch) {
177
- return this.zkProgrammable.runBatch(publicInput, batch);
230
+ proveBatch(publicInput, batch, witnesses, startingAppliedBatch) {
231
+ return this.zkProgrammable.proveBatch(publicInput, batch, witnesses, startingAppliedBatch);
178
232
  }
179
233
  merge(publicInput, proof1, proof2) {
180
234
  return this.zkProgrammable.merge(publicInput, proof1, proof2);
@@ -1 +1 @@
1
- {"version":3,"file":"StateTransitionProver.js","sourceRoot":"","sources":["../../../src/prover/statetransition/StateTransitionProver.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAGL,cAAc,EAEd,cAAc,GAIf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAEL,4BAA4B,GAC7B,MAAM,0CAA0C,CAAC;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EACL,uBAAuB,GAExB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAGL,gCAAgC,EAChC,iCAAiC,GAClC,MAAM,2BAA2B,CAAC;AAEnC,MAAM,MAAM,GAAG;IACb,mBAAmB,EAAE,CAAC,QAAgB,EAAE,IAAY,EAAE,EAAE,CACtD,GAAG,QAAQ,iBAAiB,IAAI,EAAE;IAEpC,uBAAuB,EAAE,CACvB,KAAa,EACb,IAAiC,EACjC,EAAE;QACF,IAAI,CAAC,GAAG,gDAAgD,KAAK,iBAAiB,CAAC;QAC/E,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE;YACrB,CAAC,GAAG,CAAC,CAAC,OAAO,CACX,SAAS,EACT,IAAI,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CACpD,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,CAAC;IACX,CAAC;IAED,oBAAoB,EAAE,GAAG,EAAE,CACzB,IAAI,KAAK,CACP,wEAAwE,CACzE;CACJ,CAAC;AASF,MAAM,6BAA6B,GAAG,CAAA,SAGrC,CAAA,CAAC;AAEF;;;GAGG;AACH,MAAM,OAAO,iCAAkC,SAAQ,cAGtD;IACC,YACmB,qBAA4C;QAE7D,KAAK,EAAE,CAAC;QAFS,0BAAqB,GAArB,qBAAqB,CAAuB;IAG/D,CAAC;IAED,IAAW,gBAAgB;QACzB,OAAO,IAAI,CAAC,qBAAqB,CAAC,gBAAgB,CAAC;IACrD,CAAC;IAEM,gBAAgB;QAIrB,MAAM,QAAQ,GAAG,IAAI,CAAC;QAEtB,MAAM,OAAO,GAAG,SAAS,CAAC;YACxB,IAAI,EAAE,uBAAuB;YAC7B,WAAW,EAAE,gCAAgC;YAC7C,YAAY,EAAE,iCAAiC;YAE/C,OAAO,EAAE;gBACP,QAAQ,EAAE;oBACR,aAAa,EAAE,CAAC,4BAA4B,CAAC;oBAE7C,KAAK,CAAC,MAAM,CACV,WAA6C,EAC7C,KAAmC;wBAEnC,OAAO,MAAM,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;oBACrD,CAAC;iBACF;gBAED,KAAK,EAAE;oBACL,aAAa,EAAE;wBACb,6BAA6B;wBAC7B,6BAA6B;qBAC9B;oBAED,KAAK,CAAC,MAAM,CACV,WAA6C,EAC7C,MAA4B,EAC5B,MAA4B;wBAE5B,OAAO,MAAM,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;oBAC3D,CAAC;iBACF;aACF;SACF,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG;YACd,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;YACxC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC;SACnC,CAAC;QAEF,MAAM,cAAc,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAEhD,OAAO;YACL;gBACE,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;gBACtC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;gBACpC,cAAc,EAAE,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC;gBACpD,KAAK,EAAE,cAAc;gBACrB,OAAO;aACR;SACF,CAAC;IACJ,CAAC;IAED;;;OAGG;IACI,gBAAgB,CACrB,SAAgB,EAChB,iBAAwB,EACxB,6BAAoC,EACpC,gCAAuC,EACvC,eAA6C;QAE7C,MAAM,KAAK,GAAwC;YACjD,SAAS;YACT,iBAAiB;YAEjB,mBAAmB,EAAE,IAAI,uBAAuB,CAC9C,uBAAuB,EACvB,6BAA6B,CAC9B;YAED,sBAAsB,EAAE,IAAI,uBAAuB,CACjD,uBAAuB,EACvB,gCAAgC,CACjC;SACF,CAAC;QAEF,MAAM,WAAW,GAAG,eAAe,CAAC,KAAK,CAAC;QAC1C,MAAM,KAAK,GAAG,eAAe,CAAC,eAAe,CAAC;QAC9C,MAAM,aAAa,GAAG,eAAe,CAAC,eAAe,CAAC;QACtD,KACE,IAAI,KAAK,GAAG,CAAC,EACb,KAAK,GAAG,SAAS,CAAC,8BAA8B,EAChD,KAAK,EAAE,EACP;YACA,IAAI,CAAC,eAAe,CAClB,KAAK,EACL,WAAW,CAAC,KAAK,CAAC,EAClB,KAAK,CAAC,KAAK,CAAC,EACZ,aAAa,CAAC,KAAK,CAAC,EACpB,KAAK,CACN,CAAC;SACH;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;OAGG;IACI,eAAe,CACpB,KAA0C,EAC1C,UAAmC,EACnC,IAAiC,EACjC,aAAsC,EACtC,KAAK,GAAG,CAAC;QAET,MAAM,eAAe,GAAG,aAAa,CAAC,eAAe,CACnD,KAAK,CAAC,SAAS,EACf,UAAU,CAAC,IAAI,EACf,UAAU,CAAC,IAAI,CAAC,KAAK,CACtB,CAAC;QAEF,eAAe;aACZ,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;aAChC,UAAU,CAAC,MAAM,CAAC,uBAAuB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;QAE3D,MAAM,OAAO,GAAG,aAAa,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;QAEjE,KAAK,CAAC,SAAS,GAAG,QAAQ,CAAC,EAAE,CAC3B,UAAU,CAAC,EAAE,CAAC,MAAM,EACpB,OAAO,EACP,KAAK,CAAC,SAAS,CAChB,CAAC;QAEF,iEAAiE;QACjE,mEAAmE;QACnE,KAAK,CAAC,iBAAiB,GAAG,QAAQ,CAAC,EAAE,CACnC,UAAU,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,EAC3C,OAAO,EACP,KAAK,CAAC,iBAAiB,CACxB,CAAC;QAEF,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;QAE1D,KAAK,CAAC,mBAAmB,CAAC,MAAM,CAC9B,UAAU,EACV,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAChC,CAAC;QACF,KAAK,CAAC,sBAAsB,CAAC,MAAM,CACjC,UAAU,EACV,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAClC,CAAC;IACJ,CAAC;IAED;;OAEG;IAEU,AAAN,KAAK,CAAC,QAAQ,CACnB,WAA6C,EAC7C,KAAmC;QAEnC,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAClC,WAAW,CAAC,SAAS,EACrB,WAAW,CAAC,iBAAiB,EAC7B,WAAW,CAAC,oBAAoB,EAChC,WAAW,CAAC,uBAAuB,EACnC,KAAK,CACN,CAAC;QAEF,OAAO,IAAI,iCAAiC,CAAC;YAC3C,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,oBAAoB,EAAE,MAAM,CAAC,mBAAmB,CAAC,UAAU;YAC3D,uBAAuB,EAAE,MAAM,CAAC,sBAAsB,CAAC,UAAU;YACjE,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;SAC5C,CAAC,CAAC;IACL,CAAC;IAGY,AAAN,KAAK,CAAC,KAAK,CAChB,WAA6C,EAC7C,MAA4B,EAC5B,MAA4B;QAE5B,MAAM,CAAC,MAAM,EAAE,CAAC;QAChB,MAAM,CAAC,MAAM,EAAE,CAAC;QAEhB,cAAc;QACd,WAAW,CAAC,SAAS,CAAC,YAAY,CAChC,MAAM,CAAC,WAAW,CAAC,SAAS,EAC5B,MAAM,CAAC,mBAAmB,CAAC,WAAW,EAAE,iCAAiC,CAAC,CAC3E,CAAC;QACF,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,YAAY,CACxC,MAAM,CAAC,WAAW,CAAC,SAAS,EAC5B,MAAM,CAAC,mBAAmB,CAAC,WAAW,EAAE,0BAA0B,CAAC,CACpE,CAAC;QAEF,gBAAgB;QAChB,WAAW,CAAC,oBAAoB,CAAC,YAAY,CAC3C,MAAM,CAAC,WAAW,CAAC,oBAAoB,EACvC,MAAM,CAAC,mBAAmB,CACxB,sBAAsB,EACtB,iCAAiC,CAClC,CACF,CAAC;QACF,MAAM,CAAC,YAAY,CAAC,oBAAoB,CAAC,YAAY,CACnD,MAAM,CAAC,WAAW,CAAC,oBAAoB,EACvC,MAAM,CAAC,mBAAmB,CACxB,sBAAsB,EACtB,0BAA0B,CAC3B,CACF,CAAC;QAEF,yBAAyB;QACzB,WAAW,CAAC,uBAAuB,CAAC,YAAY,CAC9C,MAAM,CAAC,WAAW,CAAC,uBAAuB,EAC1C,MAAM,CAAC,mBAAmB,CACxB,yBAAyB,EACzB,iCAAiC,CAClC,CACF,CAAC;QACF,MAAM,CAAC,YAAY,CAAC,uBAAuB,CAAC,YAAY,CACtD,MAAM,CAAC,WAAW,CAAC,uBAAuB,EAC1C,MAAM,CAAC,mBAAmB,CACxB,yBAAyB,EACzB,0BAA0B,CAC3B,CACF,CAAC;QAEF,4BAA4B;QAC5B,WAAW,CAAC,iBAAiB,CAAC,YAAY,CACxC,MAAM,CAAC,WAAW,CAAC,iBAAiB,EACpC,MAAM,CAAC,mBAAmB,CACxB,mBAAmB,EACnB,iCAAiC,CAClC,CACF,CAAC;QACF,MAAM,CAAC,YAAY,CAAC,iBAAiB,CAAC,YAAY,CAChD,MAAM,CAAC,WAAW,CAAC,iBAAiB,EACpC,MAAM,CAAC,mBAAmB,CACxB,mBAAmB,EACnB,0BAA0B,CAC3B,CACF,CAAC;QAEF,OAAO,IAAI,gCAAgC,CAAC;YAC1C,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,SAAS;YACxC,oBAAoB,EAAE,MAAM,CAAC,YAAY,CAAC,oBAAoB;YAC9D,uBAAuB,EAAE,MAAM,CAAC,YAAY,CAAC,uBAAuB;YACpE,iBAAiB,EAAE,MAAM,CAAC,YAAY,CAAC,iBAAiB;SACzD,CAAC,CAAC;IACL,CAAC;CACF;AA9Fc;IADZ,cAAc,EAAE;;qCAEF,gCAAgC;QACtC,4BAA4B;;iEAgBpC;AAGY;IADZ,cAAc,EAAE;;qCAEF,gCAAgC;;8DAuE9C;AAII,WAAM,qBAAqB,GAA3B,MAAM,qBACX,SAAQ,cAAc;IAQtB;QACE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,cAAc,GAAG,IAAI,iCAAiC,CAAC,IAAI,CAAC,CAAC;IACpE,CAAC;IAEM,KAAK,CAAC,OAAO,CAClB,QAAyB;QAEzB,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACrD,CAAC;IAEM,QAAQ,CACb,WAA6C,EAC7C,KAAmC;QAEnC,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IAC1D,CAAC;IAEM,KAAK,CACV,WAA6C,EAC7C,MAA4B,EAC5B,MAA4B;QAE5B,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAChE,CAAC;CACF,CAAA;AAlCY,qBAAqB;IADjC,UAAU,EAAE;;GACA,qBAAqB,CAkCjC"}
1
+ {"version":3,"file":"StateTransitionProver.js","sourceRoot":"","sources":["../../../src/prover/statetransition/StateTransitionProver.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ export declare class DispatchContractProtocolModule extends ContractModule<Dispa
10
10
  constructor(runtime: RuntimeLike);
11
11
  eventsDefinition(): {
12
12
  "token-bridge-added": typeof import("./TokenBridgeTree").TokenBridgeTreeAddition;
13
- "incoming-message-placeholder": typeof import("o1js/dist/node/lib/provable/field").Field & ((x: string | number | bigint | import("o1js/dist/node/lib/provable/field").Field | import("o1js/dist/node/lib/provable/core/fieldvar").FieldVar | import("o1js/dist/node/lib/provable/core/fieldvar").FieldConst) => import("o1js/dist/node/lib/provable/field").Field);
13
+ "incoming-message-placeholder": typeof import("o1js/dist/node/lib/provable/field").Field & ((x: string | number | bigint | import("o1js/dist/node/lib/provable/field").Field | import("o1js/dist/node/lib/provable/core/fieldvar").FieldConst | import("o1js/dist/node/lib/provable/core/fieldvar").FieldVar) => import("o1js/dist/node/lib/provable/field").Field);
14
14
  };
15
15
  private checkConfigIntegrity;
16
16
  contractFactory(): SmartContractClassFromInterface<DispatchContractType>;
@@ -18,7 +18,7 @@ export declare abstract class DispatchSmartContractBase extends SmartContract {
18
18
  };
19
19
  events: {
20
20
  "token-bridge-added": typeof TokenBridgeTreeAddition;
21
- "incoming-message-placeholder": typeof import("o1js/dist/node/lib/provable/field").Field & ((x: string | number | bigint | import("o1js/dist/node/lib/provable/field").Field | import("o1js/dist/node/lib/provable/core/fieldvar").FieldVar | import("o1js/dist/node/lib/provable/core/fieldvar").FieldConst) => import("o1js/dist/node/lib/provable/field").Field);
21
+ "incoming-message-placeholder": typeof import("o1js/dist/node/lib/provable/field").Field & ((x: string | number | bigint | import("o1js/dist/node/lib/provable/field").Field | import("o1js/dist/node/lib/provable/core/fieldvar").FieldConst | import("o1js/dist/node/lib/provable/core/fieldvar").FieldVar) => import("o1js/dist/node/lib/provable/field").Field);
22
22
  };
23
23
  abstract promisedMessagesHash: State<Field>;
24
24
  abstract honoredMessagesHash: State<Field>;
@@ -1 +1 @@
1
- {"version":3,"file":"SettlementSmartContract.d.ts","sourceRoot":"","sources":["../../../src/settlement/contracts/SettlementSmartContract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SettlementSmartContract.d.ts","sourceRoot":"","sources":["../../../src/settlement/contracts/SettlementSmartContract.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,UAAU,EAEV,2BAA2B,EAC5B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,aAAa,EAEb,KAAK,EAEL,SAAS,EACT,SAAS,EACT,aAAa,EACb,KAAK,EAEL,MAAM,EACN,mBAAmB,EACnB,eAAe,EACf,UAAU,EACV,eAAe,EACf,WAAW,EAIX,YAAY,EACb,MAAM,MAAM,CAAC;AAEd,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAEhE,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACxB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,sBAAsB,EAGvB,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAMtD,qBAAa,iBAAkB,SAAQ,YAAY,CACjD,sBAAsB,EACtB,uBAAuB,CACxB;IACC,OAAc,eAAe,gCAA0B;IAEvD,OAAc,gBAAgB,iCAA2B;IAEzD,OAAc,iBAAiB,IAAc;CAC9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAED,qBAAa,YAAa,SAAQ,iBAGhC;CAAG;AAEL,MAAM,WAAW,sBAAsB;IACrC,kBAAkB,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAEjC,UAAU,EAAE,CACV,SAAS,EAAE,SAAS,EACpB,gBAAgB,EAAE,SAAS,EAC3B,cAAc,EAAE,SAAS,EACzB,WAAW,EAAE,UAAU,KACpB,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,eAAe,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,aAAa,CAAC;IAChD,MAAM,EAAE,CACN,UAAU,EAAE,iBAAiB,EAC7B,SAAS,EAAE,SAAS,EACpB,uBAAuB,EAAE,SAAS,EAClC,SAAS,EAAE,SAAS,EACpB,iBAAiB,EAAE,YAAY,EAC/B,kBAAkB,EAAE,YAAY,EAChC,uBAAuB,EAAE,KAAK,KAC3B,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,cAAc,EAAE,CACd,OAAO,EAAE,KAAK,EACd,OAAO,EAAE,SAAS,EAClB,gBAAgB,EAAE,SAAS,KACxB,OAAO,CAAC,IAAI,CAAC,CAAC;CACpB;AAGD,eAAO,MAAM,sBAAsB,mDAAqC,CAAC;AAgBzE,8BAAsB,2BAA4B,SAAQ,eAAe;IAIvE,OAAc,IAAI,EAAE;QAClB,gBAAgB,EAAE,UAAU,CAAC,oBAAoB,GAAG,aAAa,CAAC,CAAC;QACnE,KAAK,EAAE,sBAAsB,CAAC,OAAO,CAAC,EAAE,CAAC;QACzC,wBAAwB,EAAE,MAAM,CAAC;QACjC,cAAc,EAAE,UAAU,CAAC,kBAAkB,CAAC,GAAG,OAAO,aAAa,CAAC;QAEtE,6BAA6B,EAAE,eAAe,GAAG,SAAS,CAAC;QAC3D,yBAAyB,EAAE,WAAW,GAAG,SAAS,CAAC;QACnD,iBAAiB,EAAE,OAAO,GAAG,SAAS,CAAC;QACvC,2BAA2B,EAAE,2BAA2B,CAAC;KAC1D,CAAC;IAEF,MAAM;;MAEJ;IAEF,QAAQ,CAAC,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IACpC,QAAQ,CAAC,2BAA2B,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACpD,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IACjC,QAAQ,CAAC,gBAAgB,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IACxC,QAAQ,CAAC,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IACrC,QAAQ,CAAC,wBAAwB,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAEhD,QAAQ,CAAC,kBAAkB,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAKnC,eAAe,CAAC,IAAI,EAAE,KAAK,GAAG,aAAa;IAMlD,OAAO,CAAC,4BAA4B;cAkBpB,iBAAiB,CAC/B,OAAO,EAAE,KAAK,EACd,OAAO,EAAE,SAAS,EAClB,uBAAuB,EAAE,SAAS,EAClC,oCAAoC,UAAQ;cA8E9B,cAAc,CAC5B,SAAS,EAAE,SAAS,EACpB,gBAAgB,EAAE,SAAS,EAC3B,cAAc,EAAE,SAAS,EACzB,WAAW,EAAE,UAAU;cA6BT,UAAU,CACxB,UAAU,EAAE,iBAAiB,EAC7B,SAAS,EAAE,SAAS,EACpB,uBAAuB,EAAE,SAAS,EAClC,SAAS,EAAE,SAAS,EACpB,iBAAiB,EAAE,YAAY,EAC/B,kBAAkB,EAAE,YAAY,EAChC,uBAAuB,EAAE,KAAK;CAqJjC;AAED,qBAAa,uBACX,SAAQ,2BACR,YAAW,sBAAsB;IAEZ,YAAY,2DAAkB;IAC7B,2BAA2B,gBAAmB;IAE/C,SAAS,2DAAkB;IAC3B,gBAAgB,2DAAkB;IAClC,aAAa,2DAAkB;IAE/B,wBAAwB,2DAAkB;IAE1C,kBAAkB,2DAAkB;IAE3C,WAAW,CAAC,MAAM,EAAE,mBAAmB;IAKxC,UAAU,CACrB,SAAS,EAAE,SAAS,EACpB,gBAAgB,EAAE,SAAS,EAC3B,cAAc,EAAE,SAAS,EACzB,WAAW,EAAE,UAAU;IAWZ,cAAc,CACzB,OAAO,EAAE,KAAK,EACd,OAAO,EAAE,SAAS,EAClB,gBAAgB,EAAE,SAAS;IAMhB,MAAM,CACjB,UAAU,EAAE,iBAAiB,EAC7B,SAAS,EAAE,SAAS,EACpB,uBAAuB,EAAE,SAAS,EAClC,SAAS,EAAE,SAAS,EACpB,iBAAiB,EAAE,YAAY,EAC/B,kBAAkB,EAAE,YAAY,EAChC,uBAAuB,EAAE,KAAK;CAYjC"}
@@ -175,6 +175,7 @@ export class SettlementSmartContractBase extends TokenContractV2 {
175
175
  .hash()
176
176
  .assertEquals(blockProof.publicOutput.networkStateHash, "OutputNetworkState witness not valid");
177
177
  blockProof.publicOutput.closed.assertEquals(Bool(true), "Supplied proof is not a closed BlockProof");
178
+ blockProof.publicOutput.pendingSTBatchesHash.assertEquals(Field(0), "Supplied proof is has outstanding STs to be proven");
178
179
  // Execute onSettlementHooks for additional checks
179
180
  const stateRecord = {
180
181
  blockHashRoot,
@@ -1 +1 @@
1
- {"version":3,"file":"SettlementSmartContract.js","sourceRoot":"","sources":["../../../src/settlement/contracts/SettlementSmartContract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SettlementSmartContract.js","sourceRoot":"","sources":["../../../src/settlement/contracts/SettlementSmartContract.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"assert.d.ts","sourceRoot":"","sources":["../../../src/state/assert/assert.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAY,MAAM,MAAM,CAAC;AAMtC;;;;;;;;GAQG;AACH,wBAAgB,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,QAmBxE"}
1
+ {"version":3,"file":"assert.d.ts","sourceRoot":"","sources":["../../../src/state/assert/assert.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAY,MAAM,MAAM,CAAC;AAMtC;;;;;;;;GAQG;AACH,wBAAgB,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,QAsBxE"}
@@ -17,12 +17,14 @@ export function assert(condition, message) {
17
17
  const status = condition.and(previousStatus);
18
18
  Provable.asProver(() => {
19
19
  if (!condition.toBoolean()) {
20
- if (!executionContext.current().isSimulated) {
21
- log.debug("Assertion failed: ", message);
22
- }
23
20
  const messageString = message !== undefined && typeof message === "function"
24
21
  ? message()
25
22
  : message;
23
+ // If no isSimulated was set, we treat it as not simulated,
24
+ // therefore printing the log
25
+ if (!(executionContext.current().isSimulated ?? false)) {
26
+ log.debug("Assertion failed: ", messageString);
27
+ }
26
28
  executionContext.setStatusMessage(messageString, new Error().stack);
27
29
  }
28
30
  });
@@ -1 +1 @@
1
- {"version":3,"file":"assert.js","sourceRoot":"","sources":["../../../src/state/assert/assert.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,QAAQ,EAAE,MAAM,MAAM,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAExC,OAAO,EAAE,6BAA6B,EAAE,MAAM,0CAA0C,CAAC;AAEzF;;;;;;;;GAQG;AACH,MAAM,UAAU,MAAM,CAAC,SAAe,EAAE,OAAiC;IACvE,MAAM,gBAAgB,GAAG,SAAS,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;IAC1E,MAAM,cAAc,GAAG,gBAAgB,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;IAChE,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAE7C,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE;QACrB,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE;YAC1B,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE;gBAC3C,GAAG,CAAC,KAAK,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;aAC1C;YACD,MAAM,aAAa,GACjB,OAAO,KAAK,SAAS,IAAI,OAAO,OAAO,KAAK,UAAU;gBACpD,CAAC,CAAC,OAAO,EAAE;gBACX,CAAC,CAAC,OAAO,CAAC;YACd,gBAAgB,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC;SACrE;IACH,CAAC,CAAC,CAAC;IAEH,gBAAgB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AACrC,CAAC"}
1
+ {"version":3,"file":"assert.js","sourceRoot":"","sources":["../../../src/state/assert/assert.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,QAAQ,EAAE,MAAM,MAAM,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAExC,OAAO,EAAE,6BAA6B,EAAE,MAAM,0CAA0C,CAAC;AAEzF;;;;;;;;GAQG;AACH,MAAM,UAAU,MAAM,CAAC,SAAe,EAAE,OAAiC;IACvE,MAAM,gBAAgB,GAAG,SAAS,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;IAC1E,MAAM,cAAc,GAAG,gBAAgB,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;IAChE,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAE7C,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE;QACrB,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE;YAC1B,MAAM,aAAa,GACjB,OAAO,KAAK,SAAS,IAAI,OAAO,OAAO,KAAK,UAAU;gBACpD,CAAC,CAAC,OAAO,EAAE;gBACX,CAAC,CAAC,OAAO,CAAC;YAEd,2DAA2D;YAC3D,6BAA6B;YAC7B,IAAI,CAAC,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,WAAW,IAAI,KAAK,CAAC,EAAE;gBACtD,GAAG,CAAC,KAAK,CAAC,oBAAoB,EAAE,aAAa,CAAC,CAAC;aAChD;YACD,gBAAgB,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC;SACrE;IACH,CAAC,CAAC,CAAC;IAEH,gBAAgB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AACrC,CAAC"}
@@ -149,9 +149,9 @@ export declare class RuntimeMethodExecutionDataStruct extends RuntimeMethodExecu
149
149
  export declare class RuntimeMethodExecutionContext extends ProvableMethodExecutionContext {
150
150
  methods: string[];
151
151
  input: RuntimeMethodExecutionData | undefined;
152
- private lastInput;
153
- result: RuntimeProvableMethodExecutionResult;
154
152
  private isSimulated;
153
+ private lastInputs;
154
+ result: RuntimeProvableMethodExecutionResult;
155
155
  private assertSetupCalled;
156
156
  /**
157
157
  * Adds an in-method generated state transition to the current context
@@ -186,7 +186,7 @@ export declare class RuntimeMethodExecutionContext extends ProvableMethodExecuti
186
186
  isFinished: boolean;
187
187
  result: RuntimeProvableMethodExecutionResult;
188
188
  input: RuntimeMethodExecutionData | undefined;
189
- isSimulated: boolean;
189
+ isSimulated: boolean | undefined;
190
190
  };
191
191
  }
192
192
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"RuntimeMethodExecutionContext.d.ts","sourceRoot":"","sources":["../../../src/state/context/RuntimeMethodExecutionContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,oBAAoB,EAAE,QAAQ,EAAU,MAAM,MAAM,CAAC;AAEpE,OAAO,EACL,8BAA8B,EAC9B,6BAA6B,EAC9B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAShE,qBAAa,oCAAqC,SAAQ,6BAA6B;IAC9E,gBAAgB,EAAE,eAAe,CAAC,GAAG,CAAC,EAAE,CAAM;IAE9C,MAAM,EAAE,IAAI,CAAc;IAE1B,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,MAAM,EAAE;QACb,SAAS,EAAE,oBAAoB,CAAC,GAAG,CAAC,CAAC;QACrC,KAAK,EAAE,GAAG,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,IAAI,CAAC;KACjB,EAAE,CAAM;CACV;AAED,MAAM,WAAW,0BAA0B;IACzC,WAAW,EAAE,kBAAkB,CAAC;IAChC,YAAY,EAAE,YAAY,CAAC;CAC5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAED,qBAAa,gCACX,SAAQ,qCAIR,YAAW,0BAA0B;CAAG;AAE1C;;;;GAIG;AACH,qBACa,6BAA8B,SAAQ,8BAA8B;IACxE,OAAO,EAAE,MAAM,EAAE,CAAM;IAEvB,KAAK,EAAE,0BAA0B,GAAG,SAAS,CAAC;IAGrD,OAAO,CAAC,SAAS,CAAyC;IAE1C,MAAM,uCAA8C;IAEpE,OAAO,CAAC,WAAW,CAAkB;IAErC,OAAO,CAAC,iBAAiB;IAQzB;;;OAGG;IACI,kBAAkB,CAAC,KAAK,EAAE,eAAe,EAAE,eAAe,CAAC,KAAK,CAAC;IAKjE,QAAQ,CACb,SAAS,EAAE,oBAAoB,CAAC,GAAG,CAAC,EACpC,KAAK,EAAE,GAAG,EACV,SAAS,EAAE,MAAM,EACjB,SAAS,GAAE,IAAiB;IAY9B;;OAEG;IACI,gBAAgB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM;IAS7D;;OAEG;IACI,SAAS,CAAC,MAAM,EAAE,IAAI;IAQ7B;;OAEG;IACI,KAAK,CAAC,KAAK,EAAE,0BAA0B;IAIvC,YAAY,IAAI,gCAAgC;IAYhD,YAAY,CAAC,SAAS,EAAE,OAAO;IAItC;;OAEG;IACI,KAAK;IAIL,WAAW;IAUlB;;;OAGG;IACI,OAAO;;;;;;CAQf"}
1
+ {"version":3,"file":"RuntimeMethodExecutionContext.d.ts","sourceRoot":"","sources":["../../../src/state/context/RuntimeMethodExecutionContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,oBAAoB,EAAE,QAAQ,EAAU,MAAM,MAAM,CAAC;AAEpE,OAAO,EACL,8BAA8B,EAC9B,6BAA6B,EAC9B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAChF,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAShE,qBAAa,oCAAqC,SAAQ,6BAA6B;IAC9E,gBAAgB,EAAE,eAAe,CAAC,GAAG,CAAC,EAAE,CAAM;IAE9C,MAAM,EAAE,IAAI,CAAc;IAE1B,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,MAAM,EAAE;QACb,SAAS,EAAE,oBAAoB,CAAC,GAAG,CAAC,CAAC;QACrC,KAAK,EAAE,GAAG,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,IAAI,CAAC;KACjB,EAAE,CAAM;CACV;AAED,MAAM,WAAW,0BAA0B;IACzC,WAAW,EAAE,kBAAkB,CAAC;IAChC,YAAY,EAAE,YAAY,CAAC;CAC5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAED,qBAAa,gCACX,SAAQ,qCAIR,YAAW,0BAA0B;CAAG;AAE1C;;;;GAIG;AACH,qBACa,6BAA8B,SAAQ,8BAA8B;IACxE,OAAO,EAAE,MAAM,EAAE,CAAM;IAEvB,KAAK,EAAE,0BAA0B,GAAG,SAAS,CAAC;IAErD,OAAO,CAAC,WAAW,CAAkB;IAGrC,OAAO,CAAC,UAAU,CAKJ;IAEE,MAAM,uCAA8C;IAEpE,OAAO,CAAC,iBAAiB;IAQzB;;;OAGG;IACI,kBAAkB,CAAC,KAAK,EAAE,eAAe,EAAE,eAAe,CAAC,KAAK,CAAC;IAKjE,QAAQ,CACb,SAAS,EAAE,oBAAoB,CAAC,GAAG,CAAC,EACpC,KAAK,EAAE,GAAG,EACV,SAAS,EAAE,MAAM,EACjB,SAAS,GAAE,IAAiB;IAY9B;;OAEG;IACI,gBAAgB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM;IAS7D;;OAEG;IACI,SAAS,CAAC,MAAM,EAAE,IAAI;IAQ7B;;OAEG;IACI,KAAK,CAAC,KAAK,EAAE,0BAA0B;IAIvC,YAAY,IAAI,gCAAgC;IAYhD,YAAY,CAAC,SAAS,EAAE,OAAO;IAItC;;OAEG;IACI,KAAK;IAIL,WAAW;IAalB;;;OAGG;IACI,OAAO;;;;;;CAQf"}
@@ -34,8 +34,8 @@ export let RuntimeMethodExecutionContext = class RuntimeMethodExecutionContext e
34
34
  constructor() {
35
35
  super(...arguments);
36
36
  this.methods = [];
37
- this.result = new RuntimeProvableMethodExecutionResult();
38
37
  this.isSimulated = false;
38
+ this.result = new RuntimeProvableMethodExecutionResult();
39
39
  }
40
40
  assertSetupCalled() {
41
41
  if (this.input === undefined) {
@@ -111,7 +111,10 @@ export let RuntimeMethodExecutionContext = class RuntimeMethodExecutionContext e
111
111
  afterMethod() {
112
112
  super.afterMethod();
113
113
  if (this.isFinished) {
114
- this.lastInput = this.input;
114
+ this.lastInputs = {
115
+ input: this.input,
116
+ isSimulated: this.isSimulated,
117
+ };
115
118
  // TODO: find out why input isnt set in TransactionFeeHook during assert
116
119
  // this.input = undefined;
117
120
  this.isSimulated = false;
@@ -125,8 +128,8 @@ export let RuntimeMethodExecutionContext = class RuntimeMethodExecutionContext e
125
128
  return {
126
129
  isFinished: this.isFinished,
127
130
  result: this.result,
128
- input: this.lastInput,
129
- isSimulated: this.isSimulated,
131
+ input: this.lastInputs?.input,
132
+ isSimulated: this.lastInputs?.isSimulated,
130
133
  };
131
134
  }
132
135
  };
@@ -1 +1 @@
1
- {"version":3,"file":"RuntimeMethodExecutionContext.js","sourceRoot":"","sources":["../../../src/state/context/RuntimeMethodExecutionContext.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RuntimeMethodExecutionContext.js","sourceRoot":"","sources":["../../../src/state/context/RuntimeMethodExecutionContext.ts"],"names":[],"mappings":"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"}