Advertise NIP-51 and add kind 10050 DM-relays replaceable test#157
Advertise NIP-51 and add kind 10050 DM-relays replaceable test#157wksantiago wants to merge 1 commit into
Conversation
WalkthroughAdds NIP-17 and NIP-51 to NIP-11 and README support listings, documents Marmot/MLS compatibility, and tests latest-wins replacement for kind ChangesNIP-17/51 support
Estimated code review effort: 2 (Simple) | ~10 minutes Possibly related issues
Possibly related PRs
Suggested reviewers: Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
e2d150b to
16b0031
Compare
|
Superseded by #158, which merged to main as 2741888. That PR already advertises NIP-51 in supported_nips, documents Marmot/MLS compatibility in the README, and includes the kind 10050 DM-relays replaceable test this PR added (plus the 10051 and 30443 tests). Nothing here remains to merge - main is a strict superset of this branch. Closing #155 as resolved by #158. |
Summary
Advertise NIP-51 in the NIP-11 document and regression-test kind 10050 (DM Relays List), the replaceable event a user publishes to advertise which relays should receive their gift-wrapped (kind 1059) private DMs. Haven and other Marmot/NIP-17 clients publish and read this against Wisp. Wisp's generic NIP-16 handling already stores and serves kind 10050 correctly; this PR makes the support explicit and tested.
Changes
51tosupported_nips(kind 10050 DM-relays list is a NIP-51 standard list).relaytags and assert single-stored + latest-wins.NIP-17
NIP-17 is intentionally not advertised. It requires relays to serve
kind:1059gift wraps only to the p-tagged recipient (via NIP-42 AUTH); Wisp serves gift wraps generically with no per-recipient gating, so advertising NIP-17 would overstate the DM-metadata privacy guarantee. The README documents this and points operators toauth_requiredif they want to restrict kind 1059 reads. Recipient-scoped gating can be added later as a prerequisite to advertising NIP-17.Verification
Full protocol integration suite passes end-to-end against a live relay (40/40), including the new kind 10050 assertions.
zig buildandzig build testpass.Closes #155