Most weeks the ledger is about data lost — a breach, a leak, a payment made in the dark. This week the theme is quieter and more unsettling: surveillance systems advancing without ever winning the argument they’d lose in the open. In four separate arenas, the machinery moved forward — not because it persuaded anyone, but because the defaults were rigged in its favor. A procedure here, a pre-installation there, an unanswerable slogan, a hardware dependency. Nobody had to convince you. They only had to arrange things so your objection didn’t count.
Here’s the week, and the thread running through it.
Europe: a majority voted no, and it passed anyway
On July 9, the European Parliament voted on extending the EU’s temporary message-scanning regime — the “Chat Control” derogation that lets providers scan private communications for known abuse material. 314 MEPs voted to end it. 276 voted to keep it. The majority lost.
It passed anyway, because the vote fell at second reading, where killing the Council’s position requires an absolute majority of all 720 members — 361 votes. The 314 who voted no came up 47 short, and the scanning regime now runs to April 2028. The much-praised “encryption carve-out” that accompanied it is, as its critics note, largely symbolic — it exempts services that couldn’t be scanned anyway. And the permanent, mandatory version of the law isn’t dead; it reopens under the new Irish Council presidency in September.
The lesson isn’t that the procedure is corrupt — the absolute-majority rule is ordinary. The lesson is what happens when that ordinary rule is used to preserve mass surveillance over the stated objection of most members who bothered to vote. We covered the full mechanics in How Chat Control Survived a Vote It Lost.
America: 100,000 cameras, and the reckoning
Flock Safety’s automatic license plate readers crossed 100,000 cameras in the United States this year — a searchable, national map of where cars go, assembled one neighborhood at a time. The business model was to become infrastructure before anyone got to vote on it. In 2026 the bill came due.
A California class action alleges federal and out-of-state agencies searched San Francisco’s camera network more than 1.6 million times in seven months, in apparent violation of state law — with damages that could run into the billions. San Francisco’s own audit found 299 improper searches run through a side door no one at the department had authorized. Oxnard’s “California only” setting was silently overridden by a vendor issue. And the ACLU documented Flock telling city council after city council things that weren’t true. The result: more than 80 contracts torn up across 28 states, most of them in the first months of 2026. The full anatomy is in 100,000 Cameras and a Reckoning.
The pre-installation strategy worked right up until residents started asking what the cameras actually did — and voting to take them down.
Everywhere: “protect the children” becomes ID-to-browse
The most effective wrapper in surveillance is the one nobody can argue against. This year “keep kids safe online” hardened into concrete machinery on three continents: an EU age-verification app rolling out to five pilot countries, a bloc-wide social media ban for minors expected as a formal proposal after the summer, an Australian under-16 ban that deactivated 4.7 million accounts in weeks, and a UK regime that sent VPN signups spiking four figures overnight as adults routed around it.
Some of it is genuinely well-built — the EU’s zero-knowledge “over-18 token” proves age can be checked without harvesting identity. Much of it isn’t, and the US courts have drawn the revealing line: they’ll uphold ID-to-view-adult-content but keep blocking ID-to-use-social-media, because the latter sweeps in mountains of protected adult speech. The unanswerable slogan is doing the work the evidence can’t. We mapped the whole landscape in Show Your ID to Speak.
The escape hatch: the private phone on a countdown
Then there’s the quieter dependency. GrapheneOS — the hardened, de-Googled Android build that’s the gold standard for a private phone — ran for years on exactly one hardware line: Google’s Pixel. In 2026 Google pulled the Pixel from the open-source Android tree, cut its release cadence, and GrapheneOS admitted it’s now “not sure” it will support newly launched Pixels. Its escape hatch — a Motorola partnership to break the exclusivity — just slipped to 2027.
No one attacked the project. Google simply made its hardware a little less open on its own timeline, and a tool built entirely on that hardware had to reinvent its foundation on a deadline set by someone else. That’s the subtlest form of this week’s theme: when your freedom runs on one company’s roadmap, that roadmap is your ceiling. Full story in The Squeeze on GrapheneOS.
The pattern
Four stories, four mechanisms, one shape. Chat Control advanced on a procedural default — silence counting as consent. Flock advanced on a physical default — cameras up before the vote. Age verification advances on a rhetorical default — a goal no one can oppose, smuggling in a mechanism many would. GrapheneOS is squeezed by a structural default — dependence on hardware it doesn’t control.
None of these needed to win a fair fight. That’s the point, and it’s the through-line worth holding onto: the fights over privacy are decided less and less by persuasion and more and more by who gets to set the defaults. A regime that survives a vote it lost, a network installed before anyone votes, a mandate wrapped in a slogan, an escape route that runs through the very company you’re escaping — in each case the argument was never really had.
So have it. Ask your city council whether there’s a Flock contract and what it’s wired to share. Read the fine print on the age gate before you hand over your ID, and prefer the systems that store nothing. Use genuinely end-to-end encrypted messaging, because the encryption carve-out won’t protect what you don’t already encrypt. And if you rely on a private phone, buy hardware with years of support left and watch the 2027 alternatives closely. The defaults are set by whoever shows up while everyone else assumes the argument is over. This week, it wasn’t.



