{
  "tool_id": "art-665-gl-tieout-recompute",
  "note": "Golden vectors authored for CORE-VERIFY-GLTIEOUT-1. Synthetic account_token values only, zero PII. human_sign_off: PENDING.",
  "vectors": [
    {
      "name": "mode-not-declared-indeterminate",
      "policy_parameters": {
        "period_label": "2026-08"
      },
      "output_payload": {
        "mode": null,
        "period_label": "2026-08",
        "currency": "USD",
        "minor_unit_exponent": 2,
        "single_source": null,
        "diff_sources": null,
        "verdict": "INDETERMINATE",
        "indeterminate_reason": "mode was not declared, or was not one of \"single\" or \"diff\"; no recompute is possible without it.",
        "rejected_inputs": [
          {
            "where": "mode",
            "reason": "absent or not one of single, diff; no recompute is possible without a declared mode",
            "supplied": null
          }
        ],
        "citations": {},
        "rationale": [
          "Verdict is INDETERMINATE: mode was not declared, or was not one of \"single\" or \"diff\"; no recompute is possible without it.",
          "1 supplied value was not usable and was excluded or treated as zero. Each one is named in rejected_inputs rather than silently dropped.",
          "This tool independently recomputes and receipts GL tie-out arithmetic given the caller's own declared chart-of-accounts mapping. It is not a core alternative, does not audit or find bugs in any vendor's system, and makes no claim of endorsement by or determination of legality or accounting-standard compliance about any core platform, mapping, or figure."
        ],
        "not_proven": [
          {
            "item": "Not an accounting-standard or legality determination",
            "detail": "This kernel recomputes GL tie-out arithmetic given the caller's own declared product_code -> gl_account_code mapping. It makes no claim about whether that mapping, the ledger, or the reported/compared figures comply with any accounting standard, GAAP treatment, or regulation."
          },
          {
            "item": "Chart-of-accounts mapping is caller-asserted",
            "detail": "The product_code -> gl_account_code mapping is a caller-declared chart-of-accounts mapping, never inferred or independently verified against the bank's own general-ledger system by this kernel."
          },
          {
            "item": "No per-core export adapter",
            "detail": "This kernel consumes only the Sec0 generic ledger CSV shape (mapped by the caller to the JSON fields below). It does not read any core's native export format (Episys, SilverLake, DNA, Premier, or otherwise) and makes no claim about those formats."
          },
          {
            "item": "Diff mode asserts no correct side",
            "detail": "In diff mode, a divergence between source_a and source_b is reported symmetrically as a conversion-balancing finding. This kernel does not determine which source, if either, holds the legally or operationally correct figure."
          },
          {
            "item": "Input accuracy",
            "detail": "The ledger rows, chart-of-accounts mapping, and reported/comparison figures are caller-supplied and asserted, not independently verified against source records."
          }
        ],
        "fence": "This is an independent recompute and receipt, not a core alternative, not a vendor audit, and not an endorsement claim by any core vendor or platform. The chart-of-accounts mapping is a caller-declared input, never chosen or inferred. A divergence is an arithmetic finding, never a determination that a figure is incorrect or that funds are owed -- interpretation belongs to the caller. Diff mode asserts no correct side between the two sources compared.",
        "note": "Deterministic GL tie-out recomputation for one stated period, in either single-source mode (recompute vs a reported trial balance) or diff mode (two full sources diffed against each other for conversion balancing). Single-run and stateless: it holds no records, runs on no schedule, and retains nothing. It performs no core posting integration of any kind (batch, caller-pasted export only)."
      },
      "golden_hash": "c78cca7aa3832e853dcfd8c3c50bfcab1660fdf2be6cad570e716194945ff9b3"
    },
    {
      "name": "single-mode-empty-ledger-indeterminate",
      "policy_parameters": {
        "mode": "single",
        "period_label": "2026-08",
        "ledger": [],
        "gl_account_mapping": {
          "checking": "GL-1010",
          "savings": "GL-1020"
        },
        "reported_trial_balance": [
          {
            "gl_account_code": "GL-1010",
            "amount_minor_units": 0
          }
        ]
      },
      "output_payload": {
        "mode": "single",
        "period_label": "2026-08",
        "currency": "USD",
        "minor_unit_exponent": 2,
        "single_source": {
          "gl_account_mapping": {
            "checking": "GL-1010",
            "savings": "GL-1020"
          },
          "ledger_row_count": 0,
          "mapped_row_count": 0,
          "computed_totals": [],
          "reported_trial_balance_supplied": true,
          "reported_totals": [
            {
              "gl_account_code": "GL-1010",
              "reported_total_minor_units": 0,
              "reported_total_display": "0.00"
            }
          ],
          "comparison_basis": "The computed side of every account-code row is derived here by summing the supplied ledger rows under the declared product_code -> gl_account_code mapping. It is not read from the reported trial-balance figures.",
          "per_account_deltas": [
            {
              "gl_account_code": "GL-1010",
              "computed_total_minor_units": 0,
              "computed_total_display": "0.00",
              "reported_total_minor_units": 0,
              "reported_total_display": "0.00",
              "delta_minor_units": 0,
              "delta_display": "0.00",
              "agrees": true
            }
          ]
        },
        "diff_sources": null,
        "verdict": "INDETERMINATE",
        "indeterminate_reason": "No usable ledger rows were supplied, so no GL account-code totals could be recomputed.",
        "rejected_inputs": [],
        "citations": {},
        "rationale": [
          "GL tie-out recomputed for period 2026-08, currency USD, single-source mode.",
          "0 ledger rows were supplied; 0 were attributable to a GL account code under the declared product_code -> gl_account_code mapping.",
          "Computed totals span 0 GL account codes; reported trial-balance figures were supplied for 1 account code.",
          "Verdict is INDETERMINATE: No usable ledger rows were supplied, so no GL account-code totals could be recomputed.",
          "This tool independently recomputes and receipts GL tie-out arithmetic given the caller's own declared chart-of-accounts mapping. It is not a core alternative, does not audit or find bugs in any vendor's system, and makes no claim of endorsement by or determination of legality or accounting-standard compliance about any core platform, mapping, or figure."
        ],
        "not_proven": [
          {
            "item": "Not an accounting-standard or legality determination",
            "detail": "This kernel recomputes GL tie-out arithmetic given the caller's own declared product_code -> gl_account_code mapping. It makes no claim about whether that mapping, the ledger, or the reported/compared figures comply with any accounting standard, GAAP treatment, or regulation."
          },
          {
            "item": "Chart-of-accounts mapping is caller-asserted",
            "detail": "The product_code -> gl_account_code mapping is a caller-declared chart-of-accounts mapping, never inferred or independently verified against the bank's own general-ledger system by this kernel."
          },
          {
            "item": "No per-core export adapter",
            "detail": "This kernel consumes only the Sec0 generic ledger CSV shape (mapped by the caller to the JSON fields below). It does not read any core's native export format (Episys, SilverLake, DNA, Premier, or otherwise) and makes no claim about those formats."
          },
          {
            "item": "Diff mode asserts no correct side",
            "detail": "In diff mode, a divergence between source_a and source_b is reported symmetrically as a conversion-balancing finding. This kernel does not determine which source, if either, holds the legally or operationally correct figure."
          },
          {
            "item": "Input accuracy",
            "detail": "The ledger rows, chart-of-accounts mapping, and reported/comparison figures are caller-supplied and asserted, not independently verified against source records."
          }
        ],
        "fence": "This is an independent recompute and receipt, not a core alternative, not a vendor audit, and not an endorsement claim by any core vendor or platform. The chart-of-accounts mapping is a caller-declared input, never chosen or inferred. A divergence is an arithmetic finding, never a determination that a figure is incorrect or that funds are owed -- interpretation belongs to the caller. Diff mode asserts no correct side between the two sources compared.",
        "note": "Deterministic GL tie-out recomputation for one stated period, in either single-source mode (recompute vs a reported trial balance) or diff mode (two full sources diffed against each other for conversion balancing). Single-run and stateless: it holds no records, runs on no schedule, and retains nothing. It performs no core posting integration of any kind (batch, caller-pasted export only)."
      },
      "golden_hash": "83d024ed551e659d2e023f8fdd6874c9e501067f9f3443d8fec58541a8831328"
    },
    {
      "name": "single-mode-no-mapping-indeterminate",
      "policy_parameters": {
        "mode": "single",
        "period_label": "2026-08",
        "ledger": [
          {
            "account_token": "acct-demo-001",
            "post_date": "2026-08-03",
            "effective_date": "2026-08-03",
            "txn_type": "fee",
            "amount": 1500,
            "running_balance": 1500,
            "product_code": "checking",
            "description_code": "NSF"
          }
        ],
        "reported_trial_balance": [
          {
            "gl_account_code": "GL-1010",
            "amount_minor_units": 1500
          }
        ]
      },
      "output_payload": {
        "mode": "single",
        "period_label": "2026-08",
        "currency": "USD",
        "minor_unit_exponent": 2,
        "single_source": {
          "gl_account_mapping": {},
          "ledger_row_count": 1,
          "mapped_row_count": 0,
          "computed_totals": [],
          "reported_trial_balance_supplied": true,
          "reported_totals": [
            {
              "gl_account_code": "GL-1010",
              "reported_total_minor_units": 1500,
              "reported_total_display": "15.00"
            }
          ],
          "comparison_basis": "The computed side of every account-code row is derived here by summing the supplied ledger rows under the declared product_code -> gl_account_code mapping. It is not read from the reported trial-balance figures.",
          "per_account_deltas": [
            {
              "gl_account_code": "GL-1010",
              "computed_total_minor_units": 0,
              "computed_total_display": "0.00",
              "reported_total_minor_units": 1500,
              "reported_total_display": "15.00",
              "delta_minor_units": -1500,
              "delta_display": "-15.00",
              "agrees": false
            }
          ]
        },
        "diff_sources": null,
        "verdict": "INDETERMINATE",
        "indeterminate_reason": "No usable product_code -> gl_account_code mapping was declared, so no ledger row could be attributed to a GL account.",
        "rejected_inputs": [
          {
            "where": "gl_account_mapping",
            "reason": "absent or not an object; no product_code -> gl_account_code mapping usable",
            "supplied": null
          },
          {
            "where": "ledger[0].product_code",
            "reason": "\"checking\" is not present in the declared gl_account_mapping; row excluded from the tie-out",
            "supplied": "checking"
          }
        ],
        "citations": {},
        "rationale": [
          "GL tie-out recomputed for period 2026-08, currency USD, single-source mode.",
          "1 ledger row were supplied; 0 were attributable to a GL account code under the declared product_code -> gl_account_code mapping.",
          "Computed totals span 0 GL account codes; reported trial-balance figures were supplied for 1 account code.",
          "Verdict is INDETERMINATE: No usable product_code -> gl_account_code mapping was declared, so no ledger row could be attributed to a GL account.",
          "2 supplied values were not usable and were excluded or treated as zero. Each one is named in rejected_inputs rather than silently dropped.",
          "This tool independently recomputes and receipts GL tie-out arithmetic given the caller's own declared chart-of-accounts mapping. It is not a core alternative, does not audit or find bugs in any vendor's system, and makes no claim of endorsement by or determination of legality or accounting-standard compliance about any core platform, mapping, or figure."
        ],
        "not_proven": [
          {
            "item": "Not an accounting-standard or legality determination",
            "detail": "This kernel recomputes GL tie-out arithmetic given the caller's own declared product_code -> gl_account_code mapping. It makes no claim about whether that mapping, the ledger, or the reported/compared figures comply with any accounting standard, GAAP treatment, or regulation."
          },
          {
            "item": "Chart-of-accounts mapping is caller-asserted",
            "detail": "The product_code -> gl_account_code mapping is a caller-declared chart-of-accounts mapping, never inferred or independently verified against the bank's own general-ledger system by this kernel."
          },
          {
            "item": "No per-core export adapter",
            "detail": "This kernel consumes only the Sec0 generic ledger CSV shape (mapped by the caller to the JSON fields below). It does not read any core's native export format (Episys, SilverLake, DNA, Premier, or otherwise) and makes no claim about those formats."
          },
          {
            "item": "Diff mode asserts no correct side",
            "detail": "In diff mode, a divergence between source_a and source_b is reported symmetrically as a conversion-balancing finding. This kernel does not determine which source, if either, holds the legally or operationally correct figure."
          },
          {
            "item": "Input accuracy",
            "detail": "The ledger rows, chart-of-accounts mapping, and reported/comparison figures are caller-supplied and asserted, not independently verified against source records."
          }
        ],
        "fence": "This is an independent recompute and receipt, not a core alternative, not a vendor audit, and not an endorsement claim by any core vendor or platform. The chart-of-accounts mapping is a caller-declared input, never chosen or inferred. A divergence is an arithmetic finding, never a determination that a figure is incorrect or that funds are owed -- interpretation belongs to the caller. Diff mode asserts no correct side between the two sources compared.",
        "note": "Deterministic GL tie-out recomputation for one stated period, in either single-source mode (recompute vs a reported trial balance) or diff mode (two full sources diffed against each other for conversion balancing). Single-run and stateless: it holds no records, runs on no schedule, and retains nothing. It performs no core posting integration of any kind (batch, caller-pasted export only)."
      },
      "golden_hash": "a676896a081220a476952ff3f412c8137f00168b0202d8b9e38b73b85df3ffe5"
    },
    {
      "name": "single-mode-unmapped-product-code-indeterminate",
      "policy_parameters": {
        "mode": "single",
        "period_label": "2026-08",
        "ledger": [
          {
            "account_token": "acct-demo-001",
            "post_date": "2026-08-03",
            "effective_date": "2026-08-03",
            "txn_type": "fee",
            "amount": 1500,
            "running_balance": 1500,
            "product_code": "unknown_product",
            "description_code": "NSF"
          }
        ],
        "gl_account_mapping": {
          "checking": "GL-1010"
        },
        "reported_trial_balance": [
          {
            "gl_account_code": "GL-1010",
            "amount_minor_units": 1500
          }
        ]
      },
      "output_payload": {
        "mode": "single",
        "period_label": "2026-08",
        "currency": "USD",
        "minor_unit_exponent": 2,
        "single_source": {
          "gl_account_mapping": {
            "checking": "GL-1010"
          },
          "ledger_row_count": 1,
          "mapped_row_count": 0,
          "computed_totals": [],
          "reported_trial_balance_supplied": true,
          "reported_totals": [
            {
              "gl_account_code": "GL-1010",
              "reported_total_minor_units": 1500,
              "reported_total_display": "15.00"
            }
          ],
          "comparison_basis": "The computed side of every account-code row is derived here by summing the supplied ledger rows under the declared product_code -> gl_account_code mapping. It is not read from the reported trial-balance figures.",
          "per_account_deltas": [
            {
              "gl_account_code": "GL-1010",
              "computed_total_minor_units": 0,
              "computed_total_display": "0.00",
              "reported_total_minor_units": 1500,
              "reported_total_display": "15.00",
              "delta_minor_units": -1500,
              "delta_display": "-15.00",
              "agrees": false
            }
          ]
        },
        "diff_sources": null,
        "verdict": "INDETERMINATE",
        "indeterminate_reason": "None of the supplied ledger rows' product_code values matched an entry in the declared gl_account_mapping.",
        "rejected_inputs": [
          {
            "where": "ledger[0].product_code",
            "reason": "\"unknown_product\" is not present in the declared gl_account_mapping; row excluded from the tie-out",
            "supplied": "unknown_product"
          }
        ],
        "citations": {},
        "rationale": [
          "GL tie-out recomputed for period 2026-08, currency USD, single-source mode.",
          "1 ledger row were supplied; 0 were attributable to a GL account code under the declared product_code -> gl_account_code mapping.",
          "Computed totals span 0 GL account codes; reported trial-balance figures were supplied for 1 account code.",
          "Verdict is INDETERMINATE: None of the supplied ledger rows' product_code values matched an entry in the declared gl_account_mapping.",
          "1 supplied value was not usable and was excluded or treated as zero. Each one is named in rejected_inputs rather than silently dropped.",
          "This tool independently recomputes and receipts GL tie-out arithmetic given the caller's own declared chart-of-accounts mapping. It is not a core alternative, does not audit or find bugs in any vendor's system, and makes no claim of endorsement by or determination of legality or accounting-standard compliance about any core platform, mapping, or figure."
        ],
        "not_proven": [
          {
            "item": "Not an accounting-standard or legality determination",
            "detail": "This kernel recomputes GL tie-out arithmetic given the caller's own declared product_code -> gl_account_code mapping. It makes no claim about whether that mapping, the ledger, or the reported/compared figures comply with any accounting standard, GAAP treatment, or regulation."
          },
          {
            "item": "Chart-of-accounts mapping is caller-asserted",
            "detail": "The product_code -> gl_account_code mapping is a caller-declared chart-of-accounts mapping, never inferred or independently verified against the bank's own general-ledger system by this kernel."
          },
          {
            "item": "No per-core export adapter",
            "detail": "This kernel consumes only the Sec0 generic ledger CSV shape (mapped by the caller to the JSON fields below). It does not read any core's native export format (Episys, SilverLake, DNA, Premier, or otherwise) and makes no claim about those formats."
          },
          {
            "item": "Diff mode asserts no correct side",
            "detail": "In diff mode, a divergence between source_a and source_b is reported symmetrically as a conversion-balancing finding. This kernel does not determine which source, if either, holds the legally or operationally correct figure."
          },
          {
            "item": "Input accuracy",
            "detail": "The ledger rows, chart-of-accounts mapping, and reported/comparison figures are caller-supplied and asserted, not independently verified against source records."
          }
        ],
        "fence": "This is an independent recompute and receipt, not a core alternative, not a vendor audit, and not an endorsement claim by any core vendor or platform. The chart-of-accounts mapping is a caller-declared input, never chosen or inferred. A divergence is an arithmetic finding, never a determination that a figure is incorrect or that funds are owed -- interpretation belongs to the caller. Diff mode asserts no correct side between the two sources compared.",
        "note": "Deterministic GL tie-out recomputation for one stated period, in either single-source mode (recompute vs a reported trial balance) or diff mode (two full sources diffed against each other for conversion balancing). Single-run and stateless: it holds no records, runs on no schedule, and retains nothing. It performs no core posting integration of any kind (batch, caller-pasted export only)."
      },
      "golden_hash": "c093475ed8ceb54e1e23009dddd999a2c411efa68a69fd9a9a14dcb2ec24287a"
    },
    {
      "name": "single-mode-no-reported-indeterminate",
      "policy_parameters": {
        "mode": "single",
        "period_label": "2026-08",
        "ledger": [
          {
            "account_token": "acct-demo-001",
            "post_date": "2026-08-03",
            "effective_date": "2026-08-03",
            "txn_type": "fee",
            "amount": 1500,
            "running_balance": 1500,
            "product_code": "checking",
            "description_code": "NSF"
          }
        ],
        "gl_account_mapping": {
          "checking": "GL-1010"
        }
      },
      "output_payload": {
        "mode": "single",
        "period_label": "2026-08",
        "currency": "USD",
        "minor_unit_exponent": 2,
        "single_source": {
          "gl_account_mapping": {
            "checking": "GL-1010"
          },
          "ledger_row_count": 1,
          "mapped_row_count": 1,
          "computed_totals": [
            {
              "gl_account_code": "GL-1010",
              "computed_total_minor_units": 1500,
              "computed_total_display": "15.00"
            }
          ],
          "reported_trial_balance_supplied": false,
          "reported_totals": [],
          "comparison_basis": "The computed side of every account-code row is derived here by summing the supplied ledger rows under the declared product_code -> gl_account_code mapping. It is not read from the reported trial-balance figures.",
          "per_account_deltas": [
            {
              "gl_account_code": "GL-1010",
              "computed_total_minor_units": 1500,
              "computed_total_display": "15.00",
              "reported_total_minor_units": 0,
              "reported_total_display": "0.00",
              "delta_minor_units": 1500,
              "delta_display": "15.00",
              "agrees": false
            }
          ]
        },
        "diff_sources": null,
        "verdict": "INDETERMINATE",
        "indeterminate_reason": "No reported trial-balance figures were supplied, so the recomputed totals have nothing to tie out against.",
        "rejected_inputs": [
          {
            "where": "reported_trial_balance",
            "reason": "absent or not an array; treated as no reported figures supplied",
            "supplied": null
          }
        ],
        "citations": {},
        "rationale": [
          "GL tie-out recomputed for period 2026-08, currency USD, single-source mode.",
          "1 ledger row were supplied; 1 were attributable to a GL account code under the declared product_code -> gl_account_code mapping.",
          "Computed totals span 1 GL account code; reported trial-balance figures were supplied for 0 account codes.",
          "Verdict is INDETERMINATE: No reported trial-balance figures were supplied, so the recomputed totals have nothing to tie out against.",
          "1 supplied value was not usable and was excluded or treated as zero. Each one is named in rejected_inputs rather than silently dropped.",
          "This tool independently recomputes and receipts GL tie-out arithmetic given the caller's own declared chart-of-accounts mapping. It is not a core alternative, does not audit or find bugs in any vendor's system, and makes no claim of endorsement by or determination of legality or accounting-standard compliance about any core platform, mapping, or figure."
        ],
        "not_proven": [
          {
            "item": "Not an accounting-standard or legality determination",
            "detail": "This kernel recomputes GL tie-out arithmetic given the caller's own declared product_code -> gl_account_code mapping. It makes no claim about whether that mapping, the ledger, or the reported/compared figures comply with any accounting standard, GAAP treatment, or regulation."
          },
          {
            "item": "Chart-of-accounts mapping is caller-asserted",
            "detail": "The product_code -> gl_account_code mapping is a caller-declared chart-of-accounts mapping, never inferred or independently verified against the bank's own general-ledger system by this kernel."
          },
          {
            "item": "No per-core export adapter",
            "detail": "This kernel consumes only the Sec0 generic ledger CSV shape (mapped by the caller to the JSON fields below). It does not read any core's native export format (Episys, SilverLake, DNA, Premier, or otherwise) and makes no claim about those formats."
          },
          {
            "item": "Diff mode asserts no correct side",
            "detail": "In diff mode, a divergence between source_a and source_b is reported symmetrically as a conversion-balancing finding. This kernel does not determine which source, if either, holds the legally or operationally correct figure."
          },
          {
            "item": "Input accuracy",
            "detail": "The ledger rows, chart-of-accounts mapping, and reported/comparison figures are caller-supplied and asserted, not independently verified against source records."
          }
        ],
        "fence": "This is an independent recompute and receipt, not a core alternative, not a vendor audit, and not an endorsement claim by any core vendor or platform. The chart-of-accounts mapping is a caller-declared input, never chosen or inferred. A divergence is an arithmetic finding, never a determination that a figure is incorrect or that funds are owed -- interpretation belongs to the caller. Diff mode asserts no correct side between the two sources compared.",
        "note": "Deterministic GL tie-out recomputation for one stated period, in either single-source mode (recompute vs a reported trial balance) or diff mode (two full sources diffed against each other for conversion balancing). Single-run and stateless: it holds no records, runs on no schedule, and retains nothing. It performs no core posting integration of any kind (batch, caller-pasted export only)."
      },
      "golden_hash": "25d5fd2c2c698ff5fb5eb9b452af77dfa031a2dd33243475a5627039122a4bca"
    },
    {
      "name": "single-mode-matches",
      "policy_parameters": {
        "mode": "single",
        "period_label": "2026-08",
        "ledger": [
          {
            "account_token": "acct-demo-001",
            "post_date": "2026-08-01",
            "effective_date": "2026-08-01",
            "txn_type": "fee",
            "amount": 1500,
            "running_balance": 1500,
            "product_code": "checking",
            "description_code": "NSF"
          },
          {
            "account_token": "acct-demo-002",
            "post_date": "2026-08-02",
            "effective_date": "2026-08-02",
            "txn_type": "fee",
            "amount": 2000,
            "running_balance": 2000,
            "product_code": "checking",
            "description_code": "OD"
          },
          {
            "account_token": "acct-demo-003",
            "post_date": "2026-08-03",
            "effective_date": "2026-08-03",
            "txn_type": "interest-paid",
            "amount": 500,
            "running_balance": 500,
            "product_code": "savings",
            "description_code": "INT"
          }
        ],
        "gl_account_mapping": {
          "checking": "GL-1010",
          "savings": "GL-1020"
        },
        "reported_trial_balance": [
          {
            "gl_account_code": "GL-1010",
            "amount_minor_units": 3500
          },
          {
            "gl_account_code": "GL-1020",
            "amount_minor_units": 500
          }
        ]
      },
      "output_payload": {
        "mode": "single",
        "period_label": "2026-08",
        "currency": "USD",
        "minor_unit_exponent": 2,
        "single_source": {
          "gl_account_mapping": {
            "checking": "GL-1010",
            "savings": "GL-1020"
          },
          "ledger_row_count": 3,
          "mapped_row_count": 3,
          "computed_totals": [
            {
              "gl_account_code": "GL-1010",
              "computed_total_minor_units": 3500,
              "computed_total_display": "35.00"
            },
            {
              "gl_account_code": "GL-1020",
              "computed_total_minor_units": 500,
              "computed_total_display": "5.00"
            }
          ],
          "reported_trial_balance_supplied": true,
          "reported_totals": [
            {
              "gl_account_code": "GL-1010",
              "reported_total_minor_units": 3500,
              "reported_total_display": "35.00"
            },
            {
              "gl_account_code": "GL-1020",
              "reported_total_minor_units": 500,
              "reported_total_display": "5.00"
            }
          ],
          "comparison_basis": "The computed side of every account-code row is derived here by summing the supplied ledger rows under the declared product_code -> gl_account_code mapping. It is not read from the reported trial-balance figures.",
          "per_account_deltas": [
            {
              "gl_account_code": "GL-1010",
              "computed_total_minor_units": 3500,
              "computed_total_display": "35.00",
              "reported_total_minor_units": 3500,
              "reported_total_display": "35.00",
              "delta_minor_units": 0,
              "delta_display": "0.00",
              "agrees": true
            },
            {
              "gl_account_code": "GL-1020",
              "computed_total_minor_units": 500,
              "computed_total_display": "5.00",
              "reported_total_minor_units": 500,
              "reported_total_display": "5.00",
              "delta_minor_units": 0,
              "delta_display": "0.00",
              "agrees": true
            }
          ]
        },
        "diff_sources": null,
        "verdict": "MATCHES",
        "indeterminate_reason": null,
        "rejected_inputs": [],
        "citations": {},
        "rationale": [
          "GL tie-out recomputed for period 2026-08, currency USD, single-source mode.",
          "3 ledger rows were supplied; 3 were attributable to a GL account code under the declared product_code -> gl_account_code mapping.",
          "Computed totals span 2 GL account codes; reported trial-balance figures were supplied for 2 account codes.",
          "The independently recomputed GL totals agree with the reported trial-balance figures on every one of the 2 account codes compared.",
          "This tool independently recomputes and receipts GL tie-out arithmetic given the caller's own declared chart-of-accounts mapping. It is not a core alternative, does not audit or find bugs in any vendor's system, and makes no claim of endorsement by or determination of legality or accounting-standard compliance about any core platform, mapping, or figure."
        ],
        "not_proven": [
          {
            "item": "Not an accounting-standard or legality determination",
            "detail": "This kernel recomputes GL tie-out arithmetic given the caller's own declared product_code -> gl_account_code mapping. It makes no claim about whether that mapping, the ledger, or the reported/compared figures comply with any accounting standard, GAAP treatment, or regulation."
          },
          {
            "item": "Chart-of-accounts mapping is caller-asserted",
            "detail": "The product_code -> gl_account_code mapping is a caller-declared chart-of-accounts mapping, never inferred or independently verified against the bank's own general-ledger system by this kernel."
          },
          {
            "item": "No per-core export adapter",
            "detail": "This kernel consumes only the Sec0 generic ledger CSV shape (mapped by the caller to the JSON fields below). It does not read any core's native export format (Episys, SilverLake, DNA, Premier, or otherwise) and makes no claim about those formats."
          },
          {
            "item": "Diff mode asserts no correct side",
            "detail": "In diff mode, a divergence between source_a and source_b is reported symmetrically as a conversion-balancing finding. This kernel does not determine which source, if either, holds the legally or operationally correct figure."
          },
          {
            "item": "Input accuracy",
            "detail": "The ledger rows, chart-of-accounts mapping, and reported/comparison figures are caller-supplied and asserted, not independently verified against source records."
          }
        ],
        "fence": "This is an independent recompute and receipt, not a core alternative, not a vendor audit, and not an endorsement claim by any core vendor or platform. The chart-of-accounts mapping is a caller-declared input, never chosen or inferred. A divergence is an arithmetic finding, never a determination that a figure is incorrect or that funds are owed -- interpretation belongs to the caller. Diff mode asserts no correct side between the two sources compared.",
        "note": "Deterministic GL tie-out recomputation for one stated period, in either single-source mode (recompute vs a reported trial balance) or diff mode (two full sources diffed against each other for conversion balancing). Single-run and stateless: it holds no records, runs on no schedule, and retains nothing. It performs no core posting integration of any kind (batch, caller-pasted export only)."
      },
      "golden_hash": "8e7f46ac190dbff354a9f557359f0ffea5fae29c320d243eb3fd4ea691ed704c"
    },
    {
      "name": "single-mode-diverges-with-rejected-input",
      "policy_parameters": {
        "mode": "single",
        "period_label": "2026-08",
        "ledger": [
          {
            "account_token": "acct-demo-001",
            "post_date": "2026-08-01",
            "effective_date": "2026-08-01",
            "txn_type": "fee",
            "amount": 1500,
            "running_balance": 1500,
            "product_code": "checking",
            "description_code": "NSF"
          },
          {
            "account_token": "acct-demo-002",
            "post_date": "2026-08-02",
            "effective_date": "2026-08-02",
            "txn_type": "fee",
            "amount": "not-a-number",
            "running_balance": 2000,
            "product_code": "checking",
            "description_code": "OD"
          },
          {
            "account_token": "acct-demo-003",
            "post_date": "2026-08-03",
            "effective_date": "2026-08-03",
            "txn_type": "interest-paid",
            "amount": 500,
            "running_balance": 500,
            "product_code": "savings",
            "description_code": "INT"
          }
        ],
        "gl_account_mapping": {
          "checking": "GL-1010",
          "savings": "GL-1020"
        },
        "reported_trial_balance": [
          {
            "gl_account_code": "GL-1010",
            "amount_minor_units": 3500
          },
          {
            "gl_account_code": "GL-1020",
            "amount_minor_units": 500
          }
        ]
      },
      "output_payload": {
        "mode": "single",
        "period_label": "2026-08",
        "currency": "USD",
        "minor_unit_exponent": 2,
        "single_source": {
          "gl_account_mapping": {
            "checking": "GL-1010",
            "savings": "GL-1020"
          },
          "ledger_row_count": 3,
          "mapped_row_count": 3,
          "computed_totals": [
            {
              "gl_account_code": "GL-1010",
              "computed_total_minor_units": 1500,
              "computed_total_display": "15.00"
            },
            {
              "gl_account_code": "GL-1020",
              "computed_total_minor_units": 500,
              "computed_total_display": "5.00"
            }
          ],
          "reported_trial_balance_supplied": true,
          "reported_totals": [
            {
              "gl_account_code": "GL-1010",
              "reported_total_minor_units": 3500,
              "reported_total_display": "35.00"
            },
            {
              "gl_account_code": "GL-1020",
              "reported_total_minor_units": 500,
              "reported_total_display": "5.00"
            }
          ],
          "comparison_basis": "The computed side of every account-code row is derived here by summing the supplied ledger rows under the declared product_code -> gl_account_code mapping. It is not read from the reported trial-balance figures.",
          "per_account_deltas": [
            {
              "gl_account_code": "GL-1010",
              "computed_total_minor_units": 1500,
              "computed_total_display": "15.00",
              "reported_total_minor_units": 3500,
              "reported_total_display": "35.00",
              "delta_minor_units": -2000,
              "delta_display": "-20.00",
              "agrees": false
            },
            {
              "gl_account_code": "GL-1020",
              "computed_total_minor_units": 500,
              "computed_total_display": "5.00",
              "reported_total_minor_units": 500,
              "reported_total_display": "5.00",
              "delta_minor_units": 0,
              "delta_display": "0.00",
              "agrees": true
            }
          ]
        },
        "diff_sources": null,
        "verdict": "DIVERGES",
        "indeterminate_reason": null,
        "rejected_inputs": [
          {
            "where": "ledger[1].amount",
            "reason": "expected an integer number of minor units, got string",
            "supplied": "not-a-number"
          }
        ],
        "citations": {},
        "rationale": [
          "GL tie-out recomputed for period 2026-08, currency USD, single-source mode.",
          "3 ledger rows were supplied; 3 were attributable to a GL account code under the declared product_code -> gl_account_code mapping.",
          "Computed totals span 2 GL account codes; reported trial-balance figures were supplied for 2 account codes.",
          "The independently recomputed GL totals diverge from the reported trial-balance figures on 1 of 2 account codes. Each divergence is listed with both figures.",
          "1 supplied value was not usable and was excluded or treated as zero. Each one is named in rejected_inputs rather than silently dropped.",
          "This tool independently recomputes and receipts GL tie-out arithmetic given the caller's own declared chart-of-accounts mapping. It is not a core alternative, does not audit or find bugs in any vendor's system, and makes no claim of endorsement by or determination of legality or accounting-standard compliance about any core platform, mapping, or figure."
        ],
        "not_proven": [
          {
            "item": "Not an accounting-standard or legality determination",
            "detail": "This kernel recomputes GL tie-out arithmetic given the caller's own declared product_code -> gl_account_code mapping. It makes no claim about whether that mapping, the ledger, or the reported/compared figures comply with any accounting standard, GAAP treatment, or regulation."
          },
          {
            "item": "Chart-of-accounts mapping is caller-asserted",
            "detail": "The product_code -> gl_account_code mapping is a caller-declared chart-of-accounts mapping, never inferred or independently verified against the bank's own general-ledger system by this kernel."
          },
          {
            "item": "No per-core export adapter",
            "detail": "This kernel consumes only the Sec0 generic ledger CSV shape (mapped by the caller to the JSON fields below). It does not read any core's native export format (Episys, SilverLake, DNA, Premier, or otherwise) and makes no claim about those formats."
          },
          {
            "item": "Diff mode asserts no correct side",
            "detail": "In diff mode, a divergence between source_a and source_b is reported symmetrically as a conversion-balancing finding. This kernel does not determine which source, if either, holds the legally or operationally correct figure."
          },
          {
            "item": "Input accuracy",
            "detail": "The ledger rows, chart-of-accounts mapping, and reported/comparison figures are caller-supplied and asserted, not independently verified against source records."
          }
        ],
        "fence": "This is an independent recompute and receipt, not a core alternative, not a vendor audit, and not an endorsement claim by any core vendor or platform. The chart-of-accounts mapping is a caller-declared input, never chosen or inferred. A divergence is an arithmetic finding, never a determination that a figure is incorrect or that funds are owed -- interpretation belongs to the caller. Diff mode asserts no correct side between the two sources compared.",
        "note": "Deterministic GL tie-out recomputation for one stated period, in either single-source mode (recompute vs a reported trial balance) or diff mode (two full sources diffed against each other for conversion balancing). Single-run and stateless: it holds no records, runs on no schedule, and retains nothing. It performs no core posting integration of any kind (batch, caller-pasted export only)."
      },
      "golden_hash": "b14e46050d0180e17bd2f0c10fc277c7f0b4fdc782048a009d306458f0ed1e13"
    },
    {
      "name": "diff-mode-empty-source-indeterminate",
      "policy_parameters": {
        "mode": "diff",
        "period_label": "2026-08",
        "source_a": {
          "label": "legacy_core",
          "ledger": [],
          "gl_account_mapping": {
            "checking": "GL-1010"
          }
        },
        "source_b": {
          "label": "new_core",
          "ledger": [
            {
              "account_token": "acct-demo-001",
              "post_date": "2026-08-01",
              "effective_date": "2026-08-01",
              "txn_type": "fee",
              "amount": 1500,
              "running_balance": 1500,
              "product_code": "DDA",
              "description_code": "NSF"
            }
          ],
          "gl_account_mapping": {
            "DDA": "GL-1010"
          }
        }
      },
      "output_payload": {
        "mode": "diff",
        "period_label": "2026-08",
        "currency": "USD",
        "minor_unit_exponent": 2,
        "single_source": null,
        "diff_sources": {
          "source_a": {
            "label": "legacy_core",
            "gl_account_mapping": {
              "checking": "GL-1010"
            },
            "ledger_row_count": 0,
            "mapped_row_count": 0,
            "totals": []
          },
          "source_b": {
            "label": "new_core",
            "gl_account_mapping": {
              "DDA": "GL-1010"
            },
            "ledger_row_count": 1,
            "mapped_row_count": 1,
            "totals": [
              {
                "gl_account_code": "GL-1010",
                "total_minor_units": 1500,
                "total_display": "15.00"
              }
            ]
          },
          "comparison_basis": "Both sides are derived here from their own supplied ledger rows and their own declared product_code -> gl_account_code mapping. Neither side is treated as the correct figure -- a difference is reported symmetrically as a conversion-balancing finding.",
          "per_account_deltas": [
            {
              "gl_account_code": "GL-1010",
              "source_a_total_minor_units": 0,
              "source_a_total_display": "0.00",
              "source_b_total_minor_units": 1500,
              "source_b_total_display": "15.00",
              "delta_minor_units": -1500,
              "delta_display": "-15.00",
              "agrees": false
            }
          ]
        },
        "verdict": "INDETERMINATE",
        "indeterminate_reason": "One or both sources supplied no usable ledger rows, so no conversion-balancing diff could be recomputed.",
        "rejected_inputs": [],
        "citations": {},
        "rationale": [
          "GL tie-out recomputed for period 2026-08, currency USD, diff mode -- legacy_core versus new_core.",
          "legacy_core: 0 ledger rows supplied, 0 attributable to a GL account code. new_core: 1 ledger row supplied, 1 attributable to a GL account code.",
          "The diff spans 1 GL account code across both sources; no side is asserted correct.",
          "Verdict is INDETERMINATE: One or both sources supplied no usable ledger rows, so no conversion-balancing diff could be recomputed.",
          "This tool independently recomputes and receipts GL tie-out arithmetic given the caller's own declared chart-of-accounts mapping. It is not a core alternative, does not audit or find bugs in any vendor's system, and makes no claim of endorsement by or determination of legality or accounting-standard compliance about any core platform, mapping, or figure."
        ],
        "not_proven": [
          {
            "item": "Not an accounting-standard or legality determination",
            "detail": "This kernel recomputes GL tie-out arithmetic given the caller's own declared product_code -> gl_account_code mapping. It makes no claim about whether that mapping, the ledger, or the reported/compared figures comply with any accounting standard, GAAP treatment, or regulation."
          },
          {
            "item": "Chart-of-accounts mapping is caller-asserted",
            "detail": "The product_code -> gl_account_code mapping is a caller-declared chart-of-accounts mapping, never inferred or independently verified against the bank's own general-ledger system by this kernel."
          },
          {
            "item": "No per-core export adapter",
            "detail": "This kernel consumes only the Sec0 generic ledger CSV shape (mapped by the caller to the JSON fields below). It does not read any core's native export format (Episys, SilverLake, DNA, Premier, or otherwise) and makes no claim about those formats."
          },
          {
            "item": "Diff mode asserts no correct side",
            "detail": "In diff mode, a divergence between source_a and source_b is reported symmetrically as a conversion-balancing finding. This kernel does not determine which source, if either, holds the legally or operationally correct figure."
          },
          {
            "item": "Input accuracy",
            "detail": "The ledger rows, chart-of-accounts mapping, and reported/comparison figures are caller-supplied and asserted, not independently verified against source records."
          }
        ],
        "fence": "This is an independent recompute and receipt, not a core alternative, not a vendor audit, and not an endorsement claim by any core vendor or platform. The chart-of-accounts mapping is a caller-declared input, never chosen or inferred. A divergence is an arithmetic finding, never a determination that a figure is incorrect or that funds are owed -- interpretation belongs to the caller. Diff mode asserts no correct side between the two sources compared.",
        "note": "Deterministic GL tie-out recomputation for one stated period, in either single-source mode (recompute vs a reported trial balance) or diff mode (two full sources diffed against each other for conversion balancing). Single-run and stateless: it holds no records, runs on no schedule, and retains nothing. It performs no core posting integration of any kind (batch, caller-pasted export only)."
      },
      "golden_hash": "8ea88f903cf1328c938f8b96ccc64dcbebda8c49346d8ae2fc8d3bc5c92bd0f0"
    },
    {
      "name": "diff-mode-matches",
      "policy_parameters": {
        "mode": "diff",
        "period_label": "2026-08",
        "source_a": {
          "label": "legacy_core",
          "ledger": [
            {
              "account_token": "acct-demo-001",
              "post_date": "2026-08-01",
              "effective_date": "2026-08-01",
              "txn_type": "fee",
              "amount": 1500,
              "running_balance": 1500,
              "product_code": "checking",
              "description_code": "NSF"
            },
            {
              "account_token": "acct-demo-002",
              "post_date": "2026-08-02",
              "effective_date": "2026-08-02",
              "txn_type": "fee",
              "amount": 2000,
              "running_balance": 2000,
              "product_code": "checking",
              "description_code": "OD"
            }
          ],
          "gl_account_mapping": {
            "checking": "GL-1010"
          }
        },
        "source_b": {
          "label": "new_core",
          "ledger": [
            {
              "account_token": "acct-demo-001",
              "post_date": "2026-08-01",
              "effective_date": "2026-08-01",
              "txn_type": "fee",
              "amount": 3500,
              "running_balance": 3500,
              "product_code": "DDA",
              "description_code": "NSF+OD"
            }
          ],
          "gl_account_mapping": {
            "DDA": "GL-1010"
          }
        }
      },
      "output_payload": {
        "mode": "diff",
        "period_label": "2026-08",
        "currency": "USD",
        "minor_unit_exponent": 2,
        "single_source": null,
        "diff_sources": {
          "source_a": {
            "label": "legacy_core",
            "gl_account_mapping": {
              "checking": "GL-1010"
            },
            "ledger_row_count": 2,
            "mapped_row_count": 2,
            "totals": [
              {
                "gl_account_code": "GL-1010",
                "total_minor_units": 3500,
                "total_display": "35.00"
              }
            ]
          },
          "source_b": {
            "label": "new_core",
            "gl_account_mapping": {
              "DDA": "GL-1010"
            },
            "ledger_row_count": 1,
            "mapped_row_count": 1,
            "totals": [
              {
                "gl_account_code": "GL-1010",
                "total_minor_units": 3500,
                "total_display": "35.00"
              }
            ]
          },
          "comparison_basis": "Both sides are derived here from their own supplied ledger rows and their own declared product_code -> gl_account_code mapping. Neither side is treated as the correct figure -- a difference is reported symmetrically as a conversion-balancing finding.",
          "per_account_deltas": [
            {
              "gl_account_code": "GL-1010",
              "source_a_total_minor_units": 3500,
              "source_a_total_display": "35.00",
              "source_b_total_minor_units": 3500,
              "source_b_total_display": "35.00",
              "delta_minor_units": 0,
              "delta_display": "0.00",
              "agrees": true
            }
          ]
        },
        "verdict": "MATCHES",
        "indeterminate_reason": null,
        "rejected_inputs": [],
        "citations": {},
        "rationale": [
          "GL tie-out recomputed for period 2026-08, currency USD, diff mode -- legacy_core versus new_core.",
          "legacy_core: 2 ledger rows supplied, 2 attributable to a GL account code. new_core: 1 ledger row supplied, 1 attributable to a GL account code.",
          "The diff spans 1 GL account code across both sources; no side is asserted correct.",
          "legacy_core and new_core agree on every one of the 1 account code compared.",
          "This tool independently recomputes and receipts GL tie-out arithmetic given the caller's own declared chart-of-accounts mapping. It is not a core alternative, does not audit or find bugs in any vendor's system, and makes no claim of endorsement by or determination of legality or accounting-standard compliance about any core platform, mapping, or figure."
        ],
        "not_proven": [
          {
            "item": "Not an accounting-standard or legality determination",
            "detail": "This kernel recomputes GL tie-out arithmetic given the caller's own declared product_code -> gl_account_code mapping. It makes no claim about whether that mapping, the ledger, or the reported/compared figures comply with any accounting standard, GAAP treatment, or regulation."
          },
          {
            "item": "Chart-of-accounts mapping is caller-asserted",
            "detail": "The product_code -> gl_account_code mapping is a caller-declared chart-of-accounts mapping, never inferred or independently verified against the bank's own general-ledger system by this kernel."
          },
          {
            "item": "No per-core export adapter",
            "detail": "This kernel consumes only the Sec0 generic ledger CSV shape (mapped by the caller to the JSON fields below). It does not read any core's native export format (Episys, SilverLake, DNA, Premier, or otherwise) and makes no claim about those formats."
          },
          {
            "item": "Diff mode asserts no correct side",
            "detail": "In diff mode, a divergence between source_a and source_b is reported symmetrically as a conversion-balancing finding. This kernel does not determine which source, if either, holds the legally or operationally correct figure."
          },
          {
            "item": "Input accuracy",
            "detail": "The ledger rows, chart-of-accounts mapping, and reported/comparison figures are caller-supplied and asserted, not independently verified against source records."
          }
        ],
        "fence": "This is an independent recompute and receipt, not a core alternative, not a vendor audit, and not an endorsement claim by any core vendor or platform. The chart-of-accounts mapping is a caller-declared input, never chosen or inferred. A divergence is an arithmetic finding, never a determination that a figure is incorrect or that funds are owed -- interpretation belongs to the caller. Diff mode asserts no correct side between the two sources compared.",
        "note": "Deterministic GL tie-out recomputation for one stated period, in either single-source mode (recompute vs a reported trial balance) or diff mode (two full sources diffed against each other for conversion balancing). Single-run and stateless: it holds no records, runs on no schedule, and retains nothing. It performs no core posting integration of any kind (batch, caller-pasted export only)."
      },
      "golden_hash": "7c788277fb7ab9dbe443993ffdeb1020df5cbe826c86a87d0d1976eab37079d0"
    },
    {
      "name": "diff-mode-diverges",
      "policy_parameters": {
        "mode": "diff",
        "period_label": "2026-08",
        "source_a": {
          "label": "legacy_core",
          "ledger": [
            {
              "account_token": "acct-demo-001",
              "post_date": "2026-08-01",
              "effective_date": "2026-08-01",
              "txn_type": "fee",
              "amount": 1500,
              "running_balance": 1500,
              "product_code": "checking",
              "description_code": "NSF"
            }
          ],
          "gl_account_mapping": {
            "checking": "GL-1010"
          }
        },
        "source_b": {
          "label": "new_core",
          "ledger": [
            {
              "account_token": "acct-demo-001",
              "post_date": "2026-08-01",
              "effective_date": "2026-08-01",
              "txn_type": "fee",
              "amount": 1000,
              "running_balance": 1000,
              "product_code": "DDA",
              "description_code": "NSF"
            }
          ],
          "gl_account_mapping": {
            "DDA": "GL-1010"
          }
        }
      },
      "output_payload": {
        "mode": "diff",
        "period_label": "2026-08",
        "currency": "USD",
        "minor_unit_exponent": 2,
        "single_source": null,
        "diff_sources": {
          "source_a": {
            "label": "legacy_core",
            "gl_account_mapping": {
              "checking": "GL-1010"
            },
            "ledger_row_count": 1,
            "mapped_row_count": 1,
            "totals": [
              {
                "gl_account_code": "GL-1010",
                "total_minor_units": 1500,
                "total_display": "15.00"
              }
            ]
          },
          "source_b": {
            "label": "new_core",
            "gl_account_mapping": {
              "DDA": "GL-1010"
            },
            "ledger_row_count": 1,
            "mapped_row_count": 1,
            "totals": [
              {
                "gl_account_code": "GL-1010",
                "total_minor_units": 1000,
                "total_display": "10.00"
              }
            ]
          },
          "comparison_basis": "Both sides are derived here from their own supplied ledger rows and their own declared product_code -> gl_account_code mapping. Neither side is treated as the correct figure -- a difference is reported symmetrically as a conversion-balancing finding.",
          "per_account_deltas": [
            {
              "gl_account_code": "GL-1010",
              "source_a_total_minor_units": 1500,
              "source_a_total_display": "15.00",
              "source_b_total_minor_units": 1000,
              "source_b_total_display": "10.00",
              "delta_minor_units": 500,
              "delta_display": "5.00",
              "agrees": false
            }
          ]
        },
        "verdict": "DIVERGES",
        "indeterminate_reason": null,
        "rejected_inputs": [],
        "citations": {},
        "rationale": [
          "GL tie-out recomputed for period 2026-08, currency USD, diff mode -- legacy_core versus new_core.",
          "legacy_core: 1 ledger row supplied, 1 attributable to a GL account code. new_core: 1 ledger row supplied, 1 attributable to a GL account code.",
          "The diff spans 1 GL account code across both sources; no side is asserted correct.",
          "legacy_core and new_core diverge on 1 of 1 account code. Each divergence is listed with both figures, symmetrically, with no side asserted correct.",
          "This tool independently recomputes and receipts GL tie-out arithmetic given the caller's own declared chart-of-accounts mapping. It is not a core alternative, does not audit or find bugs in any vendor's system, and makes no claim of endorsement by or determination of legality or accounting-standard compliance about any core platform, mapping, or figure."
        ],
        "not_proven": [
          {
            "item": "Not an accounting-standard or legality determination",
            "detail": "This kernel recomputes GL tie-out arithmetic given the caller's own declared product_code -> gl_account_code mapping. It makes no claim about whether that mapping, the ledger, or the reported/compared figures comply with any accounting standard, GAAP treatment, or regulation."
          },
          {
            "item": "Chart-of-accounts mapping is caller-asserted",
            "detail": "The product_code -> gl_account_code mapping is a caller-declared chart-of-accounts mapping, never inferred or independently verified against the bank's own general-ledger system by this kernel."
          },
          {
            "item": "No per-core export adapter",
            "detail": "This kernel consumes only the Sec0 generic ledger CSV shape (mapped by the caller to the JSON fields below). It does not read any core's native export format (Episys, SilverLake, DNA, Premier, or otherwise) and makes no claim about those formats."
          },
          {
            "item": "Diff mode asserts no correct side",
            "detail": "In diff mode, a divergence between source_a and source_b is reported symmetrically as a conversion-balancing finding. This kernel does not determine which source, if either, holds the legally or operationally correct figure."
          },
          {
            "item": "Input accuracy",
            "detail": "The ledger rows, chart-of-accounts mapping, and reported/comparison figures are caller-supplied and asserted, not independently verified against source records."
          }
        ],
        "fence": "This is an independent recompute and receipt, not a core alternative, not a vendor audit, and not an endorsement claim by any core vendor or platform. The chart-of-accounts mapping is a caller-declared input, never chosen or inferred. A divergence is an arithmetic finding, never a determination that a figure is incorrect or that funds are owed -- interpretation belongs to the caller. Diff mode asserts no correct side between the two sources compared.",
        "note": "Deterministic GL tie-out recomputation for one stated period, in either single-source mode (recompute vs a reported trial balance) or diff mode (two full sources diffed against each other for conversion balancing). Single-run and stateless: it holds no records, runs on no schedule, and retains nothing. It performs no core posting integration of any kind (batch, caller-pasted export only)."
      },
      "golden_hash": "a84b4b40cd5b2f9d09b4e0352098c145913a0dad654b511adbaefd3f502e1b28"
    }
  ]
}
