-
Notifications
You must be signed in to change notification settings - Fork 44
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
Add third-party fee payer during deployment #129
Comments
Needs mini-RFC |
Indirectly Irresponsible Individual: @jasongitmail Please remember to get @shimkiv's input on a testing plan for all RFCs :) |
Thanks @mitschabaude!
"deployAliases": {
"mainnet": {
"url": "https://berkeley.minascan.io/graphql",
"keyPath": "...",
"fee": "0.201",
"feePayerKeyPath": "..."
}
}
Question:
I'll double back on the UX steps in a couple days. |
@jasongitmail thanks for the feedback! Keeping the existing I'm not sold on removing the fee payer alias. The idea was that this alias was, after set once, globally usable in every zkapp project. It wouldn't be scoped to the zkapp project or the particular |
This is great @mitschabaude! I have some questions and suggestions.
Strong +1 to keep the existing @jason while it would be great to eliminate a step and not ask a user for a key alias, I agree with @mitschabaude 's approach of having a fee payer alias that is recognizable and not scoped to any project. We still might want to include flows for linking to the faucet from the cli to fund accounts(on testnet) for the these paths
and possibly even for the use the Questions
Naming suggestions:
|
Thanks @ymekuria!
👍🏻
Yes that's what I was thinking!
Removing choice dilemma is a good point and maybe another point in favor of removing the zkApp account option. I think the default after caching is to use the cached account. A user might never switch fee payer accounts after storing the account the first time, as long as they stay on the same network. (And it might even be useful to use the same keypair on different networks!) So, if an account is stored I want to de-emphasize all other options. A solution could be to hide the other options behind an additional step:
And only when picking "Use a different account (select to see options)", they would be presented with the 3 options from before (recover keypair, create keypair, use zkapp account). In the case the user does this the first time and no account is stored, I think both creating a new keypair and recovering from a base58 key are equally good options, so I would present them with the same emphasis. Would put "create keypair" on top because in a sense it is the "simpler" option (fewer steps in the CLI).
I think in that case we should just store the zkApp keyPath also under "feePayerKeyPath", and elsewhere it would not treat the zkapp key differently than any other fee payer key.
I agree. Simple solution would be to always show the faucet link regardless of fee payer account. A fancier solution could be to query the graphql endpoint for the public key and check if it has enough balance to cover the |
+1 on removing the zkApp account option unless we can think of a good use case where it is necessary.
+1
This is a good compromise between emphasizing a default path and giving users options.
Only showing the faucet links when an account needs funds would be a great dx. We can also start with the simple solution and add the account query check later if adding this check is out of scope. |
Even if one of the steps imply this, I wanted to mention that it will be good if we will explicitly show the destination "cache storage" path with the warning to make sure it is secured. |
Good idea! |
I like where this is going! |
To discuss further.
E.g.
Use case
For easier initial deployment to mainnet. It's not critical for testnet b/c it's easy to get tMINA from a faucet for testing.
The text was updated successfully, but these errors were encountered: