{
  "tool_id": "art-209-nft-metadata-validator",
  "note": "golden_hash filled by node golden-parity.test.mjs --update.",
  "vectors": [
    {
      "name": "valid_full_metadata",
      "policy_parameters": {
        "metadata": {
          "name": "Cosmic Horizon #42",
          "description": "A generative artwork.",
          "image": "ipfs://QmTestHash1234/image.png",
          "external_url": "https://cosmichorizon.example.com/token/42",
          "attributes": [
            {
              "trait_type": "Background",
              "value": "Deep Space"
            }
          ],
          "license": "CC BY 4.0"
        }
      },
      "output_payload": {
        "valid": true,
        "required_pass": true,
        "all_pass": true,
        "fail_count": 0,
        "warn_count": 0,
        "field_count": 6,
        "checks": [
          {
            "group": "required",
            "field": "name",
            "pass": true,
            "warn": false,
            "label": "name (string, required)",
            "detail": "Present: \"Cosmic Horizon #42\""
          },
          {
            "group": "required",
            "field": "description",
            "pass": true,
            "warn": false,
            "label": "description (string, required)",
            "detail": "Present (21 chars)"
          },
          {
            "group": "required",
            "field": "image",
            "pass": true,
            "warn": false,
            "label": "image (URI, required)",
            "detail": "Present: ipfs://QmTestHash1234/image.png"
          },
          {
            "group": "recommended",
            "field": "external_url",
            "pass": true,
            "warn": false,
            "label": "external_url (URL, recommended)",
            "detail": "Present: https://cosmichorizon.example.com/token/42"
          },
          {
            "group": "recommended",
            "field": "animation_url",
            "pass": true,
            "warn": false,
            "label": "animation_url (URL, optional)",
            "detail": "Not present (optional). Include for audio, video, or interactive content."
          },
          {
            "group": "recommended",
            "field": "attributes",
            "pass": true,
            "warn": false,
            "label": "attributes (array, recommended)",
            "detail": "Present: 1 attribute(s)"
          },
          {
            "group": "recommended",
            "field": "attributes[].structure",
            "pass": true,
            "warn": false,
            "label": "attributes entry structure (trait_type + value)",
            "detail": "All 1 attribute entries have trait_type and value"
          },
          {
            "group": "license",
            "field": "license",
            "pass": true,
            "warn": false,
            "label": "License field presence",
            "detail": "license field present: \"CC BY 4.0\""
          }
        ],
        "disclaimer": "Not legal advice. Schema check only; no on-chain calls. Marketplace acceptance may vary. Consult a licensed attorney for rights and license matters."
      },
      "golden_hash": "13563aebc10fd15cdc722e42056004b673686e29a8d34a31048efafc1150c12b"
    },
    {
      "name": "missing_required_image",
      "policy_parameters": {
        "metadata": {
          "name": "My Token",
          "description": "A token without an image."
        }
      },
      "output_payload": {
        "valid": false,
        "required_pass": false,
        "all_pass": false,
        "fail_count": 3,
        "warn_count": 1,
        "field_count": 2,
        "checks": [
          {
            "group": "required",
            "field": "name",
            "pass": true,
            "warn": false,
            "label": "name (string, required)",
            "detail": "Present: \"My Token\""
          },
          {
            "group": "required",
            "field": "description",
            "pass": true,
            "warn": false,
            "label": "description (string, required)",
            "detail": "Present (25 chars)"
          },
          {
            "group": "required",
            "field": "image",
            "pass": false,
            "warn": false,
            "label": "image (URI, required)",
            "detail": "Missing or empty. Must be a URI pointing to the token image."
          },
          {
            "group": "recommended",
            "field": "external_url",
            "pass": false,
            "warn": false,
            "label": "external_url (URL, recommended)",
            "detail": "Not present. OpenSea uses this to link from the asset page to your site."
          },
          {
            "group": "recommended",
            "field": "animation_url",
            "pass": true,
            "warn": false,
            "label": "animation_url (URL, optional)",
            "detail": "Not present (optional). Include for audio, video, or interactive content."
          },
          {
            "group": "recommended",
            "field": "attributes",
            "pass": true,
            "warn": false,
            "label": "attributes (array, recommended)",
            "detail": "Not present (recommended). Adds traits visible on OpenSea and most marketplaces."
          },
          {
            "group": "license",
            "field": "license",
            "pass": false,
            "warn": true,
            "label": "License field presence",
            "detail": "No license, license_url, licenseUrl, or properties.license field found. A license field communicates usage rights to buyers and platforms."
          }
        ],
        "disclaimer": "Not legal advice. Schema check only; no on-chain calls. Marketplace acceptance may vary. Consult a licensed attorney for rights and license matters."
      },
      "golden_hash": "0641ca1272c186a08533a9603b6db1ee2ec0b48d12e932da1ba6347a6a81d951"
    },
    {
      "name": "valid_minimal_with_license",
      "policy_parameters": {
        "metadata": {
          "name": "Token #1",
          "description": "Minimal NFT.",
          "image": "https://cdn.example.com/token1.png",
          "license": "CC0-1.0"
        }
      },
      "output_payload": {
        "valid": true,
        "required_pass": true,
        "all_pass": false,
        "fail_count": 1,
        "warn_count": 0,
        "field_count": 4,
        "checks": [
          {
            "group": "required",
            "field": "name",
            "pass": true,
            "warn": false,
            "label": "name (string, required)",
            "detail": "Present: \"Token #1\""
          },
          {
            "group": "required",
            "field": "description",
            "pass": true,
            "warn": false,
            "label": "description (string, required)",
            "detail": "Present (12 chars)"
          },
          {
            "group": "required",
            "field": "image",
            "pass": true,
            "warn": false,
            "label": "image (URI, required)",
            "detail": "Present: https://cdn.example.com/token1.png"
          },
          {
            "group": "recommended",
            "field": "external_url",
            "pass": false,
            "warn": false,
            "label": "external_url (URL, recommended)",
            "detail": "Not present. OpenSea uses this to link from the asset page to your site."
          },
          {
            "group": "recommended",
            "field": "animation_url",
            "pass": true,
            "warn": false,
            "label": "animation_url (URL, optional)",
            "detail": "Not present (optional). Include for audio, video, or interactive content."
          },
          {
            "group": "recommended",
            "field": "attributes",
            "pass": true,
            "warn": false,
            "label": "attributes (array, recommended)",
            "detail": "Not present (recommended). Adds traits visible on OpenSea and most marketplaces."
          },
          {
            "group": "license",
            "field": "license",
            "pass": true,
            "warn": false,
            "label": "License field presence",
            "detail": "license field present: \"CC0-1.0\""
          }
        ],
        "disclaimer": "Not legal advice. Schema check only; no on-chain calls. Marketplace acceptance may vary. Consult a licensed attorney for rights and license matters."
      },
      "golden_hash": "8e045174ab220cecfbd09ea403e7f938d24b86af89c1a20b70a6bd0981f8245b"
    },
    {
      "name": "empty_input",
      "policy_parameters": {},
      "output_payload": {
        "valid": false,
        "required_pass": false,
        "all_pass": false,
        "fail_count": 0,
        "warn_count": 0,
        "field_count": 0,
        "checks": [],
        "disclaimer": "Not legal advice. Schema check only; no on-chain calls. Consult a licensed attorney for rights and license matters."
      },
      "golden_hash": "af2e800c712b3161678b8412b1b716cc73d59222834883e9ce39927f12e8ef30"
    }
  ]
}
