Skip to content

Add membership state consistency section to 43.md#2267

Open
mostafa-khaldi wants to merge 4 commits intonostr-protocol:masterfrom
mostafa-khaldi:master
Open

Add membership state consistency section to 43.md#2267
mostafa-khaldi wants to merge 4 commits intonostr-protocol:masterfrom
mostafa-khaldi:master

Conversation

@mostafa-khaldi
Copy link
Copy Markdown

This change clarifies that relays should remove the opposing membership event when publishing a new one (8000 for add, 8001 for remove).

The goal is to keep the membership state simple and unambiguous. If both events exist for the same pubkey, clients have to scan through all returned events to determine the latest state, especially in cases where a user joins and leaves multiple times. By ensuring only one state event exists at a time, clients can immediately know whether a user is currently a member or not.

It also helps reduce the number of stored events on relays by preventing redundant membership state history from accumulating.

Clarify membership state consistency requirements for relays regarding user membership events.
@fiatjaf
Copy link
Copy Markdown
Member

fiatjaf commented Mar 16, 2026

Why not just keep the kind:8000 and delete it when a member is removed? @staab

@staab
Copy link
Copy Markdown
Member

staab commented Mar 16, 2026

I think tbis should be left up to relays. Ideally, all events would be available, creating a complete history of membership at any time in the past, but that could be abridged as an optimization.

This PR can just be solved by doing {kinds: [8000, 8001], limit: 1}, or querying the full membership list event instead.

This NIP introduces a new event kind (10164) for payment gateways, allowing content creators to define payment methods, pricing models, and subscription rules for paid content. It enhances usability with labels for methods and plans while supporting multiple payment providers.
Add NIP-63a: Minimal Payment Gateway Descriptor
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.

3 participants