{
 "suite": "frc-mcp-evidence-conformance",
 "suite_version": "1.4",
 "fixture_version": "1.4",
 "endpoint": "https://frc-mcp.ziyetis.workers.dev",
 "server_version": "1.35.1",
 "protocol_version": "2026-07-28 (fixtures marked client=2025 use the 2025 path)",
 "generated_at": "2026-10-22T17:54:01.962Z",
 "tests": 53,
 "passed": 53,
 "status": "evidence_fixture_pass",
 "groups": {
  "evidence_conformance": {
   "tests": 3,
   "passed": 3
  },
  "legacy_client_compatibility": {
   "tests": 2,
   "passed": 2
  },
  "modern_client_mrtr_flow": {
   "tests": 3,
   "passed": 3
  },
  "boundary_tests": {
   "tests": 8,
   "passed": 8
  },
  "receipt_integrity": {
   "tests": 4,
   "passed": 4
  },
  "forbidden_input_tests": {
   "tests": 1,
   "passed": 1
  },
  "rule_sentence_gate": {
   "tests": 12,
   "passed": 12
  },
  "figure_role_binding": {
   "tests": 20,
   "passed": 20
  }
 },
 "independent_reproduction_status": "not_independently_reproduced",
 "statement": "Published protocol and fixture-level evidence behavior passed the declared test set. This is not an independent accuracy, security, legal or underwriting certification.",
 "labels": [
  "evidence_fixture_pass_or_fail_as_stated",
  "not_independently_reproduced",
  "not_a_security_certification",
  "not_an_underwriting_certification"
 ],
 "results": [
  {
   "id": "EV01",
   "title": "valid FHA annual MIP case",
   "group": "evidence_conformance",
   "client": "2025",
   "expected_status": "pass",
   "observed": {
    "verdict": "pass",
    "codes": [],
    "value": 15,
    "cell": {
     "term": "le15",
     "base_loan": "le726200",
     "ltv": "le90"
    },
    "unit": "bps_per_year_of_base_loan",
    "source_document_id": "HUD-ML-2023-05"
   },
   "pass": true
  },
  {
   "id": "EV02",
   "title": "missing loan amount (2025 client)",
   "group": "legacy_client_compatibility",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "CONDITION_MISSING"
    ],
    "value": null,
    "required": [
     "base_loan_amount"
    ]
   },
   "pass": true
  },
  {
   "id": "EV03",
   "title": "missing LTV (2026 client) -> input_required",
   "group": "modern_client_mrtr_flow",
   "client": "2026",
   "expected_status": "input_required",
   "observed": {
    "resultType": "input_required",
    "required": [
     "ltv_pct"
    ]
   },
   "pass": true
  },
  {
   "id": "EV04",
   "title": "missing term (2026 client) -> input_required",
   "group": "modern_client_mrtr_flow",
   "client": "2026",
   "expected_status": "input_required",
   "observed": {
    "resultType": "input_required",
    "required": [
     "term_years"
    ]
   },
   "pass": true
  },
  {
   "id": "EV05",
   "title": "missing case date (2025 client)",
   "group": "legacy_client_compatibility",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "CONDITION_MISSING"
    ],
    "value": null,
    "required": [
     "case_number_date"
    ]
   },
   "pass": true
  },
  {
   "id": "EV06",
   "title": "boundary: LTV exactly 90 (<=90 band), >15y",
   "group": "boundary_tests",
   "client": "2025",
   "expected_status": "pass",
   "observed": {
    "verdict": "pass",
    "codes": [],
    "value": 50,
    "cell": {
     "term": "gt15",
     "base_loan": "le726200",
     "ltv": "le90"
    },
    "unit": "bps_per_year_of_base_loan",
    "source_document_id": "HUD-ML-2023-05"
   },
   "pass": true
  },
  {
   "id": "EV07",
   "title": "boundary: LTV exactly 95 (90to95 band), >15y",
   "group": "boundary_tests",
   "client": "2025",
   "expected_status": "pass",
   "observed": {
    "verdict": "pass",
    "codes": [],
    "value": 50,
    "cell": {
     "term": "gt15",
     "base_loan": "le726200",
     "ltv": "90to95"
    },
    "unit": "bps_per_year_of_base_loan",
    "source_document_id": "HUD-ML-2023-05"
   },
   "pass": true
  },
  {
   "id": "EV08",
   "title": "just outside: LTV 95.01 (>95 band), >15y",
   "group": "boundary_tests",
   "client": "2025",
   "expected_status": "pass",
   "observed": {
    "verdict": "pass",
    "codes": [],
    "value": 55,
    "cell": {
     "term": "gt15",
     "base_loan": "le726200",
     "ltv": "gt95"
    },
    "unit": "bps_per_year_of_base_loan",
    "source_document_id": "HUD-ML-2023-05"
   },
   "pass": true
  },
  {
   "id": "EV09",
   "title": "loan amount exactly at the $726,200 threshold (<= band)",
   "group": "boundary_tests",
   "client": "2025",
   "expected_status": "pass",
   "observed": {
    "verdict": "pass",
    "codes": [],
    "value": 55,
    "cell": {
     "term": "gt15",
     "base_loan": "le726200",
     "ltv": "gt95"
    },
    "unit": "bps_per_year_of_base_loan",
    "source_document_id": "HUD-ML-2023-05"
   },
   "pass": true
  },
  {
   "id": "EV10",
   "title": "loan amount one dollar above the threshold (> band)",
   "group": "boundary_tests",
   "client": "2025",
   "expected_status": "pass",
   "observed": {
    "verdict": "pass",
    "codes": [],
    "value": 75,
    "cell": {
     "term": "gt15",
     "base_loan": "gt726200",
     "ltv": "gt95"
    },
    "unit": "bps_per_year_of_base_loan",
    "source_document_id": "HUD-ML-2023-05"
   },
   "pass": true
  },
  {
   "id": "EV11",
   "title": "case date one day before the rule start",
   "group": "boundary_tests",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "RULE_NOT_IN_FORCE"
    ],
    "value": null
   },
   "pass": true
  },
  {
   "id": "EV12",
   "title": "case date equal to the rule start",
   "group": "boundary_tests",
   "client": "2025",
   "expected_status": "pass",
   "observed": {
    "verdict": "pass",
    "codes": [],
    "value": 15,
    "cell": {
     "term": "le15",
     "base_loan": "le726200",
     "ltv": "le90"
    },
    "unit": "bps_per_year_of_base_loan",
    "source_document_id": "HUD-ML-2023-05"
   },
   "pass": true
  },
  {
   "id": "EV13",
   "title": "case date after the rule start",
   "group": "boundary_tests",
   "client": "2025",
   "expected_status": "pass",
   "observed": {
    "verdict": "pass",
    "codes": [],
    "value": 15,
    "cell": {
     "term": "le15",
     "base_loan": "le726200",
     "ltv": "le90"
    },
    "unit": "bps_per_year_of_base_loan",
    "source_document_id": "HUD-ML-2023-05"
   },
   "pass": true
  },
  {
   "id": "EV14",
   "title": "wrong program (VA) requested from the FHA resolver -> no number",
   "group": "evidence_conformance",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "PROGRAM_MISMATCH"
    ],
    "value": null
   },
   "pass": true
  },
  {
   "id": "EV15",
   "title": "unsupported term (0 years)",
   "group": "evidence_conformance",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "CONDITION_INVALID"
    ],
    "value": null
   },
   "pass": true
  },
  {
   "id": "EV16",
   "title": "fake source document id on the sentence gate",
   "group": "receipt_integrity",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "DOCUMENT_ID_MISMATCH"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV17",
   "title": "source document / value mismatch: 0.55% attributed to the 15-year <=90 LTV cell",
   "group": "receipt_integrity",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "QUALIFIER_DELETED",
     "VALUE_MISMATCH"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV18",
   "title": "receipt tampering: value changed inside a valid receipt",
   "group": "receipt_integrity",
   "client": "2025",
   "expected_status": "not_current",
   "observed": {
    "original": "current",
    "tampered": "hash-current-value-mismatch"
   },
   "pass": true
  },
  {
   "id": "EV19",
   "title": "forbidden borrower input (income, credit score)",
   "group": "forbidden_input_tests",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "FORBIDDEN_INPUT"
    ],
    "value": null
   },
   "pass": true
  },
  {
   "id": "EV20",
   "title": "multi-field retry flow (2026): ask, answer, resolve",
   "group": "modern_client_mrtr_flow",
   "client": "2026",
   "expected_status": "pass",
   "observed": {
    "resultType": "input_required",
    "required": [
     "term_years",
     "case_number_date"
    ],
    "after_retry": {
     "verdict": "pass",
     "value": 15,
     "cell": {
      "term": "le15",
      "base_loan": "le726200",
      "ltv": "le90"
     }
    }
   },
   "pass": true
  },
  {
   "id": "EV21",
   "title": "FHA limit sentence, correct floor and ceiling, one unit, year stated",
   "group": "rule_sentence_gate",
   "client": "2025",
   "expected_status": "pass",
   "observed": {
    "verdict": "pass",
    "codes": [],
    "receipt": true
   },
   "pass": true
  },
  {
   "id": "EV22",
   "title": "cross-rule provenance error: the MIP base-loan threshold quoted as the FHA loan limit",
   "group": "rule_sentence_gate",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "VALUE_MISMATCH",
     "VALUE_FROM_OTHER_RULE"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV23",
   "title": "superseded year value quoted as current",
   "group": "rule_sentence_gate",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "VALUE_MISMATCH",
     "STALE_VALUE"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV24",
   "title": "wrong year on a correct figure",
   "group": "rule_sentence_gate",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "PERIOD_MISMATCH"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV25",
   "title": "ceiling quoted as floor, with the wrong Mortgagee Letter",
   "group": "rule_sentence_gate",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "DOCUMENT_ID_MISMATCH",
     "VALUE_MISMATCH"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV26",
   "title": "FHA limit figure with no units or tier",
   "group": "rule_sentence_gate",
   "client": "2025",
   "expected_status": "needs_qualifier",
   "observed": {
    "verdict": "needs_qualifier",
    "codes": [
     "QUALIFIER_DELETED"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV27",
   "title": "conforming baseline, correct",
   "group": "rule_sentence_gate",
   "client": "2025",
   "expected_status": "pass",
   "observed": {
    "verdict": "pass",
    "codes": [],
    "receipt": true
   },
   "pass": true
  },
  {
   "id": "EV28",
   "title": "conforming baseline, 2025 value",
   "group": "rule_sentence_gate",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "VALUE_MISMATCH",
     "STALE_VALUE"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV29",
   "title": "HOEPA total loan amount threshold, correct",
   "group": "rule_sentence_gate",
   "client": "2025",
   "expected_status": "pass",
   "observed": {
    "verdict": "pass",
    "codes": [],
    "receipt": true
   },
   "pass": true
  },
  {
   "id": "EV30",
   "title": "HOEPA points-and-fees trigger, 2025 value",
   "group": "rule_sentence_gate",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "VALUE_MISMATCH",
     "STALE_VALUE"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV31",
   "title": "VA funding fee, first use, less than 5% down, correct",
   "group": "rule_sentence_gate",
   "client": "2025",
   "expected_status": "pass",
   "observed": {
    "verdict": "pass",
    "codes": [],
    "receipt": true
   },
   "pass": true
  },
  {
   "id": "EV32",
   "title": "VA funding fee, subsequent use quoted with the first-use rate, plus an approval claim",
   "group": "rule_sentence_gate",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "VALUE_MISMATCH",
     "INDIVIDUAL_PREDICTION_PROHIBITED"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV33",
   "title": "loan-limit receipt from the gate verifies; the 2025 ceiling substituted into it does not",
   "group": "receipt_integrity",
   "client": "2025",
   "expected_status": "not_current",
   "observed": {
    "original": "current",
    "tampered": "hash-current-value-mismatch"
   },
   "pass": true
  },
  {
   "id": "EV34",
   "title": "right numbers, roles swapped: ceiling written as floor and floor as ceiling",
   "group": "figure_role_binding",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "VALUE_MISMATCH"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV35",
   "title": "QM cap: a published percentage attached to the wrong tier",
   "group": "figure_role_binding",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "VALUE_MISMATCH"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV36",
   "title": "MIP sentence with no case-number date: no assumed date, no receipt",
   "group": "figure_role_binding",
   "client": "2025",
   "expected_status": "needs_qualifier",
   "observed": {
    "verdict": "needs_qualifier",
    "codes": [
     "QUALIFIER_DELETED"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV37",
   "title": "VA fee quoted for a 2020 closing: table not in force",
   "group": "figure_role_binding",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "RULE_NOT_IN_FORCE"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV38",
   "title": "MIP sentence with a distractor dollar figure: the loan amount is the one bound to 'loan'",
   "group": "figure_role_binding",
   "client": "2025",
   "expected_status": "pass",
   "observed": {
    "verdict": "pass",
    "codes": [],
    "receipt": true
   },
   "pass": true
  },
  {
   "id": "EV39",
   "title": "HOEPA pair with the two thresholds swapped",
   "group": "figure_role_binding",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "VALUE_MISMATCH"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV40",
   "title": "VA two cells in one sentence, rates swapped between first and subsequent use",
   "group": "figure_role_binding",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "VALUE_MISMATCH"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV41",
   "title": "VA two cells in one sentence, both right",
   "group": "figure_role_binding",
   "client": "2025",
   "expected_status": "pass",
   "observed": {
    "verdict": "pass",
    "codes": [],
    "receipt": true
   },
   "pass": true
  },
  {
   "id": "EV42",
   "title": "QM dollar cap on the middle tier, right",
   "group": "figure_role_binding",
   "client": "2025",
   "expected_status": "pass",
   "observed": {
    "verdict": "pass",
    "codes": [],
    "receipt": true
   },
   "pass": true
  },
  {
   "id": "EV43",
   "title": "MIP sentence without a date: no receipt anywhere in the result, including safe_wording",
   "group": "figure_role_binding",
   "client": "2025",
   "expected_status": "needs_qualifier",
   "observed": {
    "verdict": "needs_qualifier",
    "codes": [
     "QUALIFIER_DELETED"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV44",
   "title": "units carried from the first claim into the second: two-unit floor quoted with the one-unit value",
   "group": "figure_role_binding",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "VALUE_MISMATCH"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV45",
   "title": "two unit counts, both floors right",
   "group": "figure_role_binding",
   "client": "2025",
   "expected_status": "pass",
   "observed": {
    "verdict": "pass",
    "codes": [],
    "receipt": true
   },
   "pass": true
  },
  {
   "id": "EV46",
   "title": "down-payment band carried from the first claim: subsequent use with 10% down quoted at 3.3%",
   "group": "figure_role_binding",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "VALUE_MISMATCH"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV47",
   "title": "two VA cells with different bands, both right",
   "group": "figure_role_binding",
   "client": "2025",
   "expected_status": "pass",
   "observed": {
    "verdict": "pass",
    "codes": [],
    "receipt": true
   },
   "pass": true
  },
  {
   "id": "EV48",
   "title": "a right MIP rate followed by a wrong one in the same sentence",
   "group": "figure_role_binding",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "VALUE_MISMATCH"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV49",
   "title": "'on or after' with no date is not a date qualifier",
   "group": "figure_role_binding",
   "client": "2025",
   "expected_status": "needs_qualifier",
   "observed": {
    "verdict": "needs_qualifier",
    "codes": [
     "QUALIFIER_DELETED"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV50",
   "title": "claim dated 2025, source dated 2026: the source year does not satisfy the claim's period",
   "group": "figure_role_binding",
   "client": "2025",
   "expected_status": "block",
   "observed": {
    "verdict": "block",
    "codes": [
     "PERIOD_MISMATCH"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV51",
   "title": "two roles in one clause: 'the floor equals the ceiling at $541,287'",
   "group": "figure_role_binding",
   "client": "2025",
   "expected_status": "needs_qualifier",
   "observed": {
    "verdict": "needs_qualifier",
    "codes": [
     "QUALIFIER_DELETED"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV52",
   "title": "only a source year, no claim period",
   "group": "figure_role_binding",
   "client": "2025",
   "expected_status": "needs_qualifier",
   "observed": {
    "verdict": "needs_qualifier",
    "codes": [
     "QUALIFIER_DELETED"
    ],
    "receipt": false
   },
   "pass": true
  },
  {
   "id": "EV53",
   "title": "claim year right, source year different (the letter is from 2025): pass",
   "group": "figure_role_binding",
   "client": "2025",
   "expected_status": "pass",
   "observed": {
    "verdict": "pass",
    "codes": [],
    "receipt": true
   },
   "pass": true
  }
 ],
 "report_sha256": "49bd890cc4fd63bbe6a610b2d815cbdbcce8bb618907729d5474d99c9a8414ce"
}
