Moderation and Appeals
Pipoke communities run a soft moderation model. A mod takes an action, a public log records it, and the affected member can appeal. If the appeal is upheld and the original action is overturned, the mod's posted bond is slashed by 25%. Every step is on-chain.
Pipoke runs on Octra Devnet today. Any fee, price, or limit referred to here is a contract setting chosen for testing. Every one is owner-settable, and mainnet values will be different. These docs describe how the mechanics work, not what the numbers are.
#Action kinds (enum)
The shard recognises exactly four moderator action kinds.
| Kind | Number | Effect |
|---|---|---|
MUTE |
1 | Member cannot post or comment in the community for the mute window. |
SHADOW |
2 | Member's posts stop appearing in the community feed. The member sees no change. |
BAN |
3 | Member is removed from the community. |
LOCK_POST |
4 | A specific post is locked from new replies and reactions. |
The action record on chain carries action_id, kind, target, actor (the mod), reason_hash, epoch, and bond_locked. Anyone can read the modlog directly.
#The mod bond
To take a mod action, you have to post a POKE bond on the community first. The bond is held by the community shard for as long as you are a moderator. The bond is sized by the most severe action you have authority to take.
If your action is overturned on appeal, the contract slashes 25% of your bond and the slashed POKE goes to the community treasury. Your bond is reduced; you cannot take further actions until you top it back up.
You can withdraw your unslashed bond at any time, but withdrawing closes you out of moderation duties. If you withdraw with pending appeals, the withdrawal is delayed until they resolve.
#Appeal flow
| Step | What the contract does |
|---|---|
| 1. Action lands. | kind, target, actor, and bond_locked written to the modlog. |
| 2. Target appeals. | appeal(action_id, reason_hash) writes the appeal. A small POKE fee discourages spam. |
| 3. Jury votes. | A configurable set of "appeal jurors" (drawn from a configured tier such as members with v5_first_seen older than X epochs) vote UPHELD or OVERTURNED. |
| 4. Window closes. | Anyone calls decide_appeal(action_id). The contract counts the votes and applies the decision. |
| Decision | Number | Effect |
|---|---|---|
UPHELD |
1 | The mod action stands. The appellant's appeal fee is forfeit. |
OVERTURNED |
2 | The mod action is reversed. The mod's bond is slashed 25%. The appellant's appeal fee is refunded. |
#Why this shape
No silent moderation. Every mod action is in the modlog on chain. No deleting and pretending it did not happen.
Mods have skin in the game. A mod who acts in bad faith loses POKE on each overturn. Repeat offenders exhaust their bond.
Appellants have a real channel. The appeal is not a customer-service email. It is a vote that decides the outcome, on chain, in a fixed window.
#AutoMod
Communities can configure auto-moderation rules in the AutoMod tab. Examples: auto-lock posts that contain certain keywords, auto-mute new members for the first N epochs, auto-shadow members below a karma threshold. AutoMod fires the same on-chain mod-action transactions a human mod would, and the actions go through the same appeal flow.