Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mainnet deployment documentation #10

Merged
merged 7 commits into from
Aug 12, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 40 additions & 0 deletions docs/deployments/mainnet.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# neutron-1 [mainnet]

## Cosmos Hub Instance

Current Cosmos Hub Drop instance is running on `cosmoshub-4` mainnet.

### Contracts

| Contract | Address | Checksum |
| ----------------------------- | -------------------------------------------------------------------- | ---------------------------------------------------------------- |
| `factory` | `neutron1rtydk5vlppj2nmw98ctpgee6hxe5va7mc9x3lng8xm75p3dus80s7pkvmu` | 82DD53F3E448E9A142F0F4FFD802C266AD6B2803C0A614E91EDBE38EFE5B6B31 |
| `core_contract` | `neutron16m3hjh7l04kap086jgwthduma0r5l0wh8kc6kaqk92ge9n5aqvys9q6lxr` | 19E555870765ADB32DC51E0BD25398B561CC459B68CC2E0EECC6C4B943167169 |
| `distribution_contract` | `neutron1dj0l8w0v4w6c8xshyeqhxx740nkc0p2x0e37cdsynsr49zvd2v8qze22va` | E1D8891A9967EADA49DB7433FB86E2BBB3BADBDD5746D444CEA402BBDECA0180 |
| `puppeteer_contract` | `neutron15v5acjfttf3umzatmj7rqfjy6yzcgekh266ehjsxclvaem0hpd7q9qpscr` | D4E62CB36C3E8D2C70B5C7B77A088A1635969C14D7A0FAF099206415A70D1739 |
| `rewards_manager_contract` | `neutron1ydg7c33j0de7np2nk8gf4qwr8gvmmngjan2ymdtthzpwu22zajwqd234gt` | 3866E7302D1E8BB5415AFFB949697309386925EB181BDB437DF89CDCBC28F536 |
| `rewards_pump_contract` | `neutron1e8x80ytpu5dxghsh4jx5d96dyulvvmfjk0da0flurtfwgq37d8ws7a9du4` | BD5E764A14C4E287EBE179228DE01D09D1228E67525220EA1CECE6FF15BF8155 |
| `staker_contract` | `neutron1nzpya9llld5hqjaaz09zcx3mntd5zznw9q4wgdv9llw3at6rdq8qu98dhe` | 8F85F1BB32A9C38BED6FE25DD96BEB2DE0327199E3037160149CB28D6A551485 |
| `strategy_contract` | `neutron1fsk7se2mmg32m62z2gcaf0c5k85qkqv2k6k6r66kfj9nj9xfdyts38u2fv` | 9DCD683DF7EEBC05AD50B46298CC1A33C2827A5AC6A0617FE7E63AD1B50D874F |
| `token_contract` | `neutron1k6hr0f83e7un2wjf29cspk7j69jrnskk65k3ek2nj9dztrlzpj6q00rtsa` | 20367209D9155F3F97CAE02288DDCD79F9BBE47D74334D7F291DDCA6F5260570 |
| `validators_set_contract` | `neutron1vsg7uaxlqwrh04445ajjxkz0fn4cwd6dplmd9n9hmqrvr3ke9ddq5c54ca` | 476173A4F60C598DFB7332D9EF60D773775354AFD744DD9380E28855B35F582F |
| `unbonding_pump_contract` | `neutron1g80pqyddnej6hp0szl6an98zudtkmr08mhhm2g33dj2ut6dzlkts4fzl87` | BD5E764A14C4E287EBE179228DE01D09D1228E67525220EA1CECE6FF15BF8155 |
| `withdrawal_manager_contract` | `neutron1gcklauurx4ckyp0t8a6axl0500vy3n09y5utpspjg8ruxnln8erq2uumck` | 35F6F4B9E2C2B9326D15F0CFC1A1056C7D4E4B08B02D80DAADFD0D473A4E9E5E |
| `withdrawal_voucher_contract` | `neutron1f4c2l9u8yekp99mexyhf7wxgrq3gjtuzgrqe90xaq75v7quulptqzef6up` | C4C18236B69F155A0D3D5EAF917FC0A7298B9D8AD25AA69AF997E82D2C6CDDEF |
| `splitter_contract` | `neutron1sy2ku4gyk6mag5lsxp9y5a5lsalc85mz5vzl6dkzpkmzpvdd3usqc8e7qw` | D9F208D338C67F79099536FC9A9E8A7D13723ECB32552713C0ADEA3893194B68 |

### Denoms

| Symbol | Denom |
| ------- | ----------------------------------------------------------------------------------- |
| `ATOM` | `ibc/C4CFF46FD6DE35CA4CF4CE031E643C8FDC9BA4B99AE598E9B0ED98FE3A2319F9` |
| `dATOM` | `factory/neutron1k6hr0f83e7un2wjf29cspk7j69jrnskk65k3ek2nj9dztrlzpj6q00rtsa/udatom` |

