A client-trust review period asks two separate questions: did the declared trust balances reconcile, and are the matter's dated obligations still open. This pack answers both as evidence instead of as two spreadsheets nobody cross-checks. Stage 1 recomputes a three-way trust reconciliation from a declared bank balance, trust-ledger balance, and per-client ledger total, and gives the period exactly one verdict. Stage 2 sweeps the declared docket against caller-declared roll rules and gives every record exactly one status, so a period that reconciles cleanly but leaves a filing deadline open stays visible rather than getting lost between two unrelated checks. Stage 3 wraps the receipt trail in a shareable evidence bundle stamped with the tier label the caller's declared gate results qualify it for. Every input is declared: the pack reads no bank feed, no accounting system, and no court docket, so it evidences whether the declared figures reconcile and whether the declared deadlines are met, never that the declared balances or filings are real.
check_iolta_three_way_reconciliation{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "check_iolta_three_way_reconciliation",
"arguments": {
"reconciliation_tolerance_minor": 100,
"statement_period": {"start_date": "2026-06-01", "end_date": "2026-06-30"},
"bank": {"ending_balance_minor": 5000000, "statement_date": "2026-06-30"},
"trust_ledger": {"ending_balance_minor": 5050000, "as_of": "2026-06-30"},
"client_ledgers": [
{"client_id": "client-A", "ending_balance_minor": 3000000, "as_of": "2026-06-30", "entries": [
{"date": "2026-06-05", "amount_minor": 200000, "description": "Retainer deposit"},
{"date": "2026-06-20", "amount_minor": 100000, "description": "Additional retainer"}
]},
{"client_id": "client-B", "ending_balance_minor": 2050000, "as_of": "2026-06-30", "entries": []}
],
"outstanding_items": [
{"type": "deposit_in_transit", "date": "2026-06-29", "amount_minor": 100000, "description": "Client A retainer deposited 6/29"},
{"type": "uncleared_check", "date": "2026-06-15", "amount_minor": 50000, "description": "Disbursement check #1042"}
]
}
},
"id": 1
}
sweep_docket_deadlines{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "sweep_docket_deadlines",
"arguments": {
"as_of_date": "2026-08-08",
"due_soon_days_threshold": 7,
"roll_rule": {"roll_weekends": true, "roll_direction": "forward", "holiday_dates": ["2026-08-10"]},
"records": [
{"date": "2026-08-08", "action": "File answer", "type": "filing", "source": "court order", "done": false},
{"date": "2026-08-09", "action": "Serve discovery responses", "type": "discovery", "source": "FRCP 26", "done": false},
{"date": "2026-07-01", "action": "Initial disclosures", "type": "discovery", "source": "FRCP 26(a)", "done": true},
{"date": "2026-09-15", "action": "Pretrial conference", "type": "hearing", "source": "scheduling order", "done": false}
]
}
},
"id": 2
}
chain.parent_hashes already carries the Stage 1 receipt's hash under the standard's linear parent-threading, wrapped in one shareable bundle stamped with the SPEC.md §SIDECAR.1 tier label the caller's declared gate results qualify it for. The label re-expresses declared gate outcomes and mints no new trust claim. Final stage.assemble_ocg_evidence_bundle{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "assemble_ocg_evidence_bundle",
"arguments": {
"artifact_tool_id": "art-588-docket-deadline-sweep",
"artifact_execution_hash": "<execution_hash from Stage 2>",
"gate_results": {
"envelope_well_formed": true,
"execution_hash_recomputes": true,
"chain_execution_valid": true,
"mandate_gates_valid": true,
"compute_integrity_proof_valid": false
},
"proof_refs": []
}
},
"id": 3
}
INCOMPLETE is never treated as a pass.
INCOMPLETE, which is about missing top-level inputs rather than one bad record.
Copy this paragraph into Claude, OpenClaw, or any MCP-aware agent to run this whole workflow on the server and check one field that answers a real question.
Question: At trust closeout, does every client ledger tie to the bank statement within our reconciliation tolerance?
Run the AINumbers MCP tool `run_chain` with {"chain":"trust-audit-closeout-pack"} and read `art-566-iolta-three-way-reconciliation.verdict`.
Re-run with `inputs` for `art-566-iolta-three-way-reconciliation`, reusing the values that result echoed, with `bank` changed so the statement ends 777 minor units above the ledger. Compare the same field.
Verify: call `verify_execution_hash` (https://mcp.ainumbers.co/mcp) with `claimed_hash` set to `composite_execution_hash` and the full `composite_artifact`.
Ledger, for a human re-check: https://ledger.ainumbers.co/
PII rule: send synthetic or anonymised inputs only. The MCP server runs these kernels and logs no payloads.
Chain page: https://ainumbers.co/chaingraph/chains/trust-audit-closeout-pack.html