Skip to content

Commit f125d7e

Browse files
committed
Add in details STProver
1 parent 019136e commit f125d7e

File tree

2 files changed

+13
-3
lines changed

2 files changed

+13
-3
lines changed

packages/protocol/src/model/StateTransitionProvableBatch.ts

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { Bool, Provable, Struct } from "o1js";
2-
import { range } from "@proto-kit/common";
2+
import { range, RollupMerkleTreeWitness } from "@proto-kit/common";
33

44
import { constants } from "../Constants";
55

@@ -60,15 +60,22 @@ export class StateTransitionProvableBatch extends Struct({
6060
ProvableStateTransitionType,
6161
constants.stateTransitionProverBatchSize
6262
),
63+
64+
merkleWitnesses: Provable.Array(
65+
RollupMerkleTreeWitness,
66+
constants.stateTransitionProverBatchSize
67+
),
6368
}) {
6469
public static fromMappings(
6570
transitions: {
6671
transition: ProvableStateTransition;
6772
type: ProvableStateTransitionType;
73+
merkleWitnesses: RollupMerkleTreeWitness;
6874
}[]
6975
): StateTransitionProvableBatch {
7076
const batch = transitions.map((entry) => entry.transition);
7177
const transitionTypes = transitions.map((entry) => entry.type);
78+
const merkleWitnesses = transitions.map((entry) => entry.merkleWitnesses);
7279

7380
// Check that order is correct
7481
let normalSTsStarted = false;
@@ -88,12 +95,14 @@ export class StateTransitionProvableBatch extends Struct({
8895
return new StateTransitionProvableBatch({
8996
batch,
9097
transitionTypes,
98+
merkleWitnesses,
9199
});
92100
}
93101

94102
public static fromTransitions(
95103
transitions: ProvableStateTransition[],
96-
protocolTransitions: ProvableStateTransition[]
104+
protocolTransitions: ProvableStateTransition[],
105+
merkleWitnesses: RollupMerkleTreeWitness[]
97106
): StateTransitionProvableBatch {
98107
const array = transitions.slice().concat(protocolTransitions);
99108

@@ -113,12 +122,14 @@ export class StateTransitionProvableBatch extends Struct({
113122
return new StateTransitionProvableBatch({
114123
batch: array,
115124
transitionTypes,
125+
merkleWitnesses,
116126
});
117127
}
118128

119129
private constructor(object: {
120130
batch: ProvableStateTransition[];
121131
transitionTypes: ProvableStateTransitionType[];
132+
merkleWitnesses: RollupMerkleTreeWitness[];
122133
}) {
123134
super(object);
124135
}

packages/protocol/src/prover/statetransition/StateTransitionProver.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,6 @@ export class StateTransitionProverProgrammable extends ZkProgrammable<
8585
publicInput: StateTransitionProverPublicInput,
8686
publicOutput: StateTransitionProverPublicOutput,
8787

88-
// Add in argument for StateTransitionTaskParameters
8988
methods: {
9089
proveBatch: {
9190
privateInputs: [StateTransitionProvableBatch],

0 commit comments

Comments
 (0)