DanielFGray / DanielFGray/rfchat

Channel permission overwrite management UI

Open
#12 0 comments 0 reactions 0 assignees View on GitHub
enhancement p1 task
Dominant language
Elixir
Stars
2
Forks
0
PR merge metrics
No merged PRs in 30d

Description

## Summary
Implement channel permission overwrite management with behavior-first parity to Discord's exact role/member overwrite model.

## Scope
- Manage role and member overwrites at the channel and category level.
- Support allow, deny, and neutral states per permission.
- Support category inheritance/sync semantics where channel settings can follow or diverge from the parent category.
- Make effective access understandable before and after saving changes.

## Acceptance Criteria
- [ ] Authorized users can add, edit, and remove role/member overwrites from the UI.
- [ ] Effective permission results match Discord-style precedence rules for role and member overwrites.
- [ ] Category sync/inherit workflows are explicit and reversible.
- [ ] Forbidden states update immediately in the product after overwrite changes.

## Operational Notes
- Server owners must retain a recovery path even when overwrite configuration is bad.
- This issue should stay strictly about overwrite management UI and behavior, not broader role-management concerns.

Contributor guide

No contributing guide indexed for this repository

Research direction

No files, tests, or entry points are named in the issue. Start by locating the channel/category permission UI and the existing role/member authorization logic, then trace how effective permissions are calculated. Done means the UI supports overwrite changes, Discord-style precedence, explicit reversible category sync, immediate forbidden-state updates, and owner recovery.

Written by the indexing model from the issue text.

Assessment

Tech stack
elixir
Domain
authorization, frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.