From 1c38d9013c2625fbcc385b2a919d4d0f312e33c2 Mon Sep 17 00:00:00 2001 From: mrmr1993 Date: Tue, 17 Oct 2023 17:36:15 +0100 Subject: [PATCH] Complicate code for review nitpick --- src/lib/pickles/proof_cache.ml | 7 +++++++ src/lib/pickles/proof_cache.mli | 2 ++ src/lib/pickles/step.ml | 3 ++- src/lib/pickles/wrap.ml | 6 ++++-- 4 files changed, 15 insertions(+), 3 deletions(-) diff --git a/src/lib/pickles/proof_cache.ml b/src/lib/pickles/proof_cache.ml index be234219344..b1540bb2e48 100644 --- a/src/lib/pickles/proof_cache.ml +++ b/src/lib/pickles/proof_cache.ml @@ -241,3 +241,10 @@ let set_wrap_proof t ~keypair ~public_input proof = in let proof_json = Backend.Tock.Proof.to_yojson proof in set_proof t ~verification_key ~public_input proof_json + +let is_env_var_set_requesting_error_for_proofs () = + match Sys.getenv_opt "ERROR_ON_PROOF" with + | Some ("true" | "t" (* insert whatever value is okay here *)) -> + true + | None | Some _ -> + false diff --git a/src/lib/pickles/proof_cache.mli b/src/lib/pickles/proof_cache.mli index 7d0f7ca9924..d8d33b04f24 100644 --- a/src/lib/pickles/proof_cache.mli +++ b/src/lib/pickles/proof_cache.mli @@ -52,3 +52,5 @@ val set_wrap_proof : -> public_input:Kimchi_bindings.FieldVectors.Fq.t -> Backend.Tock.Proof.t -> unit + +val is_env_var_set_requesting_error_for_proofs : unit -> bool diff --git a/src/lib/pickles/step.ml b/src/lib/pickles/step.ml index 8585117657a..a759193b816 100644 --- a/src/lib/pickles/step.ml +++ b/src/lib/pickles/step.ml @@ -844,7 +844,8 @@ struct with | None -> if - Option.is_some (Sys.getenv_opt "ERROR_ON_PROOF") + Proof_cache + .is_env_var_set_requesting_error_for_proofs () then failwith "Regenerated proof" ; let%map.Promise proof = create_proof () in Proof_cache.set_step_proof proof_cache ~keypair:pk diff --git a/src/lib/pickles/wrap.ml b/src/lib/pickles/wrap.ml index 415f9dc1fc5..e763e610d2a 100644 --- a/src/lib/pickles/wrap.ml +++ b/src/lib/pickles/wrap.ml @@ -879,8 +879,10 @@ let wrap ~public_input:public_inputs with | None -> - if Option.is_some (Sys.getenv_opt "ERROR_ON_PROOF") then - failwith "Regenerated proof" ; + if + Proof_cache.is_env_var_set_requesting_error_for_proofs + () + then failwith "Regenerated proof" ; let%map.Promise proof = create_proof () in Proof_cache.set_wrap_proof proof_cache ~keypair:pk ~public_input:public_inputs proof ;