Skip to content

Commit

Permalink
Chain builds
Browse files Browse the repository at this point in the history
  • Loading branch information
Charles Dusek committed Mar 10, 2024
1 parent d20320d commit b316439
Show file tree
Hide file tree
Showing 13 changed files with 396 additions and 34 deletions.
2 changes: 1 addition & 1 deletion app/consumer-democracy/app.go
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ import (

const (
AppName = "onex"
upgradeName = "v0.1.1"
upgradeName = "v1.0.0"
AccountAddressPrefix = "onomy"
)

Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
87 changes: 87 additions & 0 deletions chain/onex-testnet-5/README.md
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|
255 changes: 255 additions & 0 deletions chain/onex-testnet-5/genesis-without-ccv-accounts.json
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": {}
}
}
1 change: 1 addition & 0 deletions chain/onex-testnet-5/genesis-without-ccv.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# this is the initial genesis file without CCV state
1 change: 1 addition & 0 deletions chain/onex-testnet-5/genesis.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# this is the final genesis file with CCV state included
20 changes: 20 additions & 0 deletions chain/onex-testnet-5/proposal.json
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"
}

Loading

0 comments on commit b316439

Please sign in to comment.