DeepSeek Harness 0.1.5 的第一个 rc,把 0.1.2 一起结算了:rc 不是倒计时,是结账

0.1.5 的第一个 rc,把 0.1.2 一起结算了:rc 不是倒计时,是结账

上篇发出去才一天,DeepSeek Harness 又发了两版。

上一篇的落点是一句挺硬的话:版本号已经不再承诺成熟度了,它在当变更量计数器用。本来我以为接下来会有段安静的日子——计数器刚跳到 0.1.5,总得攒一阵。

结果它连发两版,然后回到了 rc

先把事实摆平

不带解读的部分(北京时间):

  • v0.1.5-alpha.2:9 月 9 日 22:23,距上一版 22 小时 07 分
  • v0.1.5-rc.1:9 月 10 日 11:09,距上一版 12 小时 46 分,是 0.1.5 系列的第一个候选版本
  • v0.1.5-alpha.1v0.1.5-rc.1,一共 1 天 10 小时 53 分
  • v0.1.4:仓库 15 个 tag 里仍然没有它

对照一下:上一个 rc 是 9 月 3 日的 v0.1.2-rc.1,从它前面那个 rc(8 月 21 日)走到它,花了 13 天。

这次只用了 34 小时。

rc 出现了,但这次它不是倒计时

看到 rc 的第一反应,通常是"快发了"。

这次得先把这个反应按住,因为 v0.1.5-rc.1 的发布说明第一句是这么写的:

作为 0.1.5 系列的首个候选版本,本版本汇总了自 v0.1.2-rc.1 以来的主要用户和开发者相关变更。

注意这个区间:不是从 0.1.5-alpha.1 算起,是从 0.1.2-rc.1 算起。 官方给的比对链接也是 compare/dsh-v0.1.2-rc.1...dsh-v0.1.5-rc.1

这意味着什么?

意味着 0.1.5 这本账的起点是 9 月 3 日。而 9 月 3 日之后发生了什么——0.1.3 只走到 alpha.2 就停了,0.1.4 从头到尾没出现过。这两个号各自攒的东西,一个都没浪费,全被 0.1.5 收了进来。

所以上一篇那个比喻得改一个字。我说它在当"计数器",其实更像账本:数字不是每发一版就加一,而是攒到 rc 才真正入账。alpha 段是"正在记流水",rc 是一次性结转。0.1.4 之所以能跳过,也是因为这个——它压根不是一批货,它只是一个没被用上的编号。

一句话:在这个项目里,rc 不是倒计时,是结账。

alpha 段在收缩

把两条线的节奏摆在一起,形状更清楚:

  • 0.1.2 线:8-21 的 rc.2 → 连发 5 个 alpha,走了 13 天 → 9-03 回到 rc
  • 0.1.5 线:9-09 凌晨的 alpha.1 → 2 个 alpha,走了 1 天 11 小时 → 9-10 回到 rc

alpha 段从"五天加一堆补丁"缩到了"一天半两个版本"。

这说明两件事之一:要么要改的骨架变少了,要么这条流水线已经跑顺了——攒变更、封版、入账,成了一套有节奏的动作,而不是每次都要重新商量"我到底成熟到哪一步了"。

值得留意的是,节奏变快不等于更接近 GA。因为判断成熟度的那句话——README 上的 developer preview——已经挂了一个月了,还是没动。快,只是说明它更会改自己了。

同一份清单的第一条,是件以前没发生过的事

如果这篇只讲"又回到 rc 了",那它没什么可写的。真正的新东西在 rc.1 清单的第一行

DeepSeek 模型适配器新增 DeepSeek-V41-Flashdeepseek-flash)支持文本、图片及会话历史中的系统提示词更新。新会话默认使用该模型,配置文件显式指定模型时以配置值为准。

DeepSeek-V41-Flash 就是这个系列一直用来校时的 DeepSeek V4.1 Flash。)

前四篇看下来,这个项目改的一直是接口和格式——删调用面、改工具名、换会话格式。这次不一样,它改的是默认值:你没写过任何配置的时候,它会用哪个模型。

为什么这件事比跳号重要?

因为它同时成立着两件看起来矛盾的事。

第一,它没有违背"模型不可知"。 模型适配器仍然是插件,仍然挂在 ctx.llm 这个接缝上,你照样可以把它换成别家的。接口层的解耦是完整的,这一点没打折。

第二,"可换"和"已换"是两回事。 对没有显式写配置的人来说,这次升级已经把他们迁到新模型上了。换脑子这件事发生了,只是没有人拍板。

这就是"模型不可知"这类主张真正的边界:它保证的是你有得选,不保证默认值中立。DSH 是 DeepSeek 自己的产品,默认给自家最新模型完全合理;但对把 agent 接进企业的人来说,它意味着一个很不显眼的后果——升级这个动作本身就带着一次模型迁移,而且不会有人单独通知你。

往下一层说:默认值是"没有写进配置的配置",而它恰恰是最多人走的那条路径。 你的数据默认发给谁、遥测默认开不开、日志默认上传不上传——这三样没有一样是你在架构评审会上拍过板的,但每一样都比你在方案里写的那张模型对照表影响更大。

连"保持不变"都有保质期

同一轮里还有一条特别小、但我觉得最该记的变更。

