{
  "tool_id": "art-734-force-placed-insurance-checker",
  "kernel_id": "art-734-force-placed-insurance-checker",
  "display_name": "Force-Placed Insurance Notice Checker",
  "tool_version": "1.0.0",
  "mandate_type": "consumer_finance",
  "purpose": "Checks a lender-placed (force-placed) insurance event against the notice sequence required before a servicer may charge the borrower: the 45-day advance first notice with its prescribed content set, the reminder notice at least 15 days before the charge and at least 30 days after the first notice, and the no-evidence-of-continuous-coverage precondition; evaluates the 15-day cancellation-and-refund clock with a pro-rata overlapping-coverage refund computed from values; and reports the charged premium against borrower-provided alternative-quote values as a values-only comparison table. Every element carries its paragraph citation. Missing quote values, invalid dates and amounts, and inverted coverage periods are refused, never computed. The node never labels a premium reasonable or unreasonable; the comparison is surfaced, the judgement is not.",
  "control_description": "Checks a lender-placed (force-placed) insurance event against the notice sequence required before a servicer may charge the borrower: the 45-day advance first notice with its prescribed content set, the reminder notice at least 15 days before the charge and at least 30 days after the first notice, and the no-evidence-of-continuous-coverage precondition; evaluates the 15-day cancellation-and-refund clock with a pro-rata overlapping-coverage refund computed from values; and reports the charged premium against borrower-provided alternative-quote values as a values-only comparison table. Every element carries its paragraph citation. Missing quote values, invalid dates and amounts, and inverted coverage periods are refused, never computed. The node never labels a premium reasonable or unreasonable; the comparison is surfaced, the judgement is not.",
  "declared_inputs": [],
  "declared_outputs": [],
  "kernel_digest": "sha256:dbad1174408ec1f0f5c95733d54dba4f6fb04ce2add7c6bb270fa77b271b8c39",
  "trust_label": "independently verified: zkVM execution proof (risc0/groth16-bn254)",
  "data_vintage": "2026-10-18",
  "last_validated": "2026-10-18",
  "conformance_fixtures_vendored": true,
  "compute_proof_ready": "ready",
  "wave": 132,
  "source_url": "https://ainumbers.co/chaingraph/art-734-force-placed-insurance-checker.html",
  "generated_at": "2026-10-18T18:35:10.060Z"
}
