@@ -252,25 +252,9 @@ where
252252        success_data :  SuccessHookData < ' _ ,  Eip7702ConfirmationResult > , 
253253        tx :  & mut  TransactionContext < ' _ > , 
254254    )  { 
255-         // TODO: Update transaction registry when TransactionStatus enum is implemented 
256-         // if let Err(e) = self 
257-         //     .transaction_registry 
258-         //     .update_transaction_status( 
259-         //         &job.job.data.transaction_id, 
260-         //         crate::transaction_registry::TransactionStatus::Confirmed { 
261-         //             transaction_hash: success_data.result.transaction_hash, 
262-         //             block_number: success_data.result.block_number, 
263-         //             gas_used: success_data.result.gas_used, 
264-         //         }, 
265-         //     ) 
266-         //     .await 
267-         // { 
268-         //     tracing::error!( 
269-         //         transaction_id = job.job.data.transaction_id, 
270-         //         error = ?e, 
271-         //         "Failed to update transaction registry" 
272-         //     ); 
273-         // } 
255+         // Remove transaction from registry since confirmation is complete 
256+         self . transaction_registry 
257+             . add_remove_command ( tx. pipeline ( ) ,  & job. job . data . transaction_id ) ; 
274258
275259        // Send webhook 
276260        if  let  Err ( e)  = self . queue_success_webhook ( job,  success_data,  tx)  { 
@@ -288,6 +272,7 @@ where
288272        nack_data :  NackHookData < ' _ ,  Eip7702ConfirmationError > , 
289273        tx :  & mut  TransactionContext < ' _ > , 
290274    )  { 
275+         // Don't modify transaction registry on NACK - job will be retried 
291276        if  let  Err ( e)  = self . queue_nack_webhook ( job,  nack_data,  tx)  { 
292277            tracing:: error!( 
293278                transaction_id = job. job. data. transaction_id, 
@@ -303,23 +288,9 @@ where
303288        fail_data :  FailHookData < ' _ ,  Eip7702ConfirmationError > , 
304289        tx :  & mut  TransactionContext < ' _ > , 
305290    )  { 
306-         // TODO: Update transaction registry when TransactionStatus enum is implemented 
307-         // if let Err(e) = self 
308-         //     .transaction_registry 
309-         //     .update_transaction_status( 
310-         //         &job.job.data.transaction_id, 
311-         //         crate::transaction_registry::TransactionStatus::Failed { 
312-         //             reason: fail_data.error.to_string(), 
313-         //         }, 
314-         //     ) 
315-         //     .await 
316-         // { 
317-         //     tracing::error!( 
318-         //         transaction_id = job.job.data.transaction_id, 
319-         //         error = ?e, 
320-         //         "Failed to update transaction registry" 
321-         //     ); 
322-         // } 
291+         // Remove transaction from registry since it failed permanently 
292+         self . transaction_registry 
293+             . add_remove_command ( tx. pipeline ( ) ,  & job. job . data . transaction_id ) ; 
323294
324295        if  let  Err ( e)  = self . queue_fail_webhook ( job,  fail_data,  tx)  { 
325296            tracing:: error!( 
0 commit comments