Skip to content

Commit

Permalink
nip16: kind ranges instead of tags
Browse files Browse the repository at this point in the history
  • Loading branch information
Semisol committed May 27, 2022
1 parent 1a1e3e7 commit 501fd5c
Showing 1 changed file with 3 additions and 5 deletions.
8 changes: 3 additions & 5 deletions 16.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,20 +10,18 @@ Relays may decide to allow replaceable and/or ephemeral events.

Replaceable Events
------------------
A *replaceable event* is defined as an event with a `replaceable` tag with value `1`. Relays SHOULD treat unknown types as if the event is not replaceable.
A *replaceable event* is defined as an event with a kind `10000 <= n < 20000`.
Upon a replaceable event with a newer timestamp than the currently known latest replaceable event with the same kind, the old event SHOULD be discarded and replaced with the newer event.

Ephemeral Events
----------------
An *ephemeral event* is defined as an event with an `ephemeral` tag with value `1`. Relays are RECOMMENDED to reject unknown types for future extensions.
An *ephemeral event* is defined as an event with a kind `20000 <= n < 30000`.
Upon an ephemeral event being received, the relay SHOULD send it to all clients with a matching filter, and MUST NOT store it.

Client Behavior
---------------

Clients SHOULD use the `supported_nips` field to learn if a relay supports generic tag queries. Clients SHOULD NOT send ephemeral events to relays that do not support this NIP; they will be persisted. Clients MAY send replaceable events to relays that may not support this NIP, and clients querying SHOULD be prepared for the relay to send multiple events and should use the latest one.

Clients are RECOMMENDED to ignore events without replaceability when requesting replaceable events.
Clients SHOULD use the `supported_nips` field to learn if a relay supports generic tag queries. Clients SHOULD NOT send ephemeral events to relays that do not support this NIP; they will most likely be persisted. Clients MAY send replaceable events to relays that may not support this NIP, and clients querying SHOULD be prepared for the relay to send multiple events and should use the latest one.

Suggested Use Cases
-------------------
Expand Down

0 comments on commit 501fd5c

Please sign in to comment.