Pending transaction on Uniswap UI when trx is not pending on blockchain
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 5.5k
- Forks
- 5.4k
- PR merge metrics
- No merged PRs in 30d
Description
Bug Description
I was approving USDC for usage on uniswap however I set my gas too low, to correct this I cancelled the transaction by sending eth to myself using the same nonce as the approval trx and higher gas. This sucessfully cancelled the approval transaction, however the Uniswap UI still registers it as pending and will not allow me to swap using USDC or re-approve (the blue button just says pending).
Steps to Reproduce
Try approving a token using very low gas, so the transaction does not succeed. Then send eth to yourself with the same nonce and higher gas to cancel that transaction. Try to reapprove the same token it will say pending.
Expected Behavior
If the transaction has been canceled on the blockchain then the UI should reflect this by prompting the user to approve.
Additional Context
Add any other context about the problem here (screenshots, whether the bug only occurs only in certain mobile/desktop/browser environments, etc.)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No source file or test is named. Start by reproducing the low-gas approval and same-nonce cancellation, then trace how the Uniswap UI determines whether an approval transaction is pending. Done means a cancelled blockchain transaction no longer blocks re-approval or swapping with the token.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- blockchain, frontend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100