Skip to content

Commit

Permalink
docs: update changelog for Permissionless ICS (#2225)
Browse files Browse the repository at this point in the history
* add changelog for ICS Permissionless

* Update .changelog/unreleased/api-breaking/provider/2171-permissionless-ICS.md.md

Co-authored-by: Marius Poke <[email protected]>

* fix formating

* fix link

* fix nits

* fix links

* fix links

* add deprecated txs

* fix list

---------

Co-authored-by: Marius Poke <[email protected]>
  • Loading branch information
sainoe and mpoke authored Sep 9, 2024
1 parent c7171b2 commit 1799d79
Show file tree
Hide file tree
Showing 2 changed files with 93 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
- Add the Permissionless ICS feature on the provider (as per
[ADR-019](https://cosmos.github.io/interchain-security/adrs/adr-019-permissionless-ics)),
which entails the following api-breaking changes on the provider.
([\#2171](https://github.com/cosmos/interchain-security/pull/2171))

- Deprecate the `chain-id` parameter in favour of `consumer-id` for all transactions and queries targeting a unique consumer chain. Below is a list highlighting the changes in the CLI commands. All commands assume the prefix `interchain-security-pd tx|q provider`.
- **Transactions:**
- `assign-consensus-key [consumer-id] [consumer-pubkey]`
-- submit a [MsgAssignConsensusKey](https://github.com/cosmos/interchain-security/blob/a17a3851b5eb3cec515b711dceae0afe9c14c3f0/proto/interchain_security/ccv/provider/v1/tx.proto#L46)
- `opt-in [consumer-id] [consumer-pubkey]`
-- submit a [MsgOptIn](https://github.com/cosmos/interchain-security/blob/a17a3851b5eb3cec515b711dceae0afe9c14c3f0/proto/interchain_security/ccv/provider/v1/tx.proto#L256)
- `opt-out [consumer-id]`
-- submit a [MsgOptOut](https://github.com/cosmos/interchain-security/blob/a17a3851b5eb3cec515b711dceae0afe9c14c3f0/proto/interchain_security/ccv/provider/v1/tx.proto#L277)
- `set-consumer-commission-rate [consumer-id] [commission-rate]`
-- submit a [MsgSetConsumerCommissionRate](https://github.com/cosmos/interchain-security/blob/a17a3851b5eb3cec515b711dceae0afe9c14c3f0/proto/interchain_security/ccv/provider/v1/tx.proto#L295)

- **Queries:**
- `consumer-genesis [consumer-id]` -- query for consumer chain genesis state by consumer id.
- REST:`/interchain_security/ccv/provider/consumer_genesis/{consumer_id}`

- `validator-consumer-key [consumer-id] [provider-validator-address]` -- query assigned validator consensus public key for a consumer chain.
- REST: `/interchain_security/ccv/provider/validator_consumer_addr/{consumer_id}/{provider_address}`

- `validator-provider-key [consumer-id] [consumer-validator-address]` -- query assigned validator consensus public key for the provider chain.
- REST: `/interchain_security/ccv/provider/validator_provider_addr/{consumer_id}/{consumer_address}`

- `consumer-opted-in-validators [consumer-id]` -- query opted-in validators for a given consumer chain.
- REST: `/interchain_security/ccv/provider/opted_in_validators/{consumer_id}`

- `consumer-validators [consumer-id]` -- query the last set consumer-validator set for a given consumer chain.
- REST: `/interchain_security/ccv/provider/consumer_validators/{consumer_id}`

- `validator-consumer-commission-rate [consumer-id]` -- query the consumer commission rate a validator charges on a consumer chain.
- REST: `/interchain_security/ccv/provider/consumer_commission_rate/{consumer_id}/{provider_address}`

- `all-pairs-valconsensus-address [consumer-id]` -- query all pairs of valconsensus address by consumer id.
- REST: `/interchain_security/ccv/provider/address_pairs/{consumer_id}`

- Deprecate the following queries, proposals and all legacy governance proposals:

- **Queries:**
- `list-start-proposals` -- query consumer chains start proposals on provider chain.
- REST: `/interchain_security/ccv/provider/consumer_chain_start_proposals`

- `list-stop-proposals` -- consumer chains stop proposals on provider chain.
- REST: `/interchain_security/ccv/provider/consumer_chain_stop_proposals`

- `list-proposed-consumer-chains` -- query chain ids in consumer addition proposal before voting finishes.
- REST: `/interchain_security/ccv/provider/proposed_consumer_chains`

- **Proposals:**
- [MsgConsumerAddition](https://github.com/cosmos/interchain-security/blob/a17a3851b5eb3cec515b711dceae0afe9c14c3f0/proto/interchain_security/ccv/provider/v1/tx.proto#L121) -- deprecated in favor of [MsgCreateConsumer](https://github.com/cosmos/interchain-security/blob/a17a3851b5eb3cec515b711dceae0afe9c14c3f0/proto/interchain_security/ccv/provider/v1/tx.proto#L360)
- [MsgConsumerRemoval](https://github.com/cosmos/interchain-security/blob/a17a3851b5eb3cec515b711dceae0afe9c14c3f0/proto/interchain_security/ccv/provider/v1/tx.proto#L206) -- deprecated in favor of [MsgRemoveConsumer](https://github.com/cosmos/interchain-security/blob/a17a3851b5eb3cec515b711dceae0afe9c14c3f0/proto/interchain_security/ccv/provider/v1/tx.proto#L225)
- [MsgConsumerModification](https://github.com/cosmos/interchain-security/blob/a17a3851b5eb3cec515b711dceae0afe9c14c3f0/proto/interchain_security/ccv/provider/v1/tx.proto#L321) -- deprecated in favor of [MsgUpdateConsumer](https://github.com/cosmos/interchain-security/blob/a17a3851b5eb3cec515b711dceae0afe9c14c3f0/proto/interchain_security/ccv/provider/v1/tx.proto#L383)

- **Legacy Proposals:**
- [ConsumerAdditionProposal](https://github.com/cosmos/interchain-security/blob/a17a3851b5eb3cec515b711dceae0afe9c14c3f0/proto/interchain_security/ccv/provider/v1/provider.proto#L31)
- [ConsumerModificationProposal](https://github.com/cosmos/interchain-security/blob/a17a3851b5eb3cec515b711dceae0afe9c14c3f0/proto/interchain_security/ccv/provider/v1/provider.proto#L140)
- [ConsumerRemovalProposal](https://github.com/cosmos/interchain-security/blob/a17a3851b5eb3cec515b711dceae0afe9c14c3f0/proto/interchain_security/ccv/provider/v1/provider.proto#L122)
- [ChangeRewardDenomsProposal](https://github.com/cosmos/interchain-security/blob/a17a3851b5eb3cec515b711dceae0afe9c14c3f0/proto/interchain_security/ccv/provider/v1/provider.proto#L192)
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
- Add the Permissionless ICS feature on the provider (as per
[ADR-019](https://cosmos.github.io/interchain-security/adrs/adr-019-permissionless-ics)),
which entails the following CLI and API enhancements on the provider.
([\#2171](https://github.com/cosmos/interchain-security/pull/2171))

- Introduce new CLI commands and gRPC endpoints to manage consumer chains. All commands listed below assume the prefix `interchain-security-pd tx|q provider`.

- **Transactions:**
- `create-consumer [consumer-parameters]`
-- submit a [MsgCreateConsumer](https://github.com/cosmos/interchain-security/blob/a17a3851b5eb3cec515b711dceae0afe9c14c3f0/proto/interchain_security/ccv/provider/v1/tx.proto#L360)
-- replace [ConsumerAdditionProposal](https://github.com/cosmos/interchain-security/blob/a17a3851b5eb3cec515b711dceae0afe9c14c3f0/proto/interchain_security/ccv/provider/v1/provider.proto#L31)

- `update-consumer [consumer-parameters]`
-- submit a [MsgUpdateConsumer](https://github.com/cosmos/interchain-security/blob/a17a3851b5eb3cec515b711dceae0afe9c14c3f0/proto/interchain_security/ccv/provider/v1/tx.proto#L383)
-- replace [ConsumerModificationProposal](https://github.com/cosmos/interchain-security/blob/a17a3851b5eb3cec515b711dceae0afe9c14c3f0/proto/interchain_security/ccv/provider/v1/provider.proto#L140)

- `remove-consumer [consumer-id]`
-- submit a [MsgRemoveConsumer](https://github.com/cosmos/interchain-security/blob/a17a3851b5eb3cec515b711dceae0afe9c14c3f0/proto/interchain_security/ccv/provider/v1/tx.proto#L225)
-- replace [ConsumerRemovalProposal](https://github.com/cosmos/interchain-security/blob/a17a3851b5eb3cec515b711dceae0afe9c14c3f0/proto/interchain_security/ccv/provider/v1/provider.proto#L122)

> These new TX commands should be used instead of their corresponding deprecated proposals. To update consumer chains owned by the governance module, a proposal containing a `MsgUpdateConsumer` message must be submitted.
- **Queries:**
- `consumer-chain [consumer-id]`-- query details of a consumer chain associated with the consumer id.
- REST: `interchain-security/ccv/provider/consumer_chain/{consumer_id}`
- `consumer-id-from-client-id [client-id]` -- get the consumer id of a chain from a client id.
- REST: `interchain-security/ccv/provider/consumer_id/{client_id}`
- `blocks-until-next-epoch` -- query number of blocks remaining until the next epoch begins.
- REST: `interchain-security/ccv/provider/blocks_until_next_epoch`

- Improve the `list-consumer-chains` query to accept optional parameters `[phase]` and `[limit]`:
- `[phase]`: Filters returned consumer chains by their phase.
- `[limit]`: Limits the number of consumer chains returned.

0 comments on commit 1799d79

Please sign in to comment.