<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="https://yevhenprodan.com/feed.xml" rel="self" type="application/atom+xml" /><link href="https://yevhenprodan.com/" rel="alternate" type="text/html" /><updated>2026-09-14T15:53:06+00:00</updated><id>https://yevhenprodan.com/feed.xml</id><title type="html">Learn with me Digest</title><subtitle>Short entries on Development, Testing, AI, and Processes.</subtitle><entry><title type="html">AI-Assisted Testing Adds a Validation Layer, It Doesn’t Remove One</title><link href="https://yevhenprodan.com/2026/09/07/ai-assisted-testing-validation-layer.html" rel="alternate" type="text/html" title="AI-Assisted Testing Adds a Validation Layer, It Doesn’t Remove One" /><published>2026-09-07T00:00:00+00:00</published><updated>2026-09-07T00:00:00+00:00</updated><id>https://yevhenprodan.com/2026/09/07/ai-assisted-testing-validation-layer</id><content type="html" xml:base="https://yevhenprodan.com/2026/09/07/ai-assisted-testing-validation-layer.html"><![CDATA[<p><img src="/assets/images/entries/2026-09-07-ai-assisted-testing-validation-layer.jpg" alt="Before/now diagram: validating a defect now also means validating the AI's verdict on it, adding a hidden layer of AI-generated tests, coverage, alerts, and duplicate scenarios someone has to sort through" /></p>

<p>AI testing doesn’t remove a layer of work. It adds one.</p>

<ul>
  <li><strong>Before:</strong> validate the defect.</li>
  <li><strong>Now:</strong> validate the defect → validate the AI’s verdict on the defect.</li>
</ul>

<h2 id="two-weeks-became-two-months">Two weeks became two months</h2>

<p>I scoped an AI-assisted testing rollout at two weeks. It took two months.</p>

<p>Not because the tools failed. They did what they were supposed to do. It took two months because
nobody — me included — accounted for the validation overhead. The estimate covered getting the
tools in and generating tests. It didn’t cover the work that shows up <em>after</em> the tests exist.</p>

<p>That’s one rollout, one team, my experience. Your numbers will differ. But the shape of the
problem hasn’t been unique when I’ve described it to others.</p>

<h2 id="where-the-extra-layer-comes-from">Where the extra layer comes from</h2>

<p>More AI-generated tests means more coverage — and more of everything that comes with it:</p>

<ul>
  <li>more alerts,</li>
  <li>more flaky results,</li>
  <li>more duplicate scenarios that look different but check the same thing,</li>
  <li>more “is this a real failure or did the AI misread the requirement?”</li>
</ul>

<p>Someone still has to sort through all of it and decide what to trust. That sorting is the hidden
cost.</p>

<p>It doesn’t show up in planning because there’s no reference point yet for how long “validating the
validation” takes. We have decades of intuition for how long it takes to validate a defect. We have
close to none for how long it takes to validate an AI’s verdict on a defect — and every team is
building that intuition from scratch, usually mid-rollout.</p>

<h2 id="what-id-do-differently">What I’d do differently</h2>

<ul>
  <li><strong>Name the layer in the plan.</strong> Treat AI-assisted testing as testing plus an unmeasured
validation layer — not as “testing, but faster.” If the estimate has no line for triage, it’s
missing a line.</li>
  <li><strong>Budget for someone to own the triage.</strong> Not “the team will handle it.” A person, with time
allocated, whose job is deciding what to trust.</li>
  <li><strong>Measure the layer as you go.</strong> Since there’s no reference point, build one: how long triage
takes per batch of generated tests, how much of it is duplicates, how much is real signal. That
number is what makes the <em>next</em> estimate honest.</li>
</ul>

<p>Still faster than testing without AI, in my case — just significantly slower than expected going
in. The gap between those two is exactly the layer nobody scoped.</p>

<h2 id="supporting-evidence">Supporting evidence</h2>

<p>Two sources back the pattern beyond my own rollout. Neither is a controlled measurement of the
overhead itself — that number doesn’t exist yet, which is the point.</p>

<ul>
  <li><strong>AI-written tests can inherit the bugs they’re meant to catch.</strong> A study on the common “code
first, then generate tests” workflow found LLM tests written <em>after</em> buggy code detect far fewer
faults than tests written independently — <strong>14% vs. 25%</strong> fault-detection effectiveness.
Faults in the generated code get baked into the matching tests; code and tests stay consistent
while both miss the defect. That’s the kind of thing a human has to catch, and it doesn’t catch
itself. <em>(arXiv preprint 2607.05139, submitted 2026-07-06, not yet peer-reviewed —
<a href="https://arxiv.org/abs/2607.05139">abs</a>)</em></li>
  <li><strong>People overestimate how much faster AI makes them.</strong> A METR survey of 349 technical workers
(Feb–Apr 2026, published 2026-05-11) found a self-reported median speed-up of roughly <strong>3x</strong>
from AI — and METR’s own analysis flags that as likely overstated, citing a prior finding that
people overestimate AI’s time savings by about <strong>40 percentage points</strong>. Self-report data, not a
controlled measurement, and the best I found within the recency window for this angle.
<em>(<a href="https://metr.org/blog/2026-05-11-ai-usage-survey/">METR, May 2026</a>)</em></li>
</ul>

<h2 id="where-this-goes-next">Where this goes next</h2>

<ul>
  <li><strong>Processes / estimation:</strong> what “name the layer” looks like as an actual line item in the
estimate — and how you size a triage line when there’s no baseline to size it from.</li>
  <li><strong>Processes / ownership:</strong> triage as a real role with decision authority, not a default
fallback to whoever notices the alert first — and what “handled” costs when nobody owns it.</li>
  <li><strong>Testing / measurement:</strong> a minimal 3-number triage log — time per batch, share that’s
duplicates, share that’s real signal — to build the reference point that’s missing today.</li>
  <li><strong>Testing / coverage:</strong> duplicate AI-generated scenarios that inflate the coverage number
without adding any real safety net — and how to tell the two apart.</li>
</ul>]]></content><author><name></name></author><summary type="html"><![CDATA[]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://yevhenprodan.com/assets/images/entries/2026-09-07-ai-assisted-testing-validation-layer.jpg" /><media:content medium="image" url="https://yevhenprodan.com/assets/images/entries/2026-09-07-ai-assisted-testing-validation-layer.jpg" xmlns:media="http://search.yahoo.com/mrss/" /></entry></feed>