DEV Community

Danny C. FSGen
Danny C. FSGen

Posted on

I asked ChatGPT to write my project brief

Everyone warns that AI over-engineers. I expected a spec bloated with 2FA, microservices, and a Kubernetes cluster for a CRUD app. What I actually got was worse, because it was reasonable.

I gave ChatGPT one sentence describing a property-inspection app and got back a clean, professional brief. Then I read it like an engineer scoping the work, and found three failure modes worth naming:

  1. The existential risk, buried in a subordinate clause. The app's core feature depends on a public land registry — and those are famously fragmented, often with no public API. The brief handled this make-or-break unknown with "integration with registry APIs or data sources where available." "Where available" is doing catastrophic amounts of load-bearing work. A generator optimizes for a document that looks complete; "this might be impossible, verify first" doesn't fill a section nicely, so it gets compressed and hidden.

  2. A silent scope decision. It specced "document capture with automatic image organization" — deciding, without telling me, that documents are photos to file, not text to extract. But comparing a deed against the registry means pulling the parcel number off the image. That's OCR, non-trivial, and it was assumed away in the gap between "photograph" and "organize."

  3. A state machine hiding inside two verbs. Inspections get "submitted" and "flagged." Innocent words that smuggle in a question nobody asked: is there an approval workflow? A supervisor role? If so, every inspection now has states, transitions, and per-state permissions — the difference between a form that saves data and a stateful workflow engine.

The root cause is the same each time: it never asks, it fills. A brief's job is to force decisions; a generator's job is to look finished. Those are opposite goals.

Full write-up (with the actual ChatGPT output): https://fsgen.com/blog/chatgpt-brief-teardown

Originally published on fsgen.com.

Top comments (0)