<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: skyestrela</title>
    <description>The latest articles on DEV Community by skyestrela (@skyestrela).</description>
    <link>https://dev.to/skyestrela</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4047005%2F4514e289-7045-46ff-b245-1161c9a502ef.png</url>
      <title>DEV Community: skyestrela</title>
      <link>https://dev.to/skyestrela</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/skyestrela"/>
    <language>en</language>
    <item>
      <title>A Transparent Codex Bug-Reproduction Comparison: 6/14 vs 14/14</title>
      <dc:creator>skyestrela</dc:creator>
      <pubDate>Thu, 30 Jul 2026 15:06:39 +0000</pubDate>
      <link>https://dev.to/skyestrela/a-transparent-codex-bug-reproduction-comparison-614-vs-1414-3nmn</link>
      <guid>https://dev.to/skyestrela/a-transparent-codex-bug-reproduction-comparison-614-vs-1414-3nmn</guid>
      <description>&lt;p&gt;I make an open-source bug-reproduction workflow for coding agents. I wanted to test whether it changed the completeness of a Codex investigation, rather than relying on the workflow sounding sensible.&lt;/p&gt;

&lt;p&gt;The result was &lt;strong&gt;6/14 for the concise control and 14/14 for the corrected workflow-assisted run&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;That headline needs context. This was one synthetic Python fixture, one model and a self-authored rubric. The workflow used more tokens and produced a much longer answer. The first workflow run did not score 14/14 either: it scored 12/14, exposed two weaknesses, and led to a revision before the final run.&lt;/p&gt;

&lt;p&gt;Everything needed to inspect the comparison is public:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/skyestrela/ai-agent-skill-preview/tree/main/evidence/bug-reproduction-benchmark" rel="noopener noreferrer"&gt;https://github.com/skyestrela/ai-agent-skill-preview/tree/main/evidence/bug-reproduction-benchmark&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The question
&lt;/h2&gt;

&lt;p&gt;Does supplying a structured Bug Reproduction Brief make a vague-bug investigation more complete and auditable than a concise task instruction alone?&lt;/p&gt;

&lt;p&gt;The test was not designed to measure implementation speed or whether Codex could patch the bug. Both prompts explicitly prohibited modifying files or proposing a fix. The boundary was reproduction and evidence collection.&lt;/p&gt;

&lt;h2&gt;
  
  
  Controls
&lt;/h2&gt;

&lt;p&gt;Both runs used:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the same authenticated Codex model: &lt;code&gt;gpt-5.4-mini&lt;/code&gt;;&lt;/li&gt;
&lt;li&gt;the same committed Python fixture: &lt;code&gt;a4b9eab9dcc7b2ebbfe5f5d0502d4866cefd36ce&lt;/code&gt;;&lt;/li&gt;
&lt;li&gt;read-only Codex sandboxes;&lt;/li&gt;
&lt;li&gt;ephemeral sessions with user configuration and repository rules ignored;&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;PYTHONDONTWRITEBYTECODE=1&lt;/code&gt;;&lt;/li&gt;
&lt;li&gt;clean working trees before and after;&lt;/li&gt;
&lt;li&gt;the same instruction not to modify files or propose or implement a fix.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The workflow-assisted run additionally received Bug Reproduction Brief v1.0.1.&lt;/p&gt;

&lt;p&gt;The fixture contains an intentionally faulty invoice calculation. Its existing tests pass because they do not cover the explicit-zero edge case described in the support report.&lt;/p&gt;

&lt;h2&gt;
  
  
  What both runs found
&lt;/h2&gt;

&lt;p&gt;Both the control and workflow-assisted run:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;identified the explicit-zero input that fails;&lt;/li&gt;
&lt;li&gt;stated the expected and observed output;&lt;/li&gt;
&lt;li&gt;ran the existing tests;&lt;/li&gt;
&lt;li&gt;provided a runnable reproduction;&lt;/li&gt;
&lt;li&gt;left the fixture unchanged;&lt;/li&gt;
&lt;li&gt;avoided proposing a fix.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This matters because the 6/14 control was not useless. It found the central failure quickly.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the workflow added
&lt;/h2&gt;

&lt;p&gt;The workflow-assisted answer also recorded:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the immutable commit;&lt;/li&gt;
&lt;li&gt;the inspected runtime environment;&lt;/li&gt;
&lt;li&gt;that the intake report was second-hand and unverified;&lt;/li&gt;
&lt;li&gt;an explicit minimal fixture;&lt;/li&gt;
&lt;li&gt;two separate reproductions;&lt;/li&gt;
&lt;li&gt;unresolved unknowns;&lt;/li&gt;
&lt;li&gt;a safe next hypothesis;&lt;/li&gt;
&lt;li&gt;a strict boundary between reproduced observations and diagnosis.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The concise control jumped from the reproduction to a root-cause statement. The final workflow answer deliberately stopped at observable evidence and a testable next hypothesis.&lt;/p&gt;

&lt;p&gt;A deterministic 14-point rubric scored those criteria. The criterion-level result is committed as &lt;code&gt;score.json&lt;/code&gt;, alongside the exact prompts and final outputs.&lt;/p&gt;

&lt;h2&gt;
  
  
  The failed first workflow run
&lt;/h2&gt;

&lt;p&gt;The first workflow-assisted run scored &lt;strong&gt;12/14&lt;/strong&gt;, not 14/14.&lt;/p&gt;

&lt;p&gt;It exposed two weaknesses in the workflow:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;the answer did not explicitly preserve the report's second-hand, unverified provenance;&lt;/li&gt;
&lt;li&gt;it stated a causal explanation despite the reproduction-only boundary.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I tightened the public skill to v1.0.1 and reran it against the unchanged fixture. The 14/14 result came from that corrected workflow.&lt;/p&gt;

&lt;p&gt;That makes this an iterative product-development comparison, not a blinded academic study. I am disclosing the iteration because hiding the 12/14 run would make the final result look cleaner than the process actually was.&lt;/p&gt;

&lt;h2&gt;
  
  
  Token and verbosity cost
&lt;/h2&gt;

&lt;p&gt;The additional completeness was not free.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Run&lt;/th&gt;
&lt;th&gt;Input tokens&lt;/th&gt;
&lt;th&gt;Cached input&lt;/th&gt;
&lt;th&gt;Output tokens&lt;/th&gt;
&lt;th&gt;Reasoning output&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Control&lt;/td&gt;
&lt;td&gt;68,604&lt;/td&gt;
&lt;td&gt;62,720&lt;/td&gt;
&lt;td&gt;1,400&lt;/td&gt;
&lt;td&gt;255&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Workflow&lt;/td&gt;
&lt;td&gt;74,547&lt;/td&gt;
&lt;td&gt;67,328&lt;/td&gt;
&lt;td&gt;4,471&lt;/td&gt;
&lt;td&gt;2,661&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The workflow used &lt;strong&gt;8.7% more input tokens&lt;/strong&gt; and produced a substantially longer answer.&lt;/p&gt;

&lt;p&gt;That trade-off will not suit every task. For a low-risk bug where speed matters more than auditability, the concise instruction may be sufficient. Teams adopting a structured brief should shorten its output contract rather than assuming maximum detail is always better.&lt;/p&gt;

&lt;h2&gt;
  
  
  What this result does not prove
&lt;/h2&gt;

&lt;p&gt;It does not prove that:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;every coding agent improves with this workflow;&lt;/li&gt;
&lt;li&gt;the result repeats across repositories or models;&lt;/li&gt;
&lt;li&gt;a 14/14 reproduction brief leads to a better patch;&lt;/li&gt;
&lt;li&gt;the extra tokens provide positive economic value;&lt;/li&gt;
&lt;li&gt;the workflow is universally better than a concise prompt.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Outputs can vary between repeated model runs. The rubric rewards reproduction-brief completeness, not bug-fix quality or developer productivity.&lt;/p&gt;

&lt;p&gt;A stronger follow-up would run multiple trials across several repositories and models using a rubric fixed before execution.&lt;/p&gt;

&lt;h2&gt;
  
  
  Reproduce or criticise it
&lt;/h2&gt;

&lt;p&gt;The repository contains:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the exact control and workflow prompts;&lt;/li&gt;
&lt;li&gt;the intentionally faulty fixture and passing test suite;&lt;/li&gt;
&lt;li&gt;the final control and workflow outputs;&lt;/li&gt;
&lt;li&gt;criterion-level scoring and token usage;&lt;/li&gt;
&lt;li&gt;the complete MIT-licensed workflow.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Benchmark and reproduction files:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/skyestrela/ai-agent-skill-preview/tree/main/evidence/bug-reproduction-benchmark?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=bug-reproduction-benchmark" rel="noopener noreferrer"&gt;https://github.com/skyestrela/ai-agent-skill-preview/tree/main/evidence/bug-reproduction-benchmark?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=bug-reproduction-benchmark&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Workflow source:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/skyestrela/ai-agent-skill-preview/blob/main/bug-reproduction-brief/SKILL.md?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=bug-reproduction-benchmark" rel="noopener noreferrer"&gt;https://github.com/skyestrela/ai-agent-skill-preview/blob/main/bug-reproduction-brief/SKILL.md?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=bug-reproduction-benchmark&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The most useful feedback would be criticism of the controls, rubric or reproduction boundary—not generic agreement with the score.&lt;/p&gt;

&lt;h2&gt;
  
  
  Disclosure
&lt;/h2&gt;

&lt;p&gt;I created this workflow and sell an optional wider engineering pack containing ten editable workflows. The complete Bug Reproduction Brief used here is already public and MIT licensed; buying anything is not required to inspect or reproduce this comparison.&lt;/p&gt;

&lt;p&gt;Optional wider pack:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://ai-agent-skills-pack.vercel.app/?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=bug-reproduction-benchmark" rel="noopener noreferrer"&gt;https://ai-agent-skills-pack.vercel.app/?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=bug-reproduction-benchmark&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>testing</category>
      <category>debugging</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Six Checks Before You Trust an AI Agent Skill</title>
      <dc:creator>skyestrela</dc:creator>
      <pubDate>Sun, 26 Jul 2026 07:10:00 +0000</pubDate>
      <link>https://dev.to/skyestrela/six-checks-before-you-trust-an-ai-agent-skill-4nm9</link>
      <guid>https://dev.to/skyestrela/six-checks-before-you-trust-an-ai-agent-skill-4nm9</guid>
      <description>&lt;p&gt;Agent skills are becoming a convenient way to reuse instructions across coding sessions. Instead of pasting the same review, debugging or deployment prompt repeatedly, you put the process in a readable &lt;code&gt;SKILL.md&lt;/code&gt; file and load it when the job matches.&lt;/p&gt;

&lt;p&gt;That convenience creates a new review problem: a polished workflow can still be unsafe, vague or impossible to verify.&lt;/p&gt;

&lt;p&gt;Before installing a third-party skill—or trusting one written inside your own team—I look for six things.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. It starts with discovery, not a guessed fix
&lt;/h2&gt;

&lt;p&gt;A trustworthy workflow tells the agent to inspect the real target before making claims.&lt;/p&gt;

&lt;p&gt;For a bug, that might mean:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;identify the repository and commit;&lt;/li&gt;
&lt;li&gt;capture the exact failure;&lt;/li&gt;
&lt;li&gt;record the runtime and environment;&lt;/li&gt;
&lt;li&gt;reduce the failing input;&lt;/li&gt;
&lt;li&gt;reproduce it before editing code.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For a deployment check, discovery should identify the actual platform, project, branch, build command and production URL. “Check whether the app is deployed” is too vague if the agent can silently choose the wrong environment.&lt;/p&gt;

&lt;p&gt;Weak skills jump from the request to an action. Strong skills establish what is true first.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Success is observable
&lt;/h2&gt;

&lt;p&gt;“Make the code better” is not a useful completion condition.&lt;/p&gt;

&lt;p&gt;A skill should define outputs that another person can inspect. Examples include:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;- failing test reproduced before the patch;
- focused regression test passes after the patch;
- full relevant test suite returns exit code 0;
- live endpoint returns the expected status and body;
- rollback command is recorded and tested where safe.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This changes the agent’s job from producing a plausible answer to producing evidence.&lt;/p&gt;

&lt;p&gt;The evidence does not need to be elaborate. A command, exit code, short log excerpt and exact URL are often enough. What matters is that the workflow distinguishes “I changed it” from “I exercised the result”.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Permissions and destructive boundaries are explicit
&lt;/h2&gt;

&lt;p&gt;A reusable skill should say what the agent must not do automatically.&lt;/p&gt;

&lt;p&gt;Look for boundaries around:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;deleting files or data;&lt;/li&gt;
&lt;li&gt;rotating or exposing credentials;&lt;/li&gt;
&lt;li&gt;changing production infrastructure;&lt;/li&gt;
&lt;li&gt;creating charges or purchases;&lt;/li&gt;
&lt;li&gt;force-pushing or rewriting history;&lt;/li&gt;
&lt;li&gt;sending messages or publishing content;&lt;/li&gt;
&lt;li&gt;disabling security controls.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;“Use caution” is not a boundary. A better instruction is: “Do not delete, force-push or mutate production data without explicit approval. Prefer read-only inspection and reversible changes first.”&lt;/p&gt;

&lt;p&gt;The workflow should also refuse to guess missing credentials. Asking the operator or using an already-authorised session is safer than inventing an access path.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Reversible actions come first
&lt;/h2&gt;

&lt;p&gt;Good operational workflows order actions by risk.&lt;/p&gt;

&lt;p&gt;A dependency triage should inspect the lockfile, changelog and usage before upgrading. A migration workflow should copy, verify and only then consider removal. A deployment workflow should preserve the previous known-good release and record the rollback path before promotion.&lt;/p&gt;

&lt;p&gt;This is not bureaucracy. It reduces the cost of being wrong.&lt;/p&gt;

&lt;p&gt;A useful test is: if the agent’s leading hypothesis is false, does the workflow leave you with a clean way back?&lt;/p&gt;

&lt;h2&gt;
  
  
  5. Verification reaches the real target
&lt;/h2&gt;

&lt;p&gt;Local validation is necessary, but it may not prove the thing the user asked about.&lt;/p&gt;

&lt;p&gt;If the task is to fix a production page, a green local build does not prove production changed. If the task is to publish a package, creating an archive does not prove the registry serves it. If the task is to repair an API, a mocked unit test does not prove the live route is healthy.&lt;/p&gt;

&lt;p&gt;A sound skill separates layers:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;static checks;&lt;/li&gt;
&lt;li&gt;focused tests;&lt;/li&gt;
&lt;li&gt;broader regression tests;&lt;/li&gt;
&lt;li&gt;build or package validation;&lt;/li&gt;
&lt;li&gt;deployment confirmation;&lt;/li&gt;
&lt;li&gt;live-target verification.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Not every task needs every layer. The skill should choose the smallest set that actually proves the requested result.&lt;/p&gt;

&lt;h2&gt;
  
  
  6. Unknowns stay labelled as unknowns
&lt;/h2&gt;

&lt;p&gt;Agent output often becomes misleading when assumptions are written with the tone of facts.&lt;/p&gt;

&lt;p&gt;A trustworthy workflow requires a final report that separates:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;observed facts;&lt;/li&gt;
&lt;li&gt;evidence;&lt;/li&gt;
&lt;li&gt;assumptions;&lt;/li&gt;
&lt;li&gt;unresolved risks;&lt;/li&gt;
&lt;li&gt;actions not taken;&lt;/li&gt;
&lt;li&gt;the next safe step.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If a network call failed, the report should say it failed. If the agent did not measure user comprehension, it should not convert a design estimate into a measured result. If no sale occurred, it should not call a checkout test “revenue”.&lt;/p&gt;

&lt;p&gt;Plain uncertainty is more useful than confident fiction.&lt;/p&gt;

&lt;h2&gt;
  
  
  A compact review contract
&lt;/h2&gt;

&lt;p&gt;You can use this checklist before adopting any agent skill:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="p"&gt;-&lt;/span&gt; [ ] Inspects the real repository, environment or live target
&lt;span class="p"&gt;-&lt;/span&gt; [ ] Defines observable success criteria
&lt;span class="p"&gt;-&lt;/span&gt; [ ] Protects credentials, production data and destructive actions
&lt;span class="p"&gt;-&lt;/span&gt; [ ] Uses read-only or reversible actions first
&lt;span class="p"&gt;-&lt;/span&gt; [ ] Runs verification appropriate to the requested outcome
&lt;span class="p"&gt;-&lt;/span&gt; [ ] Separates facts, assumptions, blockers and remaining risks
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Because skills are plain text, you can review and version these rules like code. That is the main advantage: the workflow is not hidden behind a confident interface.&lt;/p&gt;

&lt;h2&gt;
  
  
  Four complete workflows you can inspect
&lt;/h2&gt;

&lt;p&gt;I have published four MIT-licensed examples so the method can be reviewed before installing anything:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Code Review Gate&lt;/li&gt;
&lt;li&gt;Bug Reproduction Brief&lt;/li&gt;
&lt;li&gt;Dependency Risk Triage&lt;/li&gt;
&lt;li&gt;Rollback Readiness Card&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Source and install instructions:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/skyestrela/ai-agent-skill-preview?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=trustworthy-agent-skills" rel="noopener noreferrer"&gt;https://github.com/skyestrela/ai-agent-skill-preview?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=trustworthy-agent-skills&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Download all four complete workflows in one verified MIT-licensed ZIP:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/skyestrela/ai-agent-skill-preview/releases/tag/free-workflows-bundle-v1.0.0" rel="noopener noreferrer"&gt;https://github.com/skyestrela/ai-agent-skill-preview/releases/tag/free-workflows-bundle-v1.0.0&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;List the available skills without installing them:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npx skills add skyestrela/ai-agent-skill-preview &lt;span class="nt"&gt;--list&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The free workflows are complete on their own. An optional £19 pack contains ten engineering workflows for review, debugging, TDD, security, APIs, migrations, deployment, refactoring, PR shipping and incident analysis:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://ai-agent-skills-pack.vercel.app/?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=trustworthy-agent-skills" rel="noopener noreferrer"&gt;https://ai-agent-skills-pack.vercel.app/?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=trustworthy-agent-skills&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The pack launches on Product Hunt on 26 July. If you use coding agents in real repositories, direct feedback on the inspection contract is more useful than generic praise:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.producthunt.com/products/ai-agent-skills-pack?launch=ai-agent-skills-pack" rel="noopener noreferrer"&gt;https://www.producthunt.com/products/ai-agent-skills-pack?launch=ai-agent-skills-pack&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>programming</category>
      <category>productivity</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Stop Asking AI Coding Agents to Fix Vague Bugs</title>
      <dc:creator>skyestrela</dc:creator>
      <pubDate>Sat, 25 Jul 2026 15:34:38 +0000</pubDate>
      <link>https://dev.to/skyestrela/stop-asking-ai-coding-agents-to-fix-vague-bugs-4ji6</link>
      <guid>https://dev.to/skyestrela/stop-asking-ai-coding-agents-to-fix-vague-bugs-4ji6</guid>
      <description>&lt;p&gt;A coding agent can produce a confident patch for the wrong problem when the input is only:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The upload sometimes fails. Please fix it.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That sentence does not identify the smallest failing input, exact error, environment, expected result, frequency, or even whether the reporter reproduced it personally.&lt;/p&gt;

&lt;p&gt;If the first instruction is “fix it”, the agent has room to turn a suspected cause into a fictional fact. The safer sequence is:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;preserve the observed failure;&lt;/li&gt;
&lt;li&gt;record the real environment;&lt;/li&gt;
&lt;li&gt;state expected versus actual behaviour;&lt;/li&gt;
&lt;li&gt;reduce the failing case;&lt;/li&gt;
&lt;li&gt;prove whether it repeats;&lt;/li&gt;
&lt;li&gt;diagnose and repair only after that evidence exists.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  1. Preserve the observed failure
&lt;/h2&gt;

&lt;p&gt;Capture the exact error, status code, incorrect output, affected route or command, timestamp, and smallest known input.&lt;/p&gt;

&lt;p&gt;Remove secrets and personal data before putting logs into an agent context. If the report came from another person and you have not reproduced it, label it as second-hand rather than silently upgrading it to fact.&lt;/p&gt;

&lt;p&gt;Weak:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;CSV imports are broken.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Useful:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;At 14:22 UTC, POST /imports returned HTTP 500 for minimal.csv.
Response: "column index out of range".
The same account can import one-column.csv successfully.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  2. Record the environment you can prove
&lt;/h2&gt;

&lt;p&gt;Inspect rather than guess:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;repository and commit;&lt;/li&gt;
&lt;li&gt;runtime version;&lt;/li&gt;
&lt;li&gt;operating system or container image;&lt;/li&gt;
&lt;li&gt;package lockfile;&lt;/li&gt;
&lt;li&gt;relevant feature flags;&lt;/li&gt;
&lt;li&gt;local, test, staging, or production target.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Do not infer production configuration from your laptop. Environment differences are often part of the bug.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Separate expected and actual behaviour
&lt;/h2&gt;

&lt;p&gt;Write two observable statements:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Expected: POST /imports accepts the smallest valid two-column CSV and returns HTTP 201.
Actual:   The same fixture returns HTTP 500 with "column index out of range".
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Neither statement should include the suspected root cause.&lt;/p&gt;

&lt;p&gt;“Expected: parser handles the off-by-one bug” already assumes the diagnosis. You have not earned that conclusion yet.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Reduce the reproduction
&lt;/h2&gt;

&lt;p&gt;Start with the reported path. Remove unrelated records, services, fields, and steps one at a time.&lt;/p&gt;

&lt;p&gt;Keep the smallest fixture that still fails. When removing one condition stops the failure, restore it and record the boundary.&lt;/p&gt;

&lt;p&gt;Useful reductions include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;replacing a customer export with a sanitised two-row fixture;&lt;/li&gt;
&lt;li&gt;removing unrelated network requests;&lt;/li&gt;
&lt;li&gt;disabling background jobs that are not required;&lt;/li&gt;
&lt;li&gt;running one focused test instead of an entire suite;&lt;/li&gt;
&lt;li&gt;replacing a UI journey with the smallest direct request that proves the same fault.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Do not mutate production data merely to make reproduction convenient.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. Prove repeatability
&lt;/h2&gt;

&lt;p&gt;Run the minimal case at least twice where safe.&lt;/p&gt;

&lt;p&gt;If it fails two times out of ten, report &lt;code&gt;2/10 over 90 seconds&lt;/code&gt;. Do not call it deterministic. Frequency and duration are evidence too.&lt;/p&gt;

&lt;p&gt;A useful handoff looks like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight markdown"&gt;&lt;code&gt;&lt;span class="gh"&gt;# Bug Reproduction Brief&lt;/span&gt;
&lt;span class="p"&gt;-&lt;/span&gt; Target and commit:
&lt;span class="p"&gt;-&lt;/span&gt; Environment:
&lt;span class="p"&gt;-&lt;/span&gt; Expected:
&lt;span class="p"&gt;-&lt;/span&gt; Actual:
&lt;span class="p"&gt;-&lt;/span&gt; Minimal steps:
&lt;span class="p"&gt;-&lt;/span&gt; Minimal fixture:
&lt;span class="p"&gt;-&lt;/span&gt; Reproduced: yes / no / intermittent
&lt;span class="p"&gt;-&lt;/span&gt; Evidence:
&lt;span class="p"&gt;-&lt;/span&gt; Unknowns:
&lt;span class="p"&gt;-&lt;/span&gt; Safe next hypothesis to test:
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Keep reproduction separate from repair
&lt;/h2&gt;

&lt;p&gt;A verified reproduction is a stable contract for the next step. Now the agent can inspect the responsible code, rank hypotheses, create a failing regression test, apply the smallest fix, and prove that the fixture passes.&lt;/p&gt;

&lt;p&gt;Without that contract, a green test may only prove that the agent tested its own assumption.&lt;/p&gt;

&lt;h2&gt;
  
  
  Install the complete free workflow
&lt;/h2&gt;

&lt;p&gt;The MIT-licensed Bug Reproduction Brief is public and readable before installation:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npx skills add skyestrela/ai-agent-skill-preview &lt;span class="se"&gt;\&lt;/span&gt;
  &lt;span class="nt"&gt;--skill&lt;/span&gt; bug-reproduction-brief &lt;span class="nt"&gt;--agent&lt;/span&gt; codex &lt;span class="nt"&gt;--global&lt;/span&gt; &lt;span class="nt"&gt;--yes&lt;/span&gt; &lt;span class="nt"&gt;--copy&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Source and three other free engineering workflows:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/skyestrela/ai-agent-skill-preview?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=bug-reproduction-guide" rel="noopener noreferrer"&gt;https://github.com/skyestrela/ai-agent-skill-preview?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=bug-reproduction-guide&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Prefer one download? The verified MIT-licensed bundle contains all four public workflows:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/skyestrela/ai-agent-skill-preview/releases/tag/free-workflows-bundle-v1.0.0" rel="noopener noreferrer"&gt;https://github.com/skyestrela/ai-agent-skill-preview/releases/tag/free-workflows-bundle-v1.0.0&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The full Markdown workflow can also be read directly:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://ai-agent-skills-pack.vercel.app/preview/bug-reproduction-brief.md?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=bug-reproduction-guide" rel="noopener noreferrer"&gt;https://ai-agent-skills-pack.vercel.app/preview/bug-reproduction-brief.md?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=bug-reproduction-guide&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you want the wider engineering set, the £19 AI Agent Skills Pack contains ten editable workflows for review, debugging, TDD, security, APIs, migrations, deployment, refactoring, PR shipping, and incident analysis:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://ai-agent-skills-pack.vercel.app/?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=bug-reproduction-guide" rel="noopener noreferrer"&gt;https://ai-agent-skills-pack.vercel.app/?utm_source=devto&amp;amp;utm_medium=article&amp;amp;utm_campaign=bug-reproduction-guide&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The free workflow is complete on its own. The paid pack is optional, sold once with no subscription.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>productivity</category>
      <category>testing</category>
      <category>devops</category>
    </item>
  </channel>
</rss>
