use std::error::Error;
pub async fn validate_testnet_anchoring(&self) -> Result<()> {
let network = self.bitcoin_config.network();
if network != Network::Testnet {
return Err(anyhow!("Web5 anchoring validation requires testnet"));
}
let test_vectors = Web5TestVectors::load()?;
for vector in test_vectors.vectors {
self.anchor_data(vector.data.clone())
.await
.context(format!("Failed vector {}", vector.id))?;
let proof = self.verify_anchor(vector.anchor_txid)
.await
.context("Proof verification failed")?;
assert_eq!(proof.merkle_root, vector.expected_root);
audit_log!("WEB5_TEST", "Passed vector {}", vector.id);
}
Ok(())
}