All Posts

  • Published on
    A looped transformer applies the same block of layers to a token several times over, so depth stops being a property of the weight file and becomes an argument you pass at inference. A rumour about OpenAI's Astra turned that idea into a fight about redlines, and almost nobody arguing had read the architecture. So this is the architecture, mechanically: the three-part forward pass and the two details every summary drops, why the initial state is random and the core is blind to which iteration it is on, how the test-time depth dial is manufactured during training by sampling r from a heavy-tailed distribution and truncating the backward pass to the last eight iterations, and what the loop actually costs — because it trades storage for time and creates no compute at all. The exchange rate has been measured: one recurrence is worth r^0.46 in equivalent parameters, real and comfortably sublinear. The genuinely strange result underneath is that looping moves reasoning without moving knowledge, confirmed independently by three groups using different methods, and the frontier of the idea is not a bigger loop count but a learned per-token router. Verdict: a real third scaling axis and a component rather than a paradigm — and on the monitorability argument, both camps were right about different questions.
  • Published on
    On real market data there is no answer key, so you can never tell whether an agent discovered real structure or overfit noise. superquant-bench inverts the trade-off: a fully synthetic 100-asset price panel with 22 known alpha patterns injected into it, giving the grader the exact true conditional mean of every return. That buys three things reality cannot — a prediction score with a literal zero noise floor (oracle 100, iid noise 0), a directly measured false-discovery rate via a pattern-free twin universe, and statistical look-ahead enforcement. A red-team of seven exploits validates the metrics, then four frontier models run under one identical Claude Code scaffold. The spread is 10×, model identity explains 75% of prediction variance — and the strongest model is the least disciplined, spraying false discoveries on the universe that contains nothing.
  • Published on
    Crypto leaderboards rank wallets by raw return, but return over a handful of trades is almost all noise. This post builds a three-level hierarchical Bayesian model — population, trader, trade — that learns each wallet's risk-adjusted skill as a posterior Sharpe ratio with honest uncertainty, shrinking thin-data traders toward 'no edge' so a lucky five-trade wallet is not mistaken for a skilled one. It covers the data (7.6M Hyperliquid fills reconstructed into per-position returns), partial pooling and shrinkage, the conjugate streaming updates, the full PyMC fit by NUTS, and a single continuous walk-forward showing the learned skill predicts the next trade and drives a top-10 copy account to 77% winning copies — before an honest autopsy shows most of that edge was concentration in one trending asset.
  • Published on
    Running Claude Code as an autonomous agent inside a GitHub-centric SDLC rests on one discipline: GitHub is the system of record, the agent's conversation is ephemeral, and everything that must survive across pull requests lives in repo files or GitHub itself. This post walks the full issue-to-merge loop — trigger modes, the Explore→Plan→Implement→Commit cycle, cross-session context persistence via CLAUDE.md, the four distinct automated-review surfaces, and the merge gates that keep an agent that literally cannot self-approve from ever merging by fiat. It is built from a fact-checked research pass (25 claims verified, 0 refuted, overwhelmingly first-party Anthropic sources) and is deliberate about separating verified mechanics from the viral stats that did not survive verification.
  • Published on
    For two years, getting useful work out of a coding agent meant being the loop yourself — prompt, read, prompt again. As models hold a hard problem for hours, the bottleneck moves: not 'can it write good code' but 'can it keep making progress on its own without losing the thread or declaring victory early.' Loop engineering is the discipline that answers that — you design the system that prompts the agent: discover work, attempt, get a feedback signal, self-correct, verify in a separate context, persist state on disk, decide what's next. This post lays out the architecture, the five building blocks, a worked worker/verifier loop in Python, the loops worth building first, the best practices, and an honest look at the risks (the 'confident token furnace'), with every flow rendered as a diagram.