cosmos / interchain-security

Replicated security (aka interchain security V1) is an open sourced IBC application which allows cosmos blockchains to lease their proof-of-stake security to one another.
https://cosmos.github.io/interchain-security/
Other
152 stars 108 forks source link

docs: mention PSS in changeover procedure and replace Replicated Security with Interchain Security #1981

Closed insumity closed 1 week ago

insumity commented 2 weeks ago

Description

Closes: #1971

Note that not all "replicated security" references were changed to "interchain security" when "replicated security" is used to refer to the specific protocol. For example, in the PSS ADR we refer to what the replicated security protocol was doing and hence it doesn't make sense to replace "replicated security" with "interchain security."


Author Checklist

All items are required. Please add a note to the item if the item is not applicable and please add links to any relevant follow up issues.

I have...

Reviewers Checklist

All items are required. Please add a note if the item is not applicable and please add your handle next to the items reviewed if you only reviewed selected items.

I have...

Summary by CodeRabbit

coderabbitai[bot] commented 2 weeks ago
Walkthrough ## Walkthrough The updates involve refining the behavior of consumer and provider chains within Interchain Security, replacing old terminology like "Replicated Security" with "Interchain Security." Key changes include clarifications in slashing, jailing, validator set sharing, changeover procedures, staking principles, reward distribution, and various semantic adjustments to the documentation. ## Changes | Files | Change Summary | |-------|----------------| | `...adr-005-cryptographic-equivocation-verification.md` | Clarified validator punishment logic for light client attacks. Updated assumptions about validator set sharing between chains. | | `...adr-008-throttle-retries.md` | Updated terminology from "slash throttling" to "jail throttling." | | `...adr-010-standalone-changeover.md` | Refined transition process for consumer chains integrating with Interchain Security. | | `.../consumer-development/app-integration.md` | Clarified staking logic using a subset of provider validators. Introduced Partial Set Security. | | `.../consumer-development/changeover-procedure.md` | Updates and clarifications for changeover procedures to Interchain Security. | | `...features/reward-distribution.md` | Semantic update from "Replicated Security" to "Interchain Security" in reward distribution mechanism documentation. | | `...frequently-asked-questions.md` | Updated link text to reflect Interchain Security terminology. | | `.../index.mdx` | Document updates to reflect Interchain Security terminology. | | `.../introduction/terminology.md` | Replaced "replicated security" with "Interchain Security" to clarify validator set distinctions. | | `.../validators/changeover-procedure.md` | Semantic changes related to transitioning to Interchain Security for validators. | | `.../validators/overview.md` | Updated terminology and clarified validator requirements and validation processes. Added references and queries related to validator obligations. | | `.../validators/withdraw_rewards.md` | Updated reference to testnet reflecting Interchain Security terminology. | ## Assessment against linked issues | Objective | Addressed | Explanation | |-----------|-----------|-------------| | Revise the Changeover Procedure section to reflect updates relevant to PSS (Partial Set Security) consumer chains and TopN if necessary. (#1971) | ✅ | | | Replace "Replicated Security" with "Interchain Security." (#1971) | ✅ | | These changes meet the linked issues' requirements of updating and refining procedures and terminology to better reflect the current workings of Interchain Security.

Recent review details **Configuration used: .coderabbit.yml** **Review profile: CHILL**
Commits Files that changed from the base of the PR and between 060c943b2f17b2696e668c669352a366d3610d5d and b56650a1058548913e5bccadba799c87ac5b8c08.
Files selected for processing (12) * docs/docs/adrs/adr-005-cryptographic-equivocation-verification.md (1 hunks) * docs/docs/adrs/adr-008-throttle-retries.md (1 hunks) * docs/docs/adrs/adr-010-standalone-changeover.md (2 hunks) * docs/docs/consumer-development/app-integration.md (1 hunks) * docs/docs/consumer-development/changeover-procedure.md (4 hunks) * docs/docs/features/reward-distribution.md (1 hunks) * docs/docs/frequently-asked-questions.md (1 hunks) * docs/docs/index.mdx (1 hunks) * docs/docs/introduction/terminology.md (1 hunks) * docs/docs/validators/changeover-procedure.md (1 hunks) * docs/docs/validators/overview.md (1 hunks) * docs/docs/validators/withdraw_rewards.md (1 hunks)
Files not reviewed due to errors (1) * docs/docs/adrs/adr-005-cryptographic-equivocation-verification.md (no review received)
Files skipped from review due to trivial changes (1) * docs/docs/index.mdx
Additional context used
Path-based instructions (11)
docs/docs/validators/withdraw_rewards.md (1) Pattern `**/*.md`: "Assess the documentation for misspellings, grammatical errors, missing documentation and correctness. Please DO NOT report any missing or superfluous newlines, in particular at the end or beginning of files."
docs/docs/consumer-development/app-integration.md (1) Pattern `**/*.md`: "Assess the documentation for misspellings, grammatical errors, missing documentation and correctness. Please DO NOT report any missing or superfluous newlines, in particular at the end or beginning of files."
docs/docs/features/reward-distribution.md (1) Pattern `**/*.md`: "Assess the documentation for misspellings, grammatical errors, missing documentation and correctness. Please DO NOT report any missing or superfluous newlines, in particular at the end or beginning of files."
docs/docs/introduction/terminology.md (1) Pattern `**/*.md`: "Assess the documentation for misspellings, grammatical errors, missing documentation and correctness. Please DO NOT report any missing or superfluous newlines, in particular at the end or beginning of files."
docs/docs/adrs/adr-010-standalone-changeover.md (1) Pattern `**/*.md`: "Assess the documentation for misspellings, grammatical errors, missing documentation and correctness. Please DO NOT report any missing or superfluous newlines, in particular at the end or beginning of files."
docs/docs/validators/changeover-procedure.md (1) Pattern `**/*.md`: "Assess the documentation for misspellings, grammatical errors, missing documentation and correctness. Please DO NOT report any missing or superfluous newlines, in particular at the end or beginning of files."
docs/docs/validators/overview.md (1) Pattern `**/*.md`: "Assess the documentation for misspellings, grammatical errors, missing documentation and correctness. Please DO NOT report any missing or superfluous newlines, in particular at the end or beginning of files."
docs/docs/frequently-asked-questions.md (1) Pattern `**/*.md`: "Assess the documentation for misspellings, grammatical errors, missing documentation and correctness. Please DO NOT report any missing or superfluous newlines, in particular at the end or beginning of files."
docs/docs/adrs/adr-008-throttle-retries.md (1) Pattern `**/*.md`: "Assess the documentation for misspellings, grammatical errors, missing documentation and correctness. Please DO NOT report any missing or superfluous newlines, in particular at the end or beginning of files."
docs/docs/adrs/adr-005-cryptographic-equivocation-verification.md (1) Pattern `**/*.md`: "Assess the documentation for misspellings, grammatical errors, missing documentation and correctness. Please DO NOT report any missing or superfluous newlines, in particular at the end or beginning of files."
docs/docs/consumer-development/changeover-procedure.md (1) Pattern `**/*.md`: "Assess the documentation for misspellings, grammatical errors, missing documentation and correctness. Please DO NOT report any missing or superfluous newlines, in particular at the end or beginning of files."
LanguageTool
docs/docs/validators/withdraw_rewards.md
[style] ~24-~24: ‘Prior to’ might be wordy. Consider a shorter alternative. (EN_WORDINESS_PREMIUM_PRIOR_TO) Context: ...c8l6g4808fclmlyd38tjgxuwshn7xzkvf` ::: Prior to withdrawing rewards, query balances for... --- [uncategorized] ~64-~64: A comma might be missing here. (AI_EN_LECTOR_MISSING_PUNCTUATION_COMMA) Context: ...2. Confirm withdrawal After withdrawing rewards self-delegation address balance to conf...
docs/docs/consumer-development/app-integration.md
[uncategorized] ~6-~6: Possible missing comma found. (AI_HYDRA_LEO_MISSING_COMMA) Context: ..., besides just focusing on your chain's logic you should aim to allocate time to ensu... --- [uncategorized] ~25-~25: Possible missing comma found. (AI_HYDRA_LEO_MISSING_COMMA) Context: ...bution`, `x/staking` and `x/governance` modules allowing the consumer chain to perform ...
docs/docs/features/reward-distribution.md
[misspelling] ~40-~40: This word is normally spelled with a hyphen. (EN_COMPOUNDS_HUMAN_READABLE) Context: ...:tip Use the following command to get a human readable denom from the `ibc/*` denom trace form...
docs/docs/introduction/terminology.md
[uncategorized] ~11-~11: The abbreviation “i.e.” (= that is) requires two periods. (I_E) Context: ...lups, sharding and Interchain Security. Ie. any protocol or technology that can all...
docs/docs/adrs/adr-010-standalone-changeover.md
[style] ~22-~22: ‘Prior to’ might be wordy. Consider a shorter alternative. (EN_WORDINESS_PREMIUM_PRIOR_TO) Context: ...ver process. ## Decision ### Process Prior to the changeover, the consumer chain will... --- [uncategorized] ~25-~25: Possible missing comma found. (AI_HYDRA_LEO_MISSING_COMMA) Context: ...er for validators to query. Within this consumer genesis contains the initial validator ... --- [grammar] ~27-~27: Make sure that the noun ‘setup’ is correct. Did you mean the past participle “set up”? (BE_VB_OR_NN) Context: ...ch adds the CCV module, and is properly setup to execute changeover logic. The consu... --- [uncategorized] ~39-~39: The abbreviation “i.e.” (= that is) requires two periods. (I_E) Context: ...ed before the changeover was completed. Ie. any infraction from a block height befo... --- [style] ~45-~45: As a shorter alternative for ‘able to’, consider using “can now”. (BE_ABLE_TO) Context: ... ### Positive * Existing cosmos chains are now able to onboard over to a consumer chain secure... --- [uncategorized] ~50-~50: The abbreviation “i.e.” (= that is) requires two periods. (I_E) Context: ...sumers in this repo becomes less clear. Ie. there is code in the [democracy consume...
docs/docs/validators/changeover-procedure.md
[misspelling] ~15-~15: Although “with regards to” is sometimes used in casual speech, it is typically considered a nonstandard phrase. (IN_OR_WITH_REGARDS_TO_OF) Context: ...EVLj0WJcwt). There is some flexibility with regards to how the changeover procedure is execute... --- [style] ~47-~47: Consider using a different verb to strengthen your wording. (MAKE_SURE_ENSURE) Context: ...ration depends on your setup, so please make sure you prepare ahead of time. :::danger T... --- [typographical] ~80-~80: It seems that a comma is missing. (IF_PLEASE_COMMA) Context: ...y? Yes. If you are planning to do this please make sure that the node is synced with ... --- [style] ~80-~80: Consider using a different verb to strengthen your wording. (MAKE_SURE_ENSURE) Context: ... If you are planning to do this please make sure that the node is synced with `standalon...
docs/docs/validators/overview.md
[uncategorized] ~10-~10: The abbreviation “i.e.” (= that is) requires two periods. (I_E) Context: ...l the validators of the provider chain (ie. Cosmos Hub) to run validator nodes for ... --- [typographical] ~68-~68: Consider adding a comma here. (PLEASE_COMMA) Context: ...start their consumer chain node. :::tip Please pay attention to any onboarding reposit... --- [uncategorized] ~75-~75: Possible missing comma found. (AI_HYDRA_LEO_MISSING_COMMA) Context: ... Finally, to fully establish interchain security an IBC relayer is used to establish con... --- [uncategorized] ~99-~99: Possible missing comma found. (AI_HYDRA_LEO_MISSING_COMMA) Context: ...out equivocation handling in interchain security check out the [Slashing](../features/sl... --- [uncategorized] ~104-~104: Possible missing comma found. (AI_HYDRA_LEO_MISSING_COMMA) Context: ...d on the provider before use. For more information check out the [Key assignment overview ...
docs/docs/frequently-asked-questions.md
[uncategorized] ~32-~32: Use a comma before ‘so’ if it connects two independent clauses (unless they are closely connected and short). (COMMA_COMPOUND_SENTENCE_2) Context: ...or running them in separate environments so failure of one machine does not impact ... --- [grammar] ~49-~49: The verb form ‘sends’ does not seem to match the subject ‘chains’. (SUBJECT_VERB_AGREEMENT_PLURAL) Context: ...ators and stakers? The consumer chains sends a portion of its fees and inflation as ... --- [formatting] ~58-~58: Consider inserting a comma after an introductory phrase for better readability. (IN_THAT_CASE_COMMA) Context: ...ain have its own governance? **Yes.** In that case the validators are not necessarily part... --- [uncategorized] ~61-~61: Use a comma before ‘but’ if it connects two independent clauses (unless they are closely connected and short). (COMMA_COMPOUND_SENTENCE_2) Context: ... Validators can also be representatives but representatives are not required to run... --- [uncategorized] ~90-~90: A comma may be missing after the conjunctive/linking adverb ‘Currently’. (SENT_START_CONJUNCTIVE_LINKING_ADVERB_COMMA) Context: ....md) ## Which relayers are supported? Currently supported versions: - Hermes 1.8.0 ##...
docs/docs/adrs/adr-008-throttle-retries.md
[uncategorized] ~22-~22: Possible missing comma found. (AI_HYDRA_LEO_MISSING_COMMA) Context: ...ing are synonymous, since in Interchain Security a `SlashPacket` simply jails a validato... --- [uncategorized] ~23-~23: A comma may be missing after the conjunctive/linking adverb ‘Currently’. (SENT_START_CONJUNCTIVE_LINKING_ADVERB_COMMA) Context: ... a validator for downtime infractions. Currently the throttling mechanism is designed so... --- [uncategorized] ~28-~28: If this is a compound adjective that modifies the following noun, use a hyphen. (EN_COMPOUND_ADJECTIVE_INTERNAL) Context: ...tially lead to a DoS attack. We have short term solutions around this, but overall they... --- [uncategorized] ~28-~28: It seems that a comma is missing after the introductory phrase. (OVER_ALL_COMPOUND) Context: ...e short term solutions around this, but overall they come with their own weaknesses. ... --- [uncategorized] ~40-~40: Possible missing comma found. (AI_HYDRA_LEO_MISSING_COMMA) Context: ...ed. ## Decision ### Consumer changes Note the consumer already queues up both `Sl... --- [uncategorized] ~56-~56: Possible missing comma found. (AI_HYDRA_LEO_MISSING_COMMA) Context: ... resending the rejected `SlashPacket`. Note to prevent weird edge case behavior, a ... --- [misspelling] ~80-~80: Use “an” instead of ‘a’ if the following word starts with a vowel sound, e.g. ‘an article’, ‘an hour’. (EN_A_VS_AN) Context: ...h sdk-esq code. The idea is to persist a uint64 index that will be incremented e... --- [typographical] ~83-~83: The conjunction “so that” does not require a comma. (SO_THAT_UNNECESSARY_COMMA) Context: ...be stored in the packet data value bytes, so that the index can later be used to delete c... --- [grammar] ~87-~87: Context suggests that you should use the plural form of ‘packet’. (MORE_NN) Context: ...d with this approach: * More efficient packet append/enqueue times * The ability to d... --- [typographical] ~99-~99: Consider adding a comma after ‘Specifically’ for more clarity. (RB_LY_COMMA) Context: ...erties.md#consumer-initiated-slashing). Specifically the section on _VSC Maturity and Slashi... --- [uncategorized] ~99-~99: Possible missing comma found. (AI_HYDRA_LEO_MISSING_COMMA) Context: ...n on _VSC Maturity and Slashing Order_. Previously the onus was on the provider to maintai... --- [uncategorized] ~99-~99: Possible missing preposition found. (AI_HYDRA_LEO_MISSING_IN) Context: ...y via queuing packets and handling them FIFO. Now this property will be maintained ... --- [uncategorized] ~142-~142: When ‘chain-specific’ is used as a modifier, it is usually spelled with a hyphen. (SPECIFIC_HYPHEN) Context: ...to reason about a "global queue" and a "chain specific queue", and keeping those all in-sync. ... --- [duplication] ~158-~158: Possible typo: you repeated a word (ENGLISH_WORD_REPEAT_RULE) Context: ...) tracking the changes proposed by this ADR * [ADR 002: Jail Throttling](./adr-002-throttl...
docs/docs/adrs/adr-005-cryptographic-equivocation-verification.md
[grammar] ~53-~53: ‘an’ may be redundant when used with the uncountable noun ‘evidence’. (A_UNCOUNTABLE_NOUN) Context: ...blob/v0.34.28/evidence/pool.go#L28). If an evidence is finally committed to a block, the ch...
docs/docs/consumer-development/changeover-procedure.md
[style] ~45-~45: To form a complete sentence, be sure to include a subject. (MISSING_IT_THERE) Context: ...visionHeight: 111 ::: * `genesis_hash` can be safely ignored because the chain is ... --- [style] ~47-~47: To form a complete sentence, be sure to include a subject. (MISSING_IT_THERE) Context: ...al genesis may be used * `binary_hash` may not be available ahead of time. All cha... --- [typographical] ~98-~98: The word “otherwise” is an adverb that can’t be used like a conjunction, and therefore needs to be separated from the sentence. (THUS_SENTENCE) Context: ...e must be placed at the exact specified location, otherwise the upgrade will not be executed correc... --- [typographical] ~99-~99: Consider adding a comma after ‘Usually’ for more clarity. (RB_LY_COMMA) Context: ...pgrade will not be executed correctly. Usually the file is placed in `$NODE_HOME/confi... --- [typographical] ~239-~239: Usually, there’s no comma before “that”. (THAT_NO_COMMA) Context: ...015-partial-set-security.md). This means, that a standalone chain can choose to only b...
Markdownlint
docs/docs/validators/withdraw_rewards.md
14-14: Expected: 1; Actual: 2 (MD012, no-multiple-blanks) Multiple consecutive blank lines --- 53-53: Expected: 1; Actual: 2 (MD012, no-multiple-blanks) Multiple consecutive blank lines --- 15-15: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 38-38: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 56-56: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 63-63: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 57-57: null (MD031, blanks-around-fences) Fenced code blocks should be surrounded by blank lines
docs/docs/consumer-development/app-integration.md
35-35: Expected: 1; Actual: 2 (MD012, no-multiple-blanks) Multiple consecutive blank lines
docs/docs/features/reward-distribution.md
12-12: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 13-13: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 16-16: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 17-17: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 26-26: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 28-28: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 31-31: null (MD031, blanks-around-fences) Fenced code blocks should be surrounded by blank lines --- 41-41: null (MD031, blanks-around-fences) Fenced code blocks should be surrounded by blank lines --- 46-46: null (MD031, blanks-around-fences) Fenced code blocks should be surrounded by blank lines --- 47-47: null (MD047, single-trailing-newline) Files should end with a single newline character
docs/docs/validators/changeover-procedure.md
82-82: Expected: 1; Actual: 2 (MD012, no-multiple-blanks) Multiple consecutive blank lines --- 83-83: null (MD019, no-multiple-space-atx) Multiple spaces after hash on atx style heading --- 91-91: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 25-25: null (MD031, blanks-around-fences) Fenced code blocks should be surrounded by blank lines --- 66-66: null (MD032, blanks-around-lists) Lists should be surrounded by blank lines
docs/docs/validators/overview.md
16-16: Expected: 1; Actual: 2 (MD012, no-multiple-blanks) Multiple consecutive blank lines --- 5-5: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 25-25: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 38-38: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 41-41: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 48-48: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 58-58: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 61-61: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 74-74: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 87-87: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 98-98: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 101-101: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 106-106: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 106-106: Punctuation: ':' (MD026, no-trailing-punctuation) Trailing punctuation in heading --- 52-52: null (MD031, blanks-around-fences) Fenced code blocks should be surrounded by blank lines --- 44-44: null (MD032, blanks-around-lists) Lists should be surrounded by blank lines --- 107-107: null (MD032, blanks-around-lists) Lists should be surrounded by blank lines
docs/docs/frequently-asked-questions.md
136-136: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 114-114: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 117-117: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 120-120: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 123-123: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 126-126: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 129-129: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 133-133: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 136-136: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 137-137: null (MD047, single-trailing-newline) Files should end with a single newline character
docs/docs/adrs/adr-008-throttle-retries.md
24-24: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 27-27: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 28-28: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 30-30: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 31-31: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 32-32: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 41-41: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 46-46: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 47-47: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 49-49: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 53-53: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 54-54: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 59-59: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 70-70: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 71-71: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 72-72: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 73-73: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 76-76: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 79-79: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 80-80: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 81-81: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 82-82: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 94-94: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 105-105: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 113-113: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 114-114: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 117-117: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 118-118: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 123-123: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 125-125: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 142-142: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 125-125: Expected: underscore; Actual: asterisk (MD049, emphasis-style) Emphasis style --- 125-125: Expected: underscore; Actual: asterisk (MD049, emphasis-style) Emphasis style
docs/docs/adrs/adr-005-cryptographic-equivocation-verification.md
126-126: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 134-134: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 137-137: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 141-141: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 148-148: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 153-153: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 19-19: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 20-20: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 30-30: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 44-44: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 64-64: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 65-65: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 66-66: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 67-67: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 70-70: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 71-71: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 72-72: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 73-73: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 74-74: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 75-75: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 78-78: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 79-79: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 98-98: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 103-103: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 104-104: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 107-107: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 108-108: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 109-109: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 110-110: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 111-111: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 112-112: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 114-114: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 116-116: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 117-117: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 119-119: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 120-120: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 134-134: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 138-138: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 139-139: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 148-148: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces) Trailing spaces --- 55-55: Expected: 1; Actual: 2 (MD012, no-multiple-blanks) Multiple consecutive blank lines --- 82-82: Expected: 1; Actual: 2 (MD012, no-multiple-blanks) Multiple consecutive blank lines --- 123-123: Expected: 1; Actual: 2 (MD012, no-multiple-blanks) Multiple consecutive blank lines --- 143-143: Expected: 1; Actual: 2 (MD012, no-multiple-blanks) Multiple consecutive blank lines --- 155-155: Expected: 1; Actual: 2 (MD012, no-multiple-blanks) Multiple consecutive blank lines --- 7-7: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 5-5: null (MD025, single-title, single-h1) Multiple top-level headings in the same document --- 124-124: Punctuation: ':' (MD026, no-trailing-punctuation) Trailing punctuation in heading --- 8-8: null (MD032, blanks-around-lists) Lists should be surrounded by blank lines
docs/docs/consumer-development/changeover-procedure.md
120-120: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 121-121: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 122-122: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 123-123: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 131-131: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 132-132: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 133-133: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 134-134: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 135-135: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 136-136: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 149-149: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 150-150: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 151-151: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 247-247: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 248-248: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 253-253: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 254-254: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 258-258: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 259-259: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 260-260: Expected: asterisk; Actual: dash (MD004, ul-style) Unordered list style --- 209-209: Column: 1 (MD010, no-hard-tabs) Hard tabs --- 210-210: Column: 1 (MD010, no-hard-tabs) Hard tabs --- 211-211: Column: 1 (MD010, no-hard-tabs) Hard tabs --- 74-74: Expected: 1; Actual: 2 (MD012, no-multiple-blanks) Multiple consecutive blank lines --- 250-250: Expected: 1; Actual: 2 (MD012, no-multiple-blanks) Multiple consecutive blank lines --- 17-17: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings) Headings should be surrounded by blank lines --- 26-26: null (MD031, blanks-around-fences) Fenced code blocks should be surrounded by blank lines --- 41-41: null (MD031, blanks-around-fences) Fenced code blocks should be surrounded by blank lines --- 10-10: null (MD032, blanks-around-lists) Lists should be surrounded by blank lines --- 49-49: null (MD032, blanks-around-lists) Lists should be surrounded by blank lines --- 101-101: null (MD032, blanks-around-lists) Lists should be surrounded by blank lines --- 101-101: null (MD032, blanks-around-lists) Lists should be surrounded by blank lines --- 26-26: null (MD040, fenced-code-language) Fenced code blocks should have a language specified
Additional comments not posted (8)
docs/docs/validators/withdraw_rewards.md (1)
`19-19`: **Update terminology to align with current project standards** The term "rs-testnet" has been updated to "Interchain Security persistent testnet" to reflect the current terminology used in the project. This change ensures consistency and helps avoid confusion.
docs/docs/consumer-development/app-integration.md (1)
`13-15`: **Clarification on partial set security** The introduction of Partial Set Security (PSS) is correctly highlighted, indicating that not all provider validators need to validate a consumer chain. This is a crucial update for developers integrating with the ICS protocol, as it affects the scalability and flexibility of consumer chains.
docs/docs/features/reward-distribution.md (1)
`11-11`: **Clarify reward distribution mechanism** The update clearly explains the mechanism of reward distribution from consumer chains to the provider chain using an IBC transfer channel. This is a significant detail that aligns with the updated protocol specifications.
docs/docs/introduction/terminology.md (1)
`32-32`: **Clarification on Interchain Security's functionality** The description accurately explains how Interchain Security allows a subset of the provider chain's validator set to validate blocks on the consumer chain. This is an essential update for understanding the scope and functionality of the protocol.
docs/docs/validators/overview.md (1)
`10-14`: **Clarification on validator requirements for consumer chains.** The explanation of the conditions under which a validator must run a validator node for a consumer chain is clear and well-detailed. The addition of the `has-to-validate` query provides a useful tool for validators to manage their responsibilities.
Tools
LanguageTool
[uncategorized] ~10-~10: The abbreviation “i.e.” (= that is) requires two periods. (I_E) Context: ...l the validators of the provider chain (ie. Cosmos Hub) to run validator nodes for ...
docs/docs/frequently-asked-questions.md (1)
`83-83`: **Updated link text for joining the testnet.** The update from "Joining Replicated Security testnet" to "Joining Interchain Security testnet" is accurate and reflects the terminology changes discussed in the PR. Good attention to detail.
docs/docs/consumer-development/changeover-procedure.md (2)
Line range hint `157-233`: **Review the `ConsumerAdditionProposal` Structure for Consistency and Clarity** This large block defines a `ConsumerAdditionProposal`. It's important to ensure that all fields are correctly explained and consistent with the rest of the documentation. Also, verify that the example values provided (like `revision_number` and `upgrade_height`) are realistic and align with typical usage scenarios.
Tools
LanguageTool
[typographical] ~239-~239: Usually, there’s no comma before “that”. (THAT_NO_COMMA) Context: ...015-partial-set-security.md). This means, that a standalone chain can choose to only b...
--- `93-93`: **Ensure Accuracy of Module Path** The documentation specifies adding the `ccv/consumer` module. It's crucial to verify that the path provided is accurate and reflects the actual module path used in the codebase.
Verification successful --- **Ensure Accuracy of Module Path** The `ccv/consumer` module path is correctly referenced in the documentation, as it aligns with the actual module path `x/ccv/consumer` in the codebase. - **Verified Files**: - `x/ccv/consumer/module.go` - `x/ccv/consumer/types/validator.go` - `x/ccv/consumer/keeper/hooks.go` - and many more within the `x/ccv/consumer` directory.
Scripts executed The following scripts were executed for the analysis: --- Script: ```shell #!/bin/bash # Searching for the module path in the codebase rg --type md 'ccv/consumer' ``` Length of output: 5744 --- --- Script: ```shell #!/bin/bash # Verify the existence of the x/ccv/consumer directory and list its contents fd 'ccv/consumer' --type d --exec ls -l {} ``` Length of output: 44 --- --- Script: ```shell #!/bin/bash # Re-run the search for the ccv/consumer directory using rg to ensure comprehensive verification rg --files | grep 'ccv/consumer' ``` Length of output: 1673
--- Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
Share - [X](https://twitter.com/intent/tweet?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A&url=https%3A//coderabbit.ai) - [Mastodon](https://mastodon.social/share?text=I%20just%20used%20%40coderabbitai%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20the%20proprietary%20code.%20Check%20it%20out%3A%20https%3A%2F%2Fcoderabbit.ai) - [Reddit](https://www.reddit.com/submit?title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&text=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code.%20Check%20it%20out%3A%20https%3A//coderabbit.ai) - [LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fcoderabbit.ai&mini=true&title=Great%20tool%20for%20code%20review%20-%20CodeRabbit&summary=I%20just%20used%20CodeRabbit%20for%20my%20code%20review%2C%20and%20it%27s%20fantastic%21%20It%27s%20free%20for%20OSS%20and%20offers%20a%20free%20trial%20for%20proprietary%20code)
Tips ### Chat There are 3 ways to chat with [CodeRabbit](https://coderabbit.ai): - Review comments: Directly reply to a review comment made by CodeRabbit. Example: - `I pushed a fix in commit .` - `Generate unit testing code for this file.` - `Open a follow-up GitHub issue for this discussion.` - Files and specific lines of code (under the "Files changed" tab): Tag `@coderabbitai` in a new review comment at the desired location with your query. Examples: - `@coderabbitai generate unit testing code for this file.` - `@coderabbitai modularize this function.` - PR comments: Tag `@coderabbitai` in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples: - `@coderabbitai generate interesting stats about this repository and render them as a table.` - `@coderabbitai show all the console.log statements in this repository.` - `@coderabbitai read src/utils.ts and generate unit testing code.` - `@coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.` - `@coderabbitai help me debug CodeRabbit configuration file.` Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. ### CodeRabbit Commands (invoked as PR comments) - `@coderabbitai pause` to pause the reviews on a PR. - `@coderabbitai resume` to resume the paused reviews. - `@coderabbitai review` to trigger an incremental review. This is useful when automatic reviews are disabled for the repository. - `@coderabbitai full review` to do a full review from scratch and review all the files again. - `@coderabbitai summary` to regenerate the summary of the PR. - `@coderabbitai resolve` resolve all the CodeRabbit review comments. - `@coderabbitai configuration` to show the current CodeRabbit configuration for the repository. - `@coderabbitai help` to get help. Additionally, you can add `@coderabbitai ignore` anywhere in the PR description to prevent this PR from being reviewed. ### CodeRabbit Configration File (`.coderabbit.yaml`) - You can programmatically configure CodeRabbit by adding a `.coderabbit.yaml` file to the root of your repository. - Please see the [configuration documentation](https://docs.coderabbit.ai/guides/configure-coderabbit) for more information. - If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: `# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json` ### Documentation and Community - Visit our [Documentation](https://coderabbit.ai/docs) for detailed information on how to use CodeRabbit. - Join our [Discord Community](https://discord.com/invite/GsXnASn26c) to get help, request features, and share feedback. - Follow us on [X/Twitter](https://twitter.com/coderabbitai) for updates and announcements.