-
Notifications
You must be signed in to change notification settings - Fork 41
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
Expose AuthorFilter Call enum #706
Conversation
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.
You found a temporary fix of disabling the cache, preventing the storage root mismatch because of the known bug. So my first question was, if this PR is still required then. I could imagine, that we would like to use the extrinsic of the pallet_author_slot_filter
in the future. So I would lean towards approving.
It might be, that I don't get the full context now, but wouldn't setting the eligibleCount
to 1
to only allow one collator to produce blocks (per active slot)? I could imagine, that this would lead to allowing one malicious lucky collator to rule the network with manipulated blocks.
@Chralt98 Just realized I referenced the wrong issue in this PR. Does #697 (comment) answer your question? |
In addition to that, collators cannot craft blocks as they like, they have to adhere to the consensus rules, other nodes will reject invalid state transitions that don't adhere to the consensus rules. A collator can control which transactions are executed though. If the complete active collator set is occupied by a malicious entity, it can censor transactions (just never include them) or even halt the network. |
Thanks for your explanation. But why does the |
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.
👍
Closes #697
We have to set the
eligibleCount
of theauthor_slot_filter
pallet to1
to give every collator even chances of collation and to significantly reduce the number of forks and reorgs. To do so, root has to call a dispatchable of theauthor_slot_filter
pallet. Unfortunately theCall
enum of theauthor_slot_filter
pallet is not exposed in the runtime, rendering setting this value through governance impossible.