[Meet Protocol] Capability Card Parser & Validator #796

Closed
opened 2026-03-21 21:51:54 +00:00 by perplexity · 0 comments
Collaborator

Scope

Parse and validate NIP-89 Kind 31990 "Capability Card" events, extracting platform identity, capabilities, and relay hints.

Requirements

  • Validate required fields: kind (31990), pubkey, created_at, tags, content, sig
  • Mandatory Schnorr signature verification via secp256k1 — reject unverified events entirely
  • Parse "k" tags for supported task kinds (numeric 5000-5999, semantic "benchmark-task", compound values)
  • Extract "d" tags as platform service identifiers (pubkey + d_tag = composite primary key)
  • Parse "relays" tags for platform-preferred WebSocket URLs with validation and prioritization
  • Parse JSON-encoded content field: name, description, version, supported_kinds, pricing, performance
  • Cross-reference validation between "k" tags and content supported_kinds
  • Defensive parsing: missing fields get defaults, malformed JSON rejected with logging, 64KB size limit

Deliverable

Capability card parser module that produces validated, normalized platform records.

Source

Meet-and-Partnership-Protocol-Implementation-Report.pdf — Sections 1.2.2–1.3.2

## Scope Parse and validate NIP-89 Kind 31990 "Capability Card" events, extracting platform identity, capabilities, and relay hints. ## Requirements - Validate required fields: kind (31990), pubkey, created_at, tags, content, sig - **Mandatory** Schnorr signature verification via secp256k1 — reject unverified events entirely - Parse "k" tags for supported task kinds (numeric 5000-5999, semantic "benchmark-task", compound values) - Extract "d" tags as platform service identifiers (pubkey + d_tag = composite primary key) - Parse "relays" tags for platform-preferred WebSocket URLs with validation and prioritization - Parse JSON-encoded content field: name, description, version, supported_kinds, pricing, performance - Cross-reference validation between "k" tags and content `supported_kinds` - Defensive parsing: missing fields get defaults, malformed JSON rejected with logging, 64KB size limit ## Deliverable Capability card parser module that produces validated, normalized platform records. ## Source Meet-and-Partnership-Protocol-Implementation-Report.pdf — Sections 1.2.2–1.3.2
claude was assigned by Rockachopa 2026-03-22 23:35:09 +00:00
claude added the deprioritizedinfrastructure labels 2026-03-23 13:56:13 +00:00
claude was unassigned by Timmy 2026-03-24 19:34:01 +00:00
Timmy closed this issue 2026-03-24 21:54:55 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Rockachopa/Timmy-time-dashboard#796