Fig. 04 — the spec engine
SpecLoop.
Our proprietary spec generation system, built specifically for AI development. It produces the deepest spec in software — a PRD, a TDD, and a sequenced Implementation Plan where every requirement traces to a schema, every schema to a service, every service to a numbered build task. As deep as the build demands.
What a Specloop spec contains
A Specloop specification is a single document — typically 8 to 30 pages — written in plain language with technical sections where they matter. It is the source of truth for the build and the contract for delivery. Once you sign off, the scope, price, and timeline are fixed.
Every spec contains, at minimum, these sections:
§ 1 — Summary & outcomes
One paragraph that names the product, the user it serves, and the outcome it produces. If we can't write this paragraph clearly, the rest of the spec doesn't matter.
§ 2 — User roles & permissions
Every role that exists in the system, what they can see, what they can do, and what they can never do. Row-level security policies are derived directly from this section.
§ 3 — Data model
Every table, every column, every relationship, every index that matters. We sketch the schema before we sketch the UI because the data model is what the app actually is.
§ 4 — Workflows
Every meaningful user workflow described step by step, with branching for error states. This is the longest section in most specs and it's the one we revise most carefully — because workflows are where vague ideas turn into shippable behavior.
§ 5 — Pages & screens
Every page in the app, every meaningful state of every page (empty, loading, error, filled, success). What's on it, what it links to, who can see it.
§ 6 — AI behavior
For AI features: model choice, prompt shape, expected output, what happens when the model is wrong, cost ceilings, evaluation criteria. AI features that aren't specced this way break in production.
§ 7 — Integrations
Every third-party system the app touches: which endpoints, which webhooks, how auth is handled, what failure looks like, how retries work.
§ 8 — Acceptance criteria
The literal definition of done. Concrete, testable, written in advance. "When all workflows in § 4 complete end-to-end on staging and RLS is verified for each role, the build is accepted."
Why we write the spec first
Most software fails not because the team couldn't build it, but because nobody wrote down what was being built. Slack threads, Figma comments, and verbal agreements all decay; the spec doesn't.
Three direct consequences of writing the spec first:
- Fixed price. We know what's in scope, so we can quote a flat number. You know what you're paying, in writing, before any code is written.
- Fixed timeline. The spec is the schedule. There's nothing to discover mid-build because the discovery happened during the spec.
- Lower rework. Most rework comes from misaligned assumptions. A spec surfaces those assumptions before they become code.
What the spec doesn't do
The spec is not a Figma file, not a Jira backlog, and not a one-pager. It doesn't include pixel-perfect mockups (the design system handles that), it doesn't enumerate every bug to fix, and it doesn't pretend the future is fully known. It's a written contract for the first version of a working product.
Fig. 04.02 — sample
Read a real one.
Don't take our word for it — read an actual SpecLoop deliverable. This is an abridged, anonymised blueprint from a real engagement: roles, data model, workflows, AI behavior, acceptance criteria. Page through it inline, or download the PDF and take it with you.
Fig. 06.01 — sample blueprint
Specloop — Sample Blueprint.pdf
PDFs preview poorly on mobile. Tap below to download.
Download blueprintTrouble viewing? Open the PDF in a new tab.
Fig. 04.04 — questions