-
Notifications
You must be signed in to change notification settings - Fork 2.2k
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
feat(protocol): add preconfirmation support [helder] #17654
Conversation
feat(protocol): add preconfirmation support [helder]
🚨 Report Summary
For more details view the full report in OpenZeppelin Code Inspector |
Brecht, my understanding is that if we have two preconfers on slot 5 and 31, only the first perconfer can propose blocks in slot 0 to slot 5, and only the second preconfer can propose block in slot 6 to 31 (this is Justin's original proposal I believe). The In the implementation of |
Two more changes in latest version:
|
# Conflicts: # packages/protocol/contracts/L1/libs/LibProposing.sol
} | ||
} | ||
|
||
require(_params.length == _txLists.length, "mismatched params length"); |
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.
I tend to think, it might be better like this below if we wanna support calldata
efficiently.
if(txLists.length != 0) {
require(params.length == _txLists.length, "mismatched params length"));
}
So currently protocol can handle both, but with the above change, we would have to create empty _txLists
-matched to the length of _params
, even if we use blob OR some empty if we use blob + calldata both, separately, paralel with one L1 TXN.
I dont think it is practical to use different data avail. layer for multiple L2 blocks but one L1 TXN. (Maybe i'm wrong in here, and in this case inefficiency is i guess negligible).
…o preconfirmations
This PR is stale because it has been open for 45 days with no activity. |
This PR was closed because it has been inactive for 14 days since being marked as stale. |
For now these changes are only to support the upcoming preconfirmation testnet!
ISequencerRegistry
. Currently the testnet needs some very simple whitelisting implementation, this will be replaced when the actual registry can be used.Tried to minimize changes with how
ISequencerRegistry
is implemented using a callback inside the propose function, otherwise I would probably add an additional contract in front of TaikoL1 but that seems like a bigger change for multiple reasons.Untested.