Files
TORCH/PROTOCOL_INVENTORY.md
google-labs-jules[bot]andPR0M3TH3AN 44aaae086c chore(protocol): update inventory and status for NIP-04/NIP-42
- Updated PROTOCOL_INVENTORY.md to mark NIP-04 and NIP-42 as Not Implemented.
- Generated reports/protocol/protocol-report-2026-02-24T02-12-00Z.md.
- Created run artifacts (CONTEXT, DECISIONS, TODO, TEST_LOG).
- Created task log task-logs/daily/2026-02-24T02-12-00Z__protocol-research-agent__completed.md.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-24 02:19:24 +00:00

2.3 KiB

Protocol Inventory

This file tracks external protocol specifications and libraries used in this repository, their implementation points, and compliance status.

Nostr (NIPs)

Protocol / Spec Implementation Points Compliance Status Notes
NIP-01 (Basic Protocol) src/lib.mjs, src/lock-ops.mjs, src/relay-health.mjs Compliant Uses nostr-tools for event creation, signing, and relay communication.
NIP-04 (Encrypted Direct Message) N/A Not Implemented No usage found in codebase.
NIP-33 (Parameterized Replaceable Events) src/lock-ops.mjs Compliant Defines the mechanics for Kind 30078 updates (d-tags).
NIP-40 (Expiration Timestamp) src/lock-ops.mjs Compliant Parses expiration tag to filter active locks.
NIP-42 (Authentication) N/A Not Implemented No usage found in codebase.
NIP-78 (Application-specific Data) src/lock-ops.mjs Compliant Uses Kind 30078 for distributed lock state.

Other Protocols

Protocol Implementation Points Compliance Status Notes
HTTP/1.1 src/dashboard.mjs, dashboard/ Compliant Dashboard server uses Node.js http module.
WebSocket src/relay-health.mjs Compliant Raw ws usage for health probes; nostr-tools for standard relay comms.
JSON src/lock-ops.mjs, src/ops.mjs Compliant Ubiquitous for event content and config files.

Internal / Custom Protocols

Name Kind / ID Implementation Notes
Relay Health Probe Kind 27235 src/relay-health.mjs Custom ephemeral event kind used for deep reachability checks.

Libraries

Library Version Usage Risks
nostr-tools 2.23.1 Core Nostr primitives (keys, events, pool). Supply chain risk. Pinned version recommended.
ws 8.19.0 WebSocket client for Node.js. Standard library for Node.js websocket support.

Implementation details

  • Locking Mechanism: Uses Kind 30078 (NIP-78) with NIP-33 semantics (d-tags) and NIP-40 expiration.
  • Relay Communication: Uses SimplePool from nostr-tools for querying and publishing.
  • Health Checks: Uses raw WebSocket connections in src/relay-health.mjs for deep health probes (Kind 27235).