Yichus / Reference / API MCP tools
api_obligations
The guided commit-strategy surface: which strategy your discharged obligations license (serialized commit, per-key independence, single-write commit, lattice single-write, bounded witness search), and — when a faster one is one obligation away — one pre-written sentence saying what would make this faster plus one paste-ready law snippet. Discharge is fail-closed on verdict status: only laws with a holds verdict count, and holds is bounded evidence, never proof. The engine does not check that a named law expresses its obligation or that it applies to the deployed handler — those bindings are your assertions, restated in the verdict's unverifiedAssertions field — and the licensed strategy stays advisory until a later phase verifies them.
Kind: ObligationsCheck. Origin: Yichus/Mcp::catalog.
CLI: none — obligation discharge by strategy selection (ApiChecks.obligationsJson) has no dedicated CLI subcommand; `law` runs the seeded checker, not the selector.
Parameters
sources(required, array) — JSON array of {fileName, source} Bosatsu files including the laws and the Obligations binding.seed(optional, integer) — Optional run seed; the whole run replays from this one number (default 41).runs(optional, integer) — Optional generated inputs per obligation (default 200).shrink(optional, integer) — Optional shrink budget per counterexample (default 200).
Read the result according to this tool’s scope: static checks, bounded execution checks, and descriptive diagrams answer different questions. A successful call is not a general approval of the program. The safety and permissions guide compares the checks and provides editable ownership, guard, and role examples.