Speaker Notes

Why Faster AI Development Often Increases Rework | Cian Clarke

Adopting spec-driven development and context engineering prevents the massive rework caused by vibe coding by grounding AI models in rigorous, human-reviewed, and testable requirements.

AI Native Dev · 54:03 · YouTube ↗

Podcast episode · 2 hosts + guest  Intermediate · Concepts and workflow strategy

Highlights

5 clips · 9 min of 54 min
    • Incomplete requirements cause AI models to hallucinate missing features and logic.
    • Ambiguity in prompts leads to massive rework, wasted tokens, and poor code quality.
    • Spec-driven workflows act as context engineering to properly ground models in the desired intent.
    • Specs must be designed for human consumption to enforce rigorous code and feature review.
    • Blindly accepting AI-generated requirements defeats the purpose of spec-driven engineering.
    • Modern developer documentation formats like Markdown and Mermaid happen to be easily parsed by LLMs.
    • Excessively verbose specs hurt model output quality and exceed context limits
    • Sharding splits large PRDs and architecture docs into functional and component subsets
    • Only relevant subsections of shared documents should be sent to the LLM
    • Humans should stay in the loop for architecture and requirements definition
    • Once a backlog is decomposed, agents can execute tasks autonomously in sandboxed VMs
    • Safety guardrails and containerized environments mitigate risks of destructive agent commands
    • Requirements can be written as testable statements using structured phrasing like EARS
    • Specifications can directly drive functional test cases and Playwright automation
    • Treating code as a black box allows LLM-as-a-judge validation against requirements

Questions this video answers

6 · every answer cites the moment it was said
01 What happens when you feed incomplete requirements into an AI coding model? 2 sources · 0:05

Incomplete requirements cause the model to hallucinate missing features, resulting in massive rework, wasted tokens, and poor code quality. Instead of asking clarifying questions like a human would, the model simply makes up solutions. This magnifies standard vagueness into significant repository code smell.

02 How do I use spec-driven workflows to guide AI development? 2 sources · 9:48

You can use open-source frameworks like BMA to act as context engineering on steroids, grounding the model in detailed markdown specifications rather than relying on one-shot prompts. This approach forces stakeholders to align on requirements and constraints upfront before the model builds the software. It bridges the gap by letting human-reviewed documentation steer autonomous generation.

03 Who should be the primary audience when writing specifications for AI workflows? 2 sources · 21:31

Specifications must be written primarily for human consumption and review rather than just for the AI model. Blindly accepting generated PRDs without human vetting defeats the purpose of spec-driven development. Modern developer tools easily parse standard markdown and diagrams, making human-readable docs ideal for both developers and models.

04 How do you prevent specifications from becoming stale documentation? 2 sources · 24:34

To combat documentation rot, frameworks allow developers to inject new work items and specific implementation specs directly into the backlog. While full cascading back to PRDs isn't always automatic, tying detailed feature specs to backlog items helps keep documentation in sync. Ultimately, the tooling needs to evolve further to fully solve this maintenance challenge.

05 What is the right-size for project specifications to avoid context window degradation? 2 sources · 30:37

Overly verbose specifications can slow teams down and degrade model performance by taking up too much of the context window. To solve this, frameworks use a technique called sharding to split large requirements and architecture documents into manageable subsets. Sending only the relevant slice of documentation ensures the model maintains high-quality outputs.

06 How can testing be integrated into spec-driven development to build trust in agent autonomy? 2 sources · 48:27

Writing specifications using structured phrasing sets you up nicely to define testable requirements. As models increasingly write tests to validate their work through separate artifacts like automation tests, developers can better trust agent autonomy. This brings traditional software engineering quality practices into agentic coding workflows.

Section-by-section summary

12 parts

Nearform adopts spec-driven workflows for AI delivery

Nearform shifted from its Node.js roots toward exploring AI-native delivery models. They discovered BMA (Build More Architect Dream), an open-source framework that uses structured specifications to guide autonomous AI coding.

Vague requirements cause massive AI rework

Relying on ad-hoc vibe coding with incomplete requirements forces models to guess missing details. This ambiguity results in hallucinated features, wasted tokens, and significant repository code smell.

Software engineering shifts from coding to architecture

As line-by-line coding is increasingly handled by AI, developer craftsmanship moves up the abstraction stack. Senior engineers focus more on system design, dependency selection, and architectural trade-offs.

Specifications must be written for human review

Specifications should be crafted for human readability to ensure critical oversight during the review phase. Models are inherently adaptable to modern developer documentation formats, bridging the gap between human intent and machine execution.

Combating documentation rot in spec-driven workflows

Maintaining synchronization between specs and code remains a key challenge to prevent documentation rot. Modern tooling addresses this by attaching detailed feature specs directly to backlog work items, though complete bidirectional tracking is still maturing.

Spec-driven development requires cultural and tooling shifts

Adopting spec-driven methods is fundamentally a cultural change that surfaces assumptions upfront, but it requires proper tooling to succeed. Current tooling often forces single contributors to wear all engineering hats, highlighting the need for better multi-developer collaboration support.

Right-sizing specifications to prevent context degradation

Verbose specifications can slow teams down and overwhelm the LLM's context window. Frameworks use sharding techniques to split requirements and architecture documents into manageable pieces, ensuring only relevant context is sent to the model.

Spec-driven methods give startups a production-ready edge

While pure vibe coding offers rapid initial prototypes, it fails when scaling to hundreds of users. Spec-driven development requires slightly more upfront effort but yields cleaner repositories with thorough linting, test coverage, and infrastructure as code.

Inadequate requirements create severe technical debt

Poorly defined requirements lead to requirements debt that is much harder to recover from than standard code debt after generating thousands of lines of code. Robust research into formal methods aims to help models identify gaps and incomplete specifications early.

Balancing human oversight with agentic autonomy

Developers should maintain close oversight during architecture and requirements authoring, but can safely grant autonomy during backlog execution. Running agents in sandboxed containers with git guardrails allows teams to accelerate through stories without manual micromanagement.

Bridging specifications and test-driven development

Requirements written with structured syntax naturally map to testable assertions. By framing specifications as verifiable behaviors, teams can use automated UI tests and LLM-as-a-judge evals to validate black-box code against original intent.

Enterprise experimentation with spec-driven frameworks

Organizations are actively experimenting with codifying team rules, syncing backlog generators with issue trackers like GitHub issues, and running workflows via CI/CD actions. The goal for the future is to harvest these open-source experiments into scalable, unified delivery practices.

0:00 / 54:03
k play/pause · f fullscreen · m mute
n next · p previous clip · t highlights/full
< > slower/faster · / search what was said
  • BMA14× · first 0:37

    An open-source framework implementing a comprehensive spec-driven workflow for building software with AI.

  • Context engineering3× · first 0:22

    The practice of giving an AI model the best possible documentation and context to autonomously build software.

  • BEMAD7× · first 10:05

    A spec-driven development framework used to manage specifications, backlogs, and agentic workflows.

  • Sharding2× · first 31:02

    The practice of splitting large requirements or architecture documents into smaller, component-specific subsets for context windows.