- Author
- reuben brooks
- Published
- May 18, 2026
- Kind
- Personal blog post introducing the author's own tool, with a running demo
- Original
- reubenbrooks.dev/blog/structural-backpressure-beats-smarter-agents/
- Subject
- Harnesses and agent loops
- Themes
- Checking the work, Feedback loops
What it is
Reuben Brooks built Shen-Backpressure and explains it through a multi-tenant API demo. The post shows how formal specs can gate an AI coding loop.
What it says
- Brooks bets structural backpressure beats smarter agents for much production software.
- Prompt rules are behavioral gates that models follow often but not reliably. Compilers and type checkers are structural gates.
- Shen-Backpressure turns a Shen spec into guard types in Go or TypeScript using a generator.
- In the demo, a resource-access value needs a tenant-access value and proof of ownership.
- Each iteration runs five default gates. Failures feed into the next prompt.
- The author claims only that specified invariants become practically impossible to bypass by accident.
- The post concludes that production coding loops need better backpressure more than a better model.
What evidence it gives
The post shows one running demo with a curl transcript. It shows Alice refused access to another tenant. It shows a compiler error when a raw string is passed. It gives no benchmark and no comparison with a smarter model.
Interests and limits
The author built the tool and promotes it. The post tests no model-upgrade alternative. It names costs: writing the spec, and a larger trusted code base. Bypasses through reflection or careless SQL remain possible. The sixth gate is called experimental. The post says it is not a bet against better models.
Connections
These links are this wiki's own reading, not claims the sources make.
- The Coming Loop. Ronacher sees models adding local defenses instead of making bad states impossible. Brooks offers types that refuse such states at compile time. But Ronacher's loop needs only a useful signal, while Brooks wants a hard gate. How much signal does a loop need?
- Everyone Says Assembly Is Untyped—Everyone Is Wrong. GCC passes inline assembly along as a string it barely understands. Brooks says prompt rules have similar standing: followed often, not reliably. gingerBill checks instructions against tables, and Brooks generates guard types. Both move a promise into something a machine can refuse.
- Formal methods and the future of programming. Minsky's cost example is seL4, at 25 person-years for 8,700 lines. Brooks claims much less, covering only invariants someone specified. The two mark ends of one scale. How much guarantee does each hour of specification buy?
- An Empirical Study: AI Agent Rules Need Context and Layered Enforcement. Brooks separates behavioral gates from structural ones. The ActPlane study gives a rough measure of that line. Only 45% of policies can be enforced at the OS level. Recovery after a block also depended on explanation, at 97.7% against 31.4%.