{
  "tool_id": "art-447-securitization-risk-retention-check",
  "inventory_version": "1.0.0",
  "authored_at": "2026-08-23",
  "authored_by": "AUTHORING-STANDARD-ADOPT-1",
  "cohort_role": "gapped, and the cohort's over-citation case — NINE pinned clause snapshots against a compute() that implements one rate and one boolean. Chosen to test whether the convention distinguishes a node that CITES a body of law from a node that IMPLEMENTS it (SO #39(iii) OVER-CITED).",
  "error_direction": "conservative_toward_finding",
  "error_direction_rationale": "The test is retention AT OR ABOVE a 5 percent floor, and every unexercised exemption removes an obligation rather than adding one. So an exempt securitization is measured against the floor anyway and reported RETENTION_NONCOMPLIANT — over-reporting, not a missed breach. compute({}) likewise fails closed. ⚠ The direction is favourable and the behaviour is still wrong: a confident non-compliance verdict over a transaction the rule exempts is a false positive with legal weight, not a harmless conservatism.",
  "derived_from": [
    { "digest": "sha256:0dff1e8a1da70e73f32da4938c27333d9e194040a2afe1c663e78386b6539cd1", "clause_path": "244.3(a)" },
    { "digest": "sha256:95fe5d4872369d044b7956a79d6174a76807766b0ea19cc5b5556ba7cbc5a0c0", "clause_path": "244.19" },
    { "digest": "sha256:b4f09c5a07a458a55c725a633072338861b795da1c6def7983e07ec6981ff269", "clause_path": "244.15" },
    { "digest": "sha256:d78f5269b45bbe6dbe674a9756a051bde8adfa35fcb571638d71fe6777a468ab", "clause_path": "244.20" },
    { "digest": "sha256:e7b6d2ef8cd599d8cc6023018d74601e55a694fa6ea093ed86a2b882a490cb57", "clause_path": "244.21" },
    { "digest": "sha256:4438cfe4064fed6080799ad3b7d44f62b8f5c8c87d72e83f89208157e95fd6ab", "clause_path": "244.6(b)" },
    { "digest": "sha256:c5d3f0616e14699c79f3bc20083a58eb97cfc20dac6b6c45e43f5a4aa604bd1e", "clause_path": "244.9(b), (c)(1)" },
    { "digest": "sha256:fdf7db85306d01501a803d0fa28b2c8139e641267b7e3bf3cbd1f50812fe6e25", "clause_path": "244.10(b)" },
    { "digest": "sha256:d4b73e62c38ad9fc7e5d9ec1f202acafaf62f971bd3f826b2e5b88e82a17763b", "clause_path": "Article 6(3a)" }
  ],
  "branches": [
    {
      "id": "rr-244.3a-base-five-percent-retention",
      "clause": "12 CFR 244.3(a)",
      "branch": "The sponsor retains an economic interest of at least 5 percent of the credit risk of the securitized assets.",
      "disposition": "represented",
      "evidence": "actual_retention_pct"
    },
    {
      "id": "rr-eu-art6-3a-net-economic-interest",
      "clause": "Regulation (EU) 2017/2402 Art 6(3a)",
      "branch": "The EU net-economic-interest requirement and its permitted retention forms.",
      "disposition": "represented",
      "evidence": "retention_method_valid"
    },
    {
      "id": "rr-no-hedging-or-sale-of-retained-interest",
      "clause": "12 CFR 244.12; Reg (EU) 2017/2402 Art 6",
      "branch": "The retained interest may not be hedged or sold.",
      "disposition": "represented",
      "evidence": "retained_interest_hedged_or_sold"
    },
    {
      "id": "rr-sole-purpose-entity-prohibition",
      "clause": "Reg (EU) 2017/2402 Art 6(1)",
      "branch": "The retainer may not be an entity established or operating for the sole purpose of securitising exposures.",
      "disposition": "represented",
      "evidence": "retainer_is_sole_purpose_entity"
    },
    {
      "id": "rr-244.13-qrm-exemption",
      "clause": "12 CFR 244.13",
      "branch": "A securitization collateralized solely by qualified residential mortgages carries no retention requirement.",
      "disposition": "represented",
      "evidence": "qrm_exemption_applied",
      "note": "⚠ CITATION DEFECT, found by this inventory. The kernel's own regulatory_basis string attributes the QRM exemption to 'Sec_.19'. The QRM exemption is 12 CFR 244.13; 244.19 is the GENERAL EXEMPTIONS section and is a different rule with a different content. The node pins a 244.19 snapshot and then labels its 244.13 behaviour with that number — exactly the wrong-locator class AUTHORING-STANDARD.md §3.1 exists to catch, in a payload string that ships on every MCP call. ⛔ Not fixed here: it is a kernel-string edit, which moves the digest and demands a re-prove (SO #36)."
    },
    {
      "id": "rr-244.19b1-us-government-backed-securitizations",
      "clause": "12 CFR 244.19(b)(1)",
      "branch": "The part does not apply to securitizations collateralized solely by residential, multifamily or health-care facility mortgage assets insured or guaranteed by the United States, meeting the (b)(1)(i)-(ii) conditions.",
      "disposition": "unrepresented_known",
      "error_direction": "conservative_toward_finding",
      "note": "⛔ FINDING."
    },
    {
      "id": "rr-244.19b2-b8-enumerated-general-exemptions",
      "clause": "12 CFR 244.19(b)(2)-(b)(8)",
      "branch": "Seven further general exemptions: certain agricultural loan securitizations; state and municipal securitizations; qualified scholarship funding bonds; pass-through resecuritizations (three conditions); first-pay-class securitizations (five conditions); seasoned loans (with a defined seasoning test at five years or 25 percent of original principal, and a two-year / 33 percent variant); and certain public utility securitizations.",
      "disposition": "unrepresented_known",
      "error_direction": "conservative_toward_finding",
      "note": "⛔ FINDING. Seven branches, several multi-condition, none reachable. The seasoned-loan branch alone carries four numeric predicates the kernel has no input for."
    },
    {
      "id": "rr-244.19c-us-issued-insured-or-guaranteed-assets",
      "clause": "12 CFR 244.19(c)(1)-(3)",
      "branch": "Exemption for securitizations collateralized solely by US or agency obligations, by fully insured or guaranteed assets, or fully guaranteed as to timely payment.",
      "disposition": "unrepresented_known",
      "error_direction": "conservative_toward_finding",
      "note": "⛔ FINDING."
    },
    {
      "id": "rr-244.19d-fdic-securitizations",
      "clause": "12 CFR 244.19(d)",
      "branch": "Exemption for FDIC securitizations.",
      "disposition": "unrepresented_known",
      "error_direction": "conservative_toward_finding",
      "note": "⛔ FINDING."
    },
    {
      "id": "rr-244.19e-reduced-requirement-ffelp-student-loans",
      "clause": "12 CFR 244.19(e)(1)-(3)",
      "branch": "A REDUCED retention requirement — not an exemption — for FFELP student-loan securitizations, tiered by guarantee level.",
      "disposition": "unrepresented_known",
      "error_direction": "conservative_toward_no_finding",
      "note": "⛔ FINDING, and the one that inverts the node's declared error direction. (e) sets a retention percentage BELOW 5 percent for qualifying FFELP transactions. Because the kernel tests against a flat 5 percent it over-reports here like everywhere else — but the branch itself is the shape that would make a lower floor correct, and any future fix that reads (e) without reading the guarantee tiers would under-report. Recorded so that fix cannot be written blind."
    },
    {
      "id": "rr-244.19f-g-community-focused-and-three-to-four-unit",
      "clause": "12 CFR 244.19(f), (g)",
      "branch": "Community-focused lending securitizations, including the 50 percent community-focused residential mortgage asset ratio and its measurement date; and securitizations of certain qualifying three-to-four unit residential mortgage loans, with depositor certifications and sponsor repurchase obligations.",
      "disposition": "unrepresented_known",
      "error_direction": "conservative_toward_finding",
      "note": "⛔ FINDING."
    },
    {
      "id": "rr-244.15-244.21-form-and-disclosure-rules",
      "clause": "12 CFR 244.15, 244.20, 244.21, 244.6(b), 244.9(b)-(c)(1), 244.10(b)",
      "branch": "The remaining pinned sections: qualifying commercial/CRE/auto asset rules, eligible ABCP conduits, open-market CLOs, and the associated disclosure and certification obligations.",
      "disposition": "unrepresented_known",
      "error_direction": "undirected",
      "note": "⛔ FINDING — OVER-CITATION (SO #39(iii)). Six pinned snapshots whose content compute() does not exercise in any direction. They are cited, not implemented. The honest remedies are to drop the citations or to build the behaviour; recording them as unrepresented is the third option and the only one available inside this row's fence."
    },
    {
      "id": "rr-securitized-exposure-and-retained-amount",
      "clause": "12 CFR 244.3(a); Reg (EU) 2017/2402 Art 6",
      "branch": "The measurement of total securitized exposure and of the retained amount.",
      "disposition": "out_of_scope_by_input",
      "assumption_of_use": {
        "value": "total_securitized_exposure_musd and retained_amount_musd",
        "source": "12 CFR 244.3(a) and the Art 6 measurement rules",
        "owner": "the CALLER. ⚠ compute({}) treats both as absent-equals-zero and returns RETENTION_NONCOMPLIANT — fail-closed, so the omission is safe here, unlike the same shape in art-396."
      }
    }
  ]
}
