Working Surfacelink · 20 Oct 2026
01
A small sailing boat sits low in the water while a mechanical crane keeps lowering padlocks, chains and spare anchors onto its deck, and a figure seen from behind, the back of the head showing, lifts one anchor and drops it over the side, the whole scene drawn with wide empty margins on every side.
seangoedecke.com

What requirements don't you have?

Sean Goedecke · 19 October 2026

How-to · critique & review · agents · Human approval

Read the original
Takeaway

Sean Goedecke, a software engineer and writer on system design, says that about half the large AI-generated changes he reviews add a requirement nobody asked for.

Summary

Goedecke argues that well-designed systems gain speed and simplicity by deliberately dropping requirements, such as always-current data or concurrent writes. Coding agents have little business context, so they add locks, repeated checks and edge-case handling unprompted, until a short change grows into a very large one.

Key points
  • Elegant systems drop requirements on purpose: Unicorn drops shared state between server processes, S3 drops multi-file transactions and SQLite drops concurrent writes.
  • Deciding which requirements to drop needs both technical and business knowledge, and engineers and product managers often struggle to trust each other on it.
  • AI coding agents treat hypothetical edge cases as bugs and add safeguards for them unless told otherwise.
  • Goedecke tells the agent in the prompt that stale or briefly inconsistent cached data is acceptable, and scans each change first for unneeded locks and layers.
Implication

A team that reviews AI-written code can check each change for requirements the agent invented, not only for errors; this is an inference and is not the author's claim. The piece reflects one engineer's experience and gives no measured data beyond his own estimate.

Plays
Engineering

When reviewing an AI-generated change, look first for added locks, extra checks and layers that no requirement calls for.

Engineering

State in the prompt to an AI coding agent which requirements the change may ignore, such as stale cached data.

Derived by Working Surface from the article; more in the Playbook. Source line: About half the time I review a large AI-generated change, I notice some unnecessary requirement that makes the diff more complex.

Source issue

20 October 2026: as AI agents make code fast to write, the scarce work moves to human judgement about what to build, what to leave out, whether the work is right, and how teams stay aligned.