-
Notifications
You must be signed in to change notification settings - Fork 12
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
[Code Health] Improve Claim settlement processing scalability #1013
Comments
@red-0ne A few followup quetions/comments:
Where/when would we be querying them? I don't fully understand the optimization here.
Same as above. If I were to pick up and implement this myself, I don't understand the direction and rationale.
We DO NOT want to do this for two reasons:
|
TL;DR; I think there's a confusion between Claim submission (that binds the supplier to the smt root) and Proof submission (that selects which branch to submit) It is possible to validate the proof correctness at submission time. Since closest path generation and validation uses the See: x/proof/keeper/proof_validation.go#L235-L250 This height comes before Note that it is unknown at More broadly, the supplier knows whether the proof it's submitting is valid or not and there's no (and should not be any) secret revealed at (or after) proof submission window closing.
This is why we have to minimize the time a supplier has to submit a proof after the seed hash is known.
Message submission responses are fast and do not wait for the tx to process (only basic verification is performed). The outcome of the transaction is only known if the tx gets included in a block that is committed. |
ACK. However, I don't want this to be a consideration / decision because whoever will manage the governance params 10 years from now will not have this thought process. We need the submission windows to function independently, safely and securely without these limitations. |
Noted and agreed with you approach. I concur that it is safe but am still worried about a potential Will keep thinking... |
For the purposes of this messages, let's remove the Can you confirm that this is what you expect the flow to be?
flowchart TD
A[Client submits proof] --> B[RPC Node receives proof submission request]
B --> C{Is 'greedy_validation' boolean field set?}
C -->|greedy_validation=false| D[Store proof onchain w/ field 'validated=false']
D --> E[[Return success]]
C -->|greedy_validation=true| F[Validate proof]
F --> G{Is proof valid?}
G -->|No| H[Don't store on chain]
H --> I[[Return error]]
G -->|Yes| J[Store proof onchain w/ field 'validated=tre']
J --> K[[Return success]]
|
Objective
Ensure that Claim settlement processing scales well with the increasing number of claims to process
Origin Document
Goals
Deliverables
A PR that
Non-goals / Non-deliverables
General deliverables
Creator: @red-0ne
Co-Owners: @okdas @bryanchriswhite
The text was updated successfully, but these errors were encountered: