{
  "schema": "bsn-corrections/1",
  "kind": 1111,
  "spec": "NIP-22 Comment on external web content",
  "topic": "correction",
  "required_tags": [
    "r",
    "src"
  ],
  "optional_tags": [
    "claim"
  ],
  "tags": {
    "r": "canonical URL of the basicsecurity.net record being corrected",
    "I": "NIP-22 root: same record URL",
    "K": "NIP-22 root kind: \"web\"",
    "src": "REQUIRED cited source URL (cite-or-die: no src => coverage finding, not a proposal)",
    "claim": "optional: the specific claim being corrected (short quote/ref)",
    "t": "correction",
    "client": "basicsecurity.net"
  },
  "content": "human-readable correction text",
  "npub": "npub1j7gt9ky7sfcrjn8jjee6693dkzvk4rahs0fk2suu7968dfns62zs3mqm3y",
  "pubkey_hex": "9790b2d89e8270394cf29673ad162db0996a8fb783d365439cf17476a670d285",
  "relays": [
    "wss://relay.damus.io",
    "wss://nos.lol",
    "wss://relay.primal.net",
    "wss://relay.nostr.band"
  ],
  "cite_or_die": "A correction without an `src` cited-source URL is logged as a coverage finding, never asserted or turned into a proposal.",
  "review": "Nothing auto-applies. Valid, cited corrections become Forgejo PRs through the two-person editorial gate (desk-side listener, future N4).",
  "how": "Publish a signed kind:1111 event tagging the record URL (r + I/K web), a cited src URL, and t=correction; content is the correction.",
  "docs": "https://basicsecurity.net/llms.txt"
}
