{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://www.hoodbuybutton.com/loop/recipient-label-registry.schema.json",
  "title": "The Buy Button Recipient Label Registry",
  "description": "A treasury-signed declaration assigning human-readable project meanings to five onchain fee-recipient routes.",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "$schema",
    "schemaVersion",
    "recordType",
    "recordVersion",
    "issuedAt",
    "issuedAtUnix",
    "canonicalUri",
    "subject",
    "declaration",
    "routes",
    "evidence",
    "signing"
  ],
  "properties": {
    "$schema": { "const": "https://www.hoodbuybutton.com/loop/recipient-label-registry.schema.json" },
    "schemaVersion": { "const": "1.0.0" },
    "recordType": { "const": "recipient-label-registry" },
    "recordVersion": { "const": 1 },
    "issuedAt": { "const": "2026-08-26T12:00:00Z" },
    "issuedAtUnix": { "const": 1787745600 },
    "canonicalUri": { "const": "https://www.hoodbuybutton.com/loop/recipient-label-registry-v1.json" },
    "subject": {
      "type": "object",
      "additionalProperties": false,
      "required": ["chain", "token", "feeCollector"],
      "properties": {
        "chain": {
          "type": "object",
          "additionalProperties": false,
          "required": ["namespace", "name", "chainId", "explorer"],
          "properties": {
            "namespace": { "const": "eip155" },
            "name": { "const": "Robinhood Chain" },
            "chainId": { "const": 4663 },
            "explorer": { "const": "https://robinhoodchain.blockscout.com" }
          }
        },
        "token": {
          "type": "object",
          "additionalProperties": false,
          "required": ["name", "symbol", "standard", "contract"],
          "properties": {
            "name": { "const": "Buy Button" },
            "symbol": { "const": "BUY" },
            "standard": { "const": "ERC-20" },
            "contract": { "const": "0x0e8720B8cD84F95b4b6696adbFA8063c4B8B94F2" }
          }
        },
        "feeCollector": { "const": "0x9eFdC1A8e6E94f16A228e44f3025E1f346EE0417" }
      }
    },
    "declaration": {
      "type": "object",
      "additionalProperties": false,
      "required": ["statement", "scope", "limitation"],
      "properties": {
        "statement": { "const": "These human-readable recipient labels are declared by the Buy Button project for the listed fee routes." },
        "scope": { "const": "The referenced transaction proves recipient addresses and percentage shares. This signed registry authenticates only the project-declared meaning of those addresses." },
        "limitation": { "const": "A label is not an onchain fact, audit opinion, investment recommendation, or Robinhood endorsement." }
      }
    },
    "routes": {
      "type": "array",
      "minItems": 5,
      "maxItems": 5,
      "prefixItems": [
        {
          "type": "object",
          "additionalProperties": false,
          "required": ["routeId", "label", "sharePercent", "recipient", "labelAuthority", "distributionLogIndex"],
          "properties": {
            "routeId": { "const": "content-marketing" },
            "label": { "const": "CONTENT + MARKETING" },
            "sharePercent": { "const": 45 },
            "recipient": { "const": "0xc1029181883F3e25bBc1ecc51a638C6F541DA38e" },
            "labelAuthority": { "const": "project-declared" },
            "distributionLogIndex": { "const": 80 }
          }
        },
        {
          "type": "object",
          "additionalProperties": false,
          "required": ["routeId", "label", "sharePercent", "recipient", "labelAuthority", "distributionLogIndex"],
          "properties": {
            "routeId": { "const": "public-buy-reserve" },
            "label": { "const": "PUBLIC BUY RESERVE" },
            "sharePercent": { "const": 30 },
            "recipient": { "const": "0xAC5B41eCc7B7ff490b63e1eFFC4eCF0235623903" },
            "labelAuthority": { "const": "project-declared" },
            "distributionLogIndex": { "const": 76 }
          }
        },
        {
          "type": "object",
          "additionalProperties": false,
          "required": ["routeId", "label", "sharePercent", "recipient", "labelAuthority", "distributionLogIndex"],
          "properties": {
            "routeId": { "const": "products" },
            "label": { "const": "PRODUCTS" },
            "sharePercent": { "const": 10 },
            "recipient": { "const": "0x97a335B71782943291e2abBeC83a0296dF7EA6D0" },
            "labelAuthority": { "const": "project-declared" },
            "distributionLogIndex": { "const": 78 }
          }
        },
        {
          "type": "object",
          "additionalProperties": false,
          "required": ["routeId", "label", "sharePercent", "recipient", "labelAuthority", "distributionLogIndex"],
          "properties": {
            "routeId": { "const": "builder-operations" },
            "label": { "const": "BUILDER + OPERATIONS" },
            "sharePercent": { "const": 10 },
            "recipient": { "const": "0xF409706009B2C663C9cE171D1eA43480f191E2AE" },
            "labelAuthority": { "const": "project-declared" },
            "distributionLogIndex": { "const": 82 }
          }
        },
        {
          "type": "object",
          "additionalProperties": false,
          "required": ["routeId", "label", "sharePercent", "recipient", "labelAuthority", "distributionLogIndex"],
          "properties": {
            "routeId": { "const": "hood-additions" },
            "label": { "const": "HOOD ADDITIONS" },
            "sharePercent": { "const": 5 },
            "recipient": { "const": "0xCC37061a1e5B15485B425aeeb7A2bb36F93DA77e" },
            "labelAuthority": { "const": "project-declared" },
            "distributionLogIndex": { "const": 74 }
          }
        }
      ],
      "items": false
    },
    "evidence": {
      "type": "object",
      "additionalProperties": false,
      "required": ["transactionHash", "blockNumber", "blockHash", "distributionEventTopic0", "explorerUrl"],
      "properties": {
        "transactionHash": { "const": "0xcb54f79efe7ff0696e4d570d701cd8de5376e32306a67ffb29f19908e70f35fd" },
        "blockNumber": { "const": 46018033 },
        "blockHash": { "const": "0xd2d7901cfffa92f397a47bfd968aff54e713860da062be85026e158334325f89" },
        "distributionEventTopic0": { "const": "0xf17b3ca546bd4f25a9ea8fb8fe7080586d8fe0b0603396579f7d952e818d7025" },
        "explorerUrl": { "const": "https://robinhoodchain.blockscout.com/tx/0xcb54f79efe7ff0696e4d570d701cd8de5376e32306a67ffb29f19908e70f35fd" }
      }
    },
    "signing": {
      "type": "object",
      "additionalProperties": false,
      "required": ["standard", "expectedSigner", "signerRole", "domain"],
      "properties": {
        "standard": { "const": "EIP-712" },
        "expectedSigner": { "const": "0xCC37061a1e5B15485B425aeeb7A2bb36F93DA77e" },
        "signerRole": { "const": "public treasury wallet" },
        "domain": {
          "type": "object",
          "additionalProperties": false,
          "required": ["name", "version", "chainId", "verifyingContract"],
          "properties": {
            "name": { "const": "The Buy Button Recipient Labels" },
            "version": { "const": "1" },
            "chainId": { "const": 4663 },
            "verifyingContract": { "const": "0x0e8720B8cD84F95b4b6696adbFA8063c4B8B94F2" }
          }
        }
      }
    }
  }
}
