{
  "tool_id": "art-30-agent-commerce-conformance-validator",
  "note": "golden_hash is empty until first `node golden-parity.test.mjs --update`.",
  "vectors": [
    {
      "name": "minimal",
      "policy_parameters": {
        "ap2_mandate_trio": {
          "intent": {
            "mandate_type": "intent",
            "mandate_id": "intent-001",
            "expires_at": "2026-12-31T00:00:00Z",
            "scope": {
              "merchant_ids": [
                "merchant-001"
              ],
              "currency": "USD",
              "max_amount": 500
            },
            "human_not_present": true,
            "issuer_id": "issuer:test"
          },
          "payment": {
            "mandate_type": "payment",
            "mandate_id": "pay-001",
            "parent_mandate_id": "intent-001",
            "parent_hash": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
            "amount": 100,
            "currency": "USD",
            "human_not_present": true,
            "payment_method": "card"
          }
        }
      },
      "output_payload": {
        "overall_status": "pass",
        "pass_count": 16,
        "fail_count": 0,
        "warn_count": 0,
        "checks": [
          {
            "code": "AP2-I00",
            "status": "pass",
            "note": "intent block present"
          },
          {
            "code": "AP2-I01",
            "status": "pass",
            "note": "mandate_type=intent"
          },
          {
            "code": "AP2-I02",
            "status": "pass",
            "note": "mandate_id present"
          },
          {
            "code": "AP2-I03",
            "status": "pass",
            "note": "expires_at present"
          },
          {
            "code": "AP2-I04",
            "status": "pass",
            "note": "scope fields: merchant_ids, currency, max_amount"
          },
          {
            "code": "AP2-I05",
            "status": "pass",
            "note": "human_not_present bool"
          },
          {
            "code": "AP2-I06",
            "status": "pass",
            "note": "issuer_id present"
          },
          {
            "code": "AP2-P00",
            "status": "pass",
            "note": "payment block present"
          },
          {
            "code": "AP2-P01",
            "status": "pass",
            "note": "payment.mandate_type=payment"
          },
          {
            "code": "AP2-P02",
            "status": "pass",
            "note": "payment.parent_mandate_id chain"
          },
          {
            "code": "AP2-P03",
            "status": "pass",
            "note": "parent_hash 64-hex"
          },
          {
            "code": "AP2-P04",
            "status": "pass",
            "note": "payment.amount>0"
          },
          {
            "code": "AP2-P05",
            "status": "pass",
            "note": "currency matches intent.scope.currency"
          },
          {
            "code": "AP2-P06",
            "status": "pass",
            "note": "amount within max_amount cap"
          },
          {
            "code": "AP2-P07",
            "status": "pass",
            "note": "human_not_present consistent"
          },
          {
            "code": "AP2-P08",
            "status": "pass",
            "note": "payment_method present"
          }
        ],
        "protocols_validated": [
          "AP2"
        ]
      },
      "golden_hash": "68c5ff8e99c59abc2ce5875000e6d956ae4d2354888b5e39bd6cca30bcfe4a91"
    },
    {
      "name": "ap2_plus_mpp_subscription",
      "policy_parameters": {
        "ap2_mandate_trio": {
          "intent": {
            "mandate_type": "intent",
            "mandate_id": "intent-mpp-001",
            "expires_at": "2026-12-31T00:00:00Z",
            "scope": {
              "merchant_ids": [
                "merchant-saas"
              ],
              "currency": "USD",
              "max_amount": 240
            },
            "human_not_present": true,
            "issuer_id": "issuer:test"
          },
          "payment": {
            "mandate_type": "payment",
            "mandate_id": "pay-mpp-001",
            "parent_mandate_id": "intent-mpp-001",
            "parent_hash": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
            "amount": 20,
            "currency": "USD",
            "human_not_present": true,
            "payment_method": "mpp_session"
          }
        },
        "mpp_session": {
          "mode": "subscription",
          "session_id": "sess-001",
          "max_amount": 240,
          "currency": "USD",
          "payee": "svc:api-provider",
          "cadence": "monthly",
          "access_key": "ak:scoped-001"
        }
      },
      "output_payload": {
        "overall_status": "pass",
        "pass_count": 26,
        "fail_count": 0,
        "warn_count": 0,
        "checks": [
          {
            "code": "AP2-I00",
            "status": "pass",
            "note": "intent block present"
          },
          {
            "code": "AP2-I01",
            "status": "pass",
            "note": "mandate_type=intent"
          },
          {
            "code": "AP2-I02",
            "status": "pass",
            "note": "mandate_id present"
          },
          {
            "code": "AP2-I03",
            "status": "pass",
            "note": "expires_at present"
          },
          {
            "code": "AP2-I04",
            "status": "pass",
            "note": "scope fields: merchant_ids, currency, max_amount"
          },
          {
            "code": "AP2-I05",
            "status": "pass",
            "note": "human_not_present bool"
          },
          {
            "code": "AP2-I06",
            "status": "pass",
            "note": "issuer_id present"
          },
          {
            "code": "AP2-P00",
            "status": "pass",
            "note": "payment block present"
          },
          {
            "code": "AP2-P01",
            "status": "pass",
            "note": "payment.mandate_type=payment"
          },
          {
            "code": "AP2-P02",
            "status": "pass",
            "note": "payment.parent_mandate_id chain"
          },
          {
            "code": "AP2-P03",
            "status": "pass",
            "note": "parent_hash 64-hex"
          },
          {
            "code": "AP2-P04",
            "status": "pass",
            "note": "payment.amount>0"
          },
          {
            "code": "AP2-P05",
            "status": "pass",
            "note": "currency matches intent.scope.currency"
          },
          {
            "code": "AP2-P06",
            "status": "pass",
            "note": "amount within max_amount cap"
          },
          {
            "code": "AP2-P07",
            "status": "pass",
            "note": "human_not_present consistent"
          },
          {
            "code": "AP2-P08",
            "status": "pass",
            "note": "payment_method present"
          },
          {
            "code": "MPP-S00",
            "status": "pass",
            "note": "mpp_session present"
          },
          {
            "code": "MPP-S01",
            "status": "pass",
            "note": "mode=subscription"
          },
          {
            "code": "MPP-S02",
            "status": "pass",
            "note": "session_id present"
          },
          {
            "code": "MPP-S03",
            "status": "pass",
            "note": "max_amount>0 (pre-authorized spend cap)"
          },
          {
            "code": "MPP-S04",
            "status": "pass",
            "note": "currency present"
          },
          {
            "code": "MPP-S05",
            "status": "pass",
            "note": "payee or resource present"
          },
          {
            "code": "MPP-S06",
            "status": "pass",
            "note": "subscription requires cadence (=monthly)"
          },
          {
            "code": "MPP-S07",
            "status": "pass",
            "note": "access_key/signature present (signed pre-authorization)"
          },
          {
            "code": "XP-M01",
            "status": "pass",
            "note": "mpp cap=240 within intent max=240"
          },
          {
            "code": "XP-M02",
            "status": "pass",
            "note": "mpp currency matches intent.scope.currency"
          }
        ],
        "protocols_validated": [
          "AP2",
          "MPP"
        ]
      },
      "golden_hash": "d83b38e6a81e03ddb626175e2a48b9b266b7d6aa0b07537b4f8142b0fb6502e2"
    }
  ]
}
