-
Notifications
You must be signed in to change notification settings - Fork 348
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
refactor!: move all blob share commitment code to the inclusion package #2770
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.
LGTM
converting to a draft to fix the CI. which we should actually not expect to break given we just moved things around. will report back after finding the fix edit: see dcf2c5d for the fix. I only renamed one function and didn't also change the input so it was taking the square root twice, which broke all the tests |
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.
This seems a logical change. I think further to this I would like to see inclusion
and proof
combined. Inclusion is simply a form of proof
yeah I agree. When writing the blob share commitment proofs, it becomes very clear that this is an issue |
hmm I think conventional commit PR title check failed here because the
|
Overview
We currently have code relating to creating and proving commitment across the inclusion, x/blob/types, and shares package. This api breaking refactor moves all of the commitment code to the inclusion package.
The reasoning behind this is that it will eventually allow for users to import commitment creation and proving code while not having to import the blob module, tendermint, or the sdk.
The reasoning behind keeping it in the inclusion instead of shares is that entire reason for making a commitment is to prove inclusion. So the name seems to fit better.
The reasoning behind note keeping it in the blob package was that it was difficult to not have an import cycle since this logic requires the share splitting logic for blobs.
Checklist