An old PHP bug became remote code execution, and a fake interview emptied an exchange
AI turned a 2024 PHP bug nobody fixed into remote code execution in two weeks, and a fake job interview cost Binance $6.3B
Spend 1% of your day keeping up with tech.
Quote of the Day#
“Now it is time for the technical debt to be paid off.” — Matt Suiche, founder of Tolmo, on PHP2Shell in IEEE Spectrum (source)
“Nobody’s going to fix this problem until something really bad happens.” — Matthew Green, cryptographer at Johns Hopkins, in the same IEEE Spectrum piece (source)
Today’s Theme#
Several of today’s stories are about problems planted a long time ago. The PHP2Shell bug was reported in 2024, left alone because it only crashed things, and turned into remote code execution with AI help in two weeks this year. Karthikey Hegde found his ISP had been rewriting his DNS, because plain DNS was never encrypted. A Binance engineer ran an interviewer’s repo on a machine that held a deploy token. There are residential proxy exits on the White House network, and Apple says public iCloud links lose end-to-end encryption in 27.3. On the builder side, Gemini’s computer use tool is GA, Apple now lets generative AI apps sell credits that expire, and Meta bought Conductor.
Must Read#
- Karthikey Hegde caught his ISP tampering with DNS, and only Cloudflare DoH returned the real IP — Lobste.rs
Security - After PHP2Shell: AI is making 40 years of technical debt come due — Hacker News
AI - Mika: an Android agent that drives any app on a hidden background screen — GitHub
AI - unslop: turning vibecoded, obviously-AI interfaces into something designed — GitHub
AI - datasette-llm 0.1a10 fixes a bug where the demo site didn’t restrict models to the config — Simon Willison
AI - The $6.3B Binance heist started with a fake job interview and a take-home assignment — Hacker News
Security - Agent Autoloop: let Claude Code and Codex pick up work in the background and ping you only when unsure — GitHub
AI - Residential proxy exits on the White House network: 236 times in 30 days, mostly in the evening — Hacker News
Security - Safari 27.3’s Adaptive Dark Mode darkens sites that never shipped a dark theme — Lobste.rs
Web - Nicholas Nethercote’s rustc speedup report: a new Span encoding leaves only 1% interned in incremental builds — Lobste.rs
Dev - Starting with iOS 27.3, Apple will scan iCloud items shared as “anyone with the link” — The Verge
Privacy - sspai tries Apple Intelligence for mainland China: 785 days later, Siri plugs into Qwen and Baidu — sspai
Product
1. Karthikey Hegde caught his ISP tampering with DNS, and only Cloudflare DoH returned the real IP#
6 min · field notes · Lobste.rs

Why you should care: If your home or office network still sends plain DNS, the IP you get back might not be the real one.
Summary: He was fixing his homelab on a Saturday when a Podman container kept failing to reach an outside site. Running dig against Google, Cloudflare and others gave almost the same IP every time. Switching to Cloudflare’s DoH endpoint gave a different one. He looked up the owner of the first IP and it was his ISP. The tweet about it blew up, so this post answers the misconceptions in the replies. DNSSEC verifies but doesn’t encrypt, he says, and the October Defaults.Exposed census found only 7.03% of graded domains with a fully validating DNSSEC chain.
- Key point 1: Self-hosting Unbound doesn’t save you by default: recursive lookups go out over plaintext UDP, so you need a forward-zone to a DoT upstream to get encryption
- Key point 2: His setup is AdGuard plus
dnscrypt-proxy, with Cloudflare as a fallback for containers that can’t lose DNS. He also points out SNI still tells your ISP which site you visit unless you use a VPN
Community reaction: 61 points on Lobsters (thread).
Why it matters: Our apps are almost all HTTPS, so a tampered IP usually means a failed connection, not stolen data. Next time a user says “it won’t connect” while everything looks fine on our side, I’ll ask which ISP they’re on and have them try DoH.
2. After PHP2Shell: AI is making 40 years of technical debt come due#
4 min · reporting · Hacker News

Why you should care: If your backend runs PHP, WordPress or Drupal, bugs at this level are going to show up more often.
Summary: Dina Genkina at IEEE Spectrum covers PHP2Shell, disclosed in late October. NASA, Wikipedia, the White House and every WordPress or Drupal site were exposed to data reads and arbitrary code execution. The underlying bug was reported to the PHP Foundation back in 2024. It was an out-of-memory error that only crashed the program, so nobody fixed it. This year Calif audited PHP with OpenAI sponsorship, and one researcher with AI tools turned it into remote code execution within two weeks. On the fix side, four engineers needed two months for a patch. Matt Suiche of Tolmo says 40 years of human-written legacy software is being exposed and the technical debt is due.
- Key point 1: Suman Jana at Columbia says the exploit “is not really rocket science”, just a lot of painful, specific reasoning that AI happens to be good at. He also says AI can’t do it alone: the people at Calif, OpenAI and Wiz knew PHP deeply
- Key point 2: Jana is hopeful about formal verification, where an LLM writes the patch and the proof and only the proof checker stays non-LLM. Matthew Green at Johns Hopkins is gloomier: he expects nobody will fund this until something really bad happens, maybe early 2027
Community reaction: 967 points and 588 comments on HN (thread), the top story of the day. The most-replied comment is from simias, 25 years in, saying web devs keep scaffolding on top of root problems instead of fixing them.
Why it matters: The gap between finding bugs and fixing them is only going to grow. I’m putting PHP and dependency updates for the HerFIT backend on this week’s list, and I’m taking Green’s advice literally: when the phone offers a security update, don’t wait until next week.
3. Mika: an Android agent that drives any app on a hidden background screen#
repo · 6,599 stars · GitHub
Why you should care: Phone agents don’t have to wait for apps to ship APIs. They can read the screen and tap, which means your app will get used this way too.
Summary: Mika is an open-source (Apache-2.0) Android agent. You say what you want and it opens apps, taps, types and scrolls on a hidden background screen while you keep using the phone. README examples: read through a group chat and sum it up, find a charger under $30 rated 4.5+ and stop before checkout, order takeout with stacked discounts and ask before paying. No app APIs: it finds buttons by looking at the screen, and finished tasks turn into skills so the next run is faster. There’s no Mika server. You bring your own model API key or sign in with ChatGPT, xAI or OpenRouter.
- Key point 1: To control phone apps you run the “Set up phone control” wizard once and pair wireless debugging. Chat, web and files work without it
- Key point 2: The repo was created on October 29 and already has 477 commits, with READMEs in six languages
Why it matters: To a screen-reading agent, a Flutter screen looks the same as a native one. I’ll check that important buttons have clear text and Semantics labels, because an agent gets lost in the same places a screen reader does. Stopping to ask before payment is the right call.
4. unslop: turning vibecoded, obviously-AI interfaces into something designed#
repo · 8,590 stars · GitHub
Why you should care: If every screen your agent generates ends up with the same purple gradient, this skill is aimed right at that.
Summary: A Claude Code and Codex skill from Damir Sokolovsky. It first lists every sign of slop with its location: purple gradients, glows, emoji labels, shouty copy, uneven spacing. Then it sets a direction from your product and fixes the screen in passes like a designer’s redline review: spacing, color, icons, copy, type, layout, details, visuals, motion. It works with Next.js, React, Vue, Svelte, Tailwind or plain HTML/CSS, and even a live site from just a link. It proposes a direction before editing, and if the screen is already good it says so and suggests small tweaks.
- Key point 1: When a hero needs an image it can call fal, Replicate, OpenAI images or Higgsfield, and it shows the prompt and asks before every paid generation
- Key point 2: It can also render a square video under 10 seconds of the screen unslopping itself, which needs Playwright and ffmpeg
Community reaction: Theo’s video “Agents Sucked At UI” in Watch & Listen is about the same problem.
Why it matters: Flutter isn’t on its list. I’m still going to use its slop checklist on my own screens; emoji labels and uneven spacing are my usual sins.
5. datasette-llm 0.1a10 fixes a bug where the demo site didn’t restrict models to the config#
1 min · release · Simon Willison

Why you should care: When you let users pick an LLM, “only the models in the config” is an easy restriction to get wrong.
Summary: Simon Willison shipped datasette-llm 0.1a10, the LLM integration plugin other Datasette plugins depend on. This release fixes one bug: on his agent.datasette.io demo site, the list of available models wasn’t restricted to the ones in the configuration, so users could reach models outside it. The post is a single release note. The same week he also shipped datasette-agent 0.5a0 and datasette-apps 0.3a0, both in More to Read.
- Key point 1: datasette-llm is the base layer; datasette-agent and datasette-apps both go through it to call models
- Key point 2: You can try agent.datasette.io by signing in with GitHub
Why it matters: If Flexii or HerFIT ever lets users choose a model, the allowlist check goes on the backend, not just hidden options in the UI. Simon’s own demo got this wrong, which tells you how easy it is.
6. The $6.3B Binance heist started with a fake job interview and a take-home assignment#
5 min · security reporting · Hacker News

