{
  "tool_id": "art-217-trid-apr-accuracy",
  "note": "golden_hash is empty until first golden-parity.test.mjs --update. Vector 1: overstated but within tolerance (OK). Vector 2: understated violation. Used as gate-branch driver in mortgage-compliance-preflight chain.",
  "vectors": [
    {
      "name": "accurate_overstated_ok",
      "description": "APR overstated by 0.055 pp (within 1/8 pp tolerance for regular loan). No violation.",
      "policy_parameters": {
        "disclosed_apr_pct": 6.875,
        "actual_apr_pct": 6.82
      },
      "output_payload": {
        "verdict": "accurate_overstated_ok",
        "disclosed_apr_pct": 6.875,
        "actual_apr_pct": 6.82,
        "difference_pct": 0.055,
        "abs_difference_pct": 0.055,
        "tolerance_pct": 0.125,
        "within_tolerance": true,
        "is_irregular_transaction": false,
        "irregularity_reasons": [],
        "headroom_pct": 0.07,
        "regulatory_basis": "Reg Z §1026.22(a), 12 CFR 1026.22 APR accuracy tolerance",
        "note": "1/8 pp tolerance for regular transactions; 1/4 pp for irregular (multiple advances, irregular periods, or irregular amounts). Overstatement within tolerance is not a TILA violation; understatement is."
      },
      "compliance_flags": [],
      "golden_hash": "1320a031bd36336ca35d3a884dbded406c46a409c7ab77e304fc6ebdd641b903"
    },
    {
      "name": "understated_violation",
      "description": "APR understated by 0.15 pp (exceeds 1/8 pp tolerance). TRID APR accuracy violation. Used as gate-fire input in mortgage-compliance-preflight chain.",
      "policy_parameters": {
        "disclosed_apr_pct": 6.75,
        "actual_apr_pct": 6.9
      },
      "output_payload": {
        "verdict": "understated_violation",
        "disclosed_apr_pct": 6.75,
        "actual_apr_pct": 6.9,
        "difference_pct": -0.15,
        "abs_difference_pct": 0.15,
        "tolerance_pct": 0.125,
        "within_tolerance": false,
        "is_irregular_transaction": false,
        "irregularity_reasons": [],
        "headroom_pct": -0.025,
        "regulatory_basis": "Reg Z §1026.22(a), 12 CFR 1026.22 APR accuracy tolerance",
        "note": "1/8 pp tolerance for regular transactions; 1/4 pp for irregular (multiple advances, irregular periods, or irregular amounts). Overstatement within tolerance is not a TILA violation; understatement is."
      },
      "compliance_flags": [
        "TRID_APR_UNDERSTATED_VIOLATION"
      ],
      "golden_hash": "602cd4ce909d27c68c8a2e99236ffa750fa67bc36dc75cb5aef9c0baffeb9f9b"
    }
  ]
}
