forked from input-output-hk/plutus-use-cases
-
Notifications
You must be signed in to change notification settings - Fork 9
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
NFT: Proof of Uniqueness Based Minting #170
Labels
Comments
2 tasks
A more up to date article to be used is: link |
10 tasks
zygomeb
added a commit
that referenced
this issue
Nov 2, 2021
* update: separate API * WIP: refactor the existing for uniqueness list * WIP: REPL compiles * update: added some more information in comments * update: working initialisation * update: added Proof token to head init * update: wrapped CSymbol * update: further fixed functions * update: pre-merge * wip: splitting Contract module * redundant imports deleted * wip: linked list minting - minting off-chain logic - Enbpoints -> Contract module structure renaming * wip: linked list minting - minting off-chain logic - Enbpoints -> Contract module structure renaming * NFT: Rewrite set-price contract * NFT: Implement on-chain price-set * NFT: Add off-chain checks in set-price contract * update: add Init Trace * update: Head token is empty * NFT: Rewrite buy contract * NFT: Implement on-chain buy * NFT: Fix mint insert point lookup * update: minting Contract * update: Minting works * update: fixed Head bug * update: linting * NFT: Implement on-chain minting * update: merge proof and head nodes * WIP: minitng Policy with todos * WIP: updated Mint Contract to only use the one utxo that is updated * NFT: Finish minting policy * NFT: Fix on-chain checks * NFT: Make `buy` and `set-price` work again * update: solve cabal review * linked list implementation - adapt tests (#205) * Add a hacky minting test * Add more tests, move some values to TestValues module * Move minting tests to Minting module * Move script tests to Script folder * Fix mkTxPolicy name * Add valid buy test for dealing (wip) * wip * wip * Add todo for tasty options * wip * Use tasty options to set testTxId * wip, passes validator * wip * new tests, wip * Fix owner payment validator * Formatting * wip * NFT: Fix shares calculations * Update plutus-extra (for fixed tasty-plutus pretty-printing) * Fix tests after staging nft moved to lovelace values * Clarify todo * Remove `addDatum`s * Fix formatting * Linting * NFT: Implement legacy contract tests * NFT: Implement query tests * issue 171: - removing record-dot-preprocessor - minor refactoring * Remove redundant Maybe's * Use `Last QueryResponse` in a `QueryContract` * Add testQueryPrice trace * NFT: Add QuickCheck test for contract * Format code * NFT: Refactor quickcheck * More clear test names * Actually resolve merge conflict * Bangify on-chain code (#190) Co-authored-by: Yuriy Pachin <yuriy@mlabs.city> * NFT: Enable script tests (wip) * Fix minting Script tests * Fix dealing Script tests Co-authored-by: Kirill Boltaev <aske@fmap.me> Co-authored-by: Maksymilian Brodowicz <87449555+zygomeb@users.noreply.github.com> Co-authored-by: Mikhail Lazarev <mikhail@mlabs.city> Co-authored-by: Iurii Pachin <45940305+iupii@users.noreply.github.com> Co-authored-by: Yuriy Pachin <yuriy@mlabs.city> * fix: removed build errors * lint: hlint * formatting * bugfix: fix latent bugs * Fix tests * update: split legacy - re-organise * update: bangify validation code Co-authored-by: Mikhail Lazarev <mikhail@mlabs.city> Co-authored-by: t4ccer <t4ccer@gmail.com> Co-authored-by: Kirill Boltaev <aske@fmap.me> Co-authored-by: Maksymilian Brodowicz <87449555+zygomeb@users.noreply.github.com> Co-authored-by: Iurii Pachin <45940305+iupii@users.noreply.github.com> Co-authored-by: Yuriy Pachin <yuriy@mlabs.city>
zygomeb
added a commit
that referenced
this issue
Nov 2, 2021
* Rework Nix code Before this `cabal configure` didn't work in a pure environment. * nixfmt * Fix hoogle * Update shell.nix, fix darwin build * Add sha256 update script * Refactor NFT - no StateMachine (#146) * WIP: refactor * WIP: compiling - yet not working as it should * WIP: semigroup complaints * WIP: update * update: mint goes through * wip: NFT prototyping (#149) * update * NFT-Rejig (#151) * update: added human readable info * update: typed Mint Parameters * update: added extra params to MintParams * update: intermediary aux functions * wip: set price * wip: set price error handling * WIP: call not working * wip: set ptice: trace hadlers usage fix * WIP: buy just consumes * update: some more logging * WIP: preparing to merge * update: format + lint * update: remove needless parametrisation of validator * WIP: validatorHash not being found? * update: working transaction * update: reformat and lint * Buy Endpoint (#152) * wip: set price * wip: set price error handling * WIP: call not working * wip: set ptice: trace hadlers usage fix * WIP: buy just consumes * update: some more logging * WIP: preparing to merge * update: format + lint * update: remove needless parametrisation of validator * WIP: validatorHash not being found? * update: working transaction * update: reformat and lint Co-authored-by: Mikhail Lazarev <mikhail@mlabs.city> * update: Added hash function * wip: NFT refactoring - splitting to modules * wip: NFT refactoring (#154) - splitting to modules * WIP: pre-merge commit * wip: more precise datun search * update: added hash back * deleting accidentally pushed file * update: datums check * update: lint and reformat * bugfix: don't use dot preprocessor * update: added additional test * update: sketched out new checks * update: added buy tests * update: Buy on-chain logic complete together with: linting, formatting, imports. * wip: passing NFT currency symbol with redeemer * put contant hashing back * bugfix: merge error fixed * wip: NFT validation - checking transacion consumew input and producew output with NFT * bugfix? * update: working on-chain * update: working on-chain * wip: on- and -off-chain setp rpice checks * fix: fix the syntax for the correct sum test * Nft Queries (#166) * new: created query Contracts and endpoints * review: integrated comments * update: remove dotsyntax globally from NFT Co-authored-by: mikekeke <mikhail@mlabs.city> * Update plutus to 58c09 (#165) * Update plutus-extra * Update plutus: cabal.project * Add cardano-wallet, cardano-addresses niv sources * Change cardano-ledger-specs GH owner * Set niv source revisions to cabal.project tags * Add OpenApi.ToSchema instances * Add more OpenApi.ToSchema instances * formatting Co-authored-by: cstml <cstmlcodes@gmail.com> * Add a hacky minting test * Add more tests, move some values to TestValues module * Move minting tests to Minting module * Move script tests to Script folder * Fix mkTxPolicy name * Add valid buy test for dealing (wip) * issue 157 compiler flags - styleguide compliance flags added, errors fixed - bunch of Eq instances for Lendex added - minor refactoring * linting and formatting * removing orphans where possible - change `Scene` to use Haskell Monoid - change tests that use `Scene` to use Haskell monoid * wip * formatting fix * wip * Add todo for tasty options * wip * Use tasty options to set testTxId * wip, passes validator * wip * new tests, wip * Fix owner payment validator * bugfix+update: owner paid + all values now in Lovelace * update: added edge case author/owner the same * Formatting * wip * NFT: Fix shares calculations * Update plutus-extra (for fixed tasty-plutus pretty-printing) * Fix tests after staging nft moved to lovelace values * Clarify todo * Remove `addDatum`s * Fix formatting * Linting * NFT: Implement legacy contract tests * NFT: Implement query tests * issue 171: - removing record-dot-preprocessor - minor refactoring * Remove redundant Maybe's * Use `Last QueryResponse` in a `QueryContract` * Add testQueryPrice trace * NFT: Add QuickCheck test for contract * Format code * NFT: Refactor quickcheck * More clear test names * Actually resolve merge conflict * Bangify on-chain code (#190) Co-authored-by: Yuriy Pachin <yuriy@mlabs.city> * Nft: proof based linked list implementation (closing #170 #174) (#176) * update: separate API * WIP: refactor the existing for uniqueness list * WIP: REPL compiles * update: added some more information in comments * update: working initialisation * update: added Proof token to head init * update: wrapped CSymbol * update: further fixed functions * update: pre-merge * wip: splitting Contract module * redundant imports deleted * wip: linked list minting - minting off-chain logic - Enbpoints -> Contract module structure renaming * wip: linked list minting - minting off-chain logic - Enbpoints -> Contract module structure renaming * NFT: Rewrite set-price contract * NFT: Implement on-chain price-set * NFT: Add off-chain checks in set-price contract * update: add Init Trace * update: Head token is empty * NFT: Rewrite buy contract * NFT: Implement on-chain buy * NFT: Fix mint insert point lookup * update: minting Contract * update: Minting works * update: fixed Head bug * update: linting * NFT: Implement on-chain minting * update: merge proof and head nodes * WIP: minitng Policy with todos * WIP: updated Mint Contract to only use the one utxo that is updated * NFT: Finish minting policy * NFT: Fix on-chain checks * NFT: Make `buy` and `set-price` work again * update: solve cabal review * linked list implementation - adapt tests (#205) * Add a hacky minting test * Add more tests, move some values to TestValues module * Move minting tests to Minting module * Move script tests to Script folder * Fix mkTxPolicy name * Add valid buy test for dealing (wip) * wip * wip * Add todo for tasty options * wip * Use tasty options to set testTxId * wip, passes validator * wip * new tests, wip * Fix owner payment validator * Formatting * wip * NFT: Fix shares calculations * Update plutus-extra (for fixed tasty-plutus pretty-printing) * Fix tests after staging nft moved to lovelace values * Clarify todo * Remove `addDatum`s * Fix formatting * Linting * NFT: Implement legacy contract tests * NFT: Implement query tests * issue 171: - removing record-dot-preprocessor - minor refactoring * Remove redundant Maybe's * Use `Last QueryResponse` in a `QueryContract` * Add testQueryPrice trace * NFT: Add QuickCheck test for contract * Format code * NFT: Refactor quickcheck * More clear test names * Actually resolve merge conflict * Bangify on-chain code (#190) Co-authored-by: Yuriy Pachin <yuriy@mlabs.city> * NFT: Enable script tests (wip) * Fix minting Script tests * Fix dealing Script tests Co-authored-by: Kirill Boltaev <aske@fmap.me> Co-authored-by: Maksymilian Brodowicz <87449555+zygomeb@users.noreply.github.com> Co-authored-by: Mikhail Lazarev <mikhail@mlabs.city> Co-authored-by: Iurii Pachin <45940305+iupii@users.noreply.github.com> Co-authored-by: Yuriy Pachin <yuriy@mlabs.city> * fix: removed build errors * lint: hlint * formatting * bugfix: fix latent bugs * Fix tests * update: split legacy - re-organise * update: bangify validation code Co-authored-by: Mikhail Lazarev <mikhail@mlabs.city> Co-authored-by: t4ccer <t4ccer@gmail.com> Co-authored-by: Kirill Boltaev <aske@fmap.me> Co-authored-by: Maksymilian Brodowicz <87449555+zygomeb@users.noreply.github.com> Co-authored-by: Iurii Pachin <45940305+iupii@users.noreply.github.com> Co-authored-by: Yuriy Pachin <yuriy@mlabs.city> Co-authored-by: Las Safin <me@las.rs> Co-authored-by: Kirill Boltaev <aske@fmap.me> Co-authored-by: Vlad <cstmlcodes@gmail.com> Co-authored-by: mikekeke <mikhail@mlabs.city> Co-authored-by: t4ccer <t4ccer@gmail.com> Co-authored-by: Iurii Pachin <45940305+iupii@users.noreply.github.com> Co-authored-by: Yuriy Pachin <yuriy@mlabs.city>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Improve current design such that:
Content
was minted only once.The strategy can make use of distributed maps as describe on Slab
The text was updated successfully, but these errors were encountered: