Skip to content

Commit 4b2839c

Browse files
docs: improve deployment guide v2 (#93)
## Description Improve the deployment and instantiation doc to include new param and add overview section --------- Co-authored-by: Copilot <[email protected]>
1 parent 1a3e82e commit 4b2839c

File tree

1 file changed

+19
-8
lines changed

1 file changed

+19
-8
lines changed

docs/deployment-integration.md

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,17 +9,24 @@ reports misbehavior for slashing. This is the core and only
99
contract that a rollup deploys to become a BSN. The contract must be deployed
1010
on Babylon Genesis as it relies on direct interaction with it.
1111

12-
## Governance Notes
13-
<img width="3100" height="772" alt="governance" src="./assets/governance.png" />
12+
## Overview
13+
14+
The BSN deployment process consists of four main steps:
1415

16+
1. **Upload Contract Code**: Upload the compiled WASM bytecode to Babylon Genesis to obtain a code ID
17+
2. **Instantiate Contract**: Create a contract instance using the code ID with your specific BSN configuration
18+
3. **Register BSN**: Register your BSN with Babylon using the contract address to enable finality provider participation
19+
4. **Maintain Contract**: Ongoing contract management and operational tasks as needed
1520

21+
## Governance Notes
22+
<img width="3100" height="772" alt="governance" src="./assets/governance.png" />
1623

1724
Depending on the Babylon Genesis network (e.g., testnet, mainnet) you
1825
choose for the deployment of the rollup BSN, the network might be permissioned:
19-
* **Permissioned CosmWasm**: Requires governane approval for deploying a smart
26+
* **Permissioned CosmWasm**: Requires governance approval for deploying a smart
2027
contract. This can be granted in two ways:
2128
* `MsgStoreCode` proposal: Upload a contract code. Preferred for one-time deployments
22-
* `MsgUpdateParams` proposal: Add a Babylon Genesis address in an allow-list
29+
* `MsgAddCodeUploadParamsAddresses` proposal: Add a Babylon Genesis address in an allow-list
2330
for which its members can permissionlessly upload code. This is typically
2431
used for contracts requiring periodic maintenance.
2532
> To learn more about permissioned CosmWasm,
@@ -54,6 +61,8 @@ INSTANT_MSG=$(cat <<EOF
5461
{
5562
"admin": "$ADMIN_ADDRESS",
5663
"bsn_id": "$BSN_ID",
64+
"bsn_activation_height": $BSN_ACTIVATION_HEIGHT,
65+
"finality_signature_interval": $FINALITY_SIGNATURE_INTERVAL,
5766
"max_msgs_per_interval": $MAX_MSGS_PER_INTERVAL,
5867
"min_pub_rand": $MIN_PUB_RAND,
5968
"rate_limiting_interval": $RATE_LIMITING_INTERVAL,
@@ -70,6 +79,11 @@ The parameters:
7079
* `bsn_id`: The unique identifier for the BSN rollup
7180
Ensure that this is unique and not already used by another BSN on Babylon
7281
Genesis as this will affect your registration
82+
* `bsn_activation_height`: The rollup block height at which the BSN system becomes active.
83+
Finality signatures submitted for blocks before this height will be rejected
84+
* `finality_signature_interval`: The number of blocks between allowed finality signature submissions,
85+
starting from the activation height. Only block heights where
86+
`(current_height - bsn_activation_height) % finality_signature_interval == 0` are valid for submission
7387
* `min_pub_rand`: Minimum public randomness values included per public
7488
randomness commit by finality providers
7589
* `rate_limiting_interval`: Length (in blocks) of the interval for
@@ -86,7 +100,7 @@ those here -->
86100
<img width="3032" height="287" alt="register" src="./assets/register.png" />
87101

88102
After deploying and instantiating the Rollup BSN contract, the
89-
rollup must register on Babylon Genesis. Registration requires
103+
rollup must register on Babylon Genesis. Registration as a BSN requires
90104
submitting metadata to identify and describe the BSN
91105

92106
To register the BSN, use:
@@ -95,7 +109,6 @@ babylond tx btcstkconsumer register-consumer \
95109
<consumer_id> \
96110
<consumer_name> \
97111
<consumer_ description> \
98-
<max_multi_staked_fps> \
99112
<rollup_finality_contract_address>
100113
```
101114

@@ -104,8 +117,6 @@ Required metadata for BSN registration:
104117
instantiation)
105118
* `consumer_name`: Human-readable name of your rollup BSN (e.g., `"DeFi Rollup Chain"`)
106119
* `consumer_description`: Brief description of the rollup BSN's purpose
107-
* `max_multi_staked_fps`: Maximum number of rollup FPs per BTC delegation. Prevents delegators from splitting
108-
their BTC across too many networks (recommended: `3-5`)
109120
* `rollup_finality_contract_address`: Babylon Genesis address of the deployed Rollup BSN contract (`bbn1...` format)
110121

111122
> **Governance Note**: The above operation can only be executed by governance

0 commit comments

Comments
 (0)