[Feature-Request] 1v1 chat whitelists
- Dominant language
- Go
- Stars
- 9.2k
- Forks
- 1.3k
- Avg merge
- 12h 58m
- Merged PRs (30d)
- 56
Description
# Problem
- Users are getting spammed by people with scams.
- Blocking each chat is work for the user. Scammers have bots to automate account creation to retry again and again.
# Possible solution
- Users have a setting configurable from each client to toggle on "Default block all 1v1 chats"
- kbfs stores a special config file called .user_chat_whitelist
- When Keybase client connects, if the default block setting is active, check the whitelist for changes periodically, and cache them into the client.
- When a new chat comes in, check if the user is on the block list (from manual blocking), then if they are on the whitelist. If on both, block (block list takes precedent). If on neither, block if Default block option is active.
- For email notifications... not sure how your servers hold the block lists of each user currently, but also hold a whitelist, and a flag for each user showing what to do with users on neither list.
## Adding user to whitelist
1. If you initiate a 1v1 chat with a user, auto-add to whitelist.
2. If you follow a user, auto-add to whitelist.
3. modify the file in kbfs manually.
4. offer a terminal command?
5. offer a UI menu for adding / removing users?
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reviewing the existing 1v1 chat blocking, whitelist, and email-notification entry points, then trace how kbfs could expose the proposed .user_chat_whitelist file. The issue does not identify files or tests; clarify the client, server, and UI scope first. Done would require an agreed design covering block precedence, whitelist updates, notifications, and all supported clients.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100