Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[tech debt] Wallet transaction statuses #6010

Open
SWvheerden opened this issue Dec 5, 2023 · 0 comments
Open

[tech debt] Wallet transaction statuses #6010

SWvheerden opened this issue Dec 5, 2023 · 0 comments

Comments

@SWvheerden
Copy link
Collaborator

The wallet uses these statuses to reflect the transaction status, origin etc.

pub enum TransactionStatus {
    /// This transaction has been completed between the parties but has not been broadcast to the base layer network.
    Completed,
    /// This transaction has been broadcast to the base layer network and is currently in one or more base node
    /// mempools.
    Broadcast,
    /// This transaction has been mined and included in a block.
    MinedUnconfirmed,
    /// This transaction was generated as part of importing a spendable unblinded UTXO
    Imported,
    /// This transaction is still being negotiated by the parties
    #[default]
    Pending,
    /// This is a created Coinbase Transaction
    Coinbase,
    /// This transaction is mined and confirmed at the current base node's height
    MinedConfirmed,
    /// This transaction was Rejected by the mempool
    Rejected,
    /// This is faux transaction mainly for one-sided transaction outputs or wallet recovery outputs have been found
    FauxUnconfirmed,
    /// All Imported and FauxUnconfirmed transactions will end up with this status when the outputs have been confirmed
    FauxConfirmed,
    /// This transaction is still being queued for initial sending
    Queued,
}

We should simplify this to only be Completed, Broadcast, MinedUnconfirmed, MinedConfirmed, Rejected

We should add a type field to the transaction, to indicate the type of transaction: interactive, stealth, imported, coinbase etc.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant