<?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: Mohamed Saleh</title>
    <description>The latest articles on DEV Community by Mohamed Saleh (@abosalehworldoss).</description>
    <link>https://dev.to/abosalehworldoss</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%2F4112881%2F8b8bd300-4d08-42bd-9046-f9114c148fb3.jpg</url>
      <title>DEV Community: Mohamed Saleh</title>
      <link>https://dev.to/abosalehworldoss</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/abosalehworldoss"/>
    <language>en</language>
    <item>
      <title>Stop letting AI rubber-stamp your broken code. I built an unforgiving QA system to fix it.</title>
      <dc:creator>Mohamed Saleh</dc:creator>
      <pubDate>Sun, 06 Sep 2026 22:42:47 +0000</pubDate>
      <link>https://dev.to/abosalehworldoss/stop-letting-ai-rubber-stamp-your-broken-code-i-built-an-unforgiving-qa-system-to-fix-it-3kk9</link>
      <guid>https://dev.to/abosalehworldoss/stop-letting-ai-rubber-stamp-your-broken-code-i-built-an-unforgiving-qa-system-to-fix-it-3kk9</guid>
      <description>&lt;p&gt;We've all been there. You paste a complex chunk of code into ChatGPT or Claude, ask for a deep security review, and 10 seconds later you get: &lt;/p&gt;

&lt;p&gt;&lt;em&gt;"Looks great! Your code is well-structured. Good job!"&lt;/em&gt; &lt;/p&gt;

&lt;p&gt;Then you push to staging, and immediately hit a massive CORS error, a memory leak, or a broken state mutation. &lt;/p&gt;

&lt;p&gt;LLMs are incredible tools, but fundamentally, they are "people-pleasers." They are inherently lazy. If you don't force them into a corner, they will hallucinate a clean bill of health just to finish the prompt quickly. &lt;/p&gt;

&lt;p&gt;I got completely fed up with this. I didn't want an AI cheerleader; I wanted an unforgiving, paranoid Senior QA Engineer. &lt;/p&gt;

&lt;p&gt;So, I spent the last few weeks architecting a strict, open-source workflow to fix this behavior. I built a comprehensive &lt;strong&gt;AI Testing Suite (Prompts &amp;amp; Workflows)&lt;/strong&gt; that physically forces LLMs to stop rubber-stamping code and actually audit it. &lt;/p&gt;

&lt;h3&gt;
  
  
  🛡️ How it fixes AI laziness:
&lt;/h3&gt;

&lt;p&gt;🛑 &lt;strong&gt;Citation Or It Didn't Happen:&lt;/strong&gt; The AI is forbidden from making claims without citing the exact file path and line number. If it can't cite the line, the review is invalid.&lt;br&gt;
🚧 &lt;strong&gt;Mandatory Phase Gates:&lt;/strong&gt; It forces the AI through up to 19 strict, methodical gates (Architecture, OWASP Top 10, State Management). It physically cannot skip to phase 2 without printing the completion checklist for phase 1.&lt;br&gt;
🚨 &lt;strong&gt;Real-World Sentry Validation:&lt;/strong&gt; It doesn't just guess. The workflow cross-references the AI's static analysis with actual runtime errors from Sentry before deployment.&lt;br&gt;
🕵️ &lt;strong&gt;The Hacker Mindset (Rule 6):&lt;/strong&gt; When the AI proposes a security fix, the prompt forces it to act as a Red Team hacker and attempt to bypass its own newly written code.&lt;br&gt;
👀 &lt;strong&gt;Fresh-Eyes Re-Analysis:&lt;/strong&gt; Forces a mandatory second-pass audit (acting as a "different" reviewer) to catch what it missed the first time.&lt;/p&gt;




&lt;h3&gt;
  
  
  🚀 The Open Source Suite
&lt;/h3&gt;

&lt;p&gt;I built four specialized versions depending on your stack. You just point your AI agent (Cursor, GitHub Copilot, or standard web UI) to the &lt;code&gt;SKILL.md&lt;/code&gt; file in these repos, and watch the tone and strictness of the AI completely change.&lt;/p&gt;

&lt;p&gt;☁️ &lt;a href="https://github.com/abosalehworld-oss/backend-cloud-auditor-skill" rel="noopener noreferrer"&gt;&lt;strong&gt;Backend &amp;amp; Cloud Auditor Skill&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;
19 Phases covering Zero Trust, Chaos Engineering, OWASP API Top 10, and advanced forensics.&lt;/p&gt;

&lt;p&gt;🌐 &lt;a href="https://github.com/abosalehworld-oss/web-app-tester-skill" rel="noopener noreferrer"&gt;&lt;strong&gt;Web App QA &amp;amp; Security Auditor Skill&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;
13 Phases covering Core Web Vitals, XSS/CSRF/CSP, state mutations, and SEO readiness.&lt;/p&gt;

&lt;p&gt;📱 &lt;a href="https://github.com/abosalehworld-oss/mobile-app-tester-skill" rel="noopener noreferrer"&gt;&lt;strong&gt;Mobile App QA Tester Skill&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;
13 Phases covering iOS/Android specific crashes, memory leaks, and local SQLite/Firebase integrity.&lt;/p&gt;

&lt;p&gt;🖥️ &lt;a href="https://github.com/abosalehworld-oss/desktop-app-tester-skill" rel="noopener noreferrer"&gt;&lt;strong&gt;Desktop App QA Tester Skill&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;
13 Phases covering IPC security (Electron/Tauri), DLL injection prevention, and distribution readiness.&lt;/p&gt;




&lt;p&gt;Stop letting AI blindly approve your pull requests. Force it to prove its work. &lt;/p&gt;

&lt;p&gt;I’d love for you guys to try it out on your next refactor. Fork it, break it, and let me know if your AI still manages to miss bugs! &lt;/p&gt;

&lt;p&gt;🤝 &lt;strong&gt;Let's connect on LinkedIn:&lt;/strong&gt; &lt;a href="https://www.linkedin.com/in/mr-mohamed-saleh/" rel="noopener noreferrer"&gt;Mohamed Saleh&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>webdev</category>
      <category>opensource</category>
      <category>security</category>
    </item>
  </channel>
</rss>
