open-standards/wai/http-conformance/falsify/nothing-as-delivered.patch

15 lines
803 B
Diff

# must fail: receipts_stage_set receipts_back_after_head
# an object not received taken as delivered on its cid (receipts::check_delivery)
diff --git a/wai/wai-rs/src/http_binding/receipts.rs b/wai/wai-rs/src/http_binding/receipts.rs
index 95b77f2f..7f137013 100644
--- a/wai/wai-rs/src/http_binding/receipts.rs
+++ b/wai/wai-rs/src/http_binding/receipts.rs
@@ -349,7 +349,7 @@ pub fn check_delivery(
let (admission, walked) = admit_walking(chains, &group, fetch, now_ms, max_walk)?;
let established = match held {
ObjectHeld::Object(e) => Some(*e),
- ObjectHeld::Nothing => None,
+ ObjectHeld::Nothing => Some(EstablishedHash::by_head_proof(*cid)),
};
let evidence = chains
.verify_admitted_object(&group, &item.object_receipt, established.as_ref())