Merge pull request #225 from matter-labs/handle_old_proof_response

fix(proof-validation): handle optional proof status
This commit is contained in:
Patrick 2024-11-28 17:45:21 +01:00 committed by GitHub
commit e4629aee55
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 8 additions and 4 deletions

View file

@ -159,7 +159,10 @@ async fn verify_batch_proofs(
total_proofs_count += 1;
let tee_type = proof.tee_type.to_uppercase();
if proof.status.eq_ignore_ascii_case("permanently_ignored") {
if proof
.status
.map_or(false, |s| s.eq_ignore_ascii_case("permanently_ignored"))
{
trace!(
batch_no,
tee_type,

View file

@ -39,8 +39,9 @@ pub async fn get_proofs(
if !proofs.is_empty()
&& proofs.iter().all(|proof| {
!proof.status.eq_ignore_ascii_case("failed")
&& !proof.status.eq_ignore_ascii_case("picked_by_prover")
!proof.status.as_ref().map_or(false, |s| {
s.eq_ignore_ascii_case("failed") | s.eq_ignore_ascii_case("picked_by_prover")
})
})
{
return Ok(proofs);
@ -165,7 +166,7 @@ pub struct Proof {
#[serde_as(as = "Option<Hex>")]
pub proof: Option<Vec<u8>>,
pub proved_at: String,
pub status: String,
pub status: Option<String>,
#[serde_as(as = "Option<Hex>")]
pub attestation: Option<Vec<u8>>,
}