Skip to content

Commit 459a742

Browse files
docs: add executable mainnet pre-deploy checklist
- Phases A–H with gates, evidence pointers, GitHub refs, sign-offs - Link from README and mainnet-roadmap Made-with: Cursor
1 parent 91db59b commit 459a742

3 files changed

Lines changed: 135 additions & 0 deletions

File tree

docs/README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,11 @@
22

33
These docs are written against the current `catalyst-node-rust` implementation (CLI: `catalyst-cli`).
44

5+
## Mainnet readiness
6+
7+
- **Pre-deploy checklist (executable gates):** [`mainnet-pre-deploy-checklist.md`](./mainnet-pre-deploy-checklist.md)
8+
- **Roadmap + GitHub epics (`#260``#284`):** [`mainnet-roadmap.md`](./mainnet-roadmap.md)
9+
510
## Guides
611

712
- **Node operators**: [`node-operator-guide.md`](./node-operator-guide.md)
Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,128 @@
1+
# Mainnet pre-deploy checklist (executable)
2+
3+
Use this document to **drive execution** before cutting a public mainnet. It consolidates [`mainnet-roadmap.md`](./mainnet-roadmap.md) into **ordered gates** with pointers to evidence and runbooks.
4+
5+
**Umbrella tracker:** GitHub `#260`**Milestone:** `Mainnet Launch Readiness`
6+
7+
---
8+
9+
## How to use
10+
11+
1. Work **top to bottom** unless a dependency blocks you (e.g. security findings before reliability sign-off).
12+
2. For each gate, attach **evidence**: commit SHA, run logs, dates, operator names (or links to issues/PRs).
13+
3. **Do not** change `chain_id`, `network_id`, or `genesis_hash` for an already-announced mainnet without treating it as a **new chain** — see [`network-identity.md`](./network-identity.md), [`protocol-params.md`](./protocol-params.md).
14+
15+
---
16+
17+
## Phase A — Economics & tokenomics
18+
19+
| # | Item | Evidence / doc | GitHub |
20+
|---|------|----------------|--------|
21+
| A1 | Tokenomics v1 parameters reviewed and frozen for launch (genesis `0 KAT`, issuance, splits, fee routing, fee credits). | [`tokenomics-model.md`](./tokenomics-model.md), [`tokenomics-spec.md`](./tokenomics-spec.md) | `#261`, `#268` |
22+
| A2 | Deterministic tests / edge cases for rewards + fee credits acceptable. | Tests + `#269` closure | `#269` |
23+
| A3 | Anti-sybil / waiting-worker eligibility acceptable for launch risk. | Code + `#270` closure | `#270` |
24+
| A4 | Testnet or staging validation run completed (issuance RPC, progression). | [`tokenomics-testnet-validation.md`](./tokenomics-testnet-validation.md) ||
25+
26+
**Sign-off:** Name / date: _______________
27+
28+
---
29+
30+
## Phase B — Security
31+
32+
| # | Item | Evidence / doc | GitHub |
33+
|---|------|----------------|--------|
34+
| B1 | Threat model read and gaps accepted or closed. | [`security-threat-model.md`](./security-threat-model.md) | `#271` |
35+
| B2 | Adversarial / abuse tests executed; findings triaged per severity policy. | [`security-adversarial-evidence.md`](./security-adversarial-evidence.md), [`adversarial-test-plan.md`](./adversarial-test-plan.md) | `#272` |
36+
| B3 | Review scope + remediation + disclosure workflow agreed. | [`security-external-review-scope.md`](./security-external-review-scope.md) | `#273` |
37+
| B4 | **Critical** findings: fixed + re-verified. **High**: fixed or written acceptance + compensating controls. | Same | `#262` |
38+
39+
**Sign-off:** Name / date: _______________
40+
41+
---
42+
43+
## Phase C — Reliability & performance
44+
45+
| # | Item | Evidence / doc | GitHub |
46+
|---|------|----------------|--------|
47+
| C1 | WAN soak / load / chaos gate meets thresholds (or failures have follow-up issues). | [`wan-soak-load-chaos-gate.md`](./wan-soak-load-chaos-gate.md) | `#263`, `#274` |
48+
| C2 | Reset / recovery / backfill reliability acceptable for operators. | Evidence report | `#275` |
49+
50+
**Sign-off:** Name / date: _______________
51+
52+
---
53+
54+
## Phase D — Release engineering
55+
56+
| # | Item | Evidence / doc | GitHub |
57+
|---|------|----------------|--------|
58+
| D1 | Release build process documented; binaries reproducible or provenance captured as required. | [`release-process.md`](./release-process.md) | `#264`, `#276` |
59+
| D2 | Upgrade matrix + rollback path tested (coordinated upgrade assumptions documented). | Operator notes | `#277` |
60+
61+
**Sign-off:** Name / date: _______________
62+
63+
---
64+
65+
## Phase E — Operations
66+
67+
| # | Item | Evidence / doc | GitHub |
68+
|---|------|----------------|--------|
69+
| E1 | Key management runbook (genesis keys, validator keys, backups, compromise response). | [`node-operator-guide.md`](./node-operator-guide.md) | `#278` |
70+
| E2 | Genesis / launch ceremony runbook (ordering, abort criteria, comms). | Runbook artifact | `#279` |
71+
| E3 | Monitoring, alerting, on-call / incident response defined. | Runbook | `#280` |
72+
73+
**Sign-off:** Name / date: _______________
74+
75+
---
76+
77+
## Phase F — Integrations
78+
79+
| # | Item | Evidence / doc | GitHub |
80+
|---|------|----------------|--------|
81+
| F1 | RPC surfaces needed for wallets/explorers verified; consistency tests green. | [`builder-guide.md`](./builder-guide.md), [`wallet-interop.md`](./wallet-interop.md) | `#266`, `#281` |
82+
| F2 | Indexer / explorer expectations documented for mainnet. | [`explorer-handoff.md`](./explorer-handoff.md) | `#282` |
83+
84+
**Sign-off:** Name / date: _______________
85+
86+
---
87+
88+
## Phase G — EVM (if mainnet must support production dapps)
89+
90+
| # | Item | Evidence / doc | GitHub |
91+
|---|------|----------------|--------|
92+
| G1 | ABI / logs / receipt fidelity validated for target toolchains. | Smoke results | `#267`, `#283` |
93+
| G2 | Dapp smoke suite + compatibility matrix pass. | Matrix artifact | `#284` |
94+
95+
**Sign-off:** Name / date: _______________
96+
97+
---
98+
99+
## Phase H — Final launch
100+
101+
| # | Item | Evidence / doc | GitHub |
102+
|---|------|----------------|--------|
103+
| H1 | Mainnet `chain_id` / `network_id` / genesis ceremony executed once; hashes published. | [`network-identity.md`](./network-identity.md) | `#279` |
104+
| H2 | Umbrella `#260` closed or explicitly deferred with recorded rationale. | Issue | `#260` |
105+
106+
**Sign-off (launch authority):** Name / date: _______________
107+
108+
---
109+
110+
## Dependency hygiene (ongoing)
111+
112+
- **Supply chain:** keep Dependabot / `cargo audit` process per [`security-dependency-updates.md`](./security-dependency-updates.md).
113+
114+
---
115+
116+
## Suggested order (same as `mainnet-roadmap.md`)
117+
118+
1. A + B
119+
2. C
120+
3. D + E
121+
4. F (+ G if required)
122+
5. H
123+
124+
---
125+
126+
## Related
127+
128+
- Roadmap + issue mapping: [`mainnet-roadmap.md`](./mainnet-roadmap.md)

docs/mainnet-roadmap.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# Mainnet readiness roadmap (working)
22

3+
**Executable checklist:** [`mainnet-pre-deploy-checklist.md`](./mainnet-pre-deploy-checklist.md)
4+
35
This doc translates “what’s left before mainnet” into trackable epics/issues in this repo.
46
It’s intentionally pragmatic: **public testnet stability + developer usability first**, then economics + launch ceremony.
57

0 commit comments

Comments
 (0)