-
Notifications
You must be signed in to change notification settings - Fork 10
Use Vault in Marketplace #223
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
Open
markspanbroek
wants to merge
34
commits into
master
Choose a base branch
from
vault-integration
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
b9689f1
to
0f0f830
Compare
32d0dbd
to
095e90f
Compare
53679b4
to
cfd30bf
Compare
6a7d559
to
957f6ec
Compare
cfd30bf
to
8a11e87
Compare
15d50c7
to
55fb29f
Compare
Vault stores balances as uint128
replaced by formal verification with certora
- removes RequestCancelled event, which was not great anyway because it is not emitted at the moment that the request is cancelled
- move all collateral calculatons to separate library
so that they can no longer be transfered within the vault
This state is no longer necessary, vault ensures that payouts happen only once. Hosts could bypass this state anyway by withdrawing from the vault directly.
- changes to marketplace constructor - we no longer have _marketplaceTotals - timestamps have their own type now - freeSlot no longer takes payout addresses - slot state 'Paid' no longer exists - freeSlot can be invoked more than once now - a failed request no longer ends immediately
No need to test the token itself
It is no longer a discount on the collateral, to simplify reasoning about collateral in the sales module of the codex node
So that a storage provider can know how much collateral is returned when it calls freeSlot()
55fb29f
to
0bdefa7
Compare
AuHau
requested changes
May 21, 2025
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.
Great work, big effort! 👏
Generally LGTM, but there are a few critical points that need clarification or addressing, so I will go for the "Request changes" here.
I have gone over the contract changes, still need to see the testing of this, but that will be in round two 😅
AuHau
reviewed
May 22, 2025
Because a client might still need to call withdraw()
reason: freeSlot() will call forciblyFreeSlot when contract is not finished, so we can use that instead
reason: hosts are paid for the time that they hosted the slot up until the time that the request failed Co-Authored-By: Adam Uhlíř <adam@uhlir.dev>
Co-Authored-By: Adam Uhlíř <adam@uhlir.dev>
reason: the function only depends on the request, and it is similar to the pricePerSlotPerSecond function Co-Authored-By: Adam Uhlíř <adam@uhlir.dev>
Co-Authored-By: Adam Uhlíř <adam@uhlir.dev>
Co-Authored-By: Adam Uhlíř <adam@uhlir.dev>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uses the vault for all token transfers in the marketplace. The marketplace now no longer keeps any funds itself.
This has impact on the following as well:
Timestamp
,Duration
andTokensPerSecond
on the API