v0.1.3-alpha.2(9 月 7 日 21:59)的发布说明里,有这么一句:

默认工具调整: SDK、Headless 和 ACP 默认使用 read、write、edit 编辑文件;Web minimal 和 sdk-minimal 保持不变

两天后的 v0.1.5-alpha.2(9 月 9 日 22:23):

极简模式默认工具调整: Web minimal 与 Python sdk-minimal 默认仅提供持久 shell,str_replace_editor 改为显式启用

那句"保持不变",只成立了 2 天 24 分钟。

说明一下:这不是上游说话不算数。它当时说的就是事实,两天后它自己改了主意——只是没人会为"某个小模式默认给哪几把刀"这种级别的事情单独发公告,它就静静躺在某一次的清单里。

但这就是它最容易让人踩坑的地方。版本号你会盯,破坏性变更你会盯,"原本以为不变的默认值"不会有人盯。而我们在上一轮同步系列正文的时候,正好就把 9 月 7 日那句"minimal 不变"写进了文章里——两天后,是上游自己把它推翻的。这次我把它留在正文里没删,因为踩过这一下的记录,比一句正确的描述有用

台账的第二次记录:这次是空账

上一篇我建议过一件事:把发布说明里的"已知问题"逐条抄进自己的表格,标上"承诺修复的版本",每发一版核一次。

现在记第二次。

v0.1.5-alpha.2v0.1.5-rc.1 的发布说明里,"已知问题""Known Issue""性能回退"这类词,一次都没出现。而上一轮那条欠账(0.1.3-alpha.1 自陈的性能回退)已经在上个版本还清了。

所以到写作时为止,它记下的欠账是

这里我要诚实一点:这有两种读法,公开信息区分不了。 一种是质量确实稳住了,没必要再写;另一种是它不再写这类东西了。这两种可能,一个是好消息一个是坏消息,而我们现在没有任何证据能选一个。

这恰好是台账这个方法的意义所在——它不负责回答,它负责让你有据可查。 一次空账什么都证明不了;但如果接下来三五版都是空账,然后突然某一版冒出一条"已知问题"并且按时还上,那时候你手里就有真东西了。

所以该怎么读

前四篇分别讲了怎么读"倒退""回归""被换掉""被跳过"。这篇补的是第五种动作——走回来(第二次)——但更要紧的是,它把读法本身推进了一层:

别把 rc 当进度,把它当账期。

三条可以拿去用的:

第一,看 rc 出现在哪,而不是它出现了没有。 rc 在这个项目里标志着一批破坏性变更封版结算——alpha 段在攒,rc 一次结转。所以 rc 出现的时间点比 rc 本身有信息量:从上次 rc 到这次 rc 用了 34 小时,对上上次用了 13 天,这个数字比"它到 rc 了"重要得多。

第二,升级前 diff 默认值。 changelog 的"新增功能"你会看,"默认值被改"你看不见——因为它常常就写在新增功能的第一行,长得像一条好消息。所以别只读新增,把默认值的三个位置摊开对一遍:默认模型、默认工具、默认开关(遥测 / 上报 / 日志上传)。这三样没有一样会有人通知你,但每一样都直接决定你的数据去哪儿。

第三,单向门现在有说明书了,先读再升。 上一篇我提醒过会话格式升级不支持降级读取。到 v0.1.5-rc.1,仓库里已经放了中文迁移文档 packages/session/session-format-v2-to-v3/README.zh.md。这件事值得表扬,但它也把责任推给你了——升级前先读那份文档、先把 session 目录整份归档、再决定过不过门。单向门本身不可怕,可怕的是没有公告栏的单向门。

写在最后

合集写到第五篇,我一直在做同一件事:找一个能判断"这个项目离生产还有多远"的坐标。

第一篇以为是版本号,后来发现它会往回走。第二篇以为回到 rc 就算数,结果那个 rc 只活了 29 小时。第三篇退到底线,至少 developer preview 那句话不会骗人。第四篇发现,比版本号诚实的是它自己写下的欠账。

这一篇只剩一个补充:版本号这一路读下来,读的始终是"它说了什么";而真正会咬到你的,是它没说、但一起改了的东西。 一个默认模型、一次格式升级、一句两天就过期的"保持不变"——这些都不在版本号里,全在细则里。

所以下次再看到一个预发布项目升版本,除了那句"它到 rc 了没有",多问一句:

这次升级,顺手改了哪些我没同意的默认值?


本文事实基准:DeepSeek Harness v0.1.5-rc.1(2026-09-10 03:09 UTC / 北京时间 11:09 发布,developer preview,非 GA)。版本时间线、changelog、README 与 SAFETY 声明均取自官方仓库 github.com/deepseek-ai/deepseek-harnessmaster 分支,2026-09-10 核对)。这类项目迭代极快,你读到这一刻的最新版本大概率已经不是文中这个号了——方法论可以复用,具体版本请以当日仓库为准。


📱 关注公众号,追更不迷路

本系列文章首发于微信公众号「农夫三拳有点癫」,每周更新源码拆解与架构实战。

在微信扫描下方二维码即可关注:

账号二维码

posted @ 2026-09-10 17:50  老羅  阅读(15)  评论(0)    收藏  举报