Google Ads

When AI Ad Systems Mistake Open-Source Design for Malware

When AI ad systems flagged Przemyslaw Alexander Kaminski's RACE, a Rust terminal multiplexer on an infinite canvas that detaches child shells into background processes, as malware, the false positive revealed something…

3 min readInfoQ
When AI Ad Systems Mistake Open-Source Design for Malware

When a developer creates a legitimate open-source tool and ad algorithms flag it as malware, the system isn't just making a mistake, it's revealing a fundamental blind spot in how automated trust works. Przemyslaw Alexander Kaminski built RACE, a Rust terminal multiplexer that runs on an infinite canvas and detaches child shells into background processes. When he ran an ad campaign, automated scanners suspended his account for malware, even though the software had passed notarization and Safe Browsing checks. This isn't a glitch to be patched; it's a structural failure in how ad platforms evaluate software that doesn't fit their narrow definitions of acceptable behavior. We've seen similar friction before in how When your formula bar edits freeze the cursor, your spreadsheet stops flowing, when a tool's core functionality clashes with expectations designed for simpler workflows, users hit invisible walls. The difference here is that Kaminski's wall isn't a bug in his code; it's a bug in the gatekeeping layer between his work and his audience.

What makes this case instructive is the specific technical detail that triggered the false positive. RACE's architecture uses POSIX process management in ways that ad heuristics apparently interpret as malicious behavior. The tool detaches child processes into the background, which is a standard pattern for terminal multiplexers, think of it as a more flexible version of tmux or screen, but on an infinite canvas. Automated scanners, however, see process spawning and detachment and jump to conclusions. This operational deadlock matters because it's not just about one ad account. It's a preview of what happens when automated systems designed for consumer apps evaluate infrastructure tools. The same pattern of false positives already affects open-source maintainers trying to promote legitimate system utilities, and it will only get worse as more platforms rely on heuristic scanning without human review loops. Compare this to how A self-hosted inbox for background AI agents is now open source, that project also deals with background processes and autonomous behavior, but its creators had the advantage of building within an ecosystem that already understands agentic patterns. Kaminski's tool, by contrast, lands in a system that treats unfamiliar architectures as threats by default.

The practical takeaway here is direct: if you build or use tools that interact with system processes in non-standard ways, you should expect automated ad systems to fail you. This isn't a reason to stop building; it's a reason to plan for friction in distribution. Kaminski's experience suggests that clean notarization and Safe Browsing checks are not enough to satisfy ad platform scanners, and there is no clear appeal process for false positives in this domain. The open question worth watching is whether platforms will adapt their heuristics to accommodate legitimate open-source infrastructure, or whether developers will need to start treating ad platforms as another compatibility layer to navigate. For now, if your tool manages processes the way RACE does, don't assume the gatekeepers understand what they're looking at.

From InfoQ

Przemyslaw Alexander Kaminski created RACE, a Rust terminal multiplexer on an infinite canvas that detaches child shells into background processes. When he launched an ad campaign, automated scanners suspended his account for malware despite clean notarization and Safe Browsing checks. The flag illustrates operational deadlocks when ad heuristics evaluate POSIX process architectures.

Read the original at InfoQ