Finish transaction signing task with TX rebroadcast code

This commit is contained in:
Luke Parker
2024-09-06 04:15:02 -04:00
parent a353f9e2da
commit 100c80be9f
6 changed files with 109 additions and 23 deletions

View File

@@ -19,15 +19,15 @@ pub trait TransactionPublisher<S: SignableTransaction>: 'static + Send + Sync {
///
/// This MUST be an ephemeral error. Retrying publication MUST eventually resolve without manual
/// intervention/changing the arguments.
///
/// The transaction already being present in the mempool/on-chain SHOULD NOT be considered an
/// error.
type EphemeralError: Debug;
/// Publish a transaction.
///
/// This will be called multiple times, with the same transaction, until the transaction is
/// confirmed on-chain.
///
/// The transaction already being present in the mempool/on-chain MUST NOT be considered an
/// error.
async fn publish(
&self,
tx: <S::PreprocessMachine as PreprocessMachine>::Signature,