@@ -5,7 +5,7 @@ pub use verifier::{TaskType, VerifierConfig};
55mod utils;
66
77use sbv_primitives:: B256 ;
8- use scroll_zkvm_types:: util:: vec_as_base64;
8+ use scroll_zkvm_types:: { public_inputs :: ForkName , util:: vec_as_base64} ;
99use serde:: { Deserialize , Serialize } ;
1010use serde_json:: value:: RawValue ;
1111use std:: path:: Path ;
@@ -30,7 +30,7 @@ pub fn checkout_chunk_task(
3030pub fn gen_universal_task (
3131 task_type : i32 ,
3232 task_json : & str ,
33- fork_name : & str ,
33+ fork_name_str : & str ,
3434 expected_vk : & [ u8 ] ,
3535 interpreter : Option < impl ChunkInterpreter > ,
3636) -> eyre:: Result < ( B256 , String , String ) > {
@@ -48,19 +48,28 @@ pub fn gen_universal_task(
4848
4949 let ( pi_hash, metadata, mut u_task) = match task_type {
5050 x if x == TaskType :: Chunk as i32 => {
51- let task = serde_json:: from_str :: < ChunkProvingTask > ( task_json) ?;
51+ let mut task = serde_json:: from_str :: < ChunkProvingTask > ( task_json) ?;
52+ let fork_name = ForkName :: from ( task. fork_name . to_lowercase ( ) . as_str ( ) ) ;
53+ task. fork_name = fork_name. to_string ( ) ;
54+ assert_eq ! ( fork_name_str, task. fork_name. as_str( ) ) ;
5255 let ( pi_hash, metadata, u_task) =
53- gen_universal_chunk_task ( task, fork_name. into ( ) , interpreter) ?;
56+ gen_universal_chunk_task ( task, fork_name, interpreter) ?;
5457 ( pi_hash, AnyMetaData :: Chunk ( metadata) , u_task)
5558 }
5659 x if x == TaskType :: Batch as i32 => {
57- let task = serde_json:: from_str :: < BatchProvingTask > ( task_json) ?;
58- let ( pi_hash, metadata, u_task) = gen_universal_batch_task ( task, fork_name. into ( ) ) ?;
60+ let mut task = serde_json:: from_str :: < BatchProvingTask > ( task_json) ?;
61+ let fork_name = ForkName :: from ( task. fork_name . to_lowercase ( ) . as_str ( ) ) ;
62+ task. fork_name = fork_name. to_string ( ) ;
63+ assert_eq ! ( fork_name_str, task. fork_name. as_str( ) ) ;
64+ let ( pi_hash, metadata, u_task) = gen_universal_batch_task ( task, fork_name) ?;
5965 ( pi_hash, AnyMetaData :: Batch ( metadata) , u_task)
6066 }
6167 x if x == TaskType :: Bundle as i32 => {
62- let task = serde_json:: from_str :: < BundleProvingTask > ( task_json) ?;
63- let ( pi_hash, metadata, u_task) = gen_universal_bundle_task ( task, fork_name. into ( ) ) ?;
68+ let mut task = serde_json:: from_str :: < BundleProvingTask > ( task_json) ?;
69+ let fork_name = ForkName :: from ( task. fork_name . to_lowercase ( ) . as_str ( ) ) ;
70+ task. fork_name = fork_name. to_string ( ) ;
71+ assert_eq ! ( fork_name_str, task. fork_name. as_str( ) ) ;
72+ let ( pi_hash, metadata, u_task) = gen_universal_bundle_task ( task, fork_name) ?;
6473 ( pi_hash, AnyMetaData :: Bundle ( metadata) , u_task)
6574 }
6675 _ => return Err ( eyre:: eyre!( "unrecognized task type {task_type}" ) ) ,
0 commit comments