-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Charles Dusek
committed
Mar 10, 2024
1 parent
d20320d
commit b316439
Showing
13 changed files
with
396 additions
and
34 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
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
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,87 @@ | ||
# Onex consumer chain | ||
|
||
## Detail | ||
|
||
The `onex-mainnet-1` chain will be launched as a consumer chain in Onomy mainnet. | ||
|
||
- Network information: https://github.com/onomyprotocol/validator/tree/main/testnet | ||
- Chain ID: `onex-mainnet-1` | ||
* Spawn time: `March 4th, 2024` (Will be updated soon) | ||
* Genesis file (without CCV): https://raw.githubusercontent.com/onomyprotocol/validator/main/testnet/onex-mainnet-1/genesis-without-ccv.json | ||
* Genesis with CCV: Available soon | ||
- Current version: `v1.0.3-onex` | ||
* Binary: | ||
* Version: [v1.0.3-onex](https://github.com/onomyprotocol/onex/releases/tag/v1.0.3-onex) | ||
* SHA256: `e719ac86618953dee759e111c414cded126d54b8b8ae4f9f8b21015b06c1d91c` | ||
* Onex GitHub repository: https://github.com/onomyprotocol/onex | ||
- Peers: `` | ||
- Endpoints: | ||
- RPC: `` | ||
- API: `` | ||
- gRPC: `` | ||
- Block Explorer: `` | ||
|
||
## IBC detail | ||
| | onex-mainnet-1 | onomy-mainnet-1 | | ||
|-------------|---------------------|-----------------| | ||
|Client |`Available soon`| `Available soon`| | ||
|Connections | `Available soon` | `Available soon` | | ||
|Channels | `transfer`: `Available soon` <br/><br/> `consumer`: `Available soon` | `transfer`: `Available soon` <br/><br/> `consumer`: `Available soon` | | ||
|
||
## Setup Instruction | ||
|
||
### 1. Joining Onomy provider chain (onomy-mainnet-1) as a validator | ||
First, validators need to run the Onomy provider chain. To set up the node and join the network, please follow the instructions in [mainnet documentation](https://github.com/onomyprotocol/validator/blob/main/mainnet/readme.md). | ||
|
||
Here is the detail of the Onomy provider chain: | ||
- Chain ID: `onomy-mainnet-1` | ||
- Version: [v1.1.4](https://github.com/onomyprotocol/onomy/releases/tag/v1.1.4) | ||
- Genesis: https://raw.githubusercontent.com/onomyprotocol/validator/main/mainnet/genesis/genesis-mainnet-1.json | ||
- Seeds: | ||
``` | ||
[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:52756 | ||
``` | ||
- Persistent Peers: | ||
``` | ||
[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:52756,[email protected]:26656 | ||
``` | ||
|
||
|
||
### 4. Setup Onex consumer chain | ||
The validators also need to set up the `onex-mainnet-1` consumer chain. Here are the commands to install the binary and set up the new chain. | ||
```bash | ||
# detail of setup will appear here | ||
cd $HOME/go/bin | ||
wget -O onexd https://github.com/onomyprotocol/onex/releases/download/v1.0.3-onex/onexd && chmod +x onexd | ||
onexd version # v1.0.3-onex | ||
onexd init <moniker> --chain-id onex-mainnet-1 | ||
cd $HOME/.onex/ | ||
wget -O config/genesis.json https://raw.githubusercontent.com/onomyprotocol/validator/main/testnet/onex-mainnet-1/genesis-without-ccv.json | ||
``` | ||
|
||
The validators **MUST NOT** run the node but wait until the new genesis is published on the Onomy repository, which will be detailed in step **[5. Vote the consumer-addition proposal](#5-vote-the-consumer-addition-proposal)**. | ||
|
||
### 5. Vote on the consumer-addition proposal | ||
The proposal to launch `onex-mainnet-1` as a consumer chain will be submitted on the Onomy provider mainnet and the validators should participate in voting for the proposal. After the proposal is passed, the validators should wait until the `spawn_time` and replace the old genesis file with the new `genesis-with-ccv.json` file from the Onomy repository. | ||
|
||
```bash | ||
wget -O /$HOME/.onex/config/genesis.json https://raw.githubusercontent.com/onomyprotocol/validator/main/testnet/onex-mainnet-1/genesis.json | ||
``` | ||
|
||
### 6. Wait for genesis and run | ||
|
||
At the genesis time, validators can start the consumer chain by running | ||
```bash | ||
onexd start | ||
``` | ||
|
||
|
||
## Launch Stages | ||
|Step|When?|What do you need to do?|What is happening?| | ||
|----|--------------------------------------------------|----------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------| | ||
|1 |ASAP |Join the Onomy mainnet `onomy-mainnet-1` as a full node and sync to the tip of the chain.|Validator machines getting caught up on existing Composable chain's history | | ||
|2 | Consumer Addition proposal on provider chain | [PROVIDER] Optional: Vote for the consumer-addition proposal. | The proposals that provide new details for the launch. | | ||
|3 |The proposals passed |Nothing | The proposals passed, `spawn_time` is set. After `spawn_time` is reached, the `ccv.json` file containing `ccv` state will be provided from the provider chain. | ||
|4 |`spawn_time` reached |The `genesis-with-ccv.json` file will be provided in the testnets repo. Replace the old `genesis.json` in the `$HOME/.onex/config` directory with the new `genesis-with-ccv.json`. The new `genesis-with-ccv.json` file with ccv data will be published in [onomyprotocol/valiadtor](https://github.com/onomyprotocol/validator/tree/main/testnet/onex-mainnet-1) | | ||
|5 |Genesis reached | Start your node with the consumer binary | onex-mainnet-1 chain will start and become a consumer chain. | | ||
|6 |3 blocks after upgrade height |Celebrate! :tada: 🥂 |<chain> blocks are now produced by the provider validator set| |
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,255 @@ | ||
{ | ||
"genesis_time": "2024-03-13T16:00:00.000Z", | ||
"chain_id": "onex-mainnet-1", | ||
"initial_height": "1", | ||
"consensus_params": { | ||
"block": { | ||
"max_bytes": "22020096", | ||
"max_gas": "-1", | ||
"time_iota_ms": "1000" | ||
}, | ||
"evidence": { | ||
"max_age_num_blocks": "100000", | ||
"max_age_duration": "172800000000000", | ||
"max_bytes": "1048576" | ||
}, | ||
"validator": { | ||
"pub_key_types": [ | ||
"ed25519" | ||
] | ||
}, | ||
"version": {} | ||
}, | ||
"app_hash": "", | ||
"app_state": { | ||
"auth": { | ||
"params": { | ||
"max_memo_characters": "256", | ||
"tx_sig_limit": "7", | ||
"tx_size_cost_per_byte": "10", | ||
"sig_verify_cost_ed25519": "590", | ||
"sig_verify_cost_secp256k1": "1000" | ||
}, | ||
"accounts": [] | ||
}, | ||
"authz": { | ||
"authorization": [] | ||
}, | ||
"bank": { | ||
"params": { | ||
"send_enabled": [], | ||
"default_send_enabled": true | ||
}, | ||
"balances": [], | ||
"supply": [], | ||
"denom_metadata": [ | ||
{ | ||
"name": "ONEX", | ||
"description": "stake in consumer-side governance for ONEX", | ||
"denom_units": [ | ||
{ | ||
"denom": "aonex", | ||
"exponent": 0, | ||
"aliases": [] | ||
}, | ||
{ | ||
"denom": "onex", | ||
"exponent": 18, | ||
"aliases": [] | ||
} | ||
], | ||
"base": "aonex", | ||
"display": "onex", | ||
"symbol": "ONEX" | ||
} | ||
] | ||
}, | ||
"capability": { | ||
"index": "1", | ||
"owners": [] | ||
}, | ||
"ccvconsumer": { | ||
"params": { | ||
"enabled": false, | ||
"blocks_per_distribution_transmission": "1000", | ||
"distribution_transmission_channel": "", | ||
"provider_fee_pool_addr_str": "", | ||
"ccv_timeout_period": "2419200s", | ||
"transfer_timeout_period": "3600s", | ||
"consumer_redistribution_fraction": "0.75", | ||
"historical_entries": "10000", | ||
"unbonding_period": "1728000s", | ||
"soft_opt_out_threshold": "0.05", | ||
"reward_denoms": [], | ||
"provider_reward_denoms": [] | ||
}, | ||
"provider_client_id": "", | ||
"provider_channel_id": "", | ||
"new_chain": false, | ||
"provider_client_state": null, | ||
"provider_consensus_state": null, | ||
"maturing_packets": [], | ||
"initial_val_set": [], | ||
"height_to_valset_update_id": [], | ||
"outstanding_downtime_slashing": [], | ||
"pending_consumer_packets": { | ||
"list": [] | ||
}, | ||
"last_transmission_block_height": { | ||
"height": "0" | ||
} | ||
}, | ||
"crisis": { | ||
"constant_fee": { | ||
"denom": "aonex", | ||
"amount": "1000" | ||
} | ||
}, | ||
"distribution": { | ||
"params": { | ||
"community_tax": "0.020000000000000000", | ||
"base_proposer_reward": "0.010000000000000000", | ||
"bonus_proposer_reward": "0.040000000000000000", | ||
"withdraw_addr_enabled": true | ||
}, | ||
"fee_pool": { | ||
"community_pool": [] | ||
}, | ||
"delegator_withdraw_infos": [], | ||
"previous_proposer": "", | ||
"outstanding_rewards": [], | ||
"validator_accumulated_commissions": [], | ||
"validator_historical_rewards": [], | ||
"validator_current_rewards": [], | ||
"delegator_starting_infos": [], | ||
"validator_slash_events": [] | ||
}, | ||
"evidence": { | ||
"evidence": [] | ||
}, | ||
"feegrant": { | ||
"allowances": [] | ||
}, | ||
"gov": { | ||
"starting_proposal_id": "1", | ||
"deposits": [], | ||
"votes": [], | ||
"proposals": [], | ||
"deposit_params": { | ||
"min_deposit": [ | ||
{ | ||
"denom": "aonex", | ||
"amount": "500000000000000000000" | ||
} | ||
], | ||
"max_deposit_period": "172800s" | ||
}, | ||
"voting_params": { | ||
"voting_period": "172800s" | ||
}, | ||
"tally_params": { | ||
"quorum": "0.334000000000000000", | ||
"threshold": "0.500000000000000000", | ||
"veto_threshold": "0.334000000000000000" | ||
} | ||
}, | ||
"ibc": { | ||
"client_genesis": { | ||
"clients": [], | ||
"clients_consensus": [], | ||
"clients_metadata": [], | ||
"params": { | ||
"allowed_clients": [ | ||
"06-solomachine", | ||
"07-tendermint" | ||
] | ||
}, | ||
"create_localhost": false, | ||
"next_client_sequence": "0" | ||
}, | ||
"connection_genesis": { | ||
"connections": [], | ||
"client_connection_paths": [], | ||
"next_connection_sequence": "0", | ||
"params": { | ||
"max_expected_time_per_block": "30000000000" | ||
} | ||
}, | ||
"channel_genesis": { | ||
"channels": [], | ||
"acknowledgements": [], | ||
"commitments": [], | ||
"receipts": [], | ||
"send_sequences": [], | ||
"recv_sequences": [], | ||
"ack_sequences": [], | ||
"next_channel_sequence": "0" | ||
} | ||
}, | ||
"market": { | ||
"params": { | ||
"earn_rates": "0500,0300,0200", | ||
"burn_rate": "1000", | ||
"burn_coin": "ibc/5872224386C093865E42B18BDDA56BCB8CDE1E36B82B391E97697520053B0513", | ||
"market_fee": "0030" | ||
}, | ||
"poolList": [], | ||
"dropList": [], | ||
"memberList": [], | ||
"burningsList": [], | ||
"orderList": [] | ||
}, | ||
"mint": { | ||
"minter": { | ||
"inflation": "0.130000000000000000", | ||
"annual_provisions": "0.000000000000000000" | ||
}, | ||
"params": { | ||
"mint_denom": "aonex", | ||
"inflation_rate_change": "0.130000000000000000", | ||
"inflation_max": "0.200000000000000000", | ||
"inflation_min": "0.070000000000000000", | ||
"goal_bonded": "0.670000000000000000", | ||
"blocks_per_year": "6311520" | ||
} | ||
}, | ||
"params": null, | ||
"slashing": { | ||
"params": { | ||
"signed_blocks_window": "7500", | ||
"min_signed_per_window": "0.250000000000000000", | ||
"downtime_jail_duration": "600s", | ||
"slash_fraction_double_sign": "0.050000000000000000", | ||
"slash_fraction_downtime": "0.010000000000000000" | ||
}, | ||
"signing_infos": [], | ||
"missed_blocks": [] | ||
}, | ||
"staking": { | ||
"params": { | ||
"unbonding_time": "1814400s", | ||
"max_validators": 100, | ||
"max_entries": 7, | ||
"historical_entries": 10000, | ||
"bond_denom": "aonex" | ||
}, | ||
"last_total_power": "0", | ||
"last_validator_powers": [], | ||
"validators": [], | ||
"delegations": [], | ||
"unbonding_delegations": [], | ||
"redelegations": [], | ||
"exported": false | ||
}, | ||
"transfer": { | ||
"port_id": "transfer", | ||
"denom_traces": [], | ||
"params": { | ||
"send_enabled": true, | ||
"receive_enabled": true | ||
} | ||
}, | ||
"upgrade": {}, | ||
"vesting": {} | ||
} | ||
} |
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 @@ | ||
# this is the initial genesis file without CCV state |
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 @@ | ||
# this is the final genesis file with CCV state included |
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,20 @@ | ||
{ | ||
"title": "Adding Onex as a new consumer chain", | ||
"description": "# Launching Onex as a consumer chain\r\n\r\nThis is the proposal to launch the Onex consumer chain, \"onex-mainnet-1\".\r\n\r\nPlease visit the [onomyprotocol/onex](https://github.com/onomyprotocol/onex) repo for additional details.", | ||
"chain_id": "onex-mainnet-1", | ||
"initial_height": { | ||
"revision_number": 0, | ||
"revision_height": 1 | ||
}, | ||
"genesis_hash": "", | ||
"binary_hash": "", | ||
"spawn_time": "2024-03-13T016:00:00.000000Z", | ||
"unbonding_period": 1728000000000000, | ||
"consumer_redistribution_fraction": "0.5", | ||
"blocks_per_distribution_transmission": 1000, | ||
"historical_entries": 10000, | ||
"ccv_timeout_period": 2419200000000000, | ||
"transfer_timeout_period": 3600000000000, | ||
"deposit": "500000000000000000000anom" | ||
} | ||
|
Oops, something went wrong.