AWS ships formal-logic requirements checker — catching spec bugs before LLMs touch code
Amazon Q Developer's new Kiro Requirements Analysis uses SMT solvers to find contradictions and gaps in software specs, pivoting the AI coding narrative from "generate faster" to "catch failures earlier."
The story
AWS launched Requirements Analysis inside its Kiro platform[1] on Friday, applying satisfiability modulo theories (SMT) solvers and automated reasoning to catch bugs at the specification layer — before code exists. The tooling scanned real-world software requirements and flagged defects in roughly 60% of them: contradictions, missing constraints, impossible states. That failure rate isn't an indictment of engineers; it's the base rate of how hard it is to write coherent specifications in natural language when systems have dozens of interacting constraints. Amazon Q Developer now surfaces these logic errors in the IDE before a developer or LLM writes a single line of code. This matters because the entire AI coding stack has been optimized for speed at the wrong layer. GitHub Copilot, Anthropic's Claude Code, and every other assistant races to turn incomplete specs into working syntax — but "working" and "correct" diverge when the requirements themselves are contradictory or underspecified. A model that writes flawless Python from a broken spec delivers the wrong software faster. AWS is targeting the earlier, more expensive failure mode: the one that ships to production, passes CI, and breaks under edge cases no one anticipated because the requirements never closed the loop. Automated reasoning isn't new — it's been the backbone of AWS's own infrastructure verification for years, inherited from Byron Cook's group — but shipping it as a product inside a mass-market coding assistant is a category shift. The bear case is adoption friction: SMT solvers require structured input, and most teams write requirements in Jira tickets and Notion docs, not formal constraints. AWS has wrapped natural-language parsing around the solver, but if the translation layer is lossy or the feedback loop feels like extra ceremony, developers will route around it. The bull case is that LLM-generated code makes formal verification economically viable for the first time — when humans write 100 lines a day, verifying specs feels like overhead; when an agent writes 1,000 lines an hour, catching requirement bugs before generation becomes the highest-leverage intervention in the pipeline. If Kiro's requirements checker becomes table stakes, AWS just moved the moat from "fastest autocomplete" to "correctness infrastructure," a game GitHub and Anthropic aren't yet playing.
The rest of this story is for subscribers.
Including Our Take, the Tailwinds & headwinds framing, Connections across the FOBI roster, and What should you do.
Already subscribed? Sign in →