Why you should care: Engineers who download a repo from an interviewer and run it are exactly who this attack was built for.
Summary: The Register walks through Binance’s incident report. In June a wallet-team engineer installed a malicious Homebrew package. Security caught it, replaced the device and rotated credentials, but the attackers now knew who was on the wallet infrastructure team. In September another engineer was contacted on a legitimate job site by a fake company. In the first video round the interviewer even shared personal social media photos to build trust. In the second, the “CEO” on a chat app told him to download an assignment repo laced with malware. It ran on his work computer and swapped pyenv for a malicious version, and endpoint security didn’t catch it right away. On October 20 the attackers used an internal AI tool to reach two more engineers’ machines. One held a container deployment token, and on October 29 they used it to deploy a container and start the theft.
- Key point 1: The FBI attributed it over the weekend to North Korea’s TraderTraitor, linked to Lazarus Group
- Key point 2: Binance says it rebuilt the wallet system and the internal AI tool, revoked every affected credential, and plans an AI security research fund
Community reaction: 522 points on HN (thread). iThome’s write-up adds one figure: Binance has frozen or intercepted about $2.85B.
Why it matters: Interview take-homes now get run in a VM or devcontainer, never on a work machine. I also have deploy tokens sitting on a personal laptop for some projects, and it’s time to move those to short-lived tokens.
7. Agent Autoloop: let Claude Code and Codex pick up work in the background and ping you only when unsure#
repo · 2,409 stars · GitHub
Why you should care: If you’re still watching a terminal waiting for your agent’s next question, this tool wants to get you out of that chair.
Summary: The author, KKKKhazix, says most CLI agents are used with a human babysitting the terminal, and closing the window kills the work. Agent Autoloop is a lightweight automation hub: a zero-dependency scheduling kernel, with event sources, agents, notification channels and even deploy pipelines as pluggable plugins. One Mac or Linux box and one command, no cloud server, no public ports. Any CLI that takes a prompt and prints a final reply can plug in. When it needs a decision, it pushes a card to Feishu, DingTalk, WeCom, Slack, Discord or a desktop notification, and while the agent waits it holds no process and spends no tokens.
- Key point 1: It needs Node 24, Git, curl and a signed-in CLI agent;
agent-autoloop trywalks you through ask, wait, decide, finish - Key point 2: There’s no Windows build yet. The author is traveling without a Windows machine and plans to finish it the weekend of November 7 and 8
Why it matters: Install is curl | sh, so I’ll read install.sh first. My own agent scheduling is homemade, and the “no tokens while waiting for you” design is worth borrowing.
8. Residential proxy exits on the White House network: 236 times in 30 days, mostly in the evening#
4 min · security research · Hacker News

Why you should care: Residential proxies run on SDKs inside ordinary devices, and a third-party SDK in your app could be one of them.
Summary: Layer3 Intel launched its Residential Proxy Observatory this week and spotted proxy exits on AS2650, registered to the Executive Office of the President, the White House network. From October 5 to November 3 their pipeline exited through it 236 times, from 6 addresses, on 26 of 30 days, and 28 different proxy services could exit there. Spur and Synthient independently flag the same addresses. Anyone can buy this access for a few dollars. About half the activity falls between 5 p.m. and midnight Eastern with almost none in the early morning, which looks like one person on the network late in the evening with a device running a proxy SDK.
- Key point 1: They cite Synthient’s research on the Kimwolf botnet, which reached at least 2 million devices through residential proxy networks, mostly Android with ADB exposed
- Key point 2: Proxies show up in remote places too: 413 addresses and 32,000+ observations on Saint Helena, and 3 from McMurdo Station in Antarctica
Community reaction: 302 points on HN (thread).
Why it matters: Some “monetize your app” SDKs work by selling users’ bandwidth to proxy services. I’ll look at an SDK’s network behavior before adding it. iThome’s XCPE story today is the same supply chain, with 88,000 infected devices in Taiwan.
9. Safari 27.3’s Adaptive Dark Mode darkens sites that never shipped a dark theme#
7 min · official blog · Lobste.rs

Why you should care: If your web pages or WebViews don’t declare dark mode support, Safari may darken them for you.
Summary: The WebKit team announced Adaptive Dark Mode in Safari 27.3 beta. When a user turns it on, Safari turns light sites dark. Their numbers: almost 40% of page loads come from users in dark mode, but only 10% of page loads support it. Sites that declare <meta name="color-scheme" content="light dark"> or CSS color-scheme: light dark are left alone. For everything else, Safari checks whether the page is mostly light, then applies a color matrix that inverts luminosity while keeping hue, aiming for WCAG 4.5:1 text contrast. Most images stay as they are, SVGs get recolored when needed, bitmaps get a histogram check so only simple black-and-white logos flip, and <canvas> content is untouched.
- Key point 1: To make your site convert well: SVG for logos and icons, no tiled background images, CSS instead of sprites, transparent image backgrounds
- Key point 2: For control over one region, put
color-scheme: light darkon that element and write your own dark styles
Community reaction: 28 points on Lobsters (thread).
Why it matters: Flutter Web mostly paints to a canvas, so per the post it won’t be converted. The help pages and privacy policy we open in WebViews should get a color-scheme line, though, or dark mode users will see Safari’s version.
10. Nicholas Nethercote’s rustc speedup report: a new Span encoding leaves only 1% interned in incremental builds#
8 min · engineering notes · Lobste.rs

Why you should care: Rust developers wait on the compiler every day, and this post lists which PR saved how much.
Summary: Nethercote finished his first month on Rust compiler performance at Hexcat. Every AST, HIR and MIR node carries a Span: four 32-bit fields, 16 bytes, usually compressible into one of three 8-byte inline formats with the rest interned in a global table. In #163857 he replaced the compression scheme, cutting interned spans in incremental builds from 20 to 40% down to around 1%, under 0.1% for non-incremental, and up to 3%+ fewer instructions. #163628 added a single-entry cache in front of a hash table for up to 4%+. On the new trait solver he did a dozen micro-optimizations for Diesel, taking the Check Full instruction overhead from 1.49x to 1.16x.
- Key point 1: #164965 stops creating one type variable per element in literals like
vec![1, 2, 3, 4]: an 8 to 12% cycle win on a 100,000-element stress test, and no help anywhere else - Key point 2: He writes up the misses too: #164291 made
Option<Span>the same size asSpan, didn’t speed anything up, made the code messier, so he dropped it
Community reaction: 25 points on Lobsters (thread).
Why it matters: I don’t work on compilers, but I like this format: numbers for every PR, failures included. On the Dart side build_runner is slow too, and this makes me want to measure where my own projects actually spend the time.
11. Starting with iOS 27.3, Apple will scan iCloud items shared as “anyone with the link”#
3 min · reporting · The Verge

Why you should care: If you or your users share files through public iCloud links, from 27.3 that content is no longer end-to-end encrypted.
Summary: The Verge cites an Apple support document first reported by 9to5Mac. On iOS, iPadOS, macOS and visionOS 27.3 or later, an iCloud item shared with “Anyone with the Link” becomes accessible to Apple to check for “harmful content”. Items shared that way also lose end-to-end encryption. Apple’s document doesn’t define harmful content. Apple reserves the right to move, refuse, modify, remove or delete it, and may block accounts, stop users from creating new ones, or contact law enforcement “if necessary”. The first 27.3 developer betas came out two days ago, with release planned for December.
- Key point 1: The report ties it to protesters’ calls for Apple to crack down on child sexual abuse material in iCloud
- Key point 2: Only the “Anyone with the Link” permission is affected; sharing with specific people isn’t covered by this document
Community reaction: A separate HN thread links straight to the Apple support document, 28 points.
Why it matters: We sometimes send test builds and design files to partners as iCloud links. Anything private now goes out as shared-with-specific-accounts or through storage with real access control.
12. sspai tries Apple Intelligence for mainland China: 785 days later, Siri plugs into Qwen and Baidu#
16 min · hands-on · sspai

Why you should care: If your app has users in mainland China, Apple Intelligence looks different there than everywhere else.
Summary: The author, Wantong, counts it out: Apple China’s site said “ready for Apple Intelligence” on September 10, 2024, and today is day 785. The first features open for testing today in the iOS 27.3 developer beta and ship with the December release: Writing Tools, Clean Up, Live Translation, and Siri officially connected to Qwen and Baidu. What got approved is the original version with the “marquee” Siri UI; the WWDC 2026 interface and next-gen Siri AI aren’t included. It supports iPhone 15 Pro and up plus every iPhone 16 and later, including 16e and 17e. iPhone 15 and 15 Plus have only 6GB of RAM and are still left out.
- Key point 1: Any one of three conditions turns it on: a China-model device (model ending in CH/A), a mainland China Apple account, or no account signed in with the device located in mainland China. The download is up to 7GB
- Key point 2: On the author’s iPhone Air it took 5.92GB. On-device models handle the basics, and harder requests go to Alibaba’s Qwen, which you have to enable manually
Why it matters: The article says Siri can read what’s on screen and hand it to Qwen. Screens in our apps that show sensitive data could end up going to a third-party model in mainland China, so the privacy notes should say that.
More to Read#
-
Release: datasette-apps 0.3a0 — Worth a look if you want to see what “chat a database app into existence” looks like. Datasette Apps hosts custom HTML apps inside Datasette; you can write them by hand, but it’s quicker to have Datasette Agent build them. This release lets you tag an app in agent chat by typing
#, with autocomplete.
-
Release: datasette-agent 0.5a0 — Simon calls this a significant release. The new feature is the panel: agent chat opens next to a Datasette table or query page. With datasette-apps you can prompt a database-backed app into existence and keep editing it from the chat beside it. Sign in to agent.datasette.io with GitHub to try it.

-
Behind Latent Space: Kill My SaaS, Jev & AI in 2026 | AIEi Shanghai — A follow-up to yesterday’s Astra fight. swyx admits yesterday’s title story presented some claims in an overly favorable light, but says the paper has several independent replications and doesn’t deserve a retraction. Today’s issue features AI Engineer Shanghai and an interview on Latent Space’s history, 32 minutes in all.
-
How big is the open model economy today? — Nathan Lambert’s first open model economy research note for paid subscribers. His longest-running agent testbed is the Interconnects Dashboard, a free aggregator of open model adoption and performance data. He also says every adoption measure we have is imprecise: noisy platform metrics and marketing-flavored startup numbers. (Paywalled after the intro.)
-
Kimi K3.1 Pro model weights are out — Moonshot released the Kimi K3.1 Pro weights. The Hugging Face model card: MoE, 2.8T total and 104B active parameters, 93 layers, 1M-token context, its most capable 3T-class model, pitched at coding, 3D creation and financial research. 288 points on HN. On V2EX someone asked which Chinese model codes best, and Kimi 3.1 Pro, DeepSeek V4.1 and Qwen 3.8 max all got votes.
-
Kimi K3.1 Pro now has more ZDR providers on AI Gateway — For anyone who wants Kimi without leaving data on someone’s servers. Kimi K3.1 Pro and its Highspeed version on Vercel AI Gateway now come from more Zero Data Retention providers; until today Moonshot was the only one. Both have a 1M-token context window and accept images.
-
See the agents, set the terms: new visibility and control for personal agents — When users have agents compare prices, read docs or place orders, it all shows up as bot traffic to the site. Cloudflare added a Personal Assistant category to Bot Analysis in Security Analytics so you can see personal agent traffic on its own, plus finer access policies. Their point: blocking every agent feels safest but can cost you customers.
-
When agents become database users: how Tencent Cloud handles the unknowns — InfoQ’s recap of Tencent Cloud’s database session at its October 30 ecosystem conference. The star is TDSQL Nexa Lakebase, launched in August, aimed at two problems: company data scattered across systems that agents can’t pull together, and data agents find but can’t interpret. The approach is a unified semantic layer plus hybrid vector and structured queries.
-
After a 5,000x token surge, where are enterprise agents still stuck? — The opening number is wild: China’s National Data Administration says daily token calls went from 100 billion in early 2024 to over 500 trillion by July 2026, more than 5,000x in two years. Tencent Cloud’s Dowson Tong says enterprise agents get stuck at the breakpoints between people, tools, systems and data. The rest is mostly a Tencent Cloud product roundup.
-
Google Data Agent Kit goes GA, with safeguards split between skills and IAM — Worth noting if you use BigQuery. Google’s Data Agent Kit is out of its summer preview, free and open source: an MCP toolset that connects agents to 15+ Google data cloud services, plus skills for things like BigQuery SQL tuning and Bigtable row key design. It installs into Claude Code, Codex and Cursor.
-
Apple opens Siri AI integration to all developers — We covered Siri AI opening up yesterday; this piece adds the Skills mechanism, which lets Siri chain several actions into one task. Third-party apps still expose features through App Intents, so what Siri can do depends on what developers expose. Their example: while a ride-hailing app shows a Live Activity, you can tell Siri to change the pickup point without naming the app.
-
Dharma Field Extractor: Any Document In, Structured Fields in JSON Out — For anyone extracting fields from documents. Dharma-AI released a 2-billion-parameter model that pulls exactly the fields you ask for from any document type and returns JSON. The team says it beat every frontier LLM they tested at a fraction of the cost. In April they shipped DharmaOCR-LITE, an OCR-focused model.
-
AI on the Ballot — Ben Thompson on the US midterms. Democrats won both chambers, and what stood out to him was data centers: the most common campaign ad topic he saw in Wisconsin, with both parties against them and accusing the other of being for them. Texas governor-elect Hinojosa has pledged a moratorium on data center construction. (Paywalled after that.)
-
Progress on provable inference for large language models — When you call a model, how do you know the response came from that model and not a cheaper one swapped in by a router? Anthropic, with researchers from EPFL and MIT, is working on provable inference with zkSNARK proofs. The system is called FlashProve, and the post says Claude itself produced some of the zkSNARK improvements.
-
A new Go API for JSON — Go backend folks can upgrade.
encoding/json/v2andencoding/json/jsontextwere experimental last year and are now stable in Go 1.27. The post lists the old package’s problems, likeMarshalJSONforcing a fresh[]byteallocation and inconsistent calls on pointer-receiver methods.
Also Worth a Look#
- Ripple-65B Preview: U.S. Open-Weight SOTA on Agentic Coding — Hacker News (pretrained on 12T tokens, 80.52 on TerminalBench 2.1)
- How we halved DNS build delay and cut memory use by 85% — Cloudflare Blog (about 700 record changes per second, peak memory down 85%)
- Hackers stole DreamHost customer files and inboxes during months-long attack — TechCrunch (started in August, attackers got session tokens)
- ChatGPT will now make you animated GIFs — The Verge (ships with Images 2.6, adjust speed and edit frames)
- Nothing CEO says company’s mysterious AI-first device is dropping next month — TechCrunch (Carl Pei says December, no new screen)
- Canva lays off over 1,200 people amid slowing growth — TechCrunch (1,271 people, 22% of staff)
- Waymo confirms it’s shaking up its Uber relationship in January 2028 — TechCrunch (ends Uber exclusivity in Austin and Atlanta)
- OpenAI is already trying to shape the 2028 election — TechCrunch (Chris Lehane’s policy push)
- DuckDuckGo pitches itself to schools amid backlash over Google’s AI policy — TechCrunch
- Workflow SDK adds idempotent starts — Vercel Blog (
start()is atomic, duplicate starts fail safely) - Zig 0.17.1 Released — Lobste.rs (fixes 57+ issues)
- Kitty 0.50 — Hacker News
- After 5 years, Wasp 1.0 is coming — Dev.to (a six-month plan)
- OpenAI to acquire Pierre Computer Company, Inc. — OpenAI (page returned 403, not read, demoted)
Builder Radar#
1. Gemini API’s computer use tool is generally available#
2 min · platform update
Why you should care: If you want an agent that drives a browser or phone, there’s now a stable, GA tool for it.
Google AI Studio announced the computer use tool in the Gemini API is GA, with no breaking changes from preview, for browser, mobile and desktop agents (836 likes, about 60,000 views).
What it means for your app: If Flexii ever wants to fill in web forms for users, this is where I’d start. Must Read #3, Mika, works the same way by reading the screen; our own buttons need clear text and Semantics.
2. Apple changes the rules: credits sold by generative AI apps can expire#
2 min · store policy
Why you should care: AI apps can sell credit packs without promising to pay for compute forever.
RevenueCat summed it up: Apple reversed a painful rule for AI apps, and purchased credits can now expire. Eligible generative AI apps can apply now; it only covers new IAPs, and the expiry must be at least 12 months (100 likes).
What it means for your app: If HerFIT adds a credit system for an AI coach, this makes pricing much easier to reason about. I’ll check the eligibility terms in App Store Connect first and adjust the RevenueCat setup to match.
3. Meta buys Conductor, and its cloud service shuts down November 20#
3 min · acquisition

Why you should care: If you use Conductor’s parallel agent workspaces, move your cloud data out before November 20.
TechCrunch reports Meta acquired Conductor, which runs multiple agents in parallel workspaces. Founder Charlie Holtz says he’ll work with Alexandr Wang and Nat Friedman and promises “something new” early next year. Core features keep working, but the cloud service shuts down November 20, after which user cloud data will be deleted. The same day Ben Tossell listed it on X: HumanLayer to Factory, Conductor to Meta, Pierre to OpenAI (post, 574 likes).
What it means for your app: Coding agent tools keep getting bought, so I won’t tie my workflow to one small tool. Configs and prompts live in my own repo so switching doesn’t hurt.
4. Uber: only four rides were booked by AI agents during Halloween week#
2 min · data

Why you should care: Agents can operate apps now, but users aren’t using them yet, and this number is a good reality check.
On Uber’s earnings call, CFO Balaji Krishnamurthy said Uber and Uber Eats handled about 320 million trips and orders during Halloween week, with only 500 Uber Eats orders placed by agents and four rides. CEO Dara Khosrowshahi called it very, very early, and noted booking a ride in the app takes about 50 seconds. DoorDash said last week it had only a few hundred agent orders.
What it means for your app: When the app’s own flow is quick, an agent has little to add. There’s no rush to build agent-only entry points; cutting steps and waiting time in the main flows pays off more.
5. Microsoft packs agent skills into NuGet packages so they track library versions#
3 min · tooling experiment

Why you should care: If a package ships its own SKILL.md, agents don’t have to guess new APIs from stale training data.
iThome reports the .NET team experimented with packing SKILL.md into NuGet packages so it downloads with dotnet restore. Their Markout library demo ships five skills. dotnet-inspect lists the skills in a package, and dotnet-package-skills copies them into .agents/skills for version control. Strong models gained little from skills and weaker ones sometimes didn’t follow them; Microsoft also warns malicious skills could become a new supply chain attack.
What it means for your app: Dart has nothing like this yet. I’ll put a SKILL.md in my own package repos, but skills that come from other people’s packages get read before any agent uses them, same as code.
6. Chunghwa Telecom now sells Google AI Plus and Pro on annual contracts billed monthly#
2 min · local market

Why you should care: Paying for AI just got easier for users in Taiwan, which makes Gemini an easier selling point for your app.
iThome reports Chunghwa Telecom announced on November 4 an expanded deal with Google: Google AI Plus and AI Pro can be bought through Chunghwa, on their own or bundled with 5G or HiNet. The AI features are the same as buying from Google; the difference is payment, a yearly contract paid monthly on the phone bill instead of a lump sum.
What it means for your app: More users in Taiwan will have a paid Gemini plan. If our apps integrate Gemini later, it’s worth thinking about how that fits with a plan users already pay for.
What the Community Is Arguing About#
1. Ben Stolovitz’s “How I use AI (Oct 2026)”: $3,000 a month in tokens and a personal AI policy#

Ben Stolovitz of Salesforce AI Research wrote up how he uses AI: about $3,000 a month in tokens, and this year a written AI policy for his own life. 248 points and 290 comments on HN. The most-replied comment, from vagab0nd, says AI moves so fast that everyone thinks they’re ahead, and asks who in October 2026 doesn’t already know coding is solved. mef51 points at the contradiction: the author’s most successful work this year was hand-writing a tool that replaced about 4,000 lines of vibe code.
2. Hinton: we might have been better off never developing AI#
Geoffrey Hinton, 78, told The Guardian we might have been better off without the technology, warning of a large-scale incident this year or next, such as a temporary blackout of financial or power systems, and saying that within a decade, maybe sooner, we’ll know whether humanity can manage it. 294 points and 288 comments on HN. mrweasel says AI company leaders mainly care about money and aren’t used to cleaning up their own mess; bemtevi quotes the blackout line and says that might not be the worst outcome.
3. Linux on Nvidia RTX Spark laptops: the GPU gets stuck at 780 MHz on wall power#
This MindStudio post says that once an RTX Spark laptop is plugged in, the GPU under Linux locks to roughly 780 MHz, because the power table that splits power between CPU and GPU is encrypted and only the Windows driver can decrypt it. GPT-OSS-120B runs at 65.4 tokens/s on Windows and 13.9 on Linux. 564 points and 260 comments on HN. K0balt worries it’s a push toward total cloud dependence; barrkel asks why anyone runs inference on a laptop instead of a home box over Tailscale.
4. Namespace builds its own Mac racks: Mac minis ordered in January arrived in July#

CI provider Namespace wrote about building custom Mac racks and spinning up macOS instances, with one painful line: “have you actually tried to order a couple hundred Minis? We have. Ordered in January, delivered in July.” 408 points and 222 comments on HN. borschtplease says Apple still lives in the boxed-software era and Xcode Cloud is a joke; solatic runs the numbers on cloud Macs, $0.06 to $0.09 per minute at Namespace, Semaphore and GitHub Actions, and calls it ludicrous.
Chinese Tech Scene#
1. Security Daily, Nov 4: XCPE botnet hits nearly 90,000 Android devices in Taiwan, 5th worldwide#
(iThome): Google’s threat intelligence team says XCPE controls 1.3M+ Android devices and accuses manufacturers of preloading the backdoor; Taiwan ranks 5th in infections. The same roundup notes Binance has frozen or intercepted about $2.85B.

2. Bank SinoPac confirms abnormal transfers were a hack through a vendor’s security setting flaw#
(iThome): iThome says outside hackers exploited a security setting flaw at the vendor of its new online banking system. Bank SinoPac says the money was fully returned on November 3 and it takes full responsibility; every affected customer’s national ID starts with P, and the investigation continues.
3. WorkOS breached by attackers using the AI pentest framework ARTEX#
(iThome): Founder Michael Grinich says the attackers used an AI-assisted offensive framework for automated recon and exploitation: ARTEX, which has shown up in several recent attacks.
4. E-commerce ERP vendor Mobick hacked; Shopline rotates related API keys#
(iThome): After 91APP, 1shop, Cyberbiz and meepShop, another Taiwanese e-commerce tech provider was hacked, and Shopline has rotated the related API keys.
5. Million-dollar AI bills: how LLMjacking attacks work#
(TechNews): Attackers who steal cloud AI keys call models directly; in extreme cases 500,000+ calls in under 8 hours, with losses approaching $1M.
6. ChatGPT’s search-like queries hit one fifth of Google’s while Google’s query growth hits a 5-year high#
(TechOrange): With third-party estimates of about 16B Google searches a day, one fifth means roughly 3.2B a day; the piece questions what counts as a search and how it’s measured.
7. 1.5 trillion tokens a month, $132M a year? A Cursor engineer’s bill#
(InfoQ China): Peter Piekarczyk saw Lauren Tan’s Cursor profile showing 1.5 trillion tokens in 30 days and ran the math; the piece’s point is that not all usage is useful.
8. Codex writes a 139,000-line kernel in 11 days that boots Rocky Linux 10#
(InfoQ China): CentOS co-founder Gregory Kurtzer used “human-directed agentic engineering” to build Ginux, a mostly-Rust kernel compatible with the Linux ABI that boots Rocky Linux 10 and runs systemd.
9. Same model, 30 to 95 points: the harness makes the difference#
(InfoQ China): A write-up of YC Paper Club’s Harness Night: the same weights with a different harness go from 30% to 95% or even 100% on ARC-AGI.
10. Is a stop button enough? Four gates of agent governance via CrowdStrike’s kill switch#
(TechOrange): CrowdStrike launched an AI Kill Switch on 11/3, first at the AI gateway layer with endpoints coming later; the piece splits agent governance into four gates: see, control, stop, record.
11. Microsoft’s WinApp extension adds a WinUI XAML language service with binding checks in VS Code#
(iThome): v0.4 checks XAML types and data binding errors inside VS Code instead of waiting for a build.
12. Client development you didn’t know: choosing stacks in the AI era#
(sspai): Tw93 on cross-platform options, noting Flutter draws with its own engine, Skia early on and now its in-house Impeller.
Open Source Picks#
1. valentderah/totk-pc-recomp#
C | 4,818 stars
Static recompilation of Tears of the Kingdom (Switch) into a native x86-64 app for Windows and Linux with a Vulkan renderer, MIT. No game files included: you build it from a dump of your own copy on your own machine. It’s playable, with visual bugs and crashes still expected
2. govijr/terminal-mac#
Swift | 1,454 stars
A separate macOS desktop for computer-use agents, viewed and controlled from a terminal. Apple Virtualization runs a real macOS guest, so agent commands don’t move your physical Mac’s pointer or touch its clipboard. Needs Apple silicon and macOS 14+
3. wquguru/cicada#
Swift | 1,098 stars
Cicada: live meeting notes, bilingual subtitles and simultaneous interpreting on the Mac, Apache-2.0. It reads system audio and recognizes speech locally, no bot joining your Zoom or Feishu call; hold the right Option key to speak and the other side hears the translation
4. peterretief/codemap#
JavaScript | 45 stars
A Show HN project that maps a Go module into one HTML page: each package, what it builds on, what uses it, and the functions in each file. Run go run github.com/peterretief/codemap@latest in the module folder, or use it in GitHub Actions
5. Vapmuz/Mocktastic#
C | 19 stars
Meshtastic on an ESP32, a small project for anyone curious about LoRa mesh networking
Watch & Listen#
Theo: Agents Sucked At UI (Until Today)#
262,486 views · 2026-11-03 · Theo - t3.gg

