{
  "tool_id": "art-661-interest-accrual-recompute",
  "tool_version": "1.0.0",
  "display_name": "Interest Accrual Recompute",
  "mcp_name": "compute_interest_accrual_recompute",
  "mandate_type": "compliance_control",
  "wave": 109,
  "gpu": false,
  "url": "https://ainumbers.co/tools/661-interest-accrual-recompute.html",
  "description": "Recomputes per-day interest accrual from caller-supplied daily principal balances and product terms (day-count convention, compounding basis, fixed or tiered rate), then diffs the recomputed cumulative accrual against the core's own posted accrual/interest-paid ledger entries at each of the core's own posting dates. Returns MATCHES, DIVERGES with the first divergent date and cent amount, or INDETERMINATE when no core postings exist to diff against. An independent recompute-and-receipt over a caller-declared contract term (day-count/compounding), not an audit of or substitution for any core platform, and not a claim about which convention a core should use.",
  "input_schema_ref": "tools/661-interest-accrual-recompute.html#manifest",
  "consumes": [],
  "feeds": [],
  "status": "live",
  "conformance_fixtures": true,
  "compute_capability": "server",
  "compute_images": [{"system":"sha256-source","image_id":"sha256:b57f3f681d019782405635040340d51f868e535834246366a930ca52336768e7","valid_from":"2026-08-20"}],
  "export_capability": ["json"],
  "standards_basis": "not_applicable",
  "cited_clause_digest": [],
  "compute_proof_ready": "deferred",
  "deferred_reason": "New gpu:false node, art-661-interest-accrual-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."
}
