mirror of
https://github.com/PR0M3TH3AN/bitvid.git
synced 2026-10-27 07:52:24 +00:00
2.2 KiB
2.2 KiB
NIP Research Report — 2026-02-21
Agent: bitvid-nip-research-agent Focus: NIP-09 (Deletion), NIP-21 (URI Scheme), NIP-42 (Auth).
1. Inventory Updates
| NIP | Previous Status | New Status | Findings |
|---|---|---|---|
| NIP-09 | Partial | Compliant | js/nostr/client.js implements deleteAllVersions which performs both soft delete (tombstone) and hard delete (Kind 5). js/nostrEventSchemas.js defines correct Kind 5 schema. |
| NIP-21 | Unknown | Partial | js/app/routerCoordinator.js strips nostr: prefix but delegates to js/utils/nostrHelpers.js which only handles npub1... and hex. URIs like nostr:nprofile1... or nostr:nevent1... fail. |
| NIP-42 | Non-compliant | Non-compliant | Confirmed total absence of AUTH message handling in js/nostr/client.js and ConnectionManager. |
2. Compliance Details
NIP-09 (Event Deletion)
- Status: Compliant.
- Evidence:
NostClient.deleteAllVersionscreates Kind 5 events with propereandatags referencing all historical versions. It also performs local tombstoning. - Action: Updated status in inventory.
NIP-21 (nostr: URI Scheme)
- Status: Partial.
- Evidence:
routerCoordinator.jshandlesnostr:prefix.nostrHelpers.normalizeHexPubkeystrictly checks forstartsWith('npub1').- Verification script
scripts/verify-nip21.mjsconfirmed failure fornprofile.
- Gap: Navigation via
nostr:nprofile...ornostr:naddr...is not supported. - Recommendation: Update
normalizeHexPubkeyto supportnprofiledecoding vianostr-tools.
NIP-42 (Relay Auth)
- Status: Non-compliant.
- Evidence:
grep "AUTH" js/yielded no protocol handler results.SimplePoolusage does not enable auth. - Impact: Cannot connect to relays requiring authentication (e.g. paid relays).
- Recommendation: Implement
AUTHchallenge handler inConnectionManager.
3. Artifacts Created
artifacts/nips/09.md(Fetched)artifacts/nips/21.md(Fetched)artifacts/nips/42.md(Fetched)scripts/verify-nip21.mjs(Reproduction script)
4. Next Steps
- P1: Fix NIP-21 support in
js/utils/nostrHelpers.jsto handlenprofileandnaddr. - P2: Implement NIP-42 Auth flow.