
Most trading agents show you their wins. This one publishes its refusals and grades them. Each cycle runs a chain of gates. A deterministic regime read picks the side. An expected-value scan prices every listed expiry with a 20,000-path Monte Carlo and keeps the best one. An LLM analyst must pre-register the concrete condition under which it is wrong before it may approve anything. An adversarial LLM challenger then tries to destroy that thesis, and can cut the size or kill the trade. A risk officer refuses any edge not statistically distinguishable from simulation noise, and an arithmetic gate sizes what survives. Every decision, including every refusal, is appended to a public ledger. The refusals are then re-priced against live marks and scored gate by gate, so a refusal becomes a claim that can be checked rather than a virtue taken on faith. A gate-less shadow agent runs the same model beside it with every gate removed, showing what the LLM would have done unsupervised: on its first cycle, 70 contracts and $7,800 of risk against the gated agent's 8. All 63 pre-registered invalidation conditions were graded against daily closes. None fired, and 17 of 32 were set at a level the spread cannot reach without having already lost its maximum, which the agent now flags at decision time. Every order at the broker reconciles to a ledger decision. Also published: the post-mortem of a -$731 day, and field notes on the Alpaca options API including an undocumented 422 that cost four approved entries and that dry-run cannot catch. Alpaca paper account: PA3BY0HJORNC
4 Sep 2026

A contract is a power problem, not a reading problem. The stronger side writes the document; the weaker side signs it alone, often in a second language. Every other contract AI is aligned to the side that wrote it. Harvey, CoCounsel and Spellbook sell per seat to law firms, and the firm's client is almost always the party with counsel — the party that drafted the document. That is not an engineering gap, it is who signs their invoices. An incumbent cannot serve the counterparty without cannibalising its own buyer. Contraparte is built for the other side of the table, and everything follows from that. Seven AI stages run end to end, none stubbed: segmentation keeping the document's own clause labels; three independent panel reviews — Hermes 3 (Llama 70B), Qwen 2.5 72B, Mistral Small 3.2, separate requests, zero shared context, all served by Featherless AI; a redlined contract where each risky clause keeps its text and gains a [PROPUESTA →] counter-clause; and negotiation emails in Spanish and English, the English one drafted rather than translated. Consensus is computed in code, never asked of a model. It is built to refuse. A model that breaks the JSON schema shows "sin veredicto", never an invented verdict. A transport failure says so in Spanish and keeps your contract visible underneath the error. When the segmenter loses a clause, the app names it unprompted. The buyer is the jefe de personas at a Chilean staffing agency, out of the labour-compliance budget line: Chilean law makes the agency jointly liable for the contracts it issues, so this clause is its exposure too. Two thousand contracts through the panel costs under $20. Today this review does not happen at all. A lawyer costs more than a week of the wage the contract pays. The comparison is not against Harvey's price, it is against zero. The demo contract is my own, redacted. Clause SEXTO b pre-authorizes salary deductions for damage caused by negligence. All three models flag it RED, independently.
10 Aug 2026