1func PostReply(cur realm, channel string, threadID uint64, body string)
PostReply adds a reply to a thread. Caller must be a member with a role listed in the channel's WriteRoles.
1func PostThread(cur realm, channel, title, body string) uint64
PostThread creates a new thread in a channel. Caller must be a member with a role listed in the channel's WriteRoles.
1func SweepTombstones(cur realm, channel string, limit int) int
SweepTombstones hard-removes up to `limit` soft-deleted threads in a channel (and all of their remaining reply state), reclaiming AVL storage so that post+delete spam can no longer accrete permanent state (B2).
Admin role only. The chain refunds the storage deposit of freed bytes to the transaction that frees them (gnoland-1 restricts no denom), and a thread's remaining replies were paid for by their authors. Restricting the sweep keeps thread authors and outsiders from collecting other members' deposits.
Bounded + idempotent: each soft-deleted thread holds at most MaxRepliesPerThread reply nodes, so keep `limit` small (1–5) to stay well within block gas; re-running drains the next batch and stops at 0. Returns the number of threads swept.