-
Notifications
You must be signed in to change notification settings - Fork 12
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
POC: feature gate for zone conceirge module #40
Conversation
so there are few specific things that worry me about this approach:
What your opinion on having
have:
|
This is actually fine -- the field uses a new identifier
This is a valid concern. That's why I mentioned we could move it as a genesis param rather than module param. This way it's only possible to activate integration via software upgrade
We don't need to. This is because the consumer side has the concept of activation as well: upon the 1st BTC timestamp the BTC timestamping integration is activated. Let's say we activate integration in Babylon, and before that the chain acts as if no consumer chain is doing integration. Upon activating integration Babylon starts generating proofs, and upon a new IBC channel Babylon starts pushing BTC timestamps to the consumer chain. The consumer chain will handle it correctly.
Good point on removing zone concierge from IBC router, will address later. Re having |
hmm genesis state of
|
Good point. Since genesis params are not expected to be changed, maybe it's not a good idea to touch it via software upgrade. Compared to having one more storage for it, maybe having a public bool variable in |
yep hardcoding constant |
OK, modified this PoC to define a global boolean variable Tried to turn on |
I have updated this PR according to the comments, including:
Please feel free to take a look again. Let me know if you want to see an end-to-end test. |
Closing this PR as we decided to remove zone concierge for now, and re-enable later |
This PR provides a PoC for the feature gate of zone concierge. In particular,
enable_integration
. If set true then integration is enabled.Excluding the proto/swagger stuff, this is a change of 30 LoCs. Some modifications might not be necessary but adding them for being extra cautious.
This feature gate is already reflected in failed unit/timestamping e2e tests -- by default zone concierge no longer indexes IBC headers, or approves any IBC channel creation request.