Production Readiness
Caatinga is alpha software. Use this checklist before deploying to mainnet or handing a project to a production team.
Pre-flight checklist
Run through each item; caatinga doctor covers several automatically.
| # | Check | Command / doc |
|---|---|---|
| 1 | Node 22+, Stellar CLI ≥ 23.0.0 (25.2.0 recommended) | caatinga doctor |
| 2 | @stellar/stellar-sdk within supported range | caatinga doctor (SDK diagnostic) |
| 3 | Signing identity funded and correct network | caatinga doctor --source <alias> --network <net> |
| 4 | All configured contracts deployed on target network | caatinga status --network <net> |
| 5 | Bindings fresh (marker matches artifacts) | caatinga doctor / caatinga status |
| 6 | Deploy cost estimated | caatinga estimate deploy <contract> --network <net> |
| 7 | Artifacts schema migrated (if using history) | caatinga migrate artifacts |
| 8 | Signing strategy documented for your team | Signing strategy |
| 9 | Stellar CLI and SDK versions pinned in CI | Stellar CLI contract, SDK contract |
| 10 | Upgrade/rollback plan understood | Contract upgrade |
What Caatinga provides today
- Diagnostics:
caatinga doctor— toolchain, config, artifacts, binding freshness, deploy coverage. - State inspection:
caatinga status,caatinga inspect <contract>— per-network deploy and binding state. - Cost estimation:
caatinga estimate deploy— pre-deploy fee breakdown (advisory). - Artifact history (v2): prior
contractIds preserved on--force/--upgraderedeploys. - Rollback (logical):
caatinga rollback <contract> --to <contractId>— restore artifact entry (on-chain orphan warning applies).
What Caatinga does not provide (alpha)
- Automatic on-chain rollback or contract deletion.
- KMS, hardware wallet, or backend signing integration.
- Multi-environment dimension (staging vs prod on same network) — use git branches or separate projects.
- Hosted registry or deployment dashboard.
- Guaranteed mainnet fee accuracy under congestion.
Recommended production workflow
- Pin Stellar CLI
25.2.0and@stellar/stellar-sdk ^16.0.1in CI and locally. - Run
caatinga doctoron every PR that touches contracts. - Estimate fees before mainnet deploys.
- Commit
caatinga.artifacts.jsonafter every deploy. - Use
--upgrade(not blind--force) when redeploying contract logic. - Document your signing alias and funding source outside the repo.
Multi-frontend projects
One caatinga.artifacts.json per Caatinga project root. Multiple frontends (web, mobile wrapper, admin panel) should import the same artifacts file and generated bindings — do not fork artifacts per app.
semver note
Caatinga is pre-1.0. APIs may change between minor versions. Pin exact versions in production CI.