-
Notifications
You must be signed in to change notification settings - Fork 19
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
Cleaner separation of Verifier
/ Constraint Cheker
duties
#188
Conversation
This reverts commit 367fa3d.
I was trying to figure out why it does not crash when I tried to add a panic at the beginning of the Timestamp Tuxedo/tuxedo-core/src/inherents.rs Lines 176 to 194 in 6924966
|
I solved the why-doesn't-it-panic mystery in cc0758d. I had forgotten to explicitly mark the inherents with the new |
One problem here is that the parachain node no longer works because the parachain inherent UTXO is now unspendable and can't be consumed by the next block's inherent. Some options:
I'm leaning toward option # 1. I believe I have evictions working in #196 but I it seems the full CI doesn't run there. Maybe because it isn't a PR against the base branch? |
The primary change this PR makes is to remove the
ConstraintChecker
's access to the information about verifiers.We added this feature thinking it was necessary for use cases such as sudo-style governance, royalties, and an on-chain treasury. It turns out, this was not the case and was more a reflection of our newness to thinking in the UTXO model. I've now demonstrated royalties in #185, sudo in #186, and sketched an idea for a treasury.
This change also simplifies the aggregation macro considerably which is always welcome, especially as I prepare to experiment with strong typing in the UTXO set a la #178.
A secondary change is that it cleans up the relationship between constraint checkers and inherents somewhat and removes the last hack from the existing inherent pieces. Inherents are still messier than I want but this is largely because Substrate's notion of inserting required info into block bodies via transactions is a little messy.