Commit Graph

42 Commits

Author SHA1 Message Date
Adam Jeffries ef54f97ca8
Merge pull request #233 from metaplex-foundation/instant-sale
Instant sale
2021-09-21 17:48:55 -05:00
Jordan Prince d1dedeacdd
The Fair Launch Protocol (#367)
* Fair launch work

* Add cargo

* Update cargo to latest

* Latest candy machine types

* Fair launch update to anchor 14 and finish fleshing out commands

* Working on fair launch

* Finish initializing fair launch.

* Lottery endpoints

* Knee deep in more actions

* some monster commit here, almost done wiht initial draft

* Code complete fair launch. first draft.

* More work

* COmmit to reproduce

* Hell yeah i can make these and show them

* well, a lot of stuff.

* Holy medians batman

* Adjust ticket

* more commands, more love, more life

* Mooore stuff

* This sh*t is gettin hot

* More junk, im losing it.

* Ninja'd that sh*t

* well ill be damned, some of it is working

* Think punching is working. Time for sleep.

* Anti rug commit - before testing.

* feat: init commit for website

* Got my money back first time end to end b*tches

* things beginning to work

* Oh yeah, rug pull seems to be working...

* Mostly working now

* Some more fixes

* Moref ixes

* feat: basic page

* feat: purchaseTicket

* feat: fair launch UI

* Still figuring it out

* Still investigating why newly made accounts have delegates

* pushing

* Some fixes to the adjust ticket

* Bid adjustment works in UI

* feat: layout

* trasury numbers

* Hook up your bid

* feat: style

* wip on fair launch new fields

* feat: home

* Come limited punching support

* More display logic for fair launch

* feat: style

* feat: countdown

* Bid adjustment

* Fix for when median is not divisible by tick

* feat: home

* Working on recoding so that we can use spl tokens

* feat: style

* Midway stopping point...nothing is working.

* more and less.

* Added confetti and merged updates

* End to end working and fix minting for spl in candy machine

* New fair launch

* New fair launch

* Better loading and stuff

* feat: style changes

* fix: warnings

* candy time

* Anti rug screens

* better verbiage

* feat: hide withdraw button

* Refund working and set id

* Good to go for prod

Co-authored-by: bartosz-lipinski <264380+bartosz-lipinski@users.noreply.github.com>
2021-09-21 13:33:22 -05:00
Vadim b3ba1a95e2 Fix Metaplex ClaimBid instruction, move extended acc info to the end of acc list 2021-09-21 11:42:02 +03:00
shotgunofdeath 0445dacd5a fix(notifications): add ended instant sale auctions to notifications 2021-09-20 18:43:17 +03:00
adamjeffries 7861b240d1
Merge branch 'master' of https://github.com/metaplex-foundation/metaplex into instant-sale 2021-09-19 15:28:15 -05:00
Slavomir 633d3668c7
Improve doc comments (#436)
* token-metadata: fix doc formatting for SignMetadata instruction.

* auction: add doc to `SetAuthority` instruction.

Deduced from `pub fn set_authority_instruction`

See 09d323accd/rust/auction/program/src/instruction.rs (L115)

* Remove newline

* Improve comment
2021-09-19 09:47:27 -05:00
adamjeffries 3af15e6a26
Merge branch 'master' of https://github.com/metaplex-foundation/metaplex into instant-sale 2021-08-31 15:01:56 -05:00
Jordan Prince f11659cb43
H (#260)
* Adding candy machine

* Still working on stuff

* Commit where is top using anchor

* Working on candy machine

* Continue working on candy machine

* Still working

* Completely reasonable failure

* Completely unreasonable failure

* Finally, we have uploading configs and tests

* Add uuid support to candy machines so candy machine can rerun with same config

* feat: init cli

* Got minting now bro. All downhill from here.

* All done

* Chang eaddress

* Minor fix to anchor settings

* feat: integrate candy

* feat: cli upload

* Heck yeah. Switch out the pda for a non pda to allow for alrger allocs

* Send authority to candy machine authority if retain authority is true

* feat: add add congif lines

* Forgotten conflict

* Rewire CLI to chunkify and add verification

* Current changes

* Client finished

* Fuckin bitmasks bro

* Fix metadata client

* Working on cli

* Fixed the healing loop

* here we go.

* Fix the error that caused price to be 1 instead of 5

Co-authored-by: bartosz-lipinski <264380+bartosz-lipinski@users.noreply.github.com>
2021-08-31 14:16:16 -05:00
adamjeffries 0b8feaed9a
Merge branch 'master' of https://github.com/metaplex-foundation/metaplex into instant-sale 2021-08-25 07:59:20 -06:00
sigaloid 61c124acf0
Cargo format, update, clippy fix, fix (#228)
* Cargo fmt

* Cargo update

* cargo +nightly clippy --fix -Z unstable-options

* Cargo fix
2021-08-24 09:23:41 -05:00
Jordan Prince bf22676c2c Working on instant sale 2021-08-13 20:09:34 -05:00
Jordan Prince d13e2a98c7 Merge branch 'feature/instant-sale' of github.com:atticwip/metaplex into instant-sale 2021-08-12 18:33:56 -05:00
Jordan Prince 8ea6b0e2d4
Refactor WinningConfigs into more scalable independent SafetyDepositConfig solution (#144)
* WIP on new configs

* WIP on building out primary pathway of new safety config, needs its own serde

* Finish the serde for safety config.

* Upgrade solana library and borsh library

* Refactor bid redemption ticket to use a bitmask behind the scenes and present a nice facade

* WIP commit - got most of the redemption stuff worked out through abstraction. Need to take a hard look at participation and work that one out next.

* WIP on smoothing out validations and participation

* More fixes to smooth out the facade between the v1 and v2 auction manager, mostly in withdraw master edition

* Lots of work on getting this thing ready to test but hit a snagin empty payment account that requires a whole new account to be created

* Still working

* Massive push to finish all the bugfixes to get the refactor ready for integration with UI

* Beginning the long work of integrating refactor into the UI

* Update the model files to have the latest new account keys for the refactor

* Still WIPing the front end into shape

* Slowly creating facades on the front end so that it no longer knows about winning configs in many places.

* Lots of refactoring to get rid of winning configs

* More build fixes

* Doesnt seem like much, but this commit is the first commit that can do an end to end auction to settlement with a single token in v2.

* More fixes to withdrawing editions and edition management in the v2 universe, and a fix for expected redemptions in the v1 universe that exists as a bug right now.

* Forgot to include the fix for expected redemptions in v1

* This commit demarcates open edition auctions working again

* Fixes to tiered auctions.

* Remove debugger

* Show token winning type

* Fix for bad royalties calcs

* More fixes

* Still working through various bugfixes in participation nfts

* More fixes to participation

* more bugfixes

* Dont allow av1s to create new redempton tickets

* Make a new endpoint for participation redemption since it now requires an argument

* Switch ok() to normal match as this seems to make a different and wont throw missing account keys

* Revert "Switch ok() to normal match as this seems to make a different and wont throw missing account keys"

This reverts commit 68b8c7cfc2eb2bc6d3b5297b337042c884e7c2c0.

* Master edition is actually safety deposit in the case of a v1 since it still is consuming from same iterator
2021-08-09 08:52:30 -05:00
Vadim 8909e57146 Add EndAuction proxy call to Metaplex program 2021-08-06 13:45:56 +03:00
Vecheslav Druzhbin ebe3841013 style: typo has instant bid 2021-08-02 18:11:57 +03:00
Ilia 7a01f3c650
feature: success tests for token-metadata (#173)
* feature: update borsh version, wip testing module

* Fixed signatures for create metadata in tests

* feature: success test for create_metadata_account

* feature: success test for update_metadata_account, added is_mutable param to create method

* feature: success test for update_primary_sale_happened_via_token, added token account creation in test metadata structure

* feature: success test for create_master_edition

* feature: success test for mint_new_edition_from_master_edition_via_token

* feature: added more success tests checks, wip: added necessary accounts

* feature: added more internal mocks, added mint_new_edition_from_master_edition_via_vault_proxy

Co-authored-by: Yuriy Savchenko <yuriy.savchenko@gmail.com>
2021-07-30 10:33:22 -05:00
Vecheslav Druzhbin d526364aaf refactor: style MAX_AUCTION_DATA_EXTENDED_SIZE 2021-07-29 15:02:52 +03:00
Vecheslav Druzhbin e18c4e0bf5 refactor: instant sale considered open edition auction 2021-07-29 13:05:30 +03:00
Vecheslav Druzhbin ff4ed1b18a fix: optional name for auction v1 2021-07-28 14:31:59 +03:00
Vecheslav Druzhbin 9f83796566 Merge branch 'master' into feature/instant-sale 2021-07-28 12:34:32 +03:00
Vecheslav Druzhbin 71b2e57032 Merge branch 'feature/add-auction-name' into feature/instant-sale 2021-07-28 12:30:15 +03:00
Yuriy Savchenko 18c3b0b1b7
Cancelling bid only if the auction has not ended yet (#165) 2021-07-25 16:38:27 -05:00
Yuriy Savchenko 1857649730 Added name to the auction data 2021-07-25 12:00:40 +03:00
Vadim 300fef21f8 Refactor after review 2021-07-23 20:02:48 +03:00
Vadim ca23b371a4 Refactor tests for Auction program 2021-07-23 16:35:30 +03:00
Vadim eb798f9825 Add instant_sale_price check to metaplex common redeem check util 2021-07-23 16:35:30 +03:00
Vadim 727b5fc10a Add tests for instant_sale_price feature 2021-07-23 16:35:30 +03:00
Vadim 3f43c2b45b Add instant_sale_price check to ClancelBid instruction 2021-07-23 16:35:30 +03:00
Vadim e4c670bec9 Add instant_sale_price check to ClaimBid instruction 2021-07-23 16:35:30 +03:00
Vadim e38684dd4f Add instant_sale_price check to PlaiceBid instruction 2021-07-23 16:35:30 +03:00
Vadim c2507c8287 Add check of instant_sale_price parameter to PlaceBid instruction 2021-07-23 16:35:30 +03:00
Vadim b47705253d Add instant_sale_price parameter to AuctionDataExtended 2021-07-23 16:35:30 +03:00
Jordan Prince 397bf8dbdc
Fix for bad state calculation (#139) 2021-07-17 15:06:36 -05:00
Jordan Prince c3b9c5eb4a
Master edition refactor (#108)
* WIP on new instructions

* WIP on refactor

* Lot of wip here on refactoring to a new master edition v2. too much to mention.

* Next wip state on new master edition

* More work, unfortunately had to add proxy call to vault to get access to authority to use store token

* A bit of a checkpoint here - removed all the old cli code since we have deviated so much it is not worth maintaining anymore and there is no real use for it given it doesnt use sol wrapped accounts, and we are ready to start integration testing with the remaining CLIs. No front end changes yet.

* Adding a bunch of new actions for the front end...still need to hook up more.

* Working on integration testing all of this but really have a CPU problem

* Got redeem bid working for the simplest case. Need to test more tomorrow.

* Cut down on CPU time by cutting out the O(n) scan of bidders

* Smarter withdraw that takes participation and empty auctions into account.

* After much pain and misery, i have working participation bids as well.

* More fixes for redemption

* Add a double check in case account mint is empty for send participation bid because if that one messes up yo end up with dupes

* A bunch of super optimizations to get 50 person auction sto pass muster even on the old system.

* Working on more fixes for v2

* Moratorium on alotted address size check for 2weeks

* Working on a new set of methods that allow me to get rid of deserializing auction entirely in redemption for metaplex...

* Went medieval on auction manager and wrote my own save function, and removed auction from being deserialized at all. Going to test a 50 person auction now in v2.

* A working autoredeemer, nearly

* Work in progress on multiple edition redemptions

* Updates to site for edition redemption

* Add conversion button and update sale happened if it should be in auction creation process
2021-07-16 15:06:27 -05:00
Jordan Prince e838546d7f Fixes for cli 2021-06-28 19:59:15 -07:00
Jordan Prince 921ad45044
Fix case where it's possible to assign authority to AuctionManager that does not yet exist (#94)
* A lovely wip commit on fixing a little loophole that could cause trouble when auction managers get front run.

* Finish up loophole closing
2021-06-28 18:28:10 -05:00
Jordan Prince 3ec50ee190
Tick Size and Gap Tick Size (#66)
* Draft code for tick sizes

* Hooking up front to back end, need to test it now.

* Don't adjust ids.

* Fully working tick size and gap tick percentage

* Final fixes and validations for tick and gap

* Update cargo.lock
2021-06-27 19:34:38 -05:00
Jordan Prince 8c46e6906c
Auction Manager Unwinder [2/2] (#63)
* Add the next level of unwinder - the auction manager unwinder.

* Remove print
2021-06-19 21:39:46 -05:00
praskoson 9f65bcf325
Re-add testing tools to the build path (#55)
* Re-add the testing tools to build path

* Correct the default RPC URL.

The URLs for the RPC nodes were updated to use the api prefix. The older URLs no longer work.

* Harmless misspelling

* Use Key enum for Vault contract

* Re-order imports so rustfmt passes
2021-06-19 13:22:28 -05:00
Jordan Prince 434e1c5a11
Unwinding Unused Auctions (#38)
* First draft of unwinding code - cleverly use the redemption framework to allow auctioneers to redeem their own goods. No idea if it works, will begin testing tomorrow.

* Added missing instruction I noticd hadnt been created

* Update rust to fix issues with draft impl

* Comments for clarity

* Everything is working for unwinding

* Remove myself from .env

* Bring back proper ids

* Fix for case where auctioneer IS one of the winners...need to rethink how we check. Just check winner at the desired index and if it exists, disallow.

* Protect against mismatched winner attacks
2021-06-17 08:59:14 -05:00
Jordan Prince 377f6cd521
Minimum Price Support in UI + Minor contract fix (#37)
* Hook up minimum price to the front end with some borsh hacks, and fix a minor bug in the auction contract for minimum price checks

* Remove excess definitions we dont need from the hack.

* feat: no hacks allowed

Co-authored-by: bartosz-lipinski <264380+bartosz-lipinski@users.noreply.github.com>
2021-06-15 11:31:51 -05:00
Jordan Prince 983647bc74 History doesn't repeat itself, but it does rhyme. 2021-06-12 12:27:51 -05:00