Skip to content

feat(sogs): show each account's posted name before a ban - #74

Closed
Bilb wants to merge 1 commit into
mainfrom
feat/sogs-ban-show-names
Closed

Bilb wants to merge 1 commit into
mainfrom
feat/sogs-ban-show-names

Conversation

@Bilb

@Bilb Bilb commented Oct 14, 2026

Copy link
Copy Markdown
Collaborator

sogs-ban asked Continue? [y/N] without showing who the ids belonged to, so a moderator could not check a ticket's ids against the accounts before banning them.

Before the prompt, and in a dry run, each id is now listed with the display name from its newest post:

  05abc...def  posted as 'Mallory'
  05123...456  posted, with no display name
  05789...abc  no recent posts
  • Where the name comes from: SOGS stores no profiles, so the name exists only in the profile a client attaches to each message. names.py reads each room's last 256 messages (the most /messages/recent returns), matches them by either blinded form of the id, and decodes the display name from the message's protobuf. On our three rooms that is currently their whole history.
  • Unreadable rooms: a room that does not answer 200 is named under the list, so its posters do not read as "no recent posts".
  • Read-only: the lookup only issues GETs, and runs before anything is sent.

Tested with tests/sogs/test_names.py (decoding padded and unpadded content, newest post wins, deleted posts skipped, unreadable rooms reported) and with a live dry run against open.getsession.org; decoding was also checked against real posts there.

https://claude.ai/code/session_019cnvrsCXsqLykDyQburD2f

sogs-ban now lists every id before the confirmation prompt, and in a dry
run, with the display name from its newest post in each room's last 256
messages: "posted as 'X'", "posted, with no display name" or "no recent
posts". A room that cannot be read is named under the list.

Claude-Session: https://claude.ai/code/session_019cnvrsCXsqLykDyQburD2f
@Bilb

Bilb commented Oct 14, 2026

Copy link
Copy Markdown
Collaborator Author

Folded into #76 so the three changes can be iterated on together.

@Bilb Bilb closed this Oct 14, 2026
@Bilb
Bilb deleted the feat/sogs-ban-show-names branch October 16, 2026 06:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant