Joystream / Joystream/joystream

Forum banning of member

Open
#3,531 4 comments 4 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

forum-pallet post-mainnet question runtime
Dominant language
Rust
Stars
1.4k
Forks
116
PR merge metrics
No merged PRs in 30d

Description

Background

Banning user accounts, possibly for a limited period of time, is a standard feature on a lot of forums, despite the fact that users are able to make new accounts and post again. This still is a meaningful feature because people lose the ability to post under a given personae, which is often very valuable.

Proposal

Allow forum lead to ban and unban other members. Bans can be perpetual, or they can be for a limited time.

Implementation

Probably easiest to just bake this into the forum pallet by adding a new map memberid => BanStatus, where

enum BanStatus {
Perpetual,
UntilBlock(BlockNumber) /// after this block, you are effectively no longer banned, however you have to remove mapping from map first.
}

and then add

  • set_ban_status(origin, member_id, BanStatus): only callable by forum lead, and where
  • remove_ban(origin, member_id): callable by banned member to remove a block which has expired, and is required before this member can do anything.

┆Issue is synchronized with this Asana task by Unito

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the forum pallet and reading its existing member permissions and block-number handling. Compare the proposed BanStatus map, set_ban_status, and remove_ban behavior with the pallet's current extrinsics. Done means forum leads can apply perpetual or time-limited bans, expired members can clear them, and banned members cannot act until then.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
authorization, blockchain
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.