-
Notifications
You must be signed in to change notification settings - Fork 52
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
[DOCS] Hybrid Custody #180
Comments
I agree with the suggestions here. HC on its own is a lot to digest without understanding the concept of account linking (i.e. Account Capabilities). I would add here that maybe instead of a scaffold we create a simple Cadence tutorial where a dev walks through:
This also brings up the need for an inbox tutorial, but that's spinning out of scope. |
Can we instead of using inbox make a multi-sig transaction to simplify? but I agree, maybe we can split it into two, first is just native account linking and then we have HC for more advance usage as a continuing on the idea. That way users will be able to have a step in between. |
@btspoony Came to a similar conclusion about developing a wrapper for learning purposes. As he explained on Discord: https://discord.com/channels/613813861610684416/1087374662100602920/threads/1136892613270704159 HybridCustodyHelper
|
I believe a good approach from tutorial perspective could be:
|
For reference, the https://github.com/btspoony/hybrid-custody-helper/blob/main/contracts/HybridCustodyHelper.cdc |
Sure, multisig would definitely work for demonstration. Feedback we've gotten from builders working with custodial services points to multi-sig being a pain to implement. Based on that feedback, I've been inclined to demo publish/claim so the pattern devs encounter are consistent across the full stack. Do you know if there's an easy way to setup a multi-sig txn or are devs more inclined to deal with single-signed txns?
I think this is alright for the purposes of learning, but I still wouldn't recommend devs rely on a wrapper as a crutch in production. If they build their entire interface around the wrapper, they'll run into issues when most accounts they encounter don't have wrappers configured. I think the overall order of concepts does a better job of ramping devs up to the fully-fledged HC construction. With that said, most devs dealing with HC really won't need to concern themselves with the deeper concepts, so ramping them up to hold the entire construction in mind feels unnecessary. @sideninja from our convo this week, we mentioned focussing on the app dev person. The only devs who will need to deeply understand and use HC constructs are platforms & wallets, of which there are few. I think we'll get the most impact by simplifying the app path which involves the following steps: One-time setup:
When it's time to link:
And that's pretty much the extent most apps will have to go to allow parent wallets to link app-custodied child accounts. Getting child account Capabilities, resolving child account metadata, facilitating cross-account transactions - all of that complexity will be dealt with by wallets and platforms. I feel like optimizing for these builders first means we're ignoring the low-hanging fruit we gain by making it easy for devs to enable linking parent-child accounts. |
I agree then!
Using CLI you can, but again, if there's feedback around it then we should do it that way.
I agree. This could be a nice example as a step towards existing material around HC. |
SGTM, I like the idea of a minimized scaffold that works as an experiential demo w/ UI |
The Hybrid Custody section was updated to Account Linking: https://developers.flow.com/next/concepts/account-linking |
I think we should divide the concepts of hybrid custody and account linking. One is a design approach of Flow dapps and the other is a Cadence feature. Putting both together in docs creates unnecessary added complexity.
Suggested actions:
Update Dapp Architectures
Update the Dapp Architectures on the Flow Blockchain with the hybrid custody and explain how you can achieve that through account linking which would link back to the account linking docs.
Refresh the diagrams in the article with a bit more modern-looking ones, and take the user through an example of the process:
Link the hybrid custody page to the above doc https://flow.com/hybrid-custody
Hybrid Custody -> Account Linking
Hybrid custody is a new term that doesn't include any idea of what it means. Account linking as a term is more self-explanatory and conveys the idea faster. More than that, account linking is more powerful than just hybrid-custody, hybrid-custody is merely an example of application of account linking. It also adds to complexity of trying to explain two concepts at the same time.
FLIX
Implications on other parts:
The text was updated successfully, but these errors were encountered: