diff options
Diffstat (limited to '09.md')
| -rw-r--r-- | 09.md | 7 |
1 files changed, 5 insertions, 2 deletions
| @@ -4,11 +4,11 @@ NIP-09 | |||
| 4 | Event Deletion | 4 | Event Deletion |
| 5 | -------------- | 5 | -------------- |
| 6 | 6 | ||
| 7 | `draft` `optional` `author:scsibug` | 7 | `draft` `optional` |
| 8 | 8 | ||
| 9 | A special event with kind `5`, meaning "deletion" is defined as having a list of one or more `e` tags, each referencing an event the author is requesting to be deleted. | 9 | A special event with kind `5`, meaning "deletion" is defined as having a list of one or more `e` tags, each referencing an event the author is requesting to be deleted. |
| 10 | 10 | ||
| 11 | Each tag entry must contain an "e" event id intended for deletion. | 11 | Each tag entry must contain an "e" event id and/or `a` tags intended for deletion. |
| 12 | 12 | ||
| 13 | The event's `content` field MAY contain a text note describing the reason for the deletion. | 13 | The event's `content` field MAY contain a text note describing the reason for the deletion. |
| 14 | 14 | ||
| @@ -21,6 +21,7 @@ For example: | |||
| 21 | "tags": [ | 21 | "tags": [ |
| 22 | ["e", "dcd59..464a2"], | 22 | ["e", "dcd59..464a2"], |
| 23 | ["e", "968c5..ad7a4"], | 23 | ["e", "968c5..ad7a4"], |
| 24 | ["a", "<kind>:<pubkey>:<d-identifier>"] | ||
| 24 | ], | 25 | ], |
| 25 | "content": "these posts were published by accident", | 26 | "content": "these posts were published by accident", |
| 26 | ...other fields | 27 | ...other fields |
| @@ -31,6 +32,8 @@ Relays SHOULD delete or stop publishing any referenced events that have an ident | |||
| 31 | 32 | ||
| 32 | Relays SHOULD continue to publish/share the deletion events indefinitely, as clients may already have the event that's intended to be deleted. Additionally, clients SHOULD broadcast deletion events to other relays which don't have it. | 33 | Relays SHOULD continue to publish/share the deletion events indefinitely, as clients may already have the event that's intended to be deleted. Additionally, clients SHOULD broadcast deletion events to other relays which don't have it. |
| 33 | 34 | ||
| 35 | When an `a` tag is used, relays SHOULD delete all versions of the replaceable event up to the `created_at` timestamp of the deletion event. | ||
| 36 | |||
| 34 | ## Client Usage | 37 | ## Client Usage |
| 35 | 38 | ||
| 36 | Clients MAY choose to fully hide any events that are referenced by valid deletion events. This includes text notes, direct messages, or other yet-to-be defined event kinds. Alternatively, they MAY show the event along with an icon or other indication that the author has "disowned" the event. The `content` field MAY also be used to replace the deleted events' own content, although a user interface should clearly indicate that this is a deletion reason, not the original content. | 39 | Clients MAY choose to fully hide any events that are referenced by valid deletion events. This includes text notes, direct messages, or other yet-to-be defined event kinds. Alternatively, they MAY show the event along with an icon or other indication that the author has "disowned" the event. The `content` field MAY also be used to replace the deleted events' own content, although a user interface should clearly indicate that this is a deletion reason, not the original content. |