Skip to content

feat: Add Option to Override SequenceNumber and Bypass Network Fetches#2

Merged
DavidNzube101 merged 1 commit intomasterfrom
sequence-number-bug
Apr 9, 2026
Merged

feat: Add Option to Override SequenceNumber and Bypass Network Fetches#2
DavidNzube101 merged 1 commit intomasterfrom
sequence-number-bug

Conversation

@ubadineke
Copy link
Copy Markdown
Contributor

Fixes #1

The Problem

Currently, when constructing a transaction, the Kit strictly fetches the account's sequence number from the RPC node via GetAccountInfo. For applications that require high-frequency, concurrent transaction submissions (like Keeper bots or intensive indexers), this strict fetch creates a severe bottleneck. Multiple goroutines fetching at the same time will pull the exact same sequence number, resulting in immediate "Transaction already in mempool" collisions and transaction failures on the node.

The Solution

This PR introduces the ability for clients to opt-out of the automatic network fetch by providing their own sequence number, empowering them to manage sequence state optimistically in memory.

@DavidNzube101
Copy link
Copy Markdown
Collaborator

Awesome

@DavidNzube101
Copy link
Copy Markdown
Collaborator

CI passes too :)

Merging…

@DavidNzube101 DavidNzube101 merged commit 2560661 into master Apr 9, 2026
2 checks passed
DavidNzube101 added a commit that referenced this pull request Apr 13, 2026
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

Successfully merging this pull request may close these issues.

Concurrency Bug: "Transaction already in mempool" due to stateless Sequence Number fetching

2 participants