Skip to content

Commit 1869e1c

Browse files
committed
fix forkname issue
1 parent 9a18377 commit 1869e1c

File tree

1 file changed

+17
-8
lines changed

1 file changed

+17
-8
lines changed

crates/libzkp/src/lib.rs

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ pub use verifier::{TaskType, VerifierConfig};
55
mod utils;
66

77
use sbv_primitives::B256;
8-
use scroll_zkvm_types::util::vec_as_base64;
8+
use scroll_zkvm_types::{public_inputs::ForkName, util::vec_as_base64};
99
use serde::{Deserialize, Serialize};
1010
use serde_json::value::RawValue;
1111
use std::path::Path;
@@ -30,7 +30,7 @@ pub fn checkout_chunk_task(
3030
pub 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

Comments
 (0)