All Code Is Slop (Except Mine) — Lauren Tan, SpaceXSI
Make agent corrections deterministic with code, lint rules, and verification so higher coding speed does not multiply existing problems.
- Turn repeated agent mistakes into lint rules, type checks, or better APIs instead of adding more prose instructions.
- Remove anti-patterns from the codebase; agents tend to copy existing workarounds and deprecated patterns.
- Give agents runtime and formal verification tools, then review artifacts such as videos, screenshots, and test results.
The notes capture the principles and examples; the talk offers few detailed walkthroughs. · Best for: Software engineers and teams seeking safer, higher-volume AI-assisted development.
The speaker argues that agent productivity depends on trust built through codebase quality, deterministic constraints, and strong verification—not on piling up written instructions. Repeatedly correcting agents should lead to changes that prevent the same mistake from recurring.
Build trust through the agent environment1:45
- Prioritize deterministic foundations: code and architecture, then verification, then prose instructions for judgment calls.
- Treat the codebase as a major input to agents; clean patterns are more likely to be copied.
- As code arrives faster, maintain the codebase like a garden: remove technical debt and anti-patterns before they spread.
Encode lessons as constraints4:51
- Dune uses constraints and lint rules to encode lessons from building desktop applications.
- Ban APIs that require nuance when they are frequently misused; the team restricts React useEffect in product code.
- Use directory structure and dependency checks to enforce boundaries, such as separating Electron renderer and main-thread code.
- Avoid relying on comments as guardrails: they can go stale and give agents a way to justify workarounds.
Make corrections deterministic9:05
- Turn each recurring correction into a deterministic check or eliminate the problem through API or architecture changes.
- Use lint errors that explain how to fix the root cause rather than patch around it.
- Reducing recurring review concerns can eventually let agents merge more of their own pull requests.
Verify agent work10:07
- Enable agents to run the application and use debugging tools, including the Chrome DevTools Protocol.
- Provide a feature map so agents have shared names for application features, and reusable custom CLIs for runtime checks.
- Use TLA+ for model checking major user flows, Lean for selected algorithm proofs, and Bombadil for property-based UI testing.
- Review verification artifacts such as videos, screenshots, diagrams, and state charts.
Scale only after foundations are strong13:11
- The speaker reports higher release volume while relative reverts stayed around half a percent and application performance improved.
- Before automating, add checks for anti-patterns, clean up existing instances, and strengthen verification.
- Once those foundations are in place, the team uses Graph Bot to orchestrate agents, fuzz the application, and open fixes.
Step by step
- When an agent makes a mistake, identify whether it can be prevented with a code change, API design, architecture, or static check.
- Add a lint rule, type check, dependency constraint, or other deterministic guardrail, and clean up existing violations.
- Give agents a way to run the application and use debugging tools; provide a feature map and reusable test commands.
- Add appropriate runtime, property-based, or formal verification, and inspect the resulting artifacts.
- Automate broader agent workflows only after the codebase and verification process reliably catch problems.
Tools & resources mentioned
- Dune — client framework with constraints and lint rules for desktop applications.
- React useEffect — example of an API restricted in product code because it is often misused.
- Cursor — Electron app referenced in examples of thread-boundary mistakes and timer-based workarounds.
- Chrome DevTools Protocol — runtime debugging access for agents.
- TLA+ — model checking for user flows across devices and platforms.
- Lean — proving selected algorithms.
- Bombadil — property-based testing for UIs.
- state chart — skill used to visualize application state from the user's point of view.
- Graph Bot / Grokbot — agent orchestration and automated application fuzzing described in the talk.
Notes are AI-generated from the video's transcript and may miss nuance.