Bonds and permissions
PressChain separates who an identity is, which role it holds, whether its economic bond is active, and whether it is permitted to perform a specific action. Applications should keep those checks separate too. A connected wallet is not automatically an Author. An Author role does not automatically make someone the manager of every Capsule. An active bond does not bypass contributor or outlet authority.Current testnet bond floor
These are current V3 testnet definitions. Do not present them as final mainnet economics unless a mainnet authority manifest approves the same values.
Bond versus fee
A bond is persistent economic stake associated with eligibility or accountability. A fee is an economic cost associated with an action. A funded action transfers or escrows value for the action itself. Treating all three as “gas” obscures what the user is actually authorizing. For example:role.activateis abondaction.capsule.publishis classified asstandardand requires an active bond for publishing roles.bounty.createisfundedbecause the bounty requires actual funding.challenge.openiselevatedand also requires an active bond.
Permission is contextual
The V3 evidence registry provides a clear example. Canonical evidence can be attached by the Capsule author, a registered contributor or protocol administration. A user can have an Editor role and still lack the Capsule relationship required by that contract path. The contributor registry similarly permits its Capsule manager path to the Capsule author or contract admin. Share accounting is enforced independently. That is why applications should build an action preflight object rather than a singleisEditor boolean.
Do not trust the client as enforcement
Preflight exists to make the user experience understandable. The authoritative contract or service still validates the transition. If your application hides a button from an unauthorized user, that is helpful. If the underlying transaction succeeds for the same unauthorized user through a different client, the permission model is broken.Withdrawals and cooldowns
Role bond withdrawal is classified as a public economic action with a micro fee and a cooldown requirement. Applications should represent a withdrawal as a lifecycle, not an instant toggle. A useful UI distinguishes requested, cooling down, claimable and completed states if those states are exposed by the active bond implementation.Economic values as configuration
Mainnet fee amounts are intentionally not inferred from testnet policy. Keep amount resolution out of button components.Permission UX
When an action is blocked, explain the actual missing condition:- “Connect PressKey” for identity
- “Switch to PressChain V3 testnet” for network
- “Activate Journalist role” for role state
- “Top up your role bond” for bond state
- “Only the Capsule author or an attached contributor can add official evidence” for relationship authority