DIP-01

July 7, 2023 ยท View on GitHub

global scores vs personal scores

draft author:wds4

Synopsis

All scores are personal scores. Global scores are simply the personal scores of some centralized entity.

General principle

Each user is at the center of his or her web of trust, and each user's lists are curated independently. There is no Universal List. Each and every user maintains his or her own list. Alice's list and Bob's list may or may not be the same.

This principle is elaborated more fully here: Principle of Relativity for the Web of Trust

Many existing projects likely already meet the qualifications of this DIP.

The particulars of the web of trust and the method of curation are not relevant to this dip.

Comparison to nostr's NIP-51: Lists

Nostr's NIP-51 provides a mechanism for users to create and publish their own lists. According to NIP-51, the list name and the list items are published in a single note, unlike the general approach of DCoSL in which lists and list items are specified independently. In NIP-51, the list is specified using a d tag. List items are spcified (in the same note) using one or more p tags, referring to usr pubkeys. Therefore, list items must be users and could not be, for example, widgets. NIP-51 does not directly specify a mechanism to crowdsource the curation of a list to one's web of trust. On the topic of list identifiers (DIP-02), NIP-51 provides for two identifiers: an immutable identifier for the list in the form of the event id in which the list is published, and a non-cryptographic, 'hashtag'- or 'slug'-like method identifier in the d tag. NIP-51 does not therefore provide the benefits of a mutable, cryptographic identifier as discussed in DIP-02.

Example implementation: Pretty Good Apps (navigate to nostr, settings, relays)

In Pretty Good Apps provides an example of curation of a list of nostr relays that satisfies the requirements of DIP-00 (but not DIP-01). The user's client cycles through each user being followed and adds each relay on that user's active relay list to the list undergoing curation. Data is 'scraped' from each user by looking at nostr notes (type 4 ??? need to check this). These nostr notes are not explicit endorsements intended for other users to consume, but are created for the purpose of managing one's own relays. This curation method therefore satisfies DIP-00 but not DIP-01.