You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
/// Sames as [`is_proof_verified`] only that the verification is done in the ProofAggregationService contract on chain calling the function `verifyProofInclusion`
73
-
/// This is done by fetching the aggregated proof blob and constructing the merkle tree and then calling `verifyProofInclusion` with:
74
-
/// 1. The merkle path for the given [`AggregationModeVerificationData`]
75
-
/// 2. The proof commitment
72
+
/// Performs the same verification as [`is_proof_verified`], but instead of verifying locally, it simulates
73
+
/// an on-chain verification by calling the `verifyProofInclusion` function on the `ProofAggregationService` contract.
76
74
///
77
-
/// For local verification, you probably want to call [`is_proof_verified`], the function `verifyProofInclusion` is useful in actual contract calls to verify a statement with Aligned
78
-
/// This here is simulation an testing purposes
75
+
/// This function:
76
+
/// 1. Fetches the aggregated proof blob from the blockchain.
77
+
/// 2. Constructs the corresponding Merkle tree from the proof commitments.
78
+
/// 3. Calls the contract's `verifyProofInclusion` function with:
79
+
/// - The Merkle path corresponding to the given [`AggregationModeVerificationData`].
80
+
/// - The proof commitment, computed from the program ID and public inputs.
81
+
///
82
+
/// This is mainly useful for testing and simulation purposes to ensure that a given proof commitment
83
+
/// would be accepted by the contract on-chain. For typical off-chain verification (e.g., in services or indexers),
84
+
/// prefer using [`is_proof_verified`].
85
+
///
86
+
/// Note: This function does not perform the actual on-chain transaction but simulates the contract call.
0 commit comments