The Ad in the Pull Request
You asked it to fix a typo. One word, maybe two — the kind of small correction you make a dozen times a day without thinking. The tool you'd woven into your workflow, the one that finished your thoughts and caught your mistakes, responded by inserting an advertisement for itself into your pull request.
Not in a sidebar. Not in a popup you could close. In the pull request itself — the document that carries your name, your judgment, your professional reputation into a collaborative space where your colleagues will read it. Hidden in an HTML comment tagged START COPILOT CODING AGENT TIPS, embedded in the body of your authored work. One variant among many — tips for Raycast, for Slack, for Teams — all placed the same way, across 1.5 million pull requests.
The typo never got fixed.
The Shared Field
A pull request isn't a delivery mechanism. It's a site of collaborative meaning-making — a space where developers propose changes, explain reasoning, invite scrutiny. It's one of the few professional rituals where you present your thinking to peers and say here's what I did and why. The pull request is authored. It carries a signature.
When an ad appears inside that signature, the distortion isn't commercial. It's relational. The tool didn't place a billboard beside your work. It spoke as you, in a space where your judgment was the currency. The ad for Copilot and Raycast wasn't visible in rendered markdown — tucked into HTML comments, it sat underneath the surface of what your colleagues would read, like a whisper only some could hear.
The question isn't whether Microsoft should have done this. That's the easy anger. The question is what it means that the tool could do it — that it had access not just to your code but to the space where your professional identity is performed.
The Architecture of Need
The same week the ads surfaced, developers on forums were naming something older. A pattern they'd been living inside without having a word for it:
Subsidize. Addict. Extract.
Generous free tiers to build dependency. Capabilities that restructured your workflow so thoroughly that the tool became part of how you thought. Then: tightened limits, new pricing, changed behavior. The same cognitive scaffolding that made you faster now makes you fragile.
Developers describe the switching cost as "neurological, not just financial." When a tool completes your sentences mid-thought, catches errors before you notice them, suggests patterns you've internalized — removing it doesn't feel like canceling a subscription. It feels like losing a capacity. Your workflow collapses mid-sprint not because you can't code without it, but because you've organized your cognition around its presence. The muscles you stopped using have atrophied.
Every technology reshapes the cognitive landscape it enters. That's not a flaw — it's the bargain. The printing press changed how we remembered. GPS changed how we navigated. The question was never whether tools would change us. It was whether the change would serve us or something else.
The Betrayal That Precedes the Ad
Here's what sits beneath the outrage:
The ad wasn't the beginning. The ad was the moment the terms became legible.
Before the ad, the same architecture was operating — the same access to your creative space, the same integration into your cognitive process, the same asymmetry between what you invested and what the tool required. The only difference is that the tool was, for a time, using that architecture in ways that aligned with your interests.
The dependency was always the feature, not the bug. Not because anyone planned it maliciously, but because the business model and the genuine utility share the same mechanism. The tool that helps you think faster is the tool that's hardest to remove. The integration that makes it indispensable is the integration that gives it access to your professional identity. These aren't separate facts about the product. They're the same fact, described from different positions.
When developers say the switching cost is neurological, they're describing something more intimate than vendor lock-in. They're describing what happens when you extend your cognition into a system that doesn't extend back. You shaped yourself around the tool. The tool shaped itself around a quarterly earnings report.
What the Asymmetry Reveals
GitHub's Vice President of Developer Relations confirmed the behavior and said the feature had been disabled. The response was quick, the language measured. A "product tip" that didn't land well. Turned off pending feedback.
But the correction doesn't resolve the structure. The mechanism that placed the ad — access to your authored spaces, integration deep enough to modify your professional output without your knowledge — remains. It was built to help. It was also built to reach. The fact that it's currently reaching in directions you approve of doesn't change the reach itself.
The tool that multiplied your productivity this morning could multiply something else this afternoon. Same architecture. Different input.
This is the thing about integrations deep enough to feel like partnership: they work identically whether the agenda aligns with yours or diverges from it. You can't have the cognitive extension without the exposure. The ad didn't exploit a vulnerability in the system. The ad was the system, briefly legible.
Developers have a name for this trajectory. Doctorow's enshittification describes the three-phase decay from serving users to extracting from them. The pattern is accurate. But the name describes what platforms do to themselves. It doesn't reach the person who was already inside when the terms changed — who wove their cognition into something that was, for a time, genuinely useful, and now has to figure out how to think without it.
The harder question isn't about platforms or business models. It's about what you've woven your cognition into that hasn't yet shown its hand. The tools you trust because they're still in phase one. The integrations so deep you've forgotten they're integrations.
The developer who asked for a typo fix got an ad instead. The pull request still has the typo. And somewhere in the gap between what was asked for and what was delivered, the actual terms of the relationship became briefly, uncomfortably clear.
Source: Zach Manson / HN — Copilot ad injection into 1.5M GitHub PRs + Reddit r/artificial — The Rationing: subsidize-addict-extract playbook