-
Notifications
You must be signed in to change notification settings - Fork 20
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/cw law stone spec #143
Conversation
size-limit report 📦
|
72a8a24
to
193960d
Compare
Codecov Report
@@ Coverage Diff @@
## main #143 +/- ##
==========================================
- Coverage 92.76% 89.34% -3.43%
==========================================
Files 11 13 +2
Lines 235 244 +9
==========================================
Hits 218 218
- Misses 17 26 +9
📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
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.
A few comments that we can discuss.
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! There's room for improvement, of course, but this is a great start. Thanks. ❤️
🎉 This PR is included in version 1.0.0 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
🎉 This PR is included in version 1.0.0 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
📝 Purpose
This brings the specification of the new
cw-law-stone
(the name can be discussed) smart contract, providing a mean to expose immutable governance rules as Prolog programs, and to question them by querying the OKP4 logic module.This idea is simple, the contract ensure the rules availability until the stone is broken. It relies on the
cw-storage
contract to ensure the availability of the Prolog program by pinning all the loaded objects.Instantiation
The provided Prolog program defining the law is stored and pinned in the provided
cw-storage
address.To ensure availability of eventual loaded files, the logic module is queried to identify and pin them, I think to avoid breaking a governance we must enforce that all the loaded files are stored in a
cw-storage
contract.Query
Ask
: Takes a Prolog query and ask the logic module by providing the main program.Program
: Retrieve the law stone program location information, thecw-storage
contract address in which it is stored along with its ibject id.Break
If not used anymore, I think we need a mean to free all the related objects on
cw-storage
, this is the purpose of theBreakStone
message which can be invoked only by the contract admin.