### ICA addresses

| Contract | Address |
| ------------------------- | ------------------------------------------------------------------- |
| `puppeteer_contract` | `cosmos1srjdd7y6duuukmaenghucasqlycddcc65qdj34k6spq8pwk4h6ms7j4w4j` |
| `unbonding_pump_contract` | `cosmos16nc8rqe7mwhrl3lu0hydfhspaemg8au6y646r8a08rg0la8xm9rqawkvzy` |
| `rewards_pump_contract` | `cosmos10h8f0f98kyqa4nw58es97vmm8r6d8yrrg7ghup88ytr57jjwur2s47g2k3` |
| `staker_contract` | `cosmos1h9hxhrtv5hqa572v2xejc98fr637ewm0unxnyk692twdfm554glqfkkp6z` |
82 changes: 82 additions & 0 deletions docs/deployments/overview.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
# Overview

## Introduction

To ensure the integrity and security of contracts uploaded to the network, it is necessary to verify the SHA256 checksums of both the local binary file of the contract and the contract deployed on the network. This document outlines the steps for performing this verification.

## Bulding Drop

### Requirements

- Git
- Rust > 1.78

### Building

The contracts were built using the git tag `v1.0.0`.

To build the drop protocol contracts, simply clone the contracts repository and run `make build`:

```
$ git clone --branch v1.0.0 https://github.com/hadronlabs-org/drop-contracts.git
.....
$ cd drop-contracts
.....
$ make build
```

After the build completes, all contracts will be located in the `artifacts` directory.

## Tools
oldremez marked this conversation as resolved.
Show resolved Hide resolved

### CLI

1. **Command to obtain the checksum of the file:**

```
sha256sum <contract file name>
```

2. **Command to obtain the code id of the deployed contract:**

```
neutrond q wasm contract <address of the deployed contract> --node https://rpc-talzor.neutron-1.neutron.org:443
oldremez marked this conversation as resolved.
Show resolved Hide resolved

```

3. **Command to obtain the checksum of the deployed contract:**
```
neutrond q wasm code-info <code-id of the deployed contract> --node https://rpc-talzor.neutron-1.neutron.org:443
```

In the obtained output, the checksum is contained in the `data_hash` field.

### Celatone

Or you can use [Celatone](https://neutron.celat.one/neutron-1). Search for contract using its address, and on the "Contract Information" click on contract's code id in the "From Code" field. But the most reliable way to get all required contract information is to use CLI with right RPC node.

## Example Procedure

1. Obtain the checksum of the local binary contract file:

```
sha256sum core.wasm
```

2. Obtain the code id of the deployed contract:

```
neutrond q wasm contract neutron16m3hjh7l04kap086jgwthduma0r5l0wh8kc6kaqk92ge9n5aqvys9q6lxr --node https://rpc-talzor.neutron-1.neutron.org:443
```

3. Obtain the checksum of the deployed contract:

```
neutrond q wasm code-info 1720 --node https://rpc-talzor.neutron-1.neutron.org:443
```

4. Compare the obtained checksums to confirm integrity.

## Contracts and Their Checksums

You can find contracts checksums, code id and addresses on the next two pages: [testnet](./testnet.md) and [mainnet](./mainnet.md).
85 changes: 42 additions & 43 deletions sidebars.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,50 +13,49 @@

/** @type {import('@docusaurus/plugin-content-docs').SidebarsConfig} */
const sidebars = {
docs: [
docs: [
{
label: "Drop",
type: "category",
items: [
"introduction",
{
label: 'Drop',
type: 'category',
items: [
'introduction',
{
label: 'About',
type: 'category',
items: [
'about/alliance',
'about/droplets',
],
},
{
label: 'For Partners',
type: 'category',
items: [
'integrations/overview',
'integrations/referral',
'integrations/lsm_staking',
],
},
{
label: 'Validators',
type: 'category',
items: [
'validators/overview',
'validators/valset',
'validators/onboard',
'validators/roadmap',
'validators/faq',
],
},
{
label: 'Deployments',
type: 'category',
items: [
'deployments/testnet',
],
}
]
}
]
label: "About",
type: "category",
items: ["about/alliance", "about/droplets"],
},
{
label: "For Partners",
type: "category",
items: [
"integrations/overview",
"integrations/referral",
"integrations/lsm_staking",
],
},
{
label: "Validators",
type: "category",
items: [
"validators/overview",
"validators/valset",
"validators/onboard",
"validators/roadmap",
"validators/faq",
],
},
{
label: "Deployments",
type: "category",
items: [
"deployments/overview",
"deployments/mainnet",
"deployments/testnet",
],
},
],
},
],
};

module.exports = sidebars;