You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: 01.md
+3-2Lines changed: 3 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -85,7 +85,7 @@ As a convention, all single-letter (only english alphabet letters: a-z, A-Z) key
85
85
86
86
### Kinds
87
87
88
-
Kinds specify how clients should interpret the meaning of each event and the other fields of each event (e.g. an `"r"` tag may have a meaning in an event of kind 1 and an entirely different meaning in an event of kind 10002). Each NIP may define the meaning of a set of kinds that weren't defined elsewhere. [NIP-10](10.md), for instance, specifies the `kind:1` text note for social media applications.
88
+
Kinds specify how clients should interpret the meaning of each event and the other fields of each event (e.g. an `"r"` tag may have a meaning in an event of kind 1 and an entirely different meaning in an event of kind 10002). Each NIP may define the meaning of a set of kinds that weren't defined elsewhere. [NIP-10](10.md), for instance, specifies the `kind:1` text note for social media applications.
89
89
90
90
This NIP defines one basic kind:
91
91
@@ -170,8 +170,9 @@ This NIP defines no rules for how `NOTICE` messages should be sent or treated.
170
170
*`["OK", "b1a649ebe8...", false, "pow: difficulty 26 is less than 30"]`
171
171
*`["OK", "b1a649ebe8...", false, "restricted: not allowed to write."]`
172
172
*`["OK", "b1a649ebe8...", false, "error: could not connect to the database"]`
173
+
*`["OK", "b1a649ebe8...", false, "mute: no one was listening to your ephemeral event and it wasn't handled in any way, it was ignored"]`
173
174
-`CLOSED` messages MUST be sent in response to a `REQ` when the relay refuses to fulfill it. It can also be sent when a relay decides to kill a subscription on its side before a client has disconnected or sent a `CLOSE`. This message uses the same pattern of `OK` messages with the machine-readable prefix and human-readable message. Some examples:
*`["CLOSED", "sub1", "error: could not connect to the database"]`
176
177
*`["CLOSED", "sub1", "error: shutting down idle subscription"]`
177
-
- The standardized machine-readable prefixes for `OK` and `CLOSED` are: `duplicate`, `pow`, `blocked`, `rate-limited`, `invalid`, `restricted`, and `error` for when none of that fits.
178
+
- The standardized machine-readable prefixes for `OK` and `CLOSED` are: `duplicate`, `pow`, `blocked`, `rate-limited`, `invalid`, `restricted`, `mute`and `error` for when none of that fits.
Copy file name to clipboardExpand all lines: 21.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -21,7 +21,7 @@ The identifiers that come after are expected to be the same as those defined in
21
21
22
22
### Linking HTML pages to Nostr entities
23
23
24
-
`<link>` tags with `rel="alternate"` can be used to associate webpages to Nostr events, in cases where the same content is served via the two mediums (for example, a web server that exposes Markdown articles both as HTML pages and as `kind:30023' events served under itself as a relay or through some other relay). For example:
24
+
`<link>` tags with `rel="alternate"` can be used to associate webpages to Nostr events, in cases where the same content is served via the two mediums (for example, a web server that exposes Markdown articles both as HTML pages and as `kind:30023` events served under itself as a relay or through some other relay). For example:
Copy file name to clipboardExpand all lines: 24.md
+5-8Lines changed: 5 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,8 +8,7 @@ Extra metadata fields and tags
8
8
9
9
This NIP keeps track of extra optional fields that can added to events which are not defined anywhere else but have become _de facto_ standards and other minor implementation possibilities that do not deserve their own NIP and do not have a place in other NIPs.
10
10
11
-
kind 0
12
-
======
11
+
### kind 0
13
12
14
13
These are extra fields not specified in NIP-01 that may be present in the stringified JSON of metadata events:
15
14
@@ -19,24 +18,22 @@ These are extra fields not specified in NIP-01 that may be present in the string
19
18
-`bot`: a boolean to clarify that the content is entirely or partially the result of automation, such as with chatbots or newsfeeds.
20
19
-`birthday`: an object representing the author's birth date. The format is { "year": number, "month": number, "day": number }. Each field MAY be omitted.
21
20
22
-
### Deprecated fields
21
+
####Deprecated fields
23
22
24
23
These are fields that should be ignored or removed when found in the wild:
25
24
26
25
-`displayName`: use `display_name` instead.
27
26
-`username`: use `name` instead.
28
27
29
-
kind 3
30
-
======
28
+
### kind 3
31
29
32
30
These are extra fields not specified in NIP-02 that may be present in the stringified JSON of follow events:
33
31
34
-
### Deprecated fields
32
+
####Deprecated fields
35
33
36
34
-`{<relay-url>: {"read": <true|false>, "write": <true|false>}, ...}`: an object of relays used by a user to read/write. [NIP-65](65.md) should be used instead.
37
35
38
-
tags
39
-
====
36
+
### tags
40
37
41
38
These tags may be present in multiple event kinds. Whenever a different meaning is not specified by some more specific NIP, they have the following meanings:
Copy file name to clipboardExpand all lines: 25.md
+21-9Lines changed: 21 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -26,8 +26,6 @@ There SHOULD be a `p` tag set to the `pubkey` of the event being reacted to. If
26
26
27
27
If the event being reacted to is an addressable event, an `a` SHOULD be included together with the `e` tag, it must be set to the coordinates (`kind:pubkey:d-tag`) of the event being reacted to.
28
28
29
-
The reaction SHOULD include a `k` tag with the stringified kind number of the reacted event as its value.
30
-
31
29
The `e` and `a` tags SHOULD include relay and pubkey hints. The `p` tags SHOULD include relay hints.
32
30
33
31
The reaction event MAY include a `k` tag with the stringified kind number of the reacted event as its value.
If the target of the reaction is a website, the reaction MUST be a `kind 17` event and MUST include an `r` tag with the website's URL.
51
+
If the target of a reaction is not a native nostr event, the reaction MUST be a `kind 17` event and MUST include [NIP-73](73.md) external content `k` + `i` tags to properly reference the content.
URLs SHOULD be [normalized](https://datatracker.ietf.org/doc/html/rfc3986#section-6), so that reactions to the same website are not omitted from queries.
67
-
A fragment MAY be attached to the URL, to react to a section of the page.
68
-
It should be noted that a URL with a fragment is not considered to be the same URL as the original.
@@ -70,9 +70,9 @@ The `refs` tag can be optionally extended to enable clients to identify how many
70
70
71
71
Patches can be sent by anyone to any repository. Patches to a specific repository SHOULD be sent to the relays specified in that repository's announcement event's `"relays"` tag. Patch events SHOULD include an `a` tag pointing to that repository's announcement address.
72
72
73
-
Patches in a patch set SHOULD include a NIP-10 `e``reply` tag pointing to the previous patch.
73
+
Patches in a patch set SHOULD include a [NIP-10](10.md)`e``reply` tag pointing to the previous patch.
74
74
75
-
The first patch revision in a patch revision SHOULD include a NIP-10 `e``reply` to the original root patch.
75
+
The first patch revision in a patch revision SHOULD include a [NIP-10](10.md)`e``reply` to the original root patch.
76
76
77
77
```jsonc
78
78
{
@@ -125,7 +125,7 @@ Issues may have a `subject` tag, which clients can utilize to display a header.
125
125
126
126
## Replies
127
127
128
-
Replies to either a `kind:1621`_issue_ or a `kind:1617`_patch_ event should follow [NIP-22 comment](22.md).
128
+
Replies to either a `kind:1621`(_issue_) or a `kind:1617`(_patch_) event should follow [NIP-22 comment](22.md).
129
129
130
130
## Status
131
131
@@ -150,7 +150,7 @@ Root Patches and Issues have a Status that defaults to 'Open' and can be set by
150
150
["r", "<earliest-unique-commit-id-of-repo>"]
151
151
152
152
// optional for `1631` status
153
-
["e", "<applied-or-merged-patch-event-id>", "", "mention"], // for each
153
+
["q", "<applied-or-merged-patch-event-id>", "<relay-url>", "<pubkey>"], // for each
154
154
// when merged
155
155
["merge-commit", "<merge-commit-id>"]
156
156
["r", "<merge-commit-id>"]
@@ -161,9 +161,9 @@ Root Patches and Issues have a Status that defaults to 'Open' and can be set by
161
161
}
162
162
```
163
163
164
-
The Status event with the largest created_at date is valid.
164
+
The most recent Status event (by `created_at` date) from either the issue/patch author or a maintainer is considered valid.
165
165
166
-
The Status of a patch-revision defaults to either that of the root-patch, or `1632` (Closed) if the root-patch's Status is `1631` and the patch-revision isn't tagged in the `1631` event.
166
+
The Status of a patch-revision is to either that of the root-patch, or `1632` (_Closed_) if the root-patch's Status is `1631`(_Applied/Merged_) and the patch-revision isn't tagged in the `1631` (_Applied/Merged_) event.
0 commit comments