Your AGI good boy

Issue #519.September 8, 2026.2 Minute read.
Bytes

Today’s issue: Another developer manifesto, TanStack’s (potential) legal drama, and why my therapist writes release notes.

Welcome to #519.


Eyeballs logo

The Main Thing

Cesar Millan kneeling beside a dog with its paw resting on his book

The expert you call in when you want your model to be a good boy

Your AGI good boy

AGI is here… at least that’s what Greg Brockman and Jensen Huang told me at brunch last week. But after I accidentally spilled my coffee on him, Greg revoked my OpenAI influencer account, so I found out about GPT-6 Astra like the rest of you normies via their blog post.

And since I didn’t spend $18k in tokens playing with the model before it was released, I don’t have a bunch of hot takes to unload. But what I will say is that it’s not exactly what I expected from what the people (who definitely don’t have any financial incentives at stake) are calling AGI. So what is it?

Well, according to their announcement, this model is OpenAI’s “most intelligent and aligned” model that they have created, which essentially means that it’s really good at school arbitrary benchmarks and obeys all the rules (every parent’s dream). Here’s a quick overview:

  • Benchmarks: The main benchmark breakthrough for this model was with ARC-AGI-3, which tests the model on novel interactive tasks. Astra scored 99.9% and surpassed the human action-efficiency baseline on 96% of levels. It’s worth noting that this score was achieved with OpenAI’s Responses API harness, which retains reasoning and enables compaction. In a separate test on the public task set, those settings improved Sol’s score from 13.3% to 38.3% — a reminder that the harness matters, too.

  • Alignment: After “the Hugging Face incident,” OpenAI created a new benchmark to measure whether or not a model would go beyond its intended scope. Without production safeguards, Sol went beyond the authorized target in 48.2% of cases on the ExploitGym honeypot evaluation, whereas Astra went to the Cesar Millan school for good boys and did it in 0% of cases on that evaluation (allegedly).

  • Capabilities: Astra is apparently really good at Blender, and most of the demos you’ve seen involve some sort of generative 3D, which is objectively cool. It also sets a new frontier for computer use, but anecdotally, it is not any better at coding than other models… so make of that what you will.

Bottom line: I still have no idea what AGI is, but if this is it, it’s pretty clear that intelligence isn’t the bottleneck for most of life’s hard problems, which is why you’re (probably) still single.


Meticulous logo

Our Friends
(With Benefits)

The Rock wearing glasses and resting his fist against his mouth with a concerned expression

TFW you have to test the 25,000 line PR your agent cooked up

Move fast and don’t break things

The one thing everyone’s talking about: agents now write the majority of your code, but how do you test it?

As our name suggests, we use real user sessions to meticulously test every edge case and flag what will break before you merge:

  • Near-100% coverage on every PR
  • 70% of Notion’s most critical frontend functionality covered
  • Zero dev effort, no flakes

With Meticulous, Notion cut frontend testing and maintenance efforts by 30%, with individual engineers estimating savings of up to 5 hours a week.

Schedule a demo to learn more.


Spot the Bug logo

Spot the Bug

Spot the Bug – Sponsored by ZeroClick

The next visitor to your site will be an AI agent. Turn them into your next customer with ZeroClick, a tool that turns your API or service into an agent-purchasable product complete with x402 and MPP support.

const query = "JavaScript & coffee";
const params = new URLSearchParams({
  q: encodeURIComponent(query),
});

const url = new URL(`https://example.com/search?${params}`);

// Should print "JavaScript & coffee"
console.log(url.searchParams.get("q"));

Cool Bits logo

Cool Bits

  1. Vitest v5 just dropped, and it’s faster, smaller, and has a new bench API that makes it easy to create your own TMBBs (trust me bro benchmarks).

  2. The Bun 1.4.1 release fixed 202 issues and reduces idle memory usage, which inspired me to have my therapist do release notes after each session so I can take credit for solving the problems I’ve created for myself.

  3. Sentry is hosting a free workshop on logs. It will go beyond basic logging to show you how to use logs with traces and errors to find root causes faster, keep context across services, and tune signal instead of drowning in noise. [sponsored]

  4. Base UI released v1.8.0, which fixes a bunch of issues most of us would never realize were bugs.

  5. Against all odds, Turbopack is alive and well, and the team just wrote a blog post about how they do their chunking.

  6. Sergey Karayev wrote “The Multiplayer AI Manifesto”, which means we need to reset the days since a developer wrote another manifesto counter back to zero.

  7. Agents are writing more of your code, and that’s fine — the trouble is your release process still moves at human speed. LaunchDarkly’s CodeControl enables teams to roll changes out gradually and helps automatically revert issues in production. [sponsored]

  8. Christoph Nakazawa announced fatestack, a “modern stack for the web”. Tanner’s trademark lawyers are licking their chops right now.

  9. Apparently, Flow is making a comeback because someone on the Vue core team made uf, a unified toolchain that builds, tests, formats, and lints React/Flow projects. I have so many questions.

  10. Shu Ding created a 27.5 kB, language-agnostic, WebGPU-accelerated syntax highlighter that can run in the browser; that size is minified and Brotli-compressed. Does this mean we can stop loading 18 MB of Shiki for our blogs now?


Spot the Bug logo

Spot the Bug: Solution

Spot the Bug – Sponsored by ZeroClick

URLSearchParams encodes parameter values when it builds the query string, so calling encodeURIComponent first encodes the value twice. Reading the parameter decodes only one layer, leaving JavaScript%20%26%20coffee instead of the original text.

Pass the unencoded value to URLSearchParams and let it handle the encoding:

const query = "JavaScript & coffee";
const params = new URLSearchParams({
  q: query,
});

const url = new URL(`https://example.com/search?${params}`);

// Prints "JavaScript & coffee"
console.log(url.searchParams.get("q"));