Well yes, but also people need to use it
Discussion
I have been wanting to code it on Amethyst but the NIP text is too cryptic right now. I can barely get my head around it.
I think nostr:npub1acg6thl5psv62405rljzkj8spesceyfz2c32udakc2ak0dmvfeyse9p35c wanted to do a few changes to it but I don't know what those are.
But we have to make event/relay finding easier.
I think he wanted to add more categories, like inbox/outbox/archive, etc. The above issue is more of a NIP 01 thing actually, e tags are defined as "["e", <32-bytes hex of the id of another event>,
If we want to use NIP65 to only advertise to others, then there isn't much to do. But if we want to use it for the user's own applications (which I think we should, we need more)
On the advertising, I think read/write labels are terrible because they need a point of reference (who is reading/who is writing). Each user should just have "home" relays where all of their posts are supposed to be found. There is no need to specify read or write. If I am writing a DM to you, I will send it to all your home relays. You send to my home. If we happen to share the same "home" relay, both apps should use that.
On the user's own needs, there are other labels like "search" (which NIP-50 relay to use for searching things), "global" (which relays to use when on a "global" view), "notification" for all relays to use when searching for notifications (today's read), etc.
We need public and private relay lists, similar to NIP-51.
I realize 'read' and 'write' are confusing because it depends which side is doing the operation. But if we change it (by adding "outbox" to mean the same as "write") then many clients who haven't coded for the change yet will get relay lists they don't understand. I think it is too late to fix this aspect. I wish we could.
I agree we need both public and private relay lists. NIP-65 is the public one. It is not intended for configuring your own client, which very likely needs more information, even client-specific information.
I don't think a home relay is sufficient because there are plenty of more complex situations it wouldn't cover. For example, I may post to a paid relay, but I cannot expect people to copy me in on a thread at a paid relay that they may not be paying for.
IMHO NIP-65 is finished and stable. The only thing that makes sense to me to add is a DM marker for where people should send you DMs (some people might want that to be a more secure relay that only swallows events and doesn't serve them).
> I don't think a home relay is sufficient because there are plenty of more complex situations it wouldn't cover. For example, I may post to a paid relay, but I cannot expect people to copy me in on a thread at a paid relay that they may not be paying for.
Sure, but in practice, people have to add tons "read" relays to download all notifications from everywhere to account for Nostr apps that are not following NIP65 directions yet (it's optional after all). The overcrowding of read relays breaks the concept of the preferred/home relays.
Clarifying that NIP-65 should only contain home relays is important.
Adding tons of read relays in practice to pick stuff up is very different from telling people "these are the several relays I read from". You can advertise 2 read relays, and actually read from hundreds of relays if you like.
Let me attempt a PR that makes it easier to understand
Please add a sentence that the .content can have a tag list structure just like NIP-51. We can copy-paste that and use it here. :)
I would except that these things need to be spread far and wide. So they need to be as small as possible and not have content that needs moderation, because we want relay operators to accept and serve them for non-paying customers.
> I would except that these things need to be spread far and wide
Then delete 95% of that text (especially all the why's) :) And just keep it simple with what to mark as read, and what to mark as write.
> Private part
Do you think relays will block it just because there is an encrypted part? I am not sure if I have seen people blocking NIP51s because of that yet.
I dunno about other people, but I would. If there is an unlimited-length encrypted data, then I've just created a free online hard drive for randos.
Is this all that is?
When looking for an event:
- User events will be available for download in his/her WRITE relays.
- Events that cite/tag the user will be available for download in his/her READ relays.
When sending an event:
- Broadcast the new event to the list of READ relays from all `p` tags.
- Broadcast the new event to the author's WRITE relays.
Slight improvement:
When looking for an event:
- Events will be available for download in the author's WRITE relays.
- Events that cite/tag a user will be available for download the user's READ relays.
When sending an event:
- Broadcast the new event to the list of READ relays from all `p` tags.
- Broadcast the new event to the author's WRITE relays.
I just realized that a private list of relays don't make much sense if this kind is just for other folks.
Also a private list of relays is probably woefully insufficient for configuring a client.
There is more per-relay data clients are going to need. Where do you go to discover 10002 events for somebody? Which relays do you post your own on (all of them?) Do you want to also write to an archive somewhere that you don't advertise (because it is tiny and would get overloaded)? Also, stats about how successful a relay is, whether you want to downrank it (don't connect there it sux) or prefer it, when did you get a last EOSE (so next time you only fetch events since that EOSE happened), etc.
This stuff doesn't *have* to be client-specific, but for now NIP-78 App Specific Data (kind 30078) makes sense for that kind of thing, and a new NIP could be proposed to standardize this stuff that many clients would be doing similarly.
definitely want to get to this soon
Relay hints never made sense in Damus because it doesn’t connect to random relays. This will probably change soon with the nostrdb integration.
🫶🏻 
Relay hints are not for yourself, they're for other people
Wouldn’t you just use the relay list thing to know where to look for stuff? Also theres an assumption in hints that they will always be at a specific location, but locations change and go down over time. It just doesn’t seem that useful to me.
It's true they rot over time. The thing about hints is you don't know who the author is yet, so you don't have a 10002 list to refer to. It's most relevant for replies and quotes.
It is useful when someone mentions another event without mentioning it's author. Where is that event?
It is useful when someone mentions another event and author, but you don't know that author, and they haven't adverised the relays they use. Where is that event?
Most of the time people are looking at recent events where this field hasn't rotted yet.
Nice to see you people getting along on this issue.