
Problem. A dark factory is only as good as its checks, and in this challenge the shipped checks are a sample — as little as 11% of a stage. A factory that trusts them ships the rest broken, and one that asks a human for help is not dark. Solution. The Adversary Line is a band of five coding-agent seats in Band Desktop. The Foreman plans and routes; the Builder and Finisher build the service and its screens; the Adversary writes a requirements ledger from the specification and verifies every commit against it; the Saboteur plants known defects in scratch copies and measures how many the checks catch — on stage 1 the shipped checks caught 8 of 11, the Adversary's probes 11 of 11. Review changes outcomes: at stage 3 the Adversary blocked a commit that passed every shipped check, over a field the specification requires; at stage 4 it disclosed that its own rows were too thin, the Builder's new fixture then failed on the Builder's own planner — a party of two seated at a six-seat table while a two-seat table stood free — and the Foreman voided its own acceptance until the fix was in. Result. From one dispatch and no other human message, the band built all four of Tablekeeper's stages — a restaurant reservation service with idempotent bookings, time zones, combined tables, booking screens, recurring bookings and replanning around closed tables — each stage claimed by the event's own harness in isolated mode, all 158 shipped checks of the last stage passing. Every seat runs a free model: $0 for 5,250 model turns, with 97% of the input served from cache, measured per seat. What went wrong is in FACTORY.md, including defects the seats planted in stage 4 and never took out; our packaging commit puts stage 4 back to the accepted tree. Who it is for. Any team that wants an unattended coding factory it can inspect: five generic mandates, one jailed launcher, and a step-by-step setup in FACTORY.md. Pointing it at a different problem changes only the task.
6 Oct 2026

Every project fixes bugs, but a fix only stays fixed if some test notices when it goes away. Antibody checks that. It puts a project's past bug fixes back one at a time, on today's code, and runs the project's own tests. Before the event we measured the problem on 18 popular Python libraries. We undid 479 fixes for real bugs, and 139 times every test still passed. When a fix shipped without its own test, undoing it went unnoticed 100 times out of 109. One of them is sqlparse's published security fix for a slowdown attack: take it out and the attack works again, with all 506 tests green. IBM Bob does the judgment. It reads each fix's bug report to decide which fixes were real bugs, then starts one subagent for every fix that slipped through. Each subagent writes the missing regression test, and a script proves it: the test must fail with the bug put back and pass with the fix in. On sqlparse, 13 of the 20 past bugs we could check were caught by its tests before Bob, and 18 after, with five new tests that Bob's subagents wrote and proved, one of them for that security fix. One is still exposed, and the ledger says why. Mutation testing invents bugs. Antibody puts back the ones a project really had. The Immunity Ledger lists every past bug with a link to its public fix, and fixes we couldn't run count as no data, never as safe. A CI check fails the build when a past bug has no test that catches it (unless someone accepts it with a written reason), and when a proven test is deleted.
27 Sep 2026

Everyone sells iron condors — both wings, unconditionally, so half the time you sell the underpriced side. Contour measures the surface first and sells only the rich side: SPY, QQQ, IWM. ▪ THE RULE — vrp_ratio under 1.30: trade nothing, implied is not rich enough. skew_z at or above +0.8: sell a put spread. At or below −0.8: sell a call spread. In between: sell the condor. vrp_ratio is ATM implied over 10-day realized; skew_z is the 25-delta put/call IV gap against a prior. ▪ AI LOGIC — GLM-5 on Amazon Bedrock. Every model output can only make the agent trade less, structurally: execute.py never imports the model layer, so none reaches an order. It may name blackouts, veto a structure, or stand the book down; never a strike, size, or price. No brain: half size. Off-schema: fail closed. ▪ RISK GATES — nineteen pure functions: twelve for the book, seven for the sleeve. Zero I/O, fixed order, and the reason is journaled whether a gate passes or fails — a no-trade cycle is as auditable as a trade. Book 1.678% + sleeve 1.200% + tail 1.122% = exactly the 4% halt distance, asserted as an equality. ▪ ALPACA — writes go through the Alpaca CLI, and that is a finding: the MCP server cannot place multi-leg option orders — legs arrives as a JSON string and fails validation (alpaca-mcp-server#97; fix sent as #118). Reads use alpaca-py, merging snapshots with contracts for open interest. Three-rung limit ladder, per-leg fill reconciliation, GitHub Actions every 15 minutes, an append-only SHA-256 journal verified in your browser. ▪ P&L — account PA35XVXLIO0E holds two traders. Agent orders carry a contour- prefix; the rest are the operator's tail trades. At the last refresh: +0.15% for the agent, −0.64% for the operator — a field the broker records, not our bookkeeping. ▪ CHECK IT — no edge claimed: a 387-cycle backtest returned +0.93%, t = 0.37. 298 tests pass; --replay reproduces every decision from a committed fixture. One-pager: WRITEUP-ONEPAGE.md.
4 Sep 2026