How-to guides
These guides assume you already have the basic competence to use the SDK or CLI. Each page solves one specific real-world task. If you are new, start with Get started first.
SDK — pre-flight checking
Section titled “SDK — pre-flight checking”Run blacklist checks before signing transactions.
Pre-flight check in TypeScript Fetch the live registry and check outputs using preflightCheck or TransactionFirewall.
Pre-flight check in Rust In-process blacklist check with check_transaction — no network dependency at check time.
Check a single address Use isBlacklisted without building a full transaction.
Recover from a stale registry cell What to do when fetchRegistryPayload throws 'is not live'.
Handle time-based entries Include header_deps so temporary entries are evaluated correctly.
SDK — wallet and lock
Section titled “SDK — wallet and lock”Build and spend firewall-protected cells.
Build a firewall lock script Construct the v2 lock args for a wallet cell using buildFirewallLockScript.
Build cell deps for spending Assemble the exact cell_deps required when spending a firewall-protected cell.
Configure multiple registries Point one firewall lock at two or more registries simultaneously.
Governance — proposal lifecycle
Section titled “Governance — proposal lifecycle” Create a proposal Propose a blacklist addition, removal, or treasury rotation.
Anchor a proposal on-chain Create the PBLK cell that starts the review window clock.
Vote on a proposal Cast a signed validator vote.
Share proposals between participants Export and import proposals to synchronize vote state.
Execute an approved proposal Build and submit the governance transaction after the window and threshold are met.
Reclaim an abandoned anchor Recover treasury capacity from a rejected or abandoned proposal cell.
Rotate the validator committee Issue a set-treasury proposal to update the validator set and Merkle root.
Join the governance committee How to apply to become a validator on the community registry.
Governance — inspection
Section titled “Governance — inspection” Inspect the live registry View current entries, treasury balance, and validator info via CLI.
Check proposal status Determine where a proposal is in its lifecycle and what action is needed.
Use the governance dashboard Launch and navigate the browser-based GUI for inspection and governance.
Operations
Section titled “Operations” Deploy a private registry Full deployment: contracts, bootstrap, treasury, and first governance round.
Deploy and seed the treasury Deploy the treasury-lock binary and fund the initial pool.
Donate to the treasury Top up the pool when usage reaches the 70% warning threshold.
Prune expired entries Remove expired entries to reclaim registry cell capacity.
Troubleshooting
Section titled “Troubleshooting”Something went wrong. Find your symptom.
Troubleshooting index Route from symptom to fix — all error scenarios in one place.