You describe the feature in plain language. The AI writes the code. The app runs. The demo looks good. You ship it. Eight months later, a core component that every piece of your documentation references has never actually been in production.
That is not a hypothetical. That is what happened to Donna Rougeau, founder of Protected By ALFIE Inc and a 30-year SEO veteran, when she ran a line-by-line audit of her platform against its original specification. A scoring component for content trustworthiness existed only in old prototype files. It never reached the live system. Status updates, documentation, and client materials had all referenced it anyway. Eight months of “it’s done” missed the gap entirely.
“None of this was caught by asking, ‘Is it done?’ It was caught by refusing to accept the answer without evidence.” — Donna Rougeau
Her experience is the clearest argument yet for treating vibe coding as a prototyping accelerator, not a deployment pipeline.
What Vibe Coding Actually Is
The term was coined by Andrej Karpathy in early 2025. The core idea: describe a desired outcome in plain language, let the AI generate the implementation, and focus on intent rather than syntax. According to IBM, it accelerates prototyping and lowers barriers for non-engineers.
The problem is not the speed. The problem is that speed produces no signal about correctness. Requirements drift into something adjacent that merely looks right. Features appear complete. Logic seems sound. Then real users, real data, or real scale reveal the gap.

️ The Verification Framework
Closing the loop does not mean returning to manual line-by-line reviews. It means building a feedback cycle that the AI itself can participate in. Kyle Tryon, writing on Sentry’s engineering blog in late 2025, laid out a repeatable workflow built around distributed tracing and Model Context Protocol.
- Draft a persistent plan document before writing any prompt. This document must survive context windows and stay attached to the project.
- Instruct the agent to implement against that plan, not against a loose description in the chat thread.
- Deploy to staging with tracing enabled. Sentry’s tracing captures execution across front end, back end, databases, and distributed services, including timelines, metadata, and performance details.
- Run tests under realistic conditions, not just happy-path demos.
- Feed trace data back to the LLM via MCP. Prompt the agent to compare actual behavior against the original plan document.
“We are looking to see if any functions were not called, database queries not made, and any errors captured.” — Kyle Tryon, Sentry Engineering Blog
The result turns blind code generation into iterative refinement grounded in evidence. The agent that wrote the code also reviews the execution record. Discrepancies surface before production.
The Security Layer You Cannot Skip
Verification is not only about correctness. AI agents hallucinate package names. Attackers register those exact names on public registries, embed malware, and wait for automated installs. A two-week-old package with three downloads is a red flag, not a dependency.
According to VibeCoding.ae’s security checklist, the minimum viable security practice for vibe-coded projects includes:
- Manual registry checks before any
npm installorpipcommand - Running audits and pinning versions
- Locking and committing the lockfile
- Explicit authentication on every endpoint, not relying on global middleware an agent might bypass
- Testing with multiple identities to catch insecure direct object references
- Parameterizing every database query
- Scanning git history for secrets
- Gating destructive operations behind human confirmation
These steps feel slow precisely because vibe coding moves fast. The velocity multiplies the risk rather than reducing it.

Traceability as the Standard
TestMonitor argued in April that every AI-generated feature should be treated as a suspicious stranger until proven otherwise. Their framework maps initial prompts directly to business requirements inside a test management platform. Human acceptance testing replaces model self-grading. Edge cases, things like an emoji dropped into a currency field, receive deliberate attention because models favor happy paths.
The same principle applies to technical SEO work. A crawler flags issues. The ticket forwards the output. No one translates it into exact changes, expected results, or verification steps. Months later the problem, or a close cousin, persists. The pattern is identical to vibe coding gaps.
GrowthBook cautioned against what they called “vibe shipping” without measurement. Forbes, in a May piece, noted that founders shipping same-day products through vibe coding still face the post-build reality check. Simon Willison observed in May that vibe coding and more disciplined agentic engineering have begun to converge, sometimes uncomfortably.
When This Works
- You write specifications that define exactly how success will be measured before any prompt leaves the keyboard.
- You tie outcomes to business metrics: traffic deltas, conversion lifts, error rates, not activity logs.
- You run verification tests on a schedule against live systems, not just local environments.
- You treat a successful demo as the start of verification, not the end of it.
When It Does Not
- Vague prompts with no attached test specifications produce code that compiles and passes basic demos but hides gaps in plain sight.
- Letting the model grade its own work skips the human judgment step that no tool currently replaces.
- Treating production incidents as acceptable learning costs rather than signals that the original prompt left too much room for interpretation.
The industry has moved past the honeymoon phase with AI code generation. Production incidents tied to unverified AI code appear in incident reports. Security researchers document supply-chain attacks that started with a single hallucinated dependency. The verification step is no longer optional. Teams that build it into their workflow will outpace those who treat every successful demo as final.

