From e64070899d58a75d339b22b820a6582ab3f70005 Mon Sep 17 00:00:00 2001 From: Robin Salen <30937548+Nashtare@users.noreply.github.com> Date: Mon, 7 Aug 2023 11:42:03 -0400 Subject: [PATCH] Error instead of panicking for missing preprocessed circuits (#1159) --- evm/src/fixed_recursive_verifier.rs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/evm/src/fixed_recursive_verifier.rs b/evm/src/fixed_recursive_verifier.rs index 4908dfbc..8d9cb59f 100644 --- a/evm/src/fixed_recursive_verifier.rs +++ b/evm/src/fixed_recursive_verifier.rs @@ -794,7 +794,16 @@ where let stark_proof = &all_proof.stark_proofs[table]; let original_degree_bits = stark_proof.proof.recover_degree_bits(config); let table_circuits = &self.by_table[table]; - let shrunk_proof = table_circuits.by_stark_size[&original_degree_bits] + let shrunk_proof = table_circuits + .by_stark_size + .get(&original_degree_bits) + .ok_or_else(|| { + anyhow::Error::msg(format!( + "Missing preprocessed circuits for {:?} table with size {}.", + Table::all()[table], + original_degree_bits, + )) + })? .shrink(stark_proof, &all_proof.ctl_challenges)?; let index_verifier_data = table_circuits .by_stark_size