-
Notifications
You must be signed in to change notification settings - Fork 138
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat!: enable standalone consumers to reuse existing clients for ICS (#…
…2400) * add connection_id to init params * add message validation * add preCCV and connection_id to ProviderInfo * move preccv and connId to ConsumerGenesisState * add provider logic for non-empty connId * validate consumer genesis * initiate CCV channel handshake * fix UT * add changelog entries * add TODO * fix indent * changeover test * remove setting preccv in app.go * add todos for genesis transformation * interchain test desc added to testing.md * update genesis transformation * update changeover procedure docs * Update docs/docs/consumer-development/changeover-procedure.md Co-authored-by: MSalopek <matija.salopek994@gmail.com> * Update docs/docs/consumer-development/changeover-procedure.md Co-authored-by: MSalopek <matija.salopek994@gmail.com> * Update docs/docs/consumer-development/changeover-procedure.md Co-authored-by: MSalopek <matija.salopek994@gmail.com> * Update docs/docs/consumer-development/changeover-procedure.md Co-authored-by: MSalopek <matija.salopek994@gmail.com> * Update docs/docs/consumer-development/changeover-procedure.md Co-authored-by: MSalopek <matija.salopek994@gmail.com> * tests: remove unused e2e changeover [replaced by interchaintest] * apply review suggestions * do not remove preCCV from consumer genesis state --------- Co-authored-by: stana-ethernal <stana.miric@ethernal.tech> Co-authored-by: MSalopek <matija.salopek994@gmail.com>
- Loading branch information
1 parent
d1072eb
commit d56af59
Showing
60 changed files
with
1,992 additions
and
3,004 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
- Enable existing (standalone) chains to use the existing client (and connection) | ||
to the provider chain when becoming a consumer chain. This feature introduces | ||
the following API-breaking changes. | ||
([\#2400](https://github.com/cosmos/interchain-security/pull/2400)) | ||
|
||
- Add `connection_id` and `preCCV` to `ConsumerGenesisState`, the consumer | ||
genesis state created by the provider chain. If the `connection_id` is not empty, | ||
`preCCV` is set to true and both `provider.client_state` and `provider.consensus_state` | ||
are set to nil (as the consumer doesn't need to create a new provider client). | ||
As a result, for older versions of consumers, the `connection_id` in | ||
`ConsumerInitializationParameters` must be empty and the resulting `ConsumerGenesisState` | ||
needs to be adapted, i.e., both `connection_id` and `preCCV` need to be removed. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
- Enable existing (standalone) chains to use the existing client (and connection) | ||
to the provider chain when becoming a consumer chain. This feature introduces | ||
the following changes. | ||
([\#2400](https://github.com/cosmos/interchain-security/pull/2400)) | ||
|
||
- Add `connection_id` to `ConsumerInitializationParameters`, the ID of | ||
the connection end _on the provider chain_ on top of which the CCV channel will | ||
be established. Consumer chain owners can set `connection_id` to a valid ID in | ||
order to reuse the underlying clients. | ||
- Add `connection_id` to the consumer genesis state, the ID of the connection | ||
end _on the consumer chain_ on top of which the CCV channel will be established. | ||
If `connection_id` is a valid ID, then the consumer chain will use the underlying | ||
client as the provider client and it will initiate the channel handshake. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
- Enable existing (standalone) chains to use the existing client (and connection) | ||
to the provider chain when becoming a consumer chain. | ||
([\#2400](https://github.com/cosmos/interchain-security/pull/2400)) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.