-
Notifications
You must be signed in to change notification settings - Fork 362
Set transaction parameters manually (advanced) #838
Comments
Also to consider: When using our direct Ledger integration, users aren't able to set the gas price on the Ledger. So that would have to be done via our interface (cf. gnosis/safe#314) |
Just received some user feedback where the following scenario leads to inconveniences:
|
I have 2 open questions about this feature:
I think "yes" in both cases. Do you agree? |
@posthnikova this is another upcoming web feature that would require design. |
We don't necessarily know if the user will end up confirming on-chain or off-chain when creating a transaction. As this should be a "hidden / advanced feature" anyways, I think it's not that critical to also have it enabled when the user eventually ends up confirming off-chain though. There's not much downside if someone sets the gas price manually and then signs off chain as this only means the user doesn't have to pay any gas at all & confirmation is instant. |
Just to recap (primarily for myself) There are 2 types of advanced settings:
I think first we should define which of these should be able to be set before I can tell you what do differentiate. For 1. I would only allow to adjust the For 2. As Lukas said, we actually don't know ahead of time how the confirmation will be created so I would also always display this. |
Okay, thank you both for your responses! I updated the ticket description. I think we should start with the following params then in this version:
|
I'm for activating it first in advanced settings. This way it doesn't clutter the interface for everyone. A proposal for sending funds: When it's enabled there will be an additional step in send popups. I assume you can leave any field or all fields empty. |
Activating this in the settings assumes that there are two kinds of users:
However, I would assume that the lines aren't that clear. And users occasionally would like to set the parameters manually, but most of the time don't want to do so. This is why I would vote for not having to activate the feature in the settings. Also, this would probably make the feature less discoverable and would maybe mean more effort/complexity as there needs to be two different flows depending on whether the setting is activated. Having a simple "advanced options" setting doesn't clutter the interface that much in my opinion. |
There could also be a third option, i.e.
|
Or always show the transaction details in the review screen and have a "Edit" button to customize. I think that would add value also to users that don't want to set the parameters manually. As even if a user doesn't want to edit the parameters, knowing them before triggering the transaction might be of benefit to users. |
Also, we should probably also have seperate screens for confirmations/executions. As there, compared to initial transaction creation, the SafeTxGas and Safe nonce cannot be set. Potentially we can still display it there, but show that they are non-modifiable. |
Hm, I generally agree with you, but that's something to check with the devs as they told me that it'll be tricky to figure out if it's an execution/on-chain or off-chain confirmation. |
I wouldn't try to anticipate whether it's on- or off-chain. I meant that there should be a difference between:
As with the former category, the user can potentially set the SafeTxGas and Safe nonce, but with the latter, this is not possible anymore. |
ah, yes, the safe related items can only be set when creating the tx, not afterwards when confirming / executing. I was referring to the Ethereum related items. |
I have 2 versions, from settings and from Send popup https://invis.io/BRZDPI8XPG5. We don't have data what users prefer, I can include it in the upcoming user test.
I wouldn't show parameters the user didn't configure on Review screen. I would offer to edit them earlier. |
I like the version with the "Advanced options" button a bit more. But you're right, we don't have data. We just know how Metamask does it. |
Hey team, just found this while searching for a way to manually set gas limit, since our transactions (inner, not outer) are failing due to out-of-gas. Is there a workaround while this feature is being developed? |
safeTxGas attempt of explanation: It's the amount of gas |
Regarding Sasha's designs and Lukas's comment #838 (comment), I will implement it so the review screen always includes the details. I believe this information is important. |
@tschubotz @posthnikova @lukasschor I think it would be better if we remove the "Advanced options" link for the TX screen and show it instead on the review screen. If you accept this change, the "Advanced options" screen should only have 1 button "confirm". It will help the user to understand that if he did not edit the inputs, the default values will be used. |
I like that proposal since it would be similar to what metamask does. However I wouldn't allow the user to confirm a tx right from the advanced parameters screen. I think they should get back to the review screen again where they have to click "confirm" |
Initially it was intended that 'Confirm' from Advanced parameters goes back to tx parameters (recipient, amount). |
Yes that's what I wanted to say |
@posthnikova that means though that if they notice on the review page that they want to change something in the advanced params, they would have to
Whereas when we allow them to modify the advanced params from the review screen, that would be way shorter. What do you think about that? Wouldn't that be simpler? |
There's a additional click to 'Submit' transaction so the number of clicks is equal. For me both solutions are ok. We don't know how many users would want to configure advanced parameters. Always showing them on Review screen assumes everyone would want to see them. |
With how high it is the gas price I bet everyone wants to see it 😝 |
@posthnikova what do you think if in this screen we make "tx details" collapsible? |
Do you mean recipient and amount? |
We can do this but the popup would scroll anyway in expanded state. |
yes, I suggest it as an intermediate alternative to "show it always" or "when the user changed the options". If we make it collapsible the UI is barely modified and we have the best of the two options. if some users don't want to pay attention to the gas cost they won't expand it. |
awesome, love it! |
I like this new version as well! Main reasons:
|
Zeplin screens:
Send Funds
Contract Interaction
Send Collectible
Safe Apps
Confirmation and execution popups will be later. |
@rmeissner can you help me to elaborate on a list of validations for the form?
|
For 2. Inwould check agaibst on-chain info (or no check atball isbalso fine for me in a first version, up to @tschubotz ) Aldo this should be added to the issue description ;) |
yes, I wanted to say no negative values |
Both fine for me too. I think there is no need add more logic. It's an advanced feature, so people should know what they are doing in my opinion. |
What is this feature about? (1 sentence)
When initiating a new transaction, it is possible to set the transaction nonce, gas price and gas limit manually as an advance feature.
Why is it needed? What is the value? For whom do we build it?
High-level overview of the feature
This feature should work for all tx modals, i.e. send assets, contract interaction, settings change, Safe apps, etc.
This is an advanced feature, meaning it should not clutter the interface for regular users.
Parameters to set in this version:
Safe nonce
,safeTxGas
Nonce
,Gas limit
,Gas price
Note: Safe transaction parameters will be taken into account no matter if the confirmation happens on or off-chain. Ethereum tx params are only relevant for on-chain confirmations and executions. But we don't know that upfront.
Validation:
SafeTxGas
can not be lower thanEthereum gas limit
Modals that need modifications:
Updates
The text was updated successfully, but these errors were encountered: