Skip to content
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

SEP-41: add mint and clawback event #1588

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

chowbao
Copy link

@chowbao chowbao commented Dec 12, 2024

Discussion

Add a mint and clawback event to SEP-41 to be able to track balances through events correctly

This does not define a mint() nor clawback() function. This only defines the events themselves to be SEP-41 compliant

@chowbao chowbao changed the title add mint event to sep-41 add mint and clawback event to sep-41 Jan 8, 2025
Track: Standard
Status: Draft
Status: Final
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think this update should change the status. Changing the status is unnecessary and hasn't been discussed.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we want to leave it in Draft still? That seems weird if custom tokens are actively using the SEP (and will use the updated SEP with mint/clawback)

How do we decide if a SEP should be active/final?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lets have that discussion, but not bundle a status change with a functional change. The fact we're making a functional change is an indicator it still belongs in Draft, because Draft is the state that functional changes occur in.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm that's fair it should have already been updated from Draft to Active/Final before these functional changes. But it's just lucky happenstance that it is still in Draft and we can keep it in draft for these changes

Updated in b8aa496

Copy link
Member

@leighmcculloch leighmcculloch Jan 15, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it's debatable. While the SAC implements SEP-41 there are not a significant number of custom tokens, and given the ecosystem around events is still developing (unified events work as evidence) SEP-41 still has some room to prove itself before we flag it as Final.

@leighmcculloch leighmcculloch changed the title add mint and clawback event to sep-41 SEP-41: add mint and clawback event Jan 15, 2025
Created: 2023-09-22
Updated: 2023-10-18
Updated: 2025-01-08
Version 0.2.0

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This version should be bumped

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch. Updated in 5f29fdf

ecosystem/sep-0041.md Show resolved Hide resolved
Copy link
Member

@leighmcculloch leighmcculloch left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me, but I don't think we should merge it until CAP-67 is further along, just because once this is merged there's a cost to iterating on it that doesn't exist if we iterate on it in this PR.

@ozgunozerk
Copy link

I think this is a great step. As someone who is new to the ecosystem, I think there might be a confusion around this new change though. There is mint event specified, but no mention of mint() function. Quoting from @chowbao's comment on the relevant discussion:

This SEP has purposely not added an mint() nor init_asset() function to give contracts more flexibility. The theory is that a contract should be free to define how they want to mint a new custom token. There doesn't need to be an standard single initialization function. There are existing contracts that have an initialize() function that does emit the mint event. By not adding a minting function to the interface, these existing contracts with be compliant with this SEP without changes.

This explanation is currently implicit, but if made explicit by putting it in SEP-41, I think a lot of confusion will be prevented, and people will better understand the design rationale behind this.

P.S. needless the say, the same goes for clawback event and clawback() function.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants