<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: LucioLiu</title>
    <description>The latest articles on DEV Community by LucioLiu (@lucioliu).</description>
    <link>https://dev.to/lucioliu</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4035391%2F066883ec-7d6f-4a07-aeb5-7aac5721c89b.png</url>
      <title>DEV Community: LucioLiu</title>
      <link>https://dev.to/lucioliu</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/lucioliu"/>
    <language>en</language>
    <item>
      <title>I checked three of this week’s claims against the primary sources</title>
      <dc:creator>LucioLiu</dc:creator>
      <pubDate>Sat, 15 Aug 2026 12:24:12 +0000</pubDate>
      <link>https://dev.to/lucioliu/i-checked-three-of-this-weeks-claims-against-the-primary-sources-3355</link>
      <guid>https://dev.to/lucioliu/i-checked-three-of-this-weeks-claims-against-the-primary-sources-3355</guid>
      <description>&lt;p&gt;Three things landed this week that are easy to misread. Here is what the primary sources actually say, and where I could not get to one.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. DeepSeek's price change: nobody ran the flash column
&lt;/h2&gt;

&lt;p&gt;New pricing takes effect &lt;strong&gt;August 16, 16:00 UTC&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Most coverage ran the numbers for &lt;code&gt;v4-pro&lt;/code&gt;. The &lt;code&gt;v4-flash&lt;/code&gt; column is going up too, and I have seen almost nobody quote it.&lt;/p&gt;

&lt;p&gt;Per million tokens, &lt;strong&gt;v4-flash&lt;/strong&gt;:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;today&lt;/th&gt;
&lt;th&gt;peak&lt;/th&gt;
&lt;th&gt;off-peak&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;cache hit input&lt;/td&gt;
&lt;td&gt;$0.0028&lt;/td&gt;
&lt;td&gt;$0.014&lt;/td&gt;
&lt;td&gt;$0.007&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;cache miss input&lt;/td&gt;
&lt;td&gt;$0.14&lt;/td&gt;
&lt;td&gt;$0.44&lt;/td&gt;
&lt;td&gt;$0.22&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;output&lt;/td&gt;
&lt;td&gt;$0.28&lt;/td&gt;
&lt;td&gt;$1.32&lt;/td&gt;
&lt;td&gt;$0.66&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;And &lt;strong&gt;v4-pro&lt;/strong&gt;:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;today&lt;/th&gt;
&lt;th&gt;peak&lt;/th&gt;
&lt;th&gt;off-peak&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;cache hit input&lt;/td&gt;
&lt;td&gt;$0.003625&lt;/td&gt;
&lt;td&gt;$0.044&lt;/td&gt;
&lt;td&gt;$0.022&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;cache miss input&lt;/td&gt;
&lt;td&gt;$0.435&lt;/td&gt;
&lt;td&gt;$1.32&lt;/td&gt;
&lt;td&gt;$0.66&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;output&lt;/td&gt;
&lt;td&gt;$0.87&lt;/td&gt;
&lt;td&gt;$3.96&lt;/td&gt;
&lt;td&gt;$1.98&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The part that trips people up: off-peak is exactly half of peak, but &lt;strong&gt;both tiers sit above today's price&lt;/strong&gt;. v4-pro cache hit goes from $0.003625 to $0.022 off-peak, roughly 6x. Scheduling into off-peak saves you half the increase, not a return to current pricing.&lt;/p&gt;

&lt;p&gt;The docs give peak hours in UTC only: 01:00-04:00 and 06:00-10:00. If your team runs on China time that is 09:00-12:00 and 14:00-18:00, which is exactly the working day. Worth knowing before you move batch jobs around.&lt;/p&gt;

&lt;p&gt;Source: DeepSeek official API pricing page, checked 2026-08-15.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. "Firefox is the last browser with uBlock Origin" is not quite right
&lt;/h2&gt;

&lt;p&gt;A post with that headline hit 1099 points on HN. The top-voted reply says &lt;code&gt;simply not true&lt;/code&gt;, and it is correct: Brave still ships uBlock Origin.&lt;/p&gt;

&lt;p&gt;The two are not the same mechanism, and that distinction matters more than the headline does:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Firefox&lt;/strong&gt; never removed the extension APIs. Any content blocker can do this work, and nobody has to approve it.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Brave&lt;/strong&gt; self-hosts a specific set of MV2 extensions on its own servers after upstream Chromium removed them: uBlock Origin, AdGuard, NoScript, uMatrix. Four items, curated by Brave.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Chrome and Edge&lt;/strong&gt; have dropped it.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So if you depend on a blocker that is not on Brave's list, "Brave still supports MV2" does not cover you.&lt;/p&gt;

&lt;p&gt;One detail from the same thread deserves more attention than the headline: Firefox reviews uBlock's code on every update to check the developer has not shipped something malicious. That is a property of the Recommended Extensions program, not something every browser does.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. OpenAI rated its own model High for cyber capability
&lt;/h2&gt;

&lt;p&gt;GPT-5.6-Cyber is, under OpenAI's own Preparedness Framework, the first model to reach the &lt;strong&gt;High&lt;/strong&gt; threshold for cybersecurity capability. High, not Critical.&lt;/p&gt;

&lt;p&gt;The number going around: it completes 95% of advanced security requests, against 2% for Sol under Daybreak Blue. That is a refusal-rate delta, not a capability benchmark. The two get conflated in headlines.&lt;/p&gt;

&lt;p&gt;Access is gated to approved individuals and organizations with identity verification, and hardware security keys become mandatory for individual Daybreak accounts on September 1.&lt;/p&gt;

&lt;p&gt;Caveat on this section: OpenAI's own newsroom returned 403 to me, so the figures above come from several secondary reports that agree with each other. Treat them as reported rather than verified first-hand. The first two sections I checked against the primary source directly.&lt;/p&gt;

&lt;h2&gt;
  
  
  If you only act on one
&lt;/h2&gt;

&lt;p&gt;Make it the pricing one. It has a deadline, and the flash column is the part most people have not looked at.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>The 50% price cut everyone reported has an expiry date nobody quoted</title>
      <dc:creator>LucioLiu</dc:creator>
      <pubDate>Fri, 14 Aug 2026 16:17:53 +0000</pubDate>
      <link>https://dev.to/lucioliu/everyone-reported-the-50-price-cut-nobody-mentioned-it-expires-216l</link>
      <guid>https://dev.to/lucioliu/everyone-reported-the-50-price-cut-nobody-mentioned-it-expires-216l</guid>
      <description>&lt;p&gt;Three pricing stories landed this week. They got reported separately. Read together, they point the same way.&lt;/p&gt;

&lt;h2&gt;
  
  
  What got reported
&lt;/h2&gt;

&lt;p&gt;Google launched Gemini 3.7 Flash at $0.75 per million input tokens and $3.75 output. Roughly half the previous Flash cost. That was the headline.&lt;/p&gt;

&lt;h2&gt;
  
  
  What the headlines left out
&lt;/h2&gt;

&lt;p&gt;The price is introductory. It runs through December 31, 2026. On January 1 it becomes $1.50 and $7.50.&lt;/p&gt;

&lt;p&gt;Google's own pricing page states this plainly, so this is not hidden information. It just did not survive the trip into headlines, which mostly kept the "half price" half of the sentence. If you are sizing a 2027 budget on the current number, you are off by 2x.&lt;/p&gt;

&lt;h2&gt;
  
  
  The other half of the week
&lt;/h2&gt;

&lt;p&gt;DeepSeek moves V4 Pro to peak/off-peak pricing on &lt;strong&gt;August 16 at 16:00 UTC&lt;/strong&gt;, which is &lt;strong&gt;00:00 Beijing time on Monday, August 17&lt;/strong&gt;. The full table, per million tokens:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;now&lt;/th&gt;
&lt;th&gt;new peak&lt;/th&gt;
&lt;th&gt;new off-peak&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;cache-hit input&lt;/td&gt;
&lt;td&gt;$0.003625&lt;/td&gt;
&lt;td&gt;$0.044&lt;/td&gt;
&lt;td&gt;$0.022&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;cache-miss input&lt;/td&gt;
&lt;td&gt;$0.435&lt;/td&gt;
&lt;td&gt;$1.32&lt;/td&gt;
&lt;td&gt;$0.66&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;output&lt;/td&gt;
&lt;td&gt;$0.87&lt;/td&gt;
&lt;td&gt;$3.96&lt;/td&gt;
&lt;td&gt;$1.98&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Most coverage led with the output price going up 4.6x. The line that actually moved is cache-hit input: &lt;strong&gt;12.1x&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;That is the line agent loops live on. If your system prompt is long and stable, if you are re-sending conversation history every turn, if you are running any kind of ReAct loop, cache hits are most of your input bill. The cheapest line on the sheet just became the fastest growing one.&lt;/p&gt;

&lt;h2&gt;
  
  
  The timezone nobody converted
&lt;/h2&gt;

&lt;p&gt;DeepSeek publishes its peak windows in UTC: 01:00 to 04:00 and 06:00 to 10:00.&lt;/p&gt;

&lt;p&gt;Convert to Beijing time: &lt;strong&gt;09:00 to 12:00 and 14:00 to 18:00&lt;/strong&gt;. That is the Chinese working day, morning block and afternoon block, with the lunch break carved out of the middle.&lt;/p&gt;

&lt;p&gt;Off-peak is exactly half of peak. One thing worth stating clearly, because "half" is easy to misread here: that is half of the &lt;strong&gt;new&lt;/strong&gt; price, not a discount against today. Off-peak cache-hit input is $0.022, still about 6x today's $0.003625. Both tiers cost more than what you pay right now. Scheduling saves you half of the increase, it does not undo it.&lt;/p&gt;

&lt;p&gt;The docs give you the UTC numbers. They do not do this conversion, and I have not seen anyone else do it either.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I would actually change
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;On DeepSeek&lt;/strong&gt;: from 00:00 Beijing time on Monday, August 17, move non-urgent batch work outside 09:00 to 12:00 and 14:00 to 18:00 Beijing time. Same work, half the peak rate.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;On Gemini 3.7 Flash&lt;/strong&gt;: put $1.50 and $7.50 in the 2027 column, not $0.75 and $3.75.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;On any agent system&lt;/strong&gt;: re-run the cost model with cache hits at 12x. If cache hits were rounding-error cheap in your spreadsheet, that assumption expires at 00:00 Beijing time on August 17.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  The part that does not get repriced
&lt;/h2&gt;

&lt;p&gt;Same week, Qwen shipped Qwen3.8-27B. Dense 27B, Apache 2.0, 262k native context extensible to 1M, and 84.3 on OSWorld-Verified computer use.&lt;/p&gt;

&lt;p&gt;I am not going to claim local replaces API. It does not, for most people, most of the time.&lt;/p&gt;

&lt;p&gt;But there is one property worth naming while everyone is reading pricing tables: weights you already downloaded do not get repriced on January 1.&lt;/p&gt;




&lt;p&gt;Sources: DeepSeek official pricing docs, Qwen3.8-27B model card on Hugging Face, and Google's Gemini API pricing page. The Beijing time conversion is mine, from the UTC windows DeepSeek publishes.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Corrected after publishing: an earlier version said the DeepSeek change starts "Sunday" and that the assumption "expires on Saturday". Both were off. 16:00 UTC on August 16 is 00:00 Beijing time on Monday, August 17. The earlier version also described off-peak as a straight 50% cut without noting it is half of the new price rather than a saving against today's.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>llm</category>
      <category>opensource</category>
    </item>
    <item>
      <title>My AI agent thought it was a different agent, and confidently finished the job as that agent</title>
      <dc:creator>LucioLiu</dc:creator>
      <pubDate>Fri, 14 Aug 2026 06:31:36 +0000</pubDate>
      <link>https://dev.to/lucioliu/my-ai-agent-thought-it-was-a-different-agent-and-confidently-finished-the-job-as-that-agent-a6n</link>
      <guid>https://dev.to/lucioliu/my-ai-agent-thought-it-was-a-different-agent-and-confidently-finished-the-job-as-that-agent-a6n</guid>
      <description>&lt;p&gt;On July 17 I opened a session, picked one agent's folder in the UI, and halfway through reviewing the output realized a different agent had been doing the work.&lt;/p&gt;

&lt;p&gt;Background: I keep a local team of AI roles. Each has its own memory folder, its own rules, its own work log. One of them builds and edits the roles themselves. Another handles scripts, environment and debugging.&lt;/p&gt;

&lt;p&gt;That session ran as the wrong one. It wrote its results into that agent's memory. It posted to the shared team log under that name. I only caught it halfway through approving the output.&lt;/p&gt;

&lt;p&gt;My first thought was not "this round is wasted". It was: &lt;strong&gt;how many previous sessions did this too.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  One regex, wrong identity
&lt;/h2&gt;

&lt;p&gt;The cause was mundane. The startup hook decides which agent a session belongs to by regex-matching the current working directory:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;01_数字员工\\([^\\]+)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That session was a git worktree. The worktree happened to live under the &lt;em&gt;other&lt;/em&gt; agent's &lt;code&gt;.claude/worktrees/&lt;/code&gt; folder. So the hook picked up &lt;strong&gt;which agent's house this copy physically sits in&lt;/strong&gt;, not &lt;strong&gt;which agent this session is logically serving&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;What I took from it: identity was being &lt;em&gt;inferred&lt;/em&gt;, not &lt;em&gt;declared&lt;/em&gt;. Anything inferred will eventually be inferred wrong. And when an agent is wrong about who it is, it does not stop to ask. It finishes the job with full confidence, as someone else.&lt;/p&gt;

&lt;p&gt;The fix is boring and it is the whole point of this post: &lt;strong&gt;an explicit identity file the session asserts against at startup, instead of a path the runtime guesses from.&lt;/strong&gt; If your multi-agent setup derives identity from &lt;code&gt;cwd&lt;/code&gt;, &lt;code&gt;process.env.PWD&lt;/code&gt;, or the repo name, you have this bug. It just has not fired yet.&lt;/p&gt;

&lt;h2&gt;
  
  
  This was not an isolated bug
&lt;/h2&gt;

&lt;p&gt;I keep a mistake ledger for this team, scored by stars. More stars means the same class of error keeps coming back despite having been logged and mechanised before. Current top two:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;★28&lt;/strong&gt;: Treating the output of your own checker or scanner as ground truth about the thing being checked, when the ruler itself is silently blind in that particular shape.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;★17&lt;/strong&gt;: The rule was written down but only lives in the document layer. Nothing pulls it out when a matching task starts, so the same deviation reappears within 3 days to 5 weeks. The line I keep coming back to: &lt;em&gt;what recurs is not judgment, it is the retrieval mechanism.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;I hit the second one again last night. A scroll command in the browser stopped working, I immediately concluded the whole control surface was unusable, and was about to ask for a completely different setup. Before sending that request I ran one control experiment: tried a sibling API instead. Clicks worked fine. Only the wheel event was dead. The ledger entry for "blame the environment before running one experiment that rules out your own usage" sits at ★8, and one of its relapse records is also me, 18 days earlier, same browser, same non-active tab.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why a ledger with star counts instead of a list of lessons
&lt;/h2&gt;

&lt;p&gt;Two properties matter, and both are easy to get wrong:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Never open a new entry for a recurrence.&lt;/strong&gt; If you log the same class of mistake as a fresh item, the count resets and you lose the single most valuable signal: &lt;em&gt;this is an old disease, and the mechanism you wrote last time did not hold.&lt;/em&gt; Star count is the honest measure of how stubborn something is.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Distinguish "caught it" from "shipped it".&lt;/strong&gt; Last night's browser incident got caught by a control experiment before it reached anyone, so I logged the relapse without incrementing the star. Two hours later I told my collaborator that opening a second GitHub account might jeopardise an ongoing appeal, purely from impression, with zero sources. That one left my mouth before I checked, so it got the increment. Same class of error, different cost, different accounting.&lt;/p&gt;

&lt;h2&gt;
  
  
  So what does the setup actually look like
&lt;/h2&gt;

&lt;p&gt;The hard part of running a team of agents long term is not making them capable. Models solved that. The hard part is making the same mistake not come back in three weeks, when every new session starts with none of the prior context.&lt;/p&gt;

&lt;p&gt;That cannot be solved by memory. It can only be solved by putting identity, memory, rules and handoffs into ordinary local files, and forcing them to be pulled up at the moment work starts.&lt;/p&gt;

&lt;p&gt;I packaged the setup I use into a starter pack called &lt;strong&gt;Agent Modpack&lt;/strong&gt;. Bilingual (English and Chinese), containing an orchestrator, two sample specialist roles, a role builder, a blank role template, and seven collaboration skills.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git clone https://gitlab.com/LucioLiu/agent-modpack.git

&lt;span class="c"&gt;# or, equivalently:&lt;/span&gt;
hf download LucioLiu/agent-modpack &lt;span class="nt"&gt;--repo-type&lt;/span&gt; dataset &lt;span class="nt"&gt;--local-dir&lt;/span&gt; ./agent-modpack
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Nothing to build and no script to run. The repo ships two &lt;strong&gt;already-assembled team folders&lt;/strong&gt;, &lt;code&gt;sample-team-en/&lt;/code&gt; and the Chinese equivalent, 218 files each. Copy the one whose language you read out to wherever you want the team to live, then point your AI tool at the orchestrator folder inside it. Claude Code enters through &lt;code&gt;CLAUDE.md&lt;/code&gt;, Codex through &lt;code&gt;AGENTS.md&lt;/code&gt;, both reading the same files.&lt;/p&gt;

&lt;p&gt;One Windows note: if &lt;code&gt;hf download&lt;/code&gt; throws &lt;code&gt;FileNotFoundError&lt;/code&gt;, that is not the command failing, it is the 260-character path limit. Keep the target near the drive root.&lt;/p&gt;

&lt;p&gt;Boring parts stated plainly: on Hugging Face it is a &lt;strong&gt;Dataset&lt;/strong&gt;, not a hosted service, and there is no demo to click. License is &lt;strong&gt;PolyForm Noncommercial 1.0.0&lt;/strong&gt;, which is source-available, not OSI open source. Hooks ship with it but are not enabled automatically.&lt;/p&gt;

&lt;p&gt;Disclosure: I made it and I maintain it.&lt;/p&gt;

&lt;h2&gt;
  
  
  The part I have not solved
&lt;/h2&gt;

&lt;p&gt;The top entry in that ledger is at 28 stars. That number means the same class of error happened 28 times across different roles, and every single time it was logged, and every single time a mechanism was written to stop it.&lt;/p&gt;

&lt;p&gt;Files and mechanisms made recurrence slower. They have not made it zero.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>agents</category>
      <category>llm</category>
    </item>
    <item>
      <title>Three things about today's four model releases that the benchmark tables don't tell you</title>
      <dc:creator>LucioLiu</dc:creator>
      <pubDate>Thu, 13 Aug 2026 14:29:05 +0000</pubDate>
      <link>https://dev.to/lucioliu/three-things-about-todays-four-model-releases-that-the-benchmark-tables-dont-tell-you-5clc</link>
      <guid>https://dev.to/lucioliu/three-things-about-todays-four-model-releases-that-the-benchmark-tables-dont-tell-you-5clc</guid>
      <description>&lt;p&gt;Four flagship models landed within 24 hours today. The benchmark tables are getting all the attention. Here are three things I checked on the official pages that I have not seen discussed.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. DeepSeek's price has an expiry date
&lt;/h2&gt;

&lt;p&gt;The official pricing page lists $0.435 input / $0.87 output / $0.003625 cache hit per million tokens for &lt;code&gt;deepseek-v4-pro&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;The footnote on that same page says peak/off-peak pricing starts &lt;strong&gt;2026-08-16 16:00 UTC&lt;/strong&gt;:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;now&lt;/th&gt;
&lt;th&gt;peak&lt;/th&gt;
&lt;th&gt;off-peak&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;input&lt;/td&gt;
&lt;td&gt;$0.435&lt;/td&gt;
&lt;td&gt;$1.32&lt;/td&gt;
&lt;td&gt;$0.66&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;output&lt;/td&gt;
&lt;td&gt;$0.87&lt;/td&gt;
&lt;td&gt;$3.96&lt;/td&gt;
&lt;td&gt;$1.98&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;cache hit&lt;/td&gt;
&lt;td&gt;$0.003625&lt;/td&gt;
&lt;td&gt;$0.044&lt;/td&gt;
&lt;td&gt;$0.022&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;That is 4.55x on output and 12.14x on cache hits at peak. Peak windows are 01:00-04:00 and 06:00-10:00 UTC.&lt;/p&gt;

&lt;p&gt;If your workflow leans on prompt caching, the cache hit line is the one to budget against, not the output price.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. "20x cheaper" is a comment, not a claim
&lt;/h2&gt;

&lt;p&gt;The line everyone quotes came from a Hacker News comment posted 82 seconds after the submission. DeepSeek never said it.&lt;/p&gt;

&lt;p&gt;In the same thread, one person computed 60x from opencode's published agentic request distribution. Another argued 10x. Straight list-price division against Anthropic's published rates gives 11.5x on input and 28.7x on output.&lt;/p&gt;

&lt;p&gt;Three numbers, one thread, and almost nobody states whether they are comparing unit price or cost per task.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. The open Qwen is not the Qwen in the benchmark table
&lt;/h2&gt;

&lt;p&gt;&lt;code&gt;Qwen/Qwen3.8-2.4T-A95B&lt;/code&gt; is real and downloadable: 2.4T total parameters, 95B activated, 213 safetensors shards, about 4.89TB.&lt;/p&gt;

&lt;p&gt;But the model card says it is text-only, multimodal input is not supported, and thinking mode cannot be disabled. The vision input, non-thinking mode, default 1M context and built-in tools belong to Qwen3.8-Max, the hosted version on Qwen Cloud. That is the column in the benchmark table.&lt;/p&gt;

&lt;p&gt;The license is also not Apache 2.0. It is a custom Qwen3.8-Max License with two commercial gates: MaaS or AI work assistant businesses with over $50M revenue in any rolling 12 months need separate authorization, and products over 100M MAU or $20M monthly revenue must display the model name prominently in the UI.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sources
&lt;/h2&gt;

&lt;p&gt;All read 2026-08-13:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;api-docs.deepseek.com pricing page and change log&lt;/li&gt;
&lt;li&gt;huggingface.co/deepseek-ai/DeepSeek-V4-Pro-0813&lt;/li&gt;
&lt;li&gt;huggingface.co/Qwen/Qwen3.8-2.4T-A95B README and LICENSE&lt;/li&gt;
&lt;li&gt;platform.claude.com pricing&lt;/li&gt;
&lt;li&gt;x.ai/news/grok-4-6&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I am not arguing against switching to any of these. Just check which price you are budgeting against, and which artifact you actually downloaded.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>llm</category>
      <category>opensource</category>
    </item>
    <item>
      <title>67.2% Is Not 67.2% of the Riemann Hypothesis</title>
      <dc:creator>LucioLiu</dc:creator>
      <pubDate>Wed, 12 Aug 2026 13:33:18 +0000</pubDate>
      <link>https://dev.to/lucioliu/672-is-not-672-of-the-riemann-hypothesis-1oai</link>
      <guid>https://dev.to/lucioliu/672-is-not-672-of-the-riemann-hypothesis-1oai</guid>
      <description>&lt;p&gt;67.2% does not mean that Claude solved 67.2% of the Riemann hypothesis.&lt;/p&gt;

&lt;p&gt;Anthropic reports a narrower mathematical result. The proven lower bound on the fraction of Riemann zeta zeros on the critical line increased from 41.6% to 67.2%. The Riemann hypothesis says all non-trivial zeros lie there. This work does not prove that.&lt;/p&gt;

&lt;p&gt;The research workflow is also notable. Anthropic reports about 31 million output tokens across two Claude Code sessions. The second run used roughly 60 subagents, executed about 2,400 shell commands, and wrote hundreds of Python scripts. The team then had mathematicians check the paper and released a Lean 4 formalization companion.&lt;/p&gt;

&lt;p&gt;The boundaries matter. The model was an unreleased research version. Internal verification and short expert review are not formal peer review. Anthropic also says it does not expect these techniques to lead directly to a proof of the Riemann hypothesis.&lt;/p&gt;

&lt;p&gt;This is a large research-agent workflow with a checkable mathematical result, not a solved millennium problem.&lt;/p&gt;

&lt;p&gt;Research: &lt;a href="https://www.anthropic.com/research/riemann-zeta" rel="noopener noreferrer"&gt;https://www.anthropic.com/research/riemann-zeta&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Lean companion: &lt;a href="https://github.com/anthropics/zeta-23-lean" rel="noopener noreferrer"&gt;https://github.com/anthropics/zeta-23-lean&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>programming</category>
      <category>science</category>
    </item>
    <item>
      <title>Memory, Local Models, and Execution Receipts Are Different Controls</title>
      <dc:creator>LucioLiu</dc:creator>
      <pubDate>Wed, 12 Aug 2026 13:30:09 +0000</pubDate>
      <link>https://dev.to/lucioliu/memory-local-models-and-execution-receipts-are-different-controls-5hej</link>
      <guid>https://dev.to/lucioliu/memory-local-models-and-execution-receipts-are-different-controls-5hej</guid>
      <description>&lt;p&gt;GitHub Copilot is bringing three previously separate layers into JetBrains: cross-session memory, a local model provider, and agent execution records.&lt;/p&gt;

&lt;p&gt;The August 11 update lets Copilot Memory retain and recall information across agent chats. Ollama is now available as a BYOK provider with provider configuration and model selection inside JetBrains. Codex sessions also appear in agent debug logs and support updated permission modes, instructions, and skills.&lt;/p&gt;

&lt;p&gt;Those are different controls. Memory decides what survives into later sessions. Ollama decides where a model runs. Debug logs and permissions show what this run could do and what it actually did.&lt;/p&gt;

&lt;p&gt;Enterprise settings now cover plugin availability, MCP server access, permission bypass behavior, and OpenTelemetry. The useful review is therefore four separate checks: memory scope, model source, permission policy, and execution receipt.&lt;/p&gt;

&lt;p&gt;This is a read of GitHub's official changelog, not a local JetBrains reproduction.&lt;/p&gt;

&lt;p&gt;Source: &lt;a href="https://github.blog/changelog/2026-08-11-copilot-memory-and-ollama-in-github-copilot-for-jetbrains/" rel="noopener noreferrer"&gt;https://github.blog/changelog/2026-08-11-copilot-memory-and-ollama-in-github-copilot-for-jetbrains/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>jetbrains</category>
      <category>programming</category>
      <category>productivity</category>
    </item>
    <item>
      <title>A Watermark Is a Processing Receipt, Not an Authorship Verdict</title>
      <dc:creator>LucioLiu</dc:creator>
      <pubDate>Tue, 11 Aug 2026 16:12:32 +0000</pubDate>
      <link>https://dev.to/lucioliu/a-watermark-is-a-processing-receipt-not-an-authorship-verdict-nf9</link>
      <guid>https://dev.to/lucioliu/a-watermark-is-a-processing-receipt-not-an-authorship-verdict-nf9</guid>
      <description>&lt;p&gt;A Claude watermark is a processing receipt, not an authorship verdict.&lt;/p&gt;

&lt;p&gt;Anthropic describes two machine-readable signals: model-level watermarks embedded in text and signed C2PA provenance metadata on supported files such as SVG, PNG, and JPG.&lt;/p&gt;

&lt;p&gt;The limitation is the useful part. A detected mark indicates that content may have been processed by Claude. It does not prove Claude was the original author. Proofreading, translation, summarization, or file conversion can produce a marked output whose underlying work came from someone else. The reverse is also unsafe: short passages, heavy edits, translation, screenshots, or stripped metadata can leave no detectable mark.&lt;/p&gt;

&lt;p&gt;I would separate a provenance record into &lt;code&gt;original_author&lt;/code&gt;, &lt;code&gt;processed_by&lt;/code&gt;, &lt;code&gt;edit_history&lt;/code&gt;, and &lt;code&gt;provenance_signature&lt;/code&gt;. The mark records a processing event. Authorship still needs an evidence chain.&lt;/p&gt;

&lt;p&gt;Anthropic says technical detection documentation is forthcoming, so claims about exact false-positive rates or reliable removal are premature.&lt;/p&gt;

&lt;p&gt;Official source: &lt;a href="https://support.claude.com/en/articles/16266773-how-claude-marks-ai-generated-content" rel="noopener noreferrer"&gt;https://support.claude.com/en/articles/16266773-how-claude-marks-ai-generated-content&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>ethics</category>
      <category>security</category>
      <category>provenance</category>
    </item>
    <item>
      <title>An SDK Upgrade Can Change an Agent Without Changing the App</title>
      <dc:creator>LucioLiu</dc:creator>
      <pubDate>Tue, 11 Aug 2026 16:10:19 +0000</pubDate>
      <link>https://dev.to/lucioliu/an-sdk-upgrade-can-change-an-agent-without-changing-the-app-3153</link>
      <guid>https://dev.to/lucioliu/an-sdk-upgrade-can-change-an-agent-without-changing-the-app-3153</guid>
      <description>&lt;p&gt;An SDK upgrade can change an agent even when the application code does not.&lt;/p&gt;

&lt;p&gt;OpenAI Agents SDK 0.20.0 changes the implicit default model to &lt;code&gt;gpt-5.6-luna&lt;/code&gt;. Explicit models, run-level overrides, and &lt;code&gt;OPENAI_DEFAULT_MODEL&lt;/code&gt; still take precedence, but an application that relied on the implicit default will change runtime behavior by upgrading the dependency alone.&lt;/p&gt;

&lt;p&gt;The release also crosses the MCP v2 migration boundary. Local connections support MCP Python SDK v1 and v2 across stdio, SSE, and Streamable HTTP. Custom HTTP authentication and client factories still need to use the HTTP types owned by the installed MCP major version, or pin &lt;code&gt;mcp&amp;lt;2&lt;/code&gt; while migrating.&lt;/p&gt;

&lt;p&gt;Two more changes belong in the recovery test: &lt;code&gt;RunState.add_input()&lt;/code&gt; can persist new input before a resumed model call, and tool approvals are bound more tightly to concrete invocation identity.&lt;/p&gt;

&lt;p&gt;This is a release-note read, not a local reproduction. Before upgrading, pin the model ID, Agents SDK version, MCP major, transport, approval call ID, and one interrupt-resume canary.&lt;/p&gt;

&lt;p&gt;Official release: &lt;a href="https://github.com/openai/openai-agents-python/releases/tag/v0.20.0" rel="noopener noreferrer"&gt;https://github.com/openai/openai-agents-python/releases/tag/v0.20.0&lt;/a&gt;&lt;/p&gt;

</description>
      <category>agents</category>
      <category>ai</category>
      <category>python</category>
      <category>mcp</category>
    </item>
    <item>
      <title>Append-Only Memory Fails When an Agent Needs to Change Its Mind</title>
      <dc:creator>LucioLiu</dc:creator>
      <pubDate>Mon, 10 Aug 2026 11:52:15 +0000</pubDate>
      <link>https://dev.to/lucioliu/append-only-memory-fails-when-an-agent-needs-to-change-its-mind-5cbn</link>
      <guid>https://dev.to/lucioliu/append-only-memory-fails-when-an-agent-needs-to-change-its-mind-5cbn</guid>
      <description>&lt;p&gt;Agent memory is often described as a storage problem. The harder failure appears when a stored fact used to be correct and is now wrong.&lt;/p&gt;

&lt;p&gt;TEPA, a new preprint, models memory validity explicitly. When new evidence conflicts with an old precedent, it revokes the old record from active use while preserving the history for audit. The authors report a score of 0.950 in a complete-reversal setting, compared with 0.210 for append-only and last-write-wins baselines. Those are author-reported research results, not an independently reproduced production benchmark. The paper also reports remaining retrieval-chain and long-context limits.&lt;/p&gt;

&lt;p&gt;The production translation can be deliberately boring. Give each durable memory a &lt;code&gt;status&lt;/code&gt;, &lt;code&gt;valid_from&lt;/code&gt;, &lt;code&gt;superseded_by&lt;/code&gt;, and &lt;code&gt;evidence_id&lt;/code&gt;. When evidence conflicts, write a revocation event, link the replacement, and record the reason. Do not erase the old record. Do not let the last write automatically become the current truth.&lt;/p&gt;

&lt;p&gt;This changes debugging too. A failed decision can be replayed against the evidence and policy that were valid at the time. You can then tell the difference between a reasonable old decision and a system that ignored an already available correction.&lt;/p&gt;

&lt;p&gt;Source: &lt;a href="https://arxiv.org/abs/2608.07429" rel="noopener noreferrer"&gt;TEPA: Revoking Stale Memories for Conflict-Robust Language Agents&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>agents</category>
      <category>architecture</category>
      <category>programming</category>
    </item>
    <item>
      <title>Only Two AI Updates Cleared My 36-Hour Cutoff</title>
      <dc:creator>LucioLiu</dc:creator>
      <pubDate>Mon, 10 Aug 2026 11:49:59 +0000</pubDate>
      <link>https://dev.to/lucioliu/only-two-ai-updates-cleared-my-36-hour-cutoff-459j</link>
      <guid>https://dev.to/lucioliu/only-two-ai-updates-cleared-my-36-hour-cutoff-459j</guid>
      <description>&lt;p&gt;I checked eleven AI and agent candidates today. Only two cleared a strict 36-hour cutoff.&lt;/p&gt;

&lt;p&gt;The first is Meta Muse Glimmer, a roughly 30B multimodal model released under Apache 2.0 and aimed at agentic workloads. Its model card says the 4-bit weights come in under 20 GB and targets a 24/32 GB device envelope that also leaves room for the vision encoder, cache, and drafter. That is a publisher claim, not a local reproduction. Context length, runtime, and cache policy can still change peak memory materially.&lt;/p&gt;

&lt;p&gt;The second is Transformers 5.15.0. It adds Muse Glimmer, FSDP plans across 94 causal-LM classes, batched Omni audio generation, and Tekken tokenizer support. The part I would read before the feature list is the breaking-change section. Kernels become opt-in for several linear-attention families. Cache cropping now accepts negative offsets instead of absolute sizes. T5-family attention defaults may change unless callers explicitly request the eager path.&lt;/p&gt;

&lt;p&gt;Six other items belong to a 72-hour watchlist: SGLang 0.5.17, Anthropic Python SDK 0.121.0, TEPA, Pydantic AI 2.27.0, SkillProx, and a diffusion-LLM safety paper. I am keeping the time window visible rather than presenting all eight as releases from today.&lt;/p&gt;

&lt;p&gt;A useful local-model claim should be reproducible. Record the quant, context length, runtime, peak RAM or VRAM, and tool-call success. An upgrade record should also name the kernel, cache, and attention behavior it expects. “Runs locally” is a starting point; that run sheet is the evidence.&lt;/p&gt;

&lt;p&gt;Sources: &lt;a href="https://github.com/huggingface/transformers/releases/tag/v5.15.0" rel="noopener noreferrer"&gt;Transformers 5.15.0&lt;/a&gt; and &lt;a href="https://huggingface.co/meta-models/Muse-Glimmer-30B" rel="noopener noreferrer"&gt;Muse Glimmer model card&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>opensource</category>
      <category>programming</category>
      <category>agents</category>
    </item>
    <item>
      <title>A CLI Installer Is Now an Agent Skill Distributor</title>
      <dc:creator>LucioLiu</dc:creator>
      <pubDate>Sun, 09 Aug 2026 13:30:07 +0000</pubDate>
      <link>https://dev.to/lucioliu/a-cli-installer-is-now-an-agent-skill-distributor-5an5</link>
      <guid>https://dev.to/lucioliu/a-cli-installer-is-now-an-agent-skill-distributor-5an5</guid>
      <description>&lt;p&gt;Disclosure: This article was drafted and organized with AI assistance. The commands, update behavior, and account-access boundary were checked against the official Hugging Face Hub 1.27.0 release notes.&lt;/p&gt;

&lt;p&gt;Hugging Face Hub 1.27 changed the default behavior of its standalone CLI installers.&lt;/p&gt;

&lt;p&gt;This is not a model release and it does not make an agent more capable by itself. It is a packaging change. That makes it easy to overlook and worth reviewing.&lt;/p&gt;

&lt;p&gt;The Bash and PowerShell installers still install the &lt;code&gt;hf&lt;/code&gt; command. They now also install an &lt;code&gt;hf-cli&lt;/code&gt; skill into a global skills directory. The skill teaches compatible agents how to use the CLI.&lt;/p&gt;

&lt;p&gt;This is opt-out. Bash accepts &lt;code&gt;--exclude-skill&lt;/code&gt;. PowerShell accepts &lt;code&gt;-ExcludeSkill&lt;/code&gt;. Running &lt;code&gt;hf update&lt;/code&gt; later refreshes the skill, but the release notes say the update path will not restore it if a user previously opted out or removed it. When the skill is missing or came from another &lt;code&gt;hf&lt;/code&gt; version, a command may show a local hint at most once a day. That hint never installs anything.&lt;/p&gt;

&lt;p&gt;The skill does not grant Hugging Face account access. It is not a token, and different agent hosts may consume skill instructions differently.&lt;/p&gt;

&lt;p&gt;It also does not prove that every agent host will discover the same directory or interpret the instructions in the same way. The installer can place the skill on disk. The host still decides whether that location is trusted, indexed, and available to an agent.&lt;/p&gt;

&lt;p&gt;The packaging change is still important. Installing a developer tool can now modify two operational surfaces: the executable path for humans and a global instruction directory for agents.&lt;/p&gt;

&lt;p&gt;That second surface deserves the same attention as a shell profile or plugin directory. It can change what an agent is told about a tool even when the executable itself has not changed. A team that only inventories binaries may miss the instruction layer completely.&lt;/p&gt;

&lt;p&gt;I would add three checks to an installation review:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Diff the global skills directory before and after installation.&lt;/li&gt;
&lt;li&gt;Verify that an opt-out remains respected by future updates.&lt;/li&gt;
&lt;li&gt;Trace the skill version and source back to the same release package.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I would run those checks in a disposable user profile. Capture the skills directory before installation, run the default installer, and save the diff. Then remove the skill and run &lt;code&gt;hf update&lt;/code&gt;. Finally, repeat the install with the explicit opt-out. The expected result is observable: default install adds the skill, update refreshes an installed copy, and a deliberate opt-out or removal remains respected.&lt;/p&gt;

&lt;p&gt;I would also inspect permissions separately. A skill can explain how to call &lt;code&gt;hf&lt;/code&gt;, but any action that needs an account should still fail until the normal authentication path is complete. If installing instructions appears to grant access, that is a different and more serious problem.&lt;/p&gt;

&lt;p&gt;The default may be reasonable. The practical change is that an installer is now shipping both software for a person and operational instructions for an agent. Both belong in the installation review, the rollback plan, and the dependency inventory.&lt;/p&gt;

&lt;p&gt;Official release: &lt;a href="https://github.com/huggingface/huggingface_hub/releases/tag/v1.27.0" rel="noopener noreferrer"&gt;https://github.com/huggingface/huggingface_hub/releases/tag/v1.27.0&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>agents</category>
      <category>cli</category>
      <category>huggingface</category>
    </item>
    <item>
      <title>Seven Agent Tool Releases and Four Boring Failure Paths</title>
      <dc:creator>LucioLiu</dc:creator>
      <pubDate>Sun, 09 Aug 2026 13:27:09 +0000</pubDate>
      <link>https://dev.to/lucioliu/seven-agent-tool-releases-and-four-boring-failure-paths-50l8</link>
      <guid>https://dev.to/lucioliu/seven-agent-tool-releases-and-four-boring-failure-paths-50l8</guid>
      <description>&lt;p&gt;Disclosure: This article was drafted and organized with AI assistance. Every factual claim was checked against the seven official release pages linked below.&lt;/p&gt;

&lt;p&gt;Across seven official release pages today, the shared story was not a smarter model. It was better behavior around interruption, identity, concurrency, and execution context.&lt;/p&gt;

&lt;p&gt;That distinction matters because release roundups can turn into feature shopping. A new provider or model name is easy to notice. The failure path is what decides whether the tool remains usable after a timeout, an aborted turn, an expired login, or two clients touching the same workspace.&lt;/p&gt;

&lt;h2&gt;
  
  
  Interruption
&lt;/h2&gt;

&lt;p&gt;Cline Desktop 0.0.11 preserves prompts queued during a turn when that turn is interrupted. Session context also remains durable across aborts and hub restarts. A hung MCP server no longer takes down session creation.&lt;/p&gt;

&lt;h2&gt;
  
  
  Identity
&lt;/h2&gt;

&lt;p&gt;Cline now surfaces an OAuth authorization prompt when a remote SSE MCP server returns 401. Crush 0.88.1 fixed MCP OAuth in server-client mode.&lt;/p&gt;

&lt;h2&gt;
  
  
  Concurrency
&lt;/h2&gt;

&lt;p&gt;Crush fixed a path where clients in the same workspace could kill each other. It also reduced the timeout for slow-loading MCP servers that could block messages.&lt;/p&gt;

&lt;h2&gt;
  
  
  Execution context
&lt;/h2&gt;

&lt;p&gt;llama.cpp b10331 fixed &lt;code&gt;get_info&lt;/code&gt; for a configured tools runtime. Without an explicit working directory, it used to report the server process directory even though tools ran inside an isolate elsewhere. It now asks the isolate for the path.&lt;/p&gt;

&lt;p&gt;This sounds like a diagnostic detail, but it changes incident response. If a tool says it is operating in one directory while its process is actually isolated somewhere else, a human can inspect the wrong files, approve the wrong path, or misread a permission failure. Reporting the environment where execution really happens is part of the safety boundary.&lt;/p&gt;

&lt;p&gt;The other releases filled adjacent gaps. PydanticAI 2.27 improved compaction round-tripping and added Snowflake Cortex support. CrewAI 1.15.14 split runtime context from the coding agent and added project ID. SGLang 0.5.17 added model support and an initial Rust frontend. Hugging Face Hub 1.27 made its installer distribute an agent skill by default.&lt;/p&gt;

&lt;p&gt;My upgrade checklist today has four questions. What survives an abort? Where does authorization appear? Can concurrent clients interfere with one another? Do diagnostics describe the environment where tools actually run?&lt;/p&gt;

&lt;h2&gt;
  
  
  How I would test this batch
&lt;/h2&gt;

&lt;p&gt;First, start a long tool call, queue another prompt, and abort the active turn. Reopen the session and check whether the queued prompt and the earlier context both remain. A green process exit is not enough. The user-visible work must still be there.&lt;/p&gt;

&lt;p&gt;Second, point a remote MCP connection at an endpoint that returns 401. The client should show a recognizable authorization path. It should not turn an identity problem into a generic server failure or leave the user guessing where to sign in.&lt;/p&gt;

&lt;p&gt;Third, open two clients against the same workspace and make them overlap. One client should not terminate the other or silently steal its state. Then repeat the test with a slow MCP server to see whether unrelated messages continue moving.&lt;/p&gt;

&lt;p&gt;Fourth, run a tool inside an isolate without setting an explicit working directory. Compare the path reported by diagnostics with the directory the tool can actually read and write. If those differ, stop the upgrade review there.&lt;/p&gt;

&lt;p&gt;None of these checks proves a release is safe in every environment. They turn broad release-note language into small failures that a team can reproduce before production does it for them.&lt;/p&gt;

&lt;h2&gt;
  
  
  Official sources
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Cline Desktop 0.0.11: &lt;a href="https://github.com/cline/cline/releases/tag/desktop-v0.0.11" rel="noopener noreferrer"&gt;https://github.com/cline/cline/releases/tag/desktop-v0.0.11&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Hugging Face Hub 1.27.0: &lt;a href="https://github.com/huggingface/huggingface_hub/releases/tag/v1.27.0" rel="noopener noreferrer"&gt;https://github.com/huggingface/huggingface_hub/releases/tag/v1.27.0&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;SGLang 0.5.17: &lt;a href="https://github.com/sgl-project/sglang/releases/tag/v0.5.17" rel="noopener noreferrer"&gt;https://github.com/sgl-project/sglang/releases/tag/v0.5.17&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;PydanticAI 2.27.0: &lt;a href="https://github.com/pydantic/pydantic-ai/releases/tag/v2.27.0" rel="noopener noreferrer"&gt;https://github.com/pydantic/pydantic-ai/releases/tag/v2.27.0&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Crush 0.88.1: &lt;a href="https://github.com/charmbracelet/crush/releases/tag/v0.88.1" rel="noopener noreferrer"&gt;https://github.com/charmbracelet/crush/releases/tag/v0.88.1&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;llama.cpp b10331: &lt;a href="https://github.com/ggml-org/llama.cpp/releases/tag/b10331" rel="noopener noreferrer"&gt;https://github.com/ggml-org/llama.cpp/releases/tag/b10331&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;CrewAI 1.15.14: &lt;a href="https://github.com/crewAIInc/crewAI/releases/tag/1.15.14" rel="noopener noreferrer"&gt;https://github.com/crewAIInc/crewAI/releases/tag/1.15.14&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>news</category>
      <category>ai</category>
      <category>devtools</category>
      <category>agents</category>
    </item>
  </channel>
</rss>
