-
Notifications
You must be signed in to change notification settings - Fork 5.1k
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
"Speed up" button should ignore cancellation attempts #5732
Comments
@cjeria what do you think? a community member might take this on once we agree on an acceptable behavior. |
Or, put more simply, we could keep the "speed up" button on all pending tx with the lowest nonce. |
Thanks @bdresser, as discussed, happy to work on this once the design of the feature is agreed upon. I think it makes sense to display the button on all lowest nonce transactions. |
This is definitely addressed in a design we already have by Christian, where we bundle all cancel/speed-up attempts under a common tx attempt history entry. This should be treated as an extra reason to increase priority on completing that design. Previously I'd lowered the priority of completing that full design because we already had another feature on the roadmap which would make it easier to implement: A data-layer abstraction around groups of related changes to a single "intended" transaction. #4260. Maybe I need to get out of the way with this roadmap-optimization, though. That feature would be great for devs, but could probably be built on top of however the txs are grouped otherwise (Ideally by adding a new metamask-unique "intention ID" to new transactions, and copying it to retries and cancellations). @alextsg |
#5544, adding a couple open questions :) |
Yeah I can start working on implementing the new grouping. I'll add questions to #5544 to verify some things with the new design. We can probably add this Speed Up button change first.
|
This is a reasonable feature request, however I must ask, besides one user wanting to the ability to retry the original transaction (and essentially cancel the cancel tx attempt), is this a commonly requested feature? Regardless of the answer to my above question, here are my initial thoughts on how this could work: When we group tx's by nonce (which we currently don't do), the most recent pending tx with lowest nonce should always have a speed up button no matter its latest state (by "tx state", I mean the latest user action + highest gas price attempt). Here's how I'm thinking this UX could work. The new step to the speed up flow (which would only be initiated if a cancel attempt has been made and the user wants to speed up the tx) would be a modal that asks the user what do they want to speed up, the two options are:
And remove the cancel button if cancelling the tx has already been attempted. @bdresser @alextsg @danfinlay @omnat thoughts? |
Right.
Yeah, for MVP that makes sense. Eventually it should only show as one tx, of course, so it becomes moot. Also for mvp, worth keeping in mind: Since |
Oh hey I just now saw Christian's awesome sketchwork. I like it. Minimal sketches ftw. |
@cjeria Love the low-fi sketches! Are the following actions basically the same when a transaction is pending, If yes, I wonder which of the (a) or (b) would be more intuitive to users? My guess is (b), but then its a guess. Thoughts? |
What do you think about the option on the right side? Giving the option to speed Go / No-go transactions instead of a global 'speed up' option. |
Since I don't know which option will test the best, would it be too much to include both options?
I do think the inline option is a clever solution, but I'm just not sure if by itself is enough for users to see it and therefore know to use it. |
I like the inline option! It's explicit, simple, and lets us deal with edge cases well. With the inline options present, I think the initial buttons up top become confusing/redundant If the user has sped up multiple times
If the user has attempted cancel, we should only show
Maybe the text link can be more explicit? Also happy to take this to slack if we wanna discuss there @cjeria @alextsg |
Right now the "speed up" shows on the most recent tx with lowest nonce.
If that most recent tx is a cancellation attempt, the "speed up" button shows on the cancellation attempt.
So, if I submit a tx, it takes a long time, I try to cancel, then I decide I should just speed up the original tx, I'm unable to do so since the "Speed up" button is now on the cancellation attempt and not on the original tx.
If a user tries to cancel, we should probably show the "Speed up" button on both the original transaction AND the cancellation attemp
inspired by this comment
@alextsg
The text was updated successfully, but these errors were encountered: