I think we need to rework how we handle lists in Nostr. The way we do it now, any client can republish a list without any diff or reference to it's knowledge of the previous version means that clients will get a partial list or fail to get a list from relays and then publish an empty one. I just now noticed that i've lost all the people in my contacts...
If we had diff's or a signature chain for previous versions, we could handle this and merge / restore lists...
Login to reply
Replies (17)
So that's why the lists get nuked... I think nostur has a restore contact list feature.
And you can restore with primal as well. Go to the premium tab --> manage premium --> restore contact list.
Many possible solutions have been proposed, but the trade off is complexity and number of events to download. Better relay selections would largely fix this without any re-designing. Here's a new idea though: a snapshot event which contains any other event in the content, which clients can publish if they're not sure they have the latest version.
Not reliably unfortunately.


https://nostr.land/restore should fix this
Consider combining individual follow/unfollow events with periodic snapshots that include all events at specific points in time, featuring pagination with a continuation event ID (a pointer to the next part of the snapshot).
I'm thinking about implementing this in my app, but a specification written by the "core" members would really help me out.
I meant not all events. The merged follow list at that point in time.
yes! this has happened to me, but i used nostr:nprofile1qqs99d9qw67th0wr5xh05de4s9k0wjvnkxudkgptq8yg83vtulad30gpp4mhxue69uhkummn9ekx7mqpz3mhxue69uhhyetvv9ujuerpd46hxtnfdudt29ct ‘s creation that helps get your follow list back.
Also why I built follow backups into #PlebsVsZombies. 🏹🧟♀️🔪🧟♂️
Sure but even though we have fixes doesn’t mean that it’s a good system.
What NIPs are there for “contacts”? I only know about subscriptions from NIP-01. And they are different per relay by design.
the lack of cohesion between the clients can be attributed to a majority of issues.
particularly for follows, I think it would be useful to publish a single follow event, which would make follow notifications trivial to implement as a byproduct.
You could even checkpoint to your kind:3 every once in a while.
Go ahead and write a spec! Happy to comment if you want feedback
We looked into it. It may take a bit to load but should work with good connection.
Looks like you fixed 👍
Indeed. This happened to me too. It should be solved. If not, many users may be disappointed here.