Skip to content

Commit 0bea14d

Browse files
mmulji-icMSalopek
andauthored
docs: Various link and content updates (#2986)
* docs: add versioning for current docs * docs: mv archived migrations; mv modules * docs: update docusaurus configs * docs: update docusaurus configs * rm unneded file; update docs docs * update docusaurus * Various link and content updates * More links that md-checker has issues with * add v16 changelogs, rm outdated docs * update v16 changelog * update docs readme.md * bulk content updates * more content updates * more content updates * update docs from review comments --------- Co-authored-by: MSalopek <[email protected]>
1 parent 72a0b7e commit 0bea14d

File tree

82 files changed

+296
-2583
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

82 files changed

+296
-2583
lines changed

docs/DOCS_README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ built from the files in this (`/docs`) directory for [main](https://github.com/c
1717

1818
### How It Works
1919

20-
There is a [Github Action](https://github.com/cosmos/gaia/blob/main/.github/workflows/docs.yml)
20+
There is a [Github Action](https://github.com/cosmos/gaia/blob/main/.github/workflows/deploy-docs.yml)
2121
listening for changes in the `/docs` directory, on the `main` branch.
2222
Any updates to files in this directory on that branch will automatically
2323
trigger a website deployment. Under the hood, `make build-docs` is run from the

docs/README.md

+10-16
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,32 @@
1-
<!--
2-
parent:
3-
order: false
4-
layout: home
5-
-->
6-
71
# Cosmos Hub Documentation
82

93
Welcome to the documentation of the **Cosmos Hub application: `gaia`**.
104

115
## What is Gaia?
126

13-
- [Intro to the `gaia` software](./getting-started/what-is-gaia.md)
14-
- [Interacting with the `gaiad` binary](./hub-tutorials/gaiad.md)
7+
- [Intro to the `gaia` software](./docs/getting-started/what-is-gaia.md)
8+
- [Interacting with the `gaiad` binary](./docs/hub-tutorials/gaiad.md)
159

1610
## Join the Cosmos Hub Mainnet
1711

18-
- [Install the `gaia` application](./getting-started/installation.md)
19-
- [Set up a full node and join the mainnet](./hub-tutorials/join-mainnet.md)
20-
- [Upgrade to a validator node](./validators/validator-setup.md)
12+
- [Install the `gaia` application](./docs/getting-started/installation.md)
13+
- [Set up a full node and join the mainnet](./docs/hub-tutorials/join-mainnet.md)
14+
- [Upgrade to a validator node](./docs/validators/validator-setup.md)
2115

2216
## Join the Cosmos Hub Public Testnet
2317

24-
- [Join the testnet](./hub-tutorials/join-testnet.md)
18+
- [Join the testnet](./docs/hub-tutorials/join-testnet.md)
2519

2620
## Setup Your Own `gaia` Testnet
2721

2822
- [Setup your own `gaia` testnet](https://github.com/cosmos/testnets/tree/master/local/previous-local-testnets/v7-theta)
2923

3024
## Additional Resources
3125

32-
- [Validator Resources](./validators/README.md): Contains documentation for `gaia` validators.
33-
- [Delegator Resources](./delegators/README.md): Contains documentation for delegators.
34-
- [Other Resources](./resources/README.md): Contains documentation on `gaiad`, genesis file, service providers, ledger wallets, ...
35-
- [Cosmos Hub Archives](./resources/archives.md): State archives of past iteration of the Cosmos Hub.
26+
- [Validator Resources](./docs/validators/README.md): Contains documentation for `gaia` validators.
27+
- [Delegator Resources](./docs/delegators/README.md): Contains documentation for delegators.
28+
- [Other Resources](./docs/resources/README.md): Contains documentation on `gaiad`, genesis file, service providers, ledger wallets, ...
29+
- [Cosmos Hub Archives](./docs/resources/archives.md): State archives of past iteration of the Cosmos Hub.
3630

3731
# Contribute
3832

docs/docs/architecture/adr/adr-002-globalfee.md

+12-7
Original file line numberDiff line numberDiff line change
@@ -98,17 +98,22 @@ Checking `feeCoinsNonZeroDenom` against `nonZeroCoinFeesReq`:
9898
}
9999
```
100100

101-
Here is an example of how the coins split and checked in fee antehandler:\
102-
**assumption**:\
101+
Here is an example of how the coins split and checked in fee antehandler:
102+
103+
**assumption**:
104+
103105
`globalfee=[1photon, 0uatom, 1stake]` and `local min-gas-prices=[0.5stake]`
104106

105-
**fee requirement**:\
107+
**fee requirement**:
108+
106109
`combinedFeeRequirement=[1photon, 0uatom, 1stake]`
107110

108-
**split fee requirement**:\
111+
**split fee requirement**:
112+
109113
the `combinedFeeRequirement` into `nonZeroCoinFeesReq=[0uatom]`, and `nonZeroCoinFeesReq=[1photon, 1stake]`
110114

111-
**split the paid fees**:\
115+
**split the paid fees**:
116+
112117
if `paidFee=[1uatom, 0.5photon]`,
113118
the `splitCoinsByDenoms` splits the paidFee into `feeCoinsZeroDenom=[1uatom]` (the same denom as zero coins in `combinedFeeRequirement`), and `feeCoinsNonZeroDenom=[0.5stake]`
114119
then `feeCoinsZeroDenom=[1uatom]` is checked by `nonZeroCoinFeesReq=[1photon, 1stake]`.
@@ -121,7 +126,7 @@ Please note that `feeCoins` does not contain zero coins. The fee coins are split
121126

122127
### Fee Checks in `DeliverTx`
123128
Implementing fee checks within the `DeliverTx` function introduces a few requirements:
124-
- **Deterministic Minimum Fee Requirement**: For the `DeliverTx` process, it is essential to have a deterministic minimum fee requirement. In `CheckTx`, fee is checked by the `CombinedFeeRequirement(globalFees, localFees)`, which considers both `minimum-gas-prices` from `config/app.toml` and `MinimumGasPricesParam` from the globalfee Params (For more details, see [globalfee.md](/modules/globalfee.md)). `CombinedFeeRequirement` contains non-deterministic part: `minimum-gas-prices` from `app.toml`. Therefore, `CombinedFeeRequirement` cannot be used in `DeliverTx`. In `DeliverTx`, only `MinimumGasPricesParam` in globalfee Params is used for fee verification. The code implementation is shown below.
129+
- **Deterministic Minimum Fee Requirement**: For the `DeliverTx` process, it is essential to have a deterministic minimum fee requirement. In `CheckTx`, fee is checked by the `CombinedFeeRequirement(globalFees, localFees)`, which considers both `minimum-gas-prices` from `config/app.toml` and `MinimumGasPricesParam` from the globalfee Params (For more details, see [globalfee](../../modules/globalfee.md)). `CombinedFeeRequirement` contains non-deterministic part: `minimum-gas-prices` from `app.toml`. Therefore, `CombinedFeeRequirement` cannot be used in `DeliverTx`. In `DeliverTx`, only `MinimumGasPricesParam` in globalfee Params is used for fee verification. The code implementation is shown below.
125130

126131
```go
127132
func (mfd FeeDecorator) GetTxFeeRequired(ctx sdk.Context, tx sdk.FeeTx) (sdk.Coins, error) {
@@ -162,4 +167,4 @@ The introduction of FeeDecorator has replaced the usage of `MempoolFeeDecorator`
162167

163168
## References
164169

165-
* [Documentation of the globalfee module](/modules/globalfee.md)
170+
* [Documentation of the globalfee module](../../modules/globalfee)

docs/docs/architecture/templates/adr-template.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ order: false
1212

1313
{DRAFT | PROPOSED} Not Implemented
1414

15-
> Please have a look at the [PROCESS](/architecture/adr/PROCESS.md#adr-status) page.
15+
> Please have a look at the [PROCESS](../adr/PROCESS#adr-status) page.
1616
> Use DRAFT if the ADR is in a draft stage (draft PR) or PROPOSED if it's in review.
1717
1818
## Abstract

docs/docs/changelogs/v15.1.0.md

-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
---
22
title: v15.1.0
3-
order: 1
43
---
54

65
This document outlines API breaking changes that were introduced in `gaia v15.1.0`.

docs/docs/changelogs/v16.0.0.md

+57
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
---
2+
title: v16.0.0
3+
order: 1
4+
---
5+
6+
This document changes that were introduced in `gaia v16.0.0`.
7+
8+
This release is based on cosmos-sdk `v0.47.x`, ibc-go `v7.x` and cometBFT `v0.37.5`.
9+
10+
You can find the comprehensive API docs at:
11+
* https://docs.cosmos.network/api
12+
13+
Module reference manuals (with CLI instructions) can be found at:
14+
* https://docs.cosmos.network/v0.47/build/modules
15+
16+
Comprehensive list of changes:
17+
* https://github.com/cosmos/gaia/blob/v16.0.0/CHANGELOG.md
18+
19+
## Supported modules:
20+
cosmos-sdk `v0.47.13-ics-lsm`
21+
* x/auth
22+
* x/authz
23+
* x/bank
24+
* x/capability
25+
* x/consensus
26+
* x/crisis
27+
* x/distribution
28+
* x/evidence
29+
* x/feegrant
30+
* x/gov
31+
* x/mint
32+
* x/params
33+
* x/slashing
34+
* x/staking (with LSM changes)
35+
* x/upgrade
36+
37+
ibc protocols
38+
* transfer
39+
* ica host
40+
* ica controller
41+
* interchain-security/provider `v4.1.0-lsm`
42+
43+
ibc-middleware
44+
* packetforward `v7.x`
45+
* [ibcfee](https://ibc.cosmos.network/v7/middleware/ics29-fee/overview) `v7.x`
46+
* [ibc-rate-limiting](https://github.com/Stride-Labs/ibc-rate-limiting)
47+
48+
gaia
49+
* x/globalfee
50+
* x/metaprotocols
51+
52+
# Important changes
53+
54+
This version enables relayer incentivization for newly created IBC channels, adds ICA controller functionality and imposes limits on the amount of outgoing ATOM IBC transfers.
55+
56+
With the upgrade of the ICS provider module, the amount of relayer traffic gets significantly reduced due to the introduction of epochs. With epochs, the ICS protocol aggregates validator set updates and sends them every 600 blocks (1 packet/hour) instead of every block. This feature is intended to reduce relayer costs and encourage relayer participation.
57+

docs/docs/delegators/delegator-faq.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ order: 4
55

66
## What is a delegator?
77

8-
People that cannot or do not want to operate [validator nodes](/validators/overview.mdx) can still participate in the staking process as delegators. Indeed, validators are not chosen based on their self-delegated stake but based on their total stake, which is the sum of their self-delegated stake and of the stake that is delegated to them. This is an important property, as it makes delegators a safeguard against validators that exhibit bad behavior. If a validator misbehaves, their delegators will move their Atoms away from them, thereby reducing their stake. Eventually, if a validator's stake falls under the top 180 addresses with highest stake, they will exit the validator set.
8+
People that cannot or do not want to operate [validator nodes](../validators/overview.mdx) can still participate in the staking process as delegators. Indeed, validators are not chosen based on their self-delegated stake but based on their total stake, which is the sum of their self-delegated stake and of the stake that is delegated to them. This is an important property, as it makes delegators a safeguard against validators that exhibit bad behavior. If a validator misbehaves, their delegators will move their Atoms away from them, thereby reducing their stake. Eventually, if a validator's stake falls under the top 180 addresses with highest stake, they will exit the validator set.
99

1010
**Delegators share the revenue of their validators, but they also share the risks.** In terms of revenue, validators and delegators differ in that validators can apply a commission on the revenue that goes to their delegator before it is distributed. This commission is known to delegators beforehand and can only change according to predefined constraints (see [section](#choosing-a-validator) below). In terms of risk, delegators' Atoms can be slashed if their validator misbehaves. For more, see [Risks](#risks) section.
1111

docs/docs/delegators/delegator-guide-cli.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ Please exercise extreme caution!
5858
[**Download the binaries**]
5959
Not available yet.
6060

61-
[**Install from source**](../getting-started/installation.md)
61+
[**Install from source**](../getting-started/installation)
6262

6363
:::tip
6464
`gaiad` is used from a terminal. To open the terminal, follow these steps:
@@ -259,7 +259,7 @@ In order to query the state and send transactions, you need a way to access the
259259

260260
This is the most secure option, but comes with relatively high resource requirements. In order to run your own full-node, you need good bandwidth and at least 1TB of disk space.
261261

262-
You will find the tutorial on how to install `gaiad` [here](../getting-started/installation.md), and the guide to run a full-node [here](../hub-tutorials/join-mainnet.md).
262+
You will find the tutorial on how to install `gaiad` [here](../getting-started/installation), and the guide to run a full-node [here](../hub-tutorials/join-mainnet).
263263

264264
### Connecting to a Remote Full-Node
265265

@@ -397,7 +397,7 @@ gaiad tx bank send [from_key_or_address] [to_address] [amount] [flags]
397397
:::
398398
399399
:::warning
400-
**Before bonding Atoms, please read the [delegator faq](https://cosmos.network/resources/delegators) to understand the risk and responsibilities involved with delegating**
400+
**Before bonding Atoms, please read the [delegator faq](https://hub.cosmos.network/delegators/delegator-faq) to understand the risk and responsibilities involved with delegating**
401401
:::
402402
403403
:::warning

docs/docs/delegators/delegator-security.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ The launch of any public blockchain is an incredibly exciting time, and it's def
77

88
## Social Engineering
99

10-
[Social engineering](https://en.wikipedia.org/wiki/Social_engineering_(security)) has existed for about as long as human beings have been on the planet, and in the technical era, it usually takes in the form of [phishing](https://ssd.eff.org/en/module/how-avoid-phishing-attacks) or [spearphishing](https://en.wikipedia.org/wiki/Phishing#Spear_phishing) . Both of these attacks are wildly successful forms of trickery that are responsible for over 95% of account security breaches, and they don't just happen via email: these days, opportunistic and targeted phishing attempts take place [anywhere that you have an inbox](https://www.umass.edu/it/security/phishing-fraudulent-emails-text-messages-phone-calls) . It doesn't matter if you're using Signal, Telegram, SMS, Twitter, or just checking your DMs on forums or social networks, attackers have a [plethora of opportunities](https://jia.sipa.columbia.edu/weaponization-social-media-spear-phishing-and-cyberattacks-democracy) to gain foothold in your digital life in effort to separate you from valuable information and assets that you most definitely don't want to lose. If a deal pops up that [sounds too good to be true](https://www.psychologytoday.com/us/blog/mind-in-the-machine/201712/how-fear-is-being-used-manipulate-cryptocurrency-markets) , or a message shows up asking for information that should never, ever be shared with someone else, you can always verify it before engaging with it by navigating to our official website or an official Cosmos communication channel on your own.
10+
[Social engineering](https://en.wikipedia.org/wiki/Social_engineering_(security)) has existed for about as long as human beings have been on the planet, and in the technical era, it usually takes in the form of [phishing](https://ssd.eff.org/en/module/how-avoid-phishing-attacks) or [spearphishing](https://en.wikipedia.org/wiki/Phishing#Spear_phishing) . Both of these attacks are wildly successful forms of trickery that are responsible for over 95% of account security breaches, and they don't just happen via email: these days, opportunistic and targeted phishing attempts take place [anywhere that you have an inbox](https://www.umass.edu/it/security/phishing-fraudulent-emails-text-messages-phone-calls) . It doesn't matter if you're using Signal, Telegram, SMS, Twitter, or just checking your DMs on forums or social networks, attackers have a [plethora of opportunities](https://lucris.lub.lu.se/ws/portalfiles/portal/85420559/The_Weaponization_of_Social_Media_Bossetta_2018_.pdf) to gain foothold in your digital life in effort to separate you from valuable information and assets that you most definitely don't want to lose. If a deal pops up that [sounds too good to be true](https://www.psychologytoday.com/us/blog/mind-in-the-machine/201712/how-fear-is-being-used-manipulate-cryptocurrency-markets) , or a message shows up asking for information that should never, ever be shared with someone else, you can always verify it before engaging with it by navigating to our official website or an official Cosmos communication channel on your own.
1111

1212
* **Be skeptical of unexpected attachments, or emails that ask you to visit a suspicious or unfamiliar website in the context of blockchains or cryptocurrency.** An attacker may attempt to lure you to a [compromised site](https://blog.malwarebytes.com/cybercrime/2013/02/tools-of-the-trade-exploit-kits/) designed to steal sensitive information from your computer. If you're a Gmail user, test your resilience against the latest email-based phishing tactics [here](https://phishingquiz.withgoogle.com/) .
1313

docs/docs/getting-started/installation.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
title: Installing Gaia
3-
order: 2
3+
sidebar_position: 2
44
---
55

66
This guide will explain how to install the `gaiad` binary and run the cli. With this binary installed on a server, you can participate on the mainnet as either a [Full Node](../hub-tutorials/join-mainnet.md) or a [Validator](../validators/validator-setup.md).
@@ -121,4 +121,4 @@ The `replace` clause you add to `go.mod` must provide the correct import path:
121121

122122
## Next
123123

124-
Now you can [join the mainnet](../hub-tutorials/join-mainnet.md), [the public testnet](../hub-tutorials/join-testnet.md).
124+
Now you can [join the mainnet](../hub-tutorials/join-mainnet), [the public testnet](../hub-tutorials/join-testnet).

docs/docs/getting-started/quickstart.mdx

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
title: Quick Start - Join Mainnet
3-
order: 3
3+
sidebar_position: 3
44
---
55

66
import Tabs from '@theme/Tabs';

docs/docs/getting-started/system-requirements.md

+5
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
---
2+
title: System requirements
3+
sidebar_position: 4
4+
---
5+
16

27
# System requirements
38

+46-14
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,56 @@
11
---
22
title: What is Gaia?
3-
order: 1
3+
sidebar_position: 1
44
---
55

6-
`gaia` is the name of the Cosmos SDK application for the Cosmos Hub. It comes with 2 main entrypoints:
6+
The Cosmos Hub is a public Proof-of-Stake chain that uses ATOM as its native staking token. It is the first blockchain launched in the Cosmos Network and developed using the [cosmos-sdk](https://docs.cosmos.network/) development framework and [ibc-go](https://ibc.cosmos.network/).
77

8-
- `gaiad`: The Gaia Daemon and command-line interface (CLI). runs a full-node of the `gaia` application.
8+
Cosmos hub is also the first security aggregation platform that leverages the [interchain-security](https://cosmos.github.io/interchain-security/) protocol ([ICS-28](https://github.com/cosmos/ibc/tree/main/spec/app/ics-028-cross-chain-validation)) to facilitate the launch of cosmos-sdk blockchain projects.
99

10-
`gaia` is built on the Cosmos SDK using the following modules:
1110

12-
- `x/auth`: Accounts and signatures.
13-
- `x/bank`: Token transfers.
14-
- `x/staking`: Staking logic.
15-
- `x/mint`: Inflation logic.
16-
- `x/distribution`: Fee distribution logic.
17-
- `x/slashing`: Slashing logic.
18-
- `x/gov`: Governance logic.
19-
- `ibc-go/modules`: Inter-blockchain communication. Hosted in the `cosmos/ibc-go` repository.
20-
- `x/params`: Handles app-level parameters.
11+
:::tip
12+
Interchain security features deployed on the Cosmos Hub blockchain allow anyone to launch a blockchain using a subset, or even the entire validator set of the Cosmos Hub blockchain.
13+
:::
14+
15+
16+
:::info
17+
* `gaia` is the name of the Cosmos SDK application for the Cosmos Hub.
18+
19+
* `gaiad` is the daemon and command-line interface (CLI) that operates the `gaia` blockchain application.
20+
:::
21+
22+
23+
The `gaia` blockchain uses the following cosmos-sdk, ibc-go and interchain-security modules, alongside some others:
24+
25+
## cosmos-sdk
26+
* [x/auth](https://docs.cosmos.network/v0.47/build/modules/auth)
27+
* [x/authz](https://docs.cosmos.network/v0.47/build/modules/authz)
28+
* [x/bank](https://docs.cosmos.network/v0.47/build/modules/bank)
29+
* [x/capability](https://docs.cosmos.network/v0.47/build/modules/capability)
30+
* [x/consensus](https://docs.cosmos.network/v0.47/build/modules/consensus)
31+
* [x/crisis](https://docs.cosmos.network/v0.47/build/modules/crisis)
32+
* [x/distribution](https://docs.cosmos.network/v0.47/build/modules/distribution)
33+
* [x/evidence](https://docs.cosmos.network/v0.47/build/modules/evidence)
34+
* [x/feegrant](https://docs.cosmos.network/v0.47/build/modules/feegrant)
35+
* [x/gov](https://docs.cosmos.network/v0.47/build/modules/gov)
36+
* [x/mint](https://docs.cosmos.network/v0.47/build/modules/mint)
37+
* [x/params](https://docs.cosmos.network/v0.47/build/modules/params)
38+
* [x/slashing](https://docs.cosmos.network/v0.47/build/modules/slashing)
39+
* [x/staking (with LSM changes)](https://docs.cosmos.network/v0.47/build/modules/staking)
40+
* [x/upgrade](https://docs.cosmos.network/v0.47/build/modules/upgrade)
41+
42+
## ibc-go
43+
* [transfer](https://ibc.cosmos.network/main/apps/transfer/overview)
44+
* [interchain accounts - host](https://ibc.cosmos.network/v8/apps/interchain-accounts/client#host)
45+
* [interchain accounts - controller](https://ibc.cosmos.network/v8/apps/interchain-accounts/client#controller)
46+
* [interchain-security/provider](https://github.com/cosmos/interchain-security/tree/main/x/ccv/provider)
47+
* [packetforward](https://github.com/cosmos/ibc-apps/tree/main/middleware/packet-forward-middleware)
48+
* [ibcfee](https://ibc.cosmos.network/v7/middleware/ics29-fee/overview)
49+
* [ibc-rate-limiting](https://github.com/Stride-Labs/ibc-rate-limiting)
50+
51+
## gaia specific modules
52+
* [x/globalfee](https://github.com/cosmos/gaia/tree/main/x/globalfee)
53+
* [x/metaprotocols](https://github.com/cosmos/gaia/tree/main/x/metaprotocols)
2154

22-
About the Cosmos Hub: The Cosmos Hub is the first Hub to be launched in the Cosmos Network. The role of a Hub is to facilitate transfers between blockchains. If a blockchain connects to a Hub via IBC, it automatically gains access to all the other blockchains that are connected to it. The Cosmos Hub is a public Proof-of-Stake chain. Its staking token is called the Atom.
2355

2456
Next, learn how to [install Gaia](./installation.md).

0 commit comments

Comments
 (0)