{
  "tool_id": "art-664-loan-servicing-waterfall-recompute",
  "kernel_id": "art-664-loan-servicing-waterfall-recompute",
  "display_name": "Loan Servicing Waterfall Recompute",
  "tool_version": "1.0.0",
  "mandate_type": "compliance_control",
  "purpose": "Independently recomputes how a single borrower's single loan payment applies across escrow, fee, interest and principal buckets under the note's own caller-declared bucket application order, then diffs the recomputed per-bucket breakdown against the core's actual applied amounts. The application order, pre-payment bucket balances and payment amount are all caller-declared contract terms -- this node asserts no universal statutory application order and infers none. Verdict is MATCHES, DIVERGES (with per-bucket deltas), or INDETERMINATE whenever a required input -- a declared bucket's balance, or the core's applied breakdown to diff against -- is absent. Recompute and receipt only; this is not a claim that either side's figure is the legally correct one.",
  "control_description": "Independently recomputes how a single borrower's single loan payment applies across escrow, fee, interest and principal buckets under the note's own caller-declared bucket application order, then diffs the recomputed per-bucket breakdown against the core's actual applied amounts. The application order, pre-payment bucket balances and payment amount are all caller-declared contract terms -- this node asserts no universal statutory application order and infers none. Verdict is MATCHES, DIVERGES (with per-bucket deltas), or INDETERMINATE whenever a required input -- a declared bucket's balance, or the core's applied breakdown to diff against -- is absent. Recompute and receipt only; this is not a claim that either side's figure is the legally correct one.",
  "declared_inputs": [],
  "declared_outputs": [],
  "kernel_digest": "sha256:a5294931be53b050f99b64e583ecf46c561050b194b01b0a27b92cec2c735a78",
  "trust_label": "deferred: deterministic source published, zkVM proof not yet generated; New gpu:false node, art-664-loan-servicing-waterfall-recompute, scaffolded 2026-08-20 (KERNEL-SCAFFOLD-1). No GPU prove has been run and none is proposed by this scaffold — deferred per the section 18 steady-state rule (RIDER-KERNEL.md). Run GPU-CYCLE-PREFLIGHT-1's static pre-screen once compute() is real, then measure user_cycles with runq-cpu exec before booking.",
  "data_vintage": "2026-08-20",
  "last_validated": "2026-08-20",
  "conformance_fixtures_vendored": true,
  "compute_proof_ready": "deferred",
  "wave": 109,
  "source_url": "https://ainumbers.co/tools/664-loan-servicing-waterfall-recompute.html",
  "generated_at": "2026-08-20T23:51:04.204Z"
}
