-
Notifications
You must be signed in to change notification settings - Fork 608
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
Token Factory module #584
Token Factory module #584
Conversation
523ba77
to
b25991f
Compare
Codecov Report
@@ Coverage Diff @@
## main #584 +/- ##
==========================================
- Coverage 19.81% 18.49% -1.33%
==========================================
Files 210 219 +9
Lines 27884 30146 +2262
==========================================
+ Hits 5525 5575 +50
- Misses 21333 23544 +2211
- Partials 1026 1027 +1
Continue to review full report at Codecov.
|
b8303d6
to
e1698e3
Compare
6470b1a
to
f81ae6f
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM on first pass! Will do a second pass soon, then should be good to merge with a few follow-on issues.
Use: types.ModuleName, | ||
Short: fmt.Sprintf("Querying commands for the %s module", types.ModuleName), | ||
DisableFlagParsing: true, | ||
SuggestionsMinimumDistance: 2, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
oh interesting, maybe we can add this to more cmds
Co-authored-by: Dev Ojha <[email protected]>
Co-authored-by: Dev Ojha <[email protected]>
Co-authored-by: Dev Ojha <[email protected]>
Should we move this authority metadata system to the bank module itself? @ValarDragon wdyt? |
I think mint/burn permissions for a token do generally need to be rethought much more, and get into bank natively. I'm not fully sure how to square different approaches to this. This approach feels too restrictive for many general tokens (e.g. osmo, where we want many different modules to get mint perms -- Superfluid is in this set). I was suggesting this approach as a non-state breaking approach to add more protections cosmos/cosmos-sdk#10386 . I think something cool would be to get this module to emit a "FactoryMintRestrictions" and "FactoryBurnRestrictions" functions, that we then compose into that approach. (Rather than need this authorization lists in bank itself. I actually like that this module is specifying its own permissioning schema!) (We should also use that approach to restrict factory module perms) The status of that is its in a PR thats imo good to merge pending spec update. (cosmos/cosmos-sdk#10771). Unclear what SDK team's thoughts on it are though. I think we should go ahead and just use that even if the SDK doesn't want to. (It solves having to worry about gamm module minting non-LP shares for instance, and is imo critical for superfluid) |
I really like how this approach doesn't require the use of a contract per token, which is a broken pattern. |
Rebased this to main, as well as
|
Closing because has been replaced by other PRs |
The token factory module allows any account to start minting coins. Denoms are namespaced by the coin creator.
Description
For contributor use:
docs/
) or specification (x/<module>/spec/
)Unreleased
section inCHANGELOG.md
Files changed
in the Github PR explorer