{
  "tool_id": "art-481-rdarr-quality-scorecard",
  "note": "Synthetic RDARR quality vectors: an all-breach extract (vector-1), an all-pass extract (vector-2), and a mixed breach/pass extract exercising an UNKNOWN referential-integrity miss (vector-3). golden_hash empty until first `node golden-parity.test.mjs --update`.",
  "vectors": [
    {
      "name": "all-metrics-breach",
      "policy_parameters": {
        "guide_version": "ECB Guide on effective risk data aggregation and risk reporting, 3 May 2024",
        "cutoff_date": "2026-06-30",
        "mandatory_attributes": [
          "exposure_class",
          "currency"
        ],
        "hierarchy_node_ids": [
          "RETAIL",
          "CORP"
        ],
        "thresholds": {
          "completeness_pct": 98,
          "referential_integrity_pct": 100,
          "timeliness_pct": 95,
          "reconciliation_coverage_pct": 90,
          "manual_adjustment_ratio_pct": 5
        },
        "extract": [
          {
            "record_id": "R1",
            "node_id": "RETAIL",
            "as_of_date": "2026-06-30",
            "reconciled": true,
            "manual_adjustment": false,
            "attributes": {
              "exposure_class": "retail",
              "currency": "USD"
            }
          },
          {
            "record_id": "R2",
            "node_id": "CORP",
            "as_of_date": "2026-07-01",
            "reconciled": true,
            "manual_adjustment": false,
            "attributes": {
              "exposure_class": "corp",
              "currency": "EUR"
            }
          },
          {
            "record_id": "R3",
            "node_id": "XXX",
            "as_of_date": "2026-06-29",
            "reconciled": false,
            "manual_adjustment": true,
            "attributes": {
              "exposure_class": "corp"
            }
          },
          {
            "record_id": "R4",
            "node_id": "RETAIL",
            "as_of_date": "2026-06-30",
            "reconciled": true,
            "manual_adjustment": false,
            "attributes": {
              "exposure_class": "retail",
              "currency": "USD"
            }
          }
        ]
      },
      "output_payload": {
        "guide_version": "ECB Guide on effective risk data aggregation and risk reporting, 3 May 2024",
        "cutoff_date": "2026-06-30",
        "total_records": 4,
        "metrics": [
          {
            "metric": "completeness_pct",
            "ecb_prerequisite_area": "Completeness",
            "record_count": 3,
            "total_records": 4,
            "value_pct": "75.00",
            "threshold_pct": 98,
            "comparator": "min",
            "status": "breach"
          },
          {
            "metric": "referential_integrity_pct",
            "ecb_prerequisite_area": "Accuracy and integrity",
            "record_count": 3,
            "total_records": 4,
            "value_pct": "75.00",
            "threshold_pct": 100,
            "comparator": "min",
            "status": "breach"
          },
          {
            "metric": "timeliness_pct",
            "ecb_prerequisite_area": "Timeliness",
            "record_count": 3,
            "total_records": 4,
            "value_pct": "75.00",
            "threshold_pct": 95,
            "comparator": "min",
            "status": "breach"
          },
          {
            "metric": "reconciliation_coverage_pct",
            "ecb_prerequisite_area": "Accuracy and integrity",
            "record_count": 3,
            "total_records": 4,
            "value_pct": "75.00",
            "threshold_pct": 90,
            "comparator": "min",
            "status": "breach"
          },
          {
            "metric": "manual_adjustment_ratio_pct",
            "ecb_prerequisite_area": "Adaptability",
            "record_count": 1,
            "total_records": 4,
            "value_pct": "25.00",
            "threshold_pct": 5,
            "comparator": "max",
            "status": "breach"
          }
        ],
        "scorecard": {
          "pass_count": 0,
          "breach_count": 5,
          "missing_threshold_count": 0,
          "overall_status": "breach"
        },
        "not_proven": [
          {
            "item": "Extract accuracy",
            "detail": "Every extract record is caller-supplied and asserted. This kernel checks structural properties (presence, referential linkage, dates, flags) and performs no market-data or source-system lookups (zero-egress)."
          },
          {
            "item": "Threshold appropriateness",
            "detail": "Thresholds and the metric-to-prerequisite-area map are policy inputs supplied by the caller; this kernel takes no position on whether a given threshold set is correct for a given supervisor."
          },
          {
            "item": "Materiality",
            "detail": "Whether a breach is material is a governance judgement outside this kernel's scope — it is never emitted as a kernel output, only pass/breach against the supplied threshold."
          },
          {
            "item": "Aggregation-figure correctness",
            "detail": "This kernel scores data-quality structure only. Whether a reported risk figure recomputes correctly is scored separately by art-480-rdarr-aggregation-recompute."
          }
        ],
        "fence": "Extract records and thresholds are SUPPLIED, asserted, and digested into this receipt. This kernel scores deterministic structural metrics against the declared thresholds and attests THAT — never a supervisory pass mark, never a materiality judgement, never confirmation the reported figures reconcile (see art-480), zero-egress by contract."
      },
      "golden_hash": "9a436ec205a8619c15b01a8450128d06406da1cbedd62b2e3be40a96d121eac4"
    },
    {
      "name": "all-metrics-pass",
      "policy_parameters": {
        "guide_version": "ECB Guide on effective risk data aggregation and risk reporting, 3 May 2024",
        "cutoff_date": "2026-06-30",
        "mandatory_attributes": [
          "exposure_class",
          "currency"
        ],
        "hierarchy_node_ids": [
          "RETAIL",
          "CORP"
        ],
        "thresholds": {
          "completeness_pct": 95,
          "referential_integrity_pct": 95,
          "timeliness_pct": 95,
          "reconciliation_coverage_pct": 90,
          "manual_adjustment_ratio_pct": 10
        },
        "extract": [
          {
            "record_id": "R1",
            "node_id": "RETAIL",
            "as_of_date": "2026-06-28",
            "reconciled": true,
            "manual_adjustment": false,
            "attributes": {
              "exposure_class": "retail",
              "currency": "USD"
            }
          },
          {
            "record_id": "R2",
            "node_id": "CORP",
            "as_of_date": "2026-06-29",
            "reconciled": true,
            "manual_adjustment": false,
            "attributes": {
              "exposure_class": "corp",
              "currency": "EUR"
            }
          },
          {
            "record_id": "R3",
            "node_id": "RETAIL",
            "as_of_date": "2026-06-30",
            "reconciled": true,
            "manual_adjustment": false,
            "attributes": {
              "exposure_class": "retail",
              "currency": "USD"
            }
          },
          {
            "record_id": "R4",
            "node_id": "CORP",
            "as_of_date": "2026-06-25",
            "reconciled": true,
            "manual_adjustment": false,
            "attributes": {
              "exposure_class": "corp",
              "currency": "GBP"
            }
          }
        ]
      },
      "output_payload": {
        "guide_version": "ECB Guide on effective risk data aggregation and risk reporting, 3 May 2024",
        "cutoff_date": "2026-06-30",
        "total_records": 4,
        "metrics": [
          {
            "metric": "completeness_pct",
            "ecb_prerequisite_area": "Completeness",
            "record_count": 4,
            "total_records": 4,
            "value_pct": "100.00",
            "threshold_pct": 95,
            "comparator": "min",
            "status": "pass"
          },
          {
            "metric": "referential_integrity_pct",
            "ecb_prerequisite_area": "Accuracy and integrity",
            "record_count": 4,
            "total_records": 4,
            "value_pct": "100.00",
            "threshold_pct": 95,
            "comparator": "min",
            "status": "pass"
          },
          {
            "metric": "timeliness_pct",
            "ecb_prerequisite_area": "Timeliness",
            "record_count": 4,
            "total_records": 4,
            "value_pct": "100.00",
            "threshold_pct": 95,
            "comparator": "min",
            "status": "pass"
          },
          {
            "metric": "reconciliation_coverage_pct",
            "ecb_prerequisite_area": "Accuracy and integrity",
            "record_count": 4,
            "total_records": 4,
            "value_pct": "100.00",
            "threshold_pct": 90,
            "comparator": "min",
            "status": "pass"
          },
          {
            "metric": "manual_adjustment_ratio_pct",
            "ecb_prerequisite_area": "Adaptability",
            "record_count": 0,
            "total_records": 4,
            "value_pct": "0.00",
            "threshold_pct": 10,
            "comparator": "max",
            "status": "pass"
          }
        ],
        "scorecard": {
          "pass_count": 5,
          "breach_count": 0,
          "missing_threshold_count": 0,
          "overall_status": "pass"
        },
        "not_proven": [
          {
            "item": "Extract accuracy",
            "detail": "Every extract record is caller-supplied and asserted. This kernel checks structural properties (presence, referential linkage, dates, flags) and performs no market-data or source-system lookups (zero-egress)."
          },
          {
            "item": "Threshold appropriateness",
            "detail": "Thresholds and the metric-to-prerequisite-area map are policy inputs supplied by the caller; this kernel takes no position on whether a given threshold set is correct for a given supervisor."
          },
          {
            "item": "Materiality",
            "detail": "Whether a breach is material is a governance judgement outside this kernel's scope — it is never emitted as a kernel output, only pass/breach against the supplied threshold."
          },
          {
            "item": "Aggregation-figure correctness",
            "detail": "This kernel scores data-quality structure only. Whether a reported risk figure recomputes correctly is scored separately by art-480-rdarr-aggregation-recompute."
          }
        ],
        "fence": "Extract records and thresholds are SUPPLIED, asserted, and digested into this receipt. This kernel scores deterministic structural metrics against the declared thresholds and attests THAT — never a supervisory pass mark, never a materiality judgement, never confirmation the reported figures reconcile (see art-480), zero-egress by contract."
      },
      "golden_hash": "421e01fcb8a8355a4a9884d4ee58e10fda0b9e9878336e566c5b6d7e889f619a"
    },
    {
      "name": "mixed-breach-with-unknown-node",
      "policy_parameters": {
        "guide_version": "ECB Guide on effective risk data aggregation and risk reporting, 3 May 2024",
        "cutoff_date": "2026-07-15",
        "mandatory_attributes": [
          "exposure_class"
        ],
        "hierarchy_node_ids": [
          "RETAIL",
          "CORP",
          "TREASURY"
        ],
        "thresholds": {
          "completeness_pct": 90,
          "referential_integrity_pct": 90,
          "timeliness_pct": 90,
          "reconciliation_coverage_pct": 80,
          "manual_adjustment_ratio_pct": 20
        },
        "extract": [
          {
            "record_id": "R1",
            "node_id": "RETAIL",
            "as_of_date": "2026-07-10",
            "reconciled": true,
            "manual_adjustment": false,
            "attributes": {
              "exposure_class": "retail"
            }
          },
          {
            "record_id": "R2",
            "node_id": "CORP",
            "as_of_date": "2026-07-20",
            "reconciled": false,
            "manual_adjustment": true,
            "attributes": {
              "exposure_class": "corp"
            }
          },
          {
            "record_id": "R3",
            "node_id": "TREASURY",
            "as_of_date": "2026-07-12",
            "reconciled": true,
            "manual_adjustment": false,
            "attributes": {}
          },
          {
            "record_id": "R4",
            "node_id": "UNKNOWN",
            "as_of_date": "2026-07-14",
            "reconciled": true,
            "manual_adjustment": false,
            "attributes": {
              "exposure_class": "other"
            }
          },
          {
            "record_id": "R5",
            "node_id": "RETAIL",
            "as_of_date": "2026-07-11",
            "reconciled": true,
            "manual_adjustment": false,
            "attributes": {
              "exposure_class": "retail"
            }
          }
        ]
      },
      "output_payload": {
        "guide_version": "ECB Guide on effective risk data aggregation and risk reporting, 3 May 2024",
        "cutoff_date": "2026-07-15",
        "total_records": 5,
        "metrics": [
          {
            "metric": "completeness_pct",
            "ecb_prerequisite_area": "Completeness",
            "record_count": 4,
            "total_records": 5,
            "value_pct": "80.00",
            "threshold_pct": 90,
            "comparator": "min",
            "status": "breach"
          },
          {
            "metric": "referential_integrity_pct",
            "ecb_prerequisite_area": "Accuracy and integrity",
            "record_count": 4,
            "total_records": 5,
            "value_pct": "80.00",
            "threshold_pct": 90,
            "comparator": "min",
            "status": "breach"
          },
          {
            "metric": "timeliness_pct",
            "ecb_prerequisite_area": "Timeliness",
            "record_count": 4,
            "total_records": 5,
            "value_pct": "80.00",
            "threshold_pct": 90,
            "comparator": "min",
            "status": "breach"
          },
          {
            "metric": "reconciliation_coverage_pct",
            "ecb_prerequisite_area": "Accuracy and integrity",
            "record_count": 4,
            "total_records": 5,
            "value_pct": "80.00",
            "threshold_pct": 80,
            "comparator": "min",
            "status": "pass"
          },
          {
            "metric": "manual_adjustment_ratio_pct",
            "ecb_prerequisite_area": "Adaptability",
            "record_count": 1,
            "total_records": 5,
            "value_pct": "20.00",
            "threshold_pct": 20,
            "comparator": "max",
            "status": "pass"
          }
        ],
        "scorecard": {
          "pass_count": 2,
          "breach_count": 3,
          "missing_threshold_count": 0,
          "overall_status": "breach"
        },
        "not_proven": [
          {
            "item": "Extract accuracy",
            "detail": "Every extract record is caller-supplied and asserted. This kernel checks structural properties (presence, referential linkage, dates, flags) and performs no market-data or source-system lookups (zero-egress)."
          },
          {
            "item": "Threshold appropriateness",
            "detail": "Thresholds and the metric-to-prerequisite-area map are policy inputs supplied by the caller; this kernel takes no position on whether a given threshold set is correct for a given supervisor."
          },
          {
            "item": "Materiality",
            "detail": "Whether a breach is material is a governance judgement outside this kernel's scope — it is never emitted as a kernel output, only pass/breach against the supplied threshold."
          },
          {
            "item": "Aggregation-figure correctness",
            "detail": "This kernel scores data-quality structure only. Whether a reported risk figure recomputes correctly is scored separately by art-480-rdarr-aggregation-recompute."
          }
        ],
        "fence": "Extract records and thresholds are SUPPLIED, asserted, and digested into this receipt. This kernel scores deterministic structural metrics against the declared thresholds and attests THAT — never a supervisory pass mark, never a materiality judgement, never confirmation the reported figures reconcile (see art-480), zero-egress by contract."
      },
      "golden_hash": "b7e0f48a12e706b4b6b83befe689a088d5f259328c205369c9294a0f665d31a6"
    }
  ]
}
