diff --git a/crates/starknet_batcher/src/transaction_provider.rs b/crates/starknet_batcher/src/transaction_provider.rs index 6acb51854dc..d555547fb37 100644 --- a/crates/starknet_batcher/src/transaction_provider.rs +++ b/crates/starknet_batcher/src/transaction_provider.rs @@ -18,8 +18,15 @@ type TransactionProviderResult = Result; pub enum TransactionProviderError { #[error(transparent)] MempoolError(#[from] MempoolClientError), - #[error("L1Handler transaction validation failed for tx with hash {0}.")] - L1HandlerTransactionValidationFailed(TransactionHash), + #[error( + "L1Handler transaction validation failed for tx with hash {} status {:?}.", + tx_hash.0.to_hex_string(), + validation_status + )] + L1HandlerTransactionValidationFailed { + tx_hash: TransactionHash, + validation_status: L1ValidationStatus, + }, #[error(transparent)] L1ProviderError(#[from] L1ProviderClientError), } @@ -150,10 +157,10 @@ impl TransactionProvider for ValidateTransactionProvider { let l1_validation_status = self.l1_provider_client.validate(tx.tx_hash, self.height).await?; if l1_validation_status != L1ValidationStatus::Validated { - // TODO(AlonH): add the validation status into the error. - return Err(TransactionProviderError::L1HandlerTransactionValidationFailed( - tx.tx_hash, - )); + return Err(TransactionProviderError::L1HandlerTransactionValidationFailed { + tx_hash: tx.tx_hash, + validation_status: l1_validation_status, + }); } } } diff --git a/crates/starknet_batcher/src/transaction_provider_test.rs b/crates/starknet_batcher/src/transaction_provider_test.rs index e461c26834c..c9f91308522 100644 --- a/crates/starknet_batcher/src/transaction_provider_test.rs +++ b/crates/starknet_batcher/src/transaction_provider_test.rs @@ -218,6 +218,6 @@ async fn validate_fails(mut mock_dependencies: MockDependencies) { let result = validate_tx_provider.get_txs(MAX_TXS_PER_FETCH).await; assert_matches!( result, - Err(TransactionProviderError::L1HandlerTransactionValidationFailed(_tx_hash)) + Err(TransactionProviderError::L1HandlerTransactionValidationFailed { .. }) ); }