Not underwriting software. The defensible packaging file — the one your name is actually on.
SBA SOP 50 10 8 requires two separate debt-service coverage tests on a 7(a) deal — a business-only test and a global (business + guarantor) test — and forbids blending them into one number. Run the same deal shape through Credit's real engine and the two tests genuinely disagree:
A blended spreadsheet averages these into a single passing number and gets the deal wrong. The SBA's own SOP forbids blending the two tests — Credit computes and discloses both, independently, every time, never averaged.
If the SOP is re-issued and the floor changes, the pin's hash breaks and the number stops being trusted until it's re-captured — the constant doesn't quietly drift out of sync with the regulation it claims to cite.
Reproduced live against a running dev instance of this engine, on the representative deal above.
Attempt with an invalid signer credential:
POST /mint/:token {"deal": {…}, "signoff": {"name": "Brad Kiefer", "signerId": "brad-kiefer", "signerToken": "totally-wrong-token"}} {"status":"REFUSED","code":"bad-signer-token", "reason":"the presented signerToken did not verify for signerId \"brad-kiefer\" — either it's wrong, or no signer credential has ever been provisioned (see register_signer). The sign-off is the non-delegable human gate (Gate 7) and must now be bound to a real credential the signer alone holds, never just a self-typed name."}
With a real, provisioned credential, the same deal mints:
{"status":"OK","serial":"SHC-2026-08-25-624c00dcaada",
"scopeLine":"these figures are arithmetically consistent under the
inputs provided and the add-backs the broker selected — NOT a
credit decision, an approval, or a statement the underlying
numbers are audited or true"}
The serial is real output from a live mint against the representative deal above —
not an invented example. Any lender can independently re-verify a minted Hallmark
(GET /verify/:token/:serial or by presenting the VC directly), issuer-pinned, without an account.
Nothing about a specific deal is ever written to disk, at any point, by this product.
createLedger()) is a plain
in-memory array. There is no code path from a deal to a file — no ledgerFile
option exists to pass one.sha256 over canonicalized JSON) and stores only the hash. The raw business,
personal, and collateral figures a broker types in never leave that property.