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

Gradual Dutch Auction #1

Merged
merged 13 commits into from
May 24, 2022
Merged

Gradual Dutch Auction #1

merged 13 commits into from
May 24, 2022

Conversation

EvolveArt
Copy link
Contributor

@EvolveArt EvolveArt commented Apr 5, 2022

Hello!

I'm currently implementing the Gradual Dutch Auction system on Starknet.
Please refer to this paper for more info : Paradigm Research

Making this PR but for now there is only a base implementation of the Discrete GDA.
Continous GDA will come right after.

For fixed point math, I've used cairo-math-64x61 but please let me know if you think there is a more suited one which I don't think so tho.

There are still some tweaks to make to the implementation :

  • Find the best way to batch mint ERC721
  • Best way to refund excess payment in ERC20 token

- Influence/Math64x61 for fixed point math
- Here we use ERC721 but ERC20 could also be used
- Need to fix the refund snippet
- Best way to batch mint tokens for ERC721 ?
- TODO : fix refund
- TODO: warp 10 blocks ahead in time for the tests to pass
Copy link
Contributor

@rootulp rootulp left a comment

Choose a reason for hiding this comment

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

thanks for sharing this! Super interesting work

contracts/continuousGDA.cairo Outdated Show resolved Hide resolved
contracts/discreteGDA.cairo Show resolved Hide resolved
@sambarnes sambarnes merged commit 5aea42f into sambarnes:master May 24, 2022
@sambarnes
Copy link
Owner

thanks a ton to both of you for your work on this & reviewing! i've done a read through and lgtm :)

will make a second pass at refining this (and a couple of the things commented out in the impl) when i get the time, but for now it'll be great to have this in for demonstration purposes

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.

3 participants