<?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 Tahiri</title>
    <description>The latest articles on DEV Community by Mohamed Tahiri (@medtahiri).</description>
    <link>https://dev.to/medtahiri</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%2F4221236%2Fd00ae07c-f3de-4f2f-bca2-b9eb8f638d54.jpg</url>
      <title>DEV Community: Mohamed Tahiri</title>
      <link>https://dev.to/medtahiri</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/medtahiri"/>
    <language>en</language>
    <item>
      <title>My automated checks passed on a black-on-black clock</title>
      <dc:creator>Mohamed Tahiri</dc:creator>
      <pubDate>Sun, 01 Nov 2026 21:56:06 +0000</pubDate>
      <link>https://dev.to/medtahiri/my-automated-checks-passed-on-a-black-on-black-clock-1bg2</link>
      <guid>https://dev.to/medtahiri/my-automated-checks-passed-on-a-black-on-black-clock-1bg2</guid>
      <description>&lt;p&gt;I built &lt;a href="https://github.com/MedTahiri/ai-launcher-android" rel="noopener noreferrer"&gt;AI Launcher for Android&lt;/a&gt;, an open-source home screen made to be changed by an AI coding agent. You describe what you want, and the agent edits the code, installs it on your phone and checks the result. Claude Code wrote most of the code, while I directed it and tested on real phones.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frlbnxr1hq0qs8fbwv6cq.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frlbnxr1hq0qs8fbwv6cq.gif" alt="The glass style on a real phone: the long-press menu, dragging an icon, app groups and search" width="320" height="622"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Getting the code written was the easy part. The hard part was letting an agent know whether its work was any good. Here's what I learned.&lt;/p&gt;

&lt;h2&gt;
  
  
  Passing checks don't mean it looks right
&lt;/h2&gt;

&lt;p&gt;One launcher passed every automated check: it installed, it didn't crash, and the clock was on the screen. But the clock was black on a black background, so nobody could read it.&lt;/p&gt;

&lt;p&gt;Only a screenshot caught that. So the project's definition of done now has two parts: the verify script passes, and the agent has looked at the screenshots.&lt;/p&gt;

&lt;h2&gt;
  
  
  Fresh sessions find the gaps in your docs
&lt;/h2&gt;

&lt;p&gt;I knew how everything worked, and so did the session that built it. That hid the missing instructions. New agent sessions with no memory of the work showed me where the guide fell short, so I kept testing with them and fixing what they exposed.&lt;/p&gt;

&lt;h2&gt;
  
  
  Your tools can cause harm too
&lt;/h2&gt;

&lt;p&gt;An early version of my verify script cleared the phone's logs so it could look for new crashes. That's someone else's data on someone else's phone, so I fixed it. If a script runs on a user's device, it should leave things as it found them.&lt;/p&gt;

&lt;h2&gt;
  
  
  The strangest bug
&lt;/h2&gt;

&lt;p&gt;The glass style sometimes opened on the wrong page, and force-stopping the app didn't help until the next touch.&lt;/p&gt;

&lt;p&gt;Key input, including &lt;code&gt;adb shell input text&lt;/code&gt;, a keyboard or a D-pad, puts Android in non-touch mode. Android then moved focus to a page that was composed but off-screen, and the pager scrolled to it. The fix was to stop composing off-screen pages with &lt;code&gt;beyondViewportPageCount = 0&lt;/code&gt;. I only tested this with simulated key input, not a real keyboard or remote.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it
&lt;/h2&gt;

&lt;p&gt;It's only been tested on two Samsung phones with Claude Code on Linux. There's no APK yet, so you need a computer and a coding agent. Reports from other phones and agents would really help:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/MedTahiri/ai-launcher-android" rel="noopener noreferrer"&gt;https://github.com/MedTahiri/ai-launcher-android&lt;/a&gt;&lt;/p&gt;

</description>
      <category>android</category>
      <category>kotlin</category>
      <category>ai</category>
      <category>opensource</category>
    </item>
  </channel>
</rss>