Why you should care: Why agent-made interfaces all look the same; it pairs with unslop in Must Read #4.
- The description: it’s time to make agents good at design, and Theo breaks down how he made Opus hill climb until it made what he wanted
- 262,486 views, the most of today’s picks
- No transcript; this comes from the description, and the sponsor is Magic Patterns
Claude Reverse Engineered Two 3DS Games to Add Real 3D#
7,110 views · 2026-11-03 · MattVidPro

Why you should care: Another case of AI chewing through old code, the same skill behind today’s PHP2Shell story.
- From the description: Minecraft on the 3DS had a full stereo renderer the developers switched off after one frame and later deleted, and Claude reverse engineered the game to bring it back
- Then Claude built per-layer 3D for Terraria from scratch on New and Old 3DS, plus inventory sorting, 9999 stacks and a world-map memory fix
- They ship as free patch-only Luma3DS plugins with no game files; no transcript, this comes from the description
10 Habits PhDs Must Unlearn To Build a Startup#
13,572 views · 2026-11-04 · Y Combinator

Why you should care: If you’re moving from research to a startup, here’s how YC frames the difference. Google, Anthropic and Databricks had PhD founders, but the video calls them the exceptions.
- The speaker, Francois Chaubard, is a YC visiting partner and current PhD student who researched in Fei-Fei Li’s lab and founded Focal
- The description lists: thriving without deadlines or grades, interesting versus important ideas, and why being first to an idea can be a disadvantage
- 13,572 views; no transcript, this comes from the description
Today’s Take#
What stuck with me today is that old things are getting dug back up. The PHP2Shell bug was filed as a crash in 2024 and sat there for two years. Hegde’s plaintext DNS was rewritable by his ISP the whole time. The deploy token on that Binance engineer’s machine had been there a long while too. Finding these used to take a lot of human time. AI makes finding faster and fixing hasn’t kept up, which is the asymmetry Jana is talking about.
I’m doing three things. The HerFIT PHP backend gets upgraded this week. Any repo from an interviewer or contractor runs in a VM. Long-lived deploy tokens on my projects become short-lived ones. Green thinks nobody pays until something really bad happens, and I’d rather not be part of that something.
There’s a builder thread too. Mika and Gemini computer use both drive apps by looking at the screen, yet Uber says only four rides were booked by agents during Halloween week. Agents can use your app already; users haven’t picked up the habit. Getting text labels and Semantics right now is cheap.
The last thread is trust. Apple now scans public iCloud links and drops end-to-end encryption for them, Apple Intelligence in mainland China sends harder requests to Qwen, and Anthropic is researching how to prove a response really came from the model you asked for. App makers tend to bury “where your data goes” at the end of the privacy policy. Today makes me want to move it to the top and say plainly what leaves the phone and who gets it.
One more note, about money. In the Chinese Tech Scene, a Cursor engineer used 1.5 trillion tokens in 30 days, and the LLMjacking story describes stolen keys hit with 500,000+ calls in under 8 hours. Heavy token use isn’t automatically useful, and a leaked key just burns cash. I’m putting budget alerts and usage caps on every cloud AI key; the Gemini and OpenAI consoles both have them, and it takes five minutes. Keys also stay out of app code: going through a backend proxy like Firebase AI Logic with App Check means decompiling the app doesn’t hand over the key.