Research
The question under all of it is the one that matters for anyone who deploys an AI system and then stops watching: what has to be fixed, what may move, and how do you know it worked? My answer, built over two years and four systems, is that the fixed part is a record nobody can rewrite, a rule that says what counts, and a score that is rigid everywhere; that everything else is a bet; and that a bet is judged by a world that charges, under a test an operator may read whenever he likes. The current instance is jack, and the book about it is where the argument is made in full.
A Court for Agents, and jack
jack is a court for a self-modifying agent. Its centre is one append-only, hash-chained, signed file; a 450-line checker that accepts or refuses each entry; and a judge that runs the checker over every pull request. The parties are one person and several language-model sessions, and every suggestion any of them makes is a forecast under a proper score — log-loss against a base rate built from past frequencies alone — resolved by a different party from saved evidence. The system is built in layers, each tried in a window: a pre-registered experiment whose criteria, null, attack list and maximum duration are committed before it opens, and which ends as soon as a betting test crosses its mark, so the operator may look whenever he likes without inflating the error rate. The agent that will rewrite its own programs arrives at layer C3. What exists today is the court that will judge it.
A Court for Agents is the monograph. It is built as a construction: each chapter starts from what the last one built, names the problem it cannot solve, states the old result that leaves no choice — Rice, Löb, Dawid, Ville, Hart, Fuller, Conant and Ashby — and adds the smallest thing that discharges it. Every number carries the entry of the record it came from and the tool run that recomputed it, so a reader with a clone can repeat it. The windows so far, as the book reports them: C1a, the ledger, closed on day six of fourteen with every pre-stated criterion met; C1b, the clerk, closed in under twenty-five hours with the liveness test’s wealth at about 25.5 against a pass mark of 20; C2a, the value test, is running and reports to 15 November. The first edition cuts at C3. Until then the book proves the court works, not that the agent does, and says so.
The founding argument is The Science Was Done. The Engineering Wasn’t. The fifteen results that force the design, with the mechanism that discharges each, are in Fifteen Things a Self-Modifying Agent Cannot Do Without. Essays from the book collect under the series. In the field’s own terms: this is AI control and scalable oversight done as institutional design, with pre-registration, mutation testing, proper scoring rules and anytime-valid inference as the instruments.
assize: the predecessor court
Before jack there was assize, a court for coding agents run through October 2026: a constitution in a CLAUDE.md, builders and reviewers that never share a context, an auditor on a third model, a forecast ledger scored by log-loss, models elected to each role by their record, and a judge sealed as a container image pinned by digest. Every check had to prove it could fail by catching a planted fault — thirty checks, 81 planted faults, all caught at the seal — and the judge’s own measurement showed a half-achievement improvement in the Crafter benchmark detectable at 33 episodes per arm. It reached its seal and a measured verdict. It also cost 121 of my repairs in four days, and twenty merges on its own procedure for every four on the thing it was building, which is the measurement jack was designed to drive to zero. The account is The Court That Tried Itself; the dispatch from its first week, scored against the record afterwards, is Build the Court Before the Agent.
proplang and wald: languages in which only a Bayesian agent can be written
proplang is a small language built on one claim: an agent that adapts to a changing world needs no adaptation machinery. If hypotheses are programs and the prior over them is their description length under a grammar — Solomonoff’s — then adaptivity, bounded rationality and inductive bias are consequences of the language rather than modules bolted on, and the alphabet of the language is the prior. Every terminal you admit costs a bit against every hypothesis that uses it, so the design method is deletion: each surviving terminal carries an executed proof that removing it costs capability. The repository is a closed, frozen artefact built under the frozen-oracle protocol: the acceptance tests were written and cryptographically signed before any implementation existed and handed to a coding agent that could not change them. One result closes a loop with my own 2011 paper: a latent drift-rate the update infers matches an oracle-tuned forgetting factor to within a bit, and forgetting turns out to have been content smuggled in as machinery.
wald is the kernel of a language in which only Bayesian decision-theoretic agents can be written: exact rational arithmetic, beliefs sealed inside the kernel, and the one place a choice is made by expected utility. It is the independent auditor of doorplate.dev’s decisions and prices Renavon’s own portfolio choices, which is the test of a decision kernel: whether it is trusted with a decision that costs money.
Credence: the retrospective
Credence treated an LLM agent’s tool selection as a decision problem — a Beta posterior over each tool’s reliability, and the expected value of information before every call. Its announced headline, a twelve-fold win over LangChain ReAct on score while being less accurate, did not survive a fair benchmark: the comparison had handed the agent each question’s category as an oracle. Take the oracle away and a frontier model wins on raw score, and a one-line greedy ablation beats the full agent under every credit-assignment rule tested. The paper was withdrawn and the record of why published instead. What survived is a law rather than a victory — the value of exploration is contingent on the quality of attribution, +27 with clean categories and −12 with inferred ones — and a working method: criteria frozen and signed before the code exists, so that a result cannot be designed around. Two applied spin-offs stand on their own: a governor that gates a coding agent’s tool calls by expected utility, learning from the human’s approvals, which surfaced an injected data exfiltration at 0.94 precision while interrupting 1.2% of safe sessions; and a model router that cut cost by 96% and latency by half against always using one premium model, with higher quality.
Papers in preparation
The frozen-oracle trust protocol, as a method paper: acceptance tests signed before the code, mutation testing as the proof that a check can fail, and the custody chain that makes the record legible to a reader who was not there. Second, the exploration-attribution contingency law from the Credence benchmark, as a negative-result note. Then the arXiv working paper of the book: chapters 2, 4, 5, 6 and 8 compressed, the necessities, testing by betting, the election, where the regress stops, and the windows as pre-registered sequential experiments.
Published Work
Freeman, G. & Smith, J.Q. (2011). Bayesian MAP model selection of chain event graphs. Journal of Multivariate Analysis, 102(7), 1152–1165. Chain Event Graphs — a class of graphical models more expressive than Bayesian networks for asymmetric problems — and Bayesian model selection over them. Foundational paper in the CEG literature; subsequent work on dynamic CEGs, causal algebras, and software builds on these methods.
Freeman, G. & Smith, J.Q. (2011). A Bayesian approach to event trees. Bayesian Analysis, 6(4). Non-stationary sequential models with conjugate Bayesian updates, using an exponential forgetting mechanism to track regime change. Fifteen years later, that forgetting factor is the thing proplang deletes: a latent drift-rate the update rule infers matches the oracle-tuned forgetter to within a hair, and forgetting turns out to have been content smuggled in as machinery all along.
Google Scholar → — 1,750+ citations across statistics and epidemiology.