{
  "tool_id": "art-470-lookback-completeness-reconciler",
  "tool_version": "1.0.0",
  "display_name": "AML Lookback Completeness Reconciler",
  "mcp_name": "reconcile_aml_lookback_completeness",
  "mandate_type": "compliance_control",
  "wave": 74,
  "gpu": false,
  "url": "https://ainumbers.co/chaingraph/art-470-lookback-completeness-reconciler.html",
  "description": "Reconciles an AML consent-order remediation lookback's order-scope population against the extract actually produced for re-screening, per historical period. Coverage is always measured against the caller-declared SOURCE-SYSTEM record count, never the extract's own self-reported count -- a lookback that reports zero gaps because it only counted what the extract already contains is indistinguishable from a clean lookback, and catching that blind spot is this node's purpose. A second axis reconciles versioned policy-list snapshot availability: any period whose sanctions/PEP list snapshot was not preserved is flagged unverifiable and excluded from the screened-coverage total rather than silently re-screened against today's list. Also flags duplicate records surviving dedup. Deterministic reconciliation arithmetic only. Zero network, zero PII.",
  "input_schema_ref": "chaingraph/art-470-lookback-completeness-reconciler.html#manifest",
  "consumes": [],
  "feeds": [],
  "status": "live",
  "conformance_fixtures": true,
  "compute_capability": "server",
  "compute_images": [{"system":"sha256-source","image_id":"sha256:88f0b073173f8eafac3e96acaa0200f936815a627d4985738cbf8e79217632ca","valid_from":"2026-07-10"},{"system":"risc0","image_id":"sha256:a1a0bc89b5b1febaeda3519f6dbade0fa5ac16beeb143c4e1b01689573567bc6","valid_from":"2026-07-25"}],
  "compute_proof_ready": "ready",
  "compute_proof": {
    "type": "ZkVmReceipt",
    "system": "risc0",
    "receiptFormat": "groth16-bn254",
    "imageId": "sha256:a1a0bc89b5b1febaeda3519f6dbade0fa5ac16beeb143c4e1b01689573567bc6",
    "seal": "CJYGZJa20YFLmyDfPvK5kUIseKPfPjjIvobNa2Y1FnwKk8iB6mGq9a+M8MI1XX4wDoBMIld79Gs7iLpGelNtRhn1/Fl1bbIAQXNVZXGSRWuSxLHeCXzrMy39f43El9l1IADcbsPes7SKSP3o9WxyHElSGYDIII25hmxiblK9/VkKS6eGccNC6GwRRQg9p3O8EtG/Z8TLk4vqXF2bTcGAEAZGntrKuHFSWaEU0x6TdYDnzVHJbuiMv8IInDPuRBOxBi0pBdGSKtfiiej7tMHKKEqLrIOadxALTwqns9kX5MEKLCEZfa58NIFx3NMupT0p+6VqOTnkM1Qp7oM44L+imQ==",
    "journal": {
      "chaingraph_version": "0.4.0",
      "kernel_digest": "sha256:88f0b073173f8eafac3e96acaa0200f936815a627d4985738cbf8e79217632ca",
      "output": {
        "gap_periods": [],
        "lookback_status": "complete",
        "overall_coverage_pct": 100,
        "period_count": 2,
        "periods": [
          {
            "coverage_pct": 100,
            "dedup_record_count": 500,
            "duplicate_count": 0,
            "extract_record_count": 500,
            "gap_count": 0,
            "period_label": "2023-Q4",
            "period_status": "complete",
            "snapshot_available": true,
            "source_record_count": 500
          },
          {
            "coverage_pct": 100,
            "dedup_record_count": 620,
            "duplicate_count": 0,
            "extract_record_count": 620,
            "gap_count": 0,
            "period_label": "2024-Q1",
            "period_status": "complete",
            "snapshot_available": true,
            "source_record_count": 620
          }
        ],
        "total_duplicate_count": 0,
        "total_extract_record_count": 1120,
        "total_source_record_count": 1120,
        "unverifiable_periods": [],
        "verifiable_extract_count": 1120,
        "verifiable_source_count": 1120
      }
    }
  },
  "export_capability": [
    "json"
  ]
}
