Best Practices
This section collects production-oriented guidance for Iroha applications and networks. It is organized by the decision you need to make, not by the feature that happens to implement it.
Use it as a checklist before a shared testnet rehearsal, a production launch, or a major client release.
Categories
| Category | Focus |
|---|---|
| Application Development | Client configuration, transaction submission, retries, events, queries, and agent-assisted development |
| Data Modeling | Domains, accounts, assets, NFTs, metadata, off-chain data, and naming conventions |
| Network Deployment | Genesis, topology, peer keys, Torii exposure, consensus settings, and environment separation |
| Operations | Observability, runbooks, backups, change management, capacity checks, and incident handling |
| Security and Access | Secret handling, permissions, technical accounts, network access, and audit trails |
| Release Readiness | Localnet, Taira, Minamoto, compatibility checks, live-network safeguards, and rollback planning |
Cross-Cutting Rules
- Keep local development, shared testnet, and production configuration separate.
- Treat genesis, peer topology, executor policy, and key material as controlled deployment artifacts.
- Model durable ledger state intentionally. Do not use metadata as a dumping ground for large, private, or high-churn data.
- Submit transactions through idempotent workflows that can handle rejection, expiry, retries, and delayed status.
- Prefer narrow permissions, dedicated technical accounts, and explicit operational runbooks over broad administrator access.
- Prove behavior on a disposable local network first, then rehearse on Taira or another shared testnet before any mainnet operation.