一、关于本报告

本报告的分析对象是 DeepSeek Harness 团队于 2026 年 10 月 31 日发布的《Super-agent 设计探索:迈向更自主的 Agent 系统》,以及该文公开的两组实验数据。文中凡称「原文」,均指该篇;凡称「复算」,均指本报告依据原文公开数据所做的重新计算,公式在正文中给出,读者可以自行核对。

本报告不评价该团队的产品,也不评价其模型能力。原文是一份架构说明,其中同时包含设计主张、工程简化与初步实验三类内容。本报告将这三类内容分开处理:设计主张按逻辑检验,工程简化按其自陈的边界处理,实验数据按可复算的口径重算。

1.1 证据分级

报告中的每一条判断标注来源等级,以便读者判断其可靠程度。

  • E1:原文明确陈述,可逐字核对。
  • E2:由原文公开数据直接复算,公式见正文。
  • E3:本院推算,依赖正文标明的假设。
  • E4:外部公开文献,注明出处,检索日期为 2026 年 10 月 31 日。

复算遵循两条纪律。其一,不引入原文未披露的数据来补全结论;材料不足时,写入文末的待核实清单,不在正文中给出替代读数。其二,自行推算的数字不与来源数字混排在同一结论中,凡属推算,均单独标注。

1.2 与既有讨论的关系

这份架构说明发布当日即形成了密集的转述层。IT之家、驱动中国、观点网、读懂AI时代、同花顺等媒体在数小时内发出要点摘编,标题高度接近,内容集中于「Router 与 Worker 双层架构」「四个特征」「五个模块」三组标签。这一层信息重复度很高,不构成独立分析。

在此之上,已经出现一类技术评论。比较有代表性的一种意见认为,并发不等于协作,调度也不等于编排;原文把复杂工程所需的分支、并行、结果合并、动态重规划与交叉验收下沉到 Worker 内部,原有的困难并未被解决,只是被移到了下一层。这一判断成立,本报告不再重复,但在第五章给出一个更具体的机制解释:问题的根源在于 Router 同时承担了路由与全局记忆两项扩展性冲突的职责。

操作系统类比在 2025 年至 2026 年已经是成熟话题。把上下文窗口视为内存、把检索增强视为换页、把上下文溢出视为颠簸,这一组对应关系在 LLMOS、AgentOS、vMem 等一批工作中被反复讨论,并有若干开源实现按此建模。原文与这些工作共享同一套隐喻。本报告因此不把这个类比当作新颖见解,而是反过来把它当作检验工具使用,在第六章指出这一类比在四处失效,并给出失效所要求的原语。

「验证带宽是真正的约束」这一判断,同样已经在经济学文献中被系统提出。Catalini、Hui 与 Wu 在《Some Simple Economics of AGI》中把验证带宽建模为与自动化成本赛跑的第二条曲线,并给出「可测性缺口」这一概念:当执行成本指数下降而验证成本受生理与组织边界约束时,两者的差额会持续扩大。本报告第八节以此为前提,增量不在于提出这一约束,而在于按验收延迟把应用场景切成三类,并说明原文架构只在其中一类成立。

「投机的副作用需要分阶段提交」在 2026 年的系统文献中亦有讨论,涉及暂存副作用、可逆沙箱与事务化工具调用等方向。本报告第六节把这一结论接到原文的投机执行设计上,指出其缺少提交边界,并给出与即时通讯、代码评审两类信道相对应的原语。

此外,「把试过且失败的路径作为一等记忆对象」已经成为一条独立的研究方向。本报告第五章讨论长程记忆时引用这一方向,但不将其作为自己的主张。

1.3 本报告自认的增量

为避免将既有讨论误报为原创,此处集中列出本报告认为属于自己的五处工作。每一处都在正文中有对应的公式、表格或判据,可以单独检验。

第一,用原文 7.2 节公开的批处理数据复算 Router 的利用率,得出在每分钟约 40 条 Trigger 时利用率约为 0.93,从而否定原文「仍未触及单 Router 的吞吐瓶颈」的判断(第三节)。

第二,指出 7.1 节的因变量与全文主张的因变量不一致,并指出该实验缺失一个关键对照——强制委派。缺少这一对照,就无法把架构效应与提示词效应分开(第四节)。

第三,把 Router 的路由职责与记忆职责的耦合识别为长程记忆瓶颈的结构性来源,并提出以日志序号而非会话作为序列点(第五节)。

第四,提出原文五个模块共同缺失的第六个模块——结清,并给出状态机、回收器与预算三项要件(第七节)。

第五,按验收延迟把应用场景分为三类,说明原文架构只在第一类成立,并给出第二类场景(制造业寻源)的改造方向(第八节)。

以上五处,第一、第二两处是对已发表数据的重算,可被读者逐一复现;第三、第四、第五三处是设计判断,属于可争论的范围。本报告在结论部分区分这两类判断,不把设计判断表述为已被验证的事实。

二、原文主张的结构化重述

要检验一份架构说明,先要把它的命题写清楚。原文的论证链条可以拆成七条命题。

  • P1:单任务的上限取决于模型能力,多任务的上限取决于人的注意力;随着执行侧对人的依赖下降,限制进一步提效的瓶颈正在转向人的注意力。
  • P2:会话应当是系统的实现细节,不应成为用户的认知负担。
  • P3:双层架构可以同时获得跨信道的连续性与多任务的吞吐量。
  • P4:事件驱动可以把 Agent 从被动执行变为主动响应。
  • P5:计算、状态与环境的分离可以获得跨设备的持久在线。
  • P6:外部 Watchdog 可以在长期运行中实现异常自愈。
  • P7:以上命题在真实负载下成立。

这个拆法并非苛求。原文自己在第 7 节开头写明「由于实验基于合成负载与简化环境,部分设置还可以更加严谨,以下结果仅作为初步参考」。这句话划定了证据的范围,本报告只是把范围换算成命题,看哪几条落在范围内。

2.1 四个特征与五个模块的对应关系

原文提出四个基础特征:连续、高效、主动、持久。五个模块分别支撑这些特征。把对应关系列成表,可以看出覆盖是不均匀的。

模块 核心机制 对应特征 原文给出的证据 实验覆盖程度
双层架构 常驻 Router 加隔离 Worker 连续、高效 7.1 完成时间对比、7.2 批处理压测 部分覆盖
事件驱动 Trigger、Thread、订阅直通、链式召回、投机执行 主动 7.1 中「去掉直通」的 token 对比 仅覆盖直通一项
面向人的交互 异步 ReAct Loop、多信道输出规范 连续、高效 无实验,原文称「已经在 DeepSeek Harness 中实现,但尚未默认开启」 未覆盖
计算与状态、环境分离 云端无状态 Loop 加端侧 daemon 持久 无实验 未覆盖
Watchdog 外部定时驱动的独立会话 持久 无实验 未覆盖

这张表的读法需要谨慎。未覆盖不等于不成立。第五、第六两节所描述的能力,在工程上完全可能已经成立,只是没有以实验形式公开。本报告要指出的是另一件事:这份说明的说服力分布不均。读者最容易记住的是 7.1 节的 p50 与 p95,而这两个数字只支撑「双层架构在合成负载下缩短了任务完成时间」,并不支撑「持续在线」「异常自愈」「跨设备接管」这三项更容易打动人的能力。

对一份工程说明而言,这种不均匀是正常的。但它带来一个传播后果:媒体转述时,四个特征与五个模块被并列成同等确定的结论,而实际上它们的证据强度相差一个量级。本报告在后续章节中按证据强度分别处理。

2.2 原文做得比多数同类文本更好的两处

批评之前应当先承认两处优点,因为它们决定了本报告能够做复算。

第一处是对实验边界的主动披露。原文写明编码工作由一个只消耗时间的工具代替,因此实验衡量的是调度与协作能力,而非单个任务的执行能力;写明消息间隔与工作时长按四分之一缩放,模型调用耗时为真实值;写明每种方案重复运行五次。这些披露使得读者可以判断哪些结论可以外推、哪些不可以。多数同类文本只给出结论,不给出边界。

第二处是对简化组合的明示。原文在 8.1 节直接写出自己所依赖的简化:「单常驻 Router Session + 订阅直通 + Worker 间不直接通信」,并说明这是「以较小的工程代价覆盖了我们目前的大多数日常任务」。这句话实际上承认了这套架构是为特定规模设计的,而不是普适方案。后文所有关于扩展性的讨论,都建立在这个自陈之上。

本报告第三节的复算之所以可能,正是因为原文给出了到达速率、批大小与单次请求耗时三个数。这个数据披露的完整度,在同类工程文章中属于少数。

2.3 一条需要拆开的主张

P1 是整篇的起点:单任务的上限取决于模型能力,多任务的上限取决于人的注意力。这句话读起来像一条定律,实际上是一个关于当前设计的状态描述。它成立的前提是:人必须同时承担「跟踪任务状态」与「承担任务后果」两件事。

这两件事的扩展性完全不同。跟踪状态是可以外包的——只要有可靠的记录、检索与提醒,一个人跟踪的任务数可以从几个增加到几十个。承担后果则不能外包:验收一个产出,意味着验收者要为这个产出的正确性负责,而责任的容量受专业判断力与组织授权约束,不受界面设计约束。

原文用来支撑这一判断的是一个经验观察:一个人通常只能同时跟进三到五个活跃会话。这个数字没有给出样本、测量方法与人群,本报告只能按经验值处理。它在机制上可能对应三种不同的限制:工作记忆的容量、中断恢复的成本、以及同时为多少件事承担后果的容量。前两种可以靠架构与交互降低,第三种不能。原文把三者合称「注意力」,于是只要证明跟踪成本下降,就好像证明了注意力瓶颈被缓解。

原文的双层架构,实质上做的正是把「跟踪」从人身上剥离出去:Router 维护全局记忆,Worker 各自持有局部上下文,人只需要面对一个统一的对话入口。这一步是有效的,也是这套设计最有价值的部分。但它并没有触及第二件事。原文把这两件事合称「人的注意力」,于是在论证上获得了一个便利:只要证明跟踪成本下降,就好像证明了注意力瓶颈被缓解。

本报告认为,这个合并掩盖了真正的问题。把两件事分开之后,会得到一个不同的结论:Super-agent 缓解的是跟踪瓶颈,不是验收瓶颈。而随着跟踪瓶颈被缓解,验收瓶颈会以更快的速度暴露出来——因为单位时间内产生的待验收产出增加了。第八节将沿着这条线展开。

这个区分也解释了原文 8.2 节的犹疑。原文在那里写道,脱离会话之后「如何向用户呈现任务并提供自然的交互与项目管理形式,便成为了新的问题」,并认为以聊天窗口为中心的交互「在一定程度上是路径依赖的结果」。这个判断是对的,但原文把它归为产品设计问题。本报告认为它首先是计量问题:当系统把任务状态从人脑中移出之后,人剩下的唯一工作就是验收,而验收的单位、成本与责任归属,原文没有给出定义。

三、复算一:Router 的吞吐余量被高估

原文 7.2 节给出了 Router 层压力测试的一组读数,这是全文唯一可以完整复算的压测序列。本节的结论只有一句:按这组读数计算,单个 Router 会话在测得的最高到达速率下已经接近满负荷运行,原文「仍未触及单 Router 的吞吐瓶颈」的判断不成立。

3.1 原文公开的读数

原文的压测方式为:Router 调用真实模型,Worker 使用模拟模型,将需要判定的 Trigger 到达速率从每分钟约 1 条逐步提升到约 40 条,观察三个量。

到达速率(条/分钟) 平均批大小 单次请求耗时(秒) 单个决定分摊的推理时间(秒)
约 1 1.0 2.5 6.4
约 40 2.8 3.9 1.6

原文据此写道:单次请求耗时仅从 2.5 秒增至 3.9 秒,增长慢于批大小,从而使单个决定分摊的推理时间从 6.4 秒降至 1.6 秒;这说明外部事件突发拥堵时,Router 能够通过自动合并积压事件提高有效吞吐,因此「在我们目前的团队规模下,无需过早对 Router 层做水平切分」。

这段推理的每一步都依赖一个未写出的前提:单次请求耗时是纯服务时间,且批大小是系统主动选择的结果。把这两个前提写出来之后,会看到另外两种读法。

3.2 用排队论复算利用率

设到达速率为 λ(条/秒),平均批大小为 b,单次请求耗时为 S(秒)。在批量服务的排队系统中,服务器处于忙碌状态的时间比例为

  • 利用率 ρ =(批到达率)×(批服务时间)= (λ / b) × S。

代入原文的两组读数。

低速端:λ = 1/60 ≈ 0.0167 条/秒,b = 1.0,S = 2.5 秒,得 ρ ≈ 0.042。

高速端:λ = 40/60 ≈ 0.667 条/秒,b = 2.8,S = 3.9 秒,得 ρ ≈ 0.929。

也就是说,在整个压测区间内,Router 的利用率从约 4% 上升到约 93%。这不是原文所说的「仍未触及」瓶颈,而是已经贴着瓶颈运行。在利用率 0.93 的排队系统里,等待时间对到达速率的微小波动极为敏感;平均等待时间与服务时间之比,随利用率趋近 1 而迅速发散。

这一计算依赖三个假设,此处逐一说明。第一,假定原文所称「单次请求耗时」是服务时间而非含排队的响应时间。第二,假定表中的批大小是该速率下的平均值,而非某一时刻的瞬时值。第三,忽略批与批之间的到达相关性与服务时间方差。在这三个假设下,ρ ≈ 0.93 是一个中心估计;即便把批大小取值上浮到 3.0、把服务时间下调到 3.5 秒,ρ 仍约为 0.78,结论方向不变。

3.3 批大小是怎么来的

还有一个更值得注意的问题:批大小 2.8 这个数,几乎正好等于「一次服务期间新到达的 Trigger 数量」。

按定义,若批处理就是「服务期间到达的事件合并进下一次调用」,则 b ≈ λ × S。代入高速端:0.667 × 3.9 ≈ 2.60。原文实测的批大小是 2.8,两者相差约 8%,在测量误差范围内。低速端则相反:0.0167 × 2.5 ≈ 0.04,远小于 1,系统退化为逐条处理,与表中 b = 1.0 一致。

这个吻合说明一件事:原文描述的「批处理机制」,在这组数据里与普通排队系统的自然积压无法区分。路由器并没有一个额外的调度策略在主动攒批;它只是在一个请求处理期间,把新到的事件收进队列,然后在下一轮一并处理。这是任何单线程服务端在网络负载下都会出现的现象,不需要专门设计。

这个区分的意义在于指标的解释。若批处理是主动策略,则「单个决定分摊时间下降」可以解读为效率提升;若批处理只是积压的自然结果,则这个指标就是一个排队统计量,它下降的原因是把固定的服务成本摊到了一段不断变长的等待上,而不是系统变快了。原文选择了前一种解释,但没有给出能区分两种解释的证据。

3.4 服务时间的规模弹性,以及它为何可能不会持续

把表中的两个点按幂律拟合,得到

  • S = 2.5 × b^0.432。

两个点拟合一条幂律,本身证据很弱,这里只用它做量级判断。由此得到系统的容量(每秒可判定的条数)

  • C = b / S = 0.4 × b^0.568(条/秒),即每分钟约 24 × b^0.568 条。

代入不同的批大小:

批大小 服务时间(秒) 容量(条/分钟)
1.0 2.5 24
2.8 3.9 43
8.3 6.2 80
17 8.5 120
30 10.9 166

按这条曲线,以每分钟 40 条为基准,把容量翻倍到每分钟 80 条需要批大小约 8.3;提高到每分钟 120 条需要批大小约 17。若每条 Trigger 在 Router 上下文中约占 500 至 2000 个 token,批大小 17 对应 8500 至 34000 个 token,远低于当前主流模型的上下文长度。

由此得到两个判断。

第一个判断:原文所称的上限「取决于上下文长度」,在当前量级上并不紧。上下文长度要到批大小上百时才会成为约束,而那时系统的容量已经到每分钟数百条,超出了单个团队的事件规模。真正先成为约束的是另一个上限——原文同一句话的后半段「模型在一轮中能准确处理多少条 Trigger」。这条曲线没有被测。

第二个判断:服务时间对批大小的弹性 0.432,本身就值得怀疑。若批处理带来的收益来自原文所称的 Prefill 并行,那么在固定一批请求、只增加输入 token 的情况下,Prefill 的计算量大致随 token 数线性增长,服务时间应当接近 S ∝ b,弹性接近 1,此时容量 C = b/S 将是一个常数,批处理完全不带来吞吐提升。实测弹性只有 0.432,说明服务时间里有一大块与批大小无关的固定开销——上下文组装、工具调用、状态读写,以及状态读写。收益更可能来自这部分固定开销的摊薄,而不是 Prefill 并行。

这两种机制对工程的含义不同。若收益来自固定开销摊薄,那么它随系统实现而变化,换一套上下文组装方式就可能消失;若来自 Prefill 并行,则它是模型推理层的稳定性质。原文把收益归因于 Prefill,但没有排除固定开销这一解释。

3.5 三个指标里缺了最重要的一个

原文 7.2 节报告了三个量:平均批大小、单次请求耗时、单个决定分摊的推理时间。这三个量描述的都是服务器一侧。

对「主动」这一特征而言,真正决定体验的量是「事件到决定」的时延,即一条 Trigger 从进入系统到 Router 做出分派决定所经过的时间。这个量等于排队等待加服务时间。在利用率 0.93 的系统里,排队等待通常显著大于服务时间,且方差很大。

原文没有报告这个量。因此在原文的数据范围内,无法判断在每分钟 40 条的负载下,「主动响应」还剩下多少。这是一个可以补测的缺口,只需在压测中记录每条 Trigger 的进入时间与判定时间,取分位数即可。

3.6 本节结论的边界

本节没有说这套架构不能用。恰恰相反,按复算,这套架构在每分钟 40 条以下的负载下是稳定的,而 40 条/分钟的团队消息量已经不算小。本节的结论只有两条。

第一,原文对余量的描述与实际数据不符。利用率 0.93 意味着余量在百分之十的量级,而不是原文所说的「仍未触及」瓶颈。这对工程决策有直接影响:如果读者按「还有大量余量」来做容量规划,会在负载略微上升时遇到排队时间的非线性上升。

第二,原文把这一现象作为 Router 层的吞吐机制来解释,而数据形态更支持「自然积压」。这不影响系统的可用性,但影响可迁移性——如果一个团队照着这段描述去实现一个「主动攒批」的调度器,可能会发现收益远小于预期,因为原文测到的收益本来就不来自调度器。

四、复算二:实验测的变量与主张的变量不一致

第三节处理的是数据怎么读。本节处理一个更靠前的问题:这组实验是否在检验它想要检验的东西。

4.1 主张与测量的错位

原文的出发点是 P1:多任务的上限取决于人的注意力。由此推出的架构目标,应当是提高单位时间内人所能推进的任务数。这是一个人力吞吐量指标。

原文 7.1 节测量的却是「任务完成时间」:从工作请求到结果消息的耗时,取 p50 与 p95。这是一个单任务延迟指标。原文同时给出了四种方案的累计完成曲线,其中包含吞吐信息;但正文用来排序的统计量是 p50 与 p95,并且没有给出人力吞吐指标,也没有做强制委派对照。本节批评的是统计量与对照设计,不是否认曲线存在。

两者不是单调关系。一个系统完全可以在降低单任务延迟的同时降低人力吞吐量——如果它产生了更多需要人验收的小产出,人的切换成本会上升。反过来,一个系统也可以提高单任务延迟而提高人力吞吐量——把多个任务攒到一起集中验收,延迟上升,单位时间的验收数增加。因此,用单任务延迟的排序来支撑关于注意力瓶颈的结论,属于构念效度问题:测量的变量不是主张所关于的变量。

这不是吹毛求疵。原文 4.1 节自己提出了全双工交互,其目的正是「无需等待上一个命令或任务完成即可随时接受新指令」,这是一个吞吐量主张。如果实验只测延迟,那么异步 ReAct Loop 这一整个模块在实验上是空的。

4.2 缺失的那个对照

7.1 节对比了四种方案:完整 Super-agent、去掉直通的 Super-agent、中性提示下的单会话加子代理工具、优先委派提示下的单会话加子代理工具。

这四种方案漏掉了一种:强制委派的单会话。

所谓强制委派,是指由 harness 无条件地把每个工作请求交给一个新的子代理,不交给模型判断。这个方案与「优先委派提示」只差一个实现细节——把「建议委派」的提示词换成「必须委派」的代码,其余完全相同。

为什么这个对照关键?因为原文自己的数据已经暗示了它的重要性。在中性提示下,模型五次运行一次都没有调用子代理;改为优先委派提示后,五次里有四次调用,但仍有一次判断工作「很小」而选择自己执行,形成了原文所称的紫色长尾。这段描述说明,委派提示显著改变了委派率;在明确提示下仍然出现的那一次长尾,可以归因于模型对自身工作量的误判。至于单会话结构本身是否失分,需要强制委派对照才能判断。

若加入强制委派对照,可能出现两种结果。

第一种,强制委派与双层架构基本相当。这意味着双层架构的主要价值不在于「两层」,而在于「取消了模型的委派裁量权」。这是一个很有价值的结论,而且实现成本极低——几行 harness 代码即可,不需要 Router、不需要订阅、不需要链式召回。对绝大多数团队来说,这是一个远比整套架构更划算的选择。

第二种,强制委派仍明显落后。这才能说明双层架构带来了结构性的收益,例如 Worker 不直接对外回复所带来的输出收敛,或者订阅直通所带来的 Router 负载下降。

原文没有做这个对照,因此无法区分这两种情况。它给出的 p50 与 p95 差异,同时兼容「架构更优」与「强制比建议更有效」两种解释。

4.3 五次的样本量能支撑什么

7.1 节每种方案重复运行五次。在这个样本量下,报告 p95 需要谨慎:五个观测的第九十五百分位无法可靠估计,按次序统计量计算,它落在最大两个观测之间,接近最大值。因此「p95 为 15.7 分钟」与「p95 为 29.5 分钟」这两个数,更准确的读法是「五次中最慢的一次分别为 15.7 分钟与 29.5 分钟」。

同样,「中性提示下五次均未调用子代理」这一观察,在统计上只能把调用率的上界压到约 45%(零次成功的精确二项上界:1 − 0.05^(1/5) ≈ 0.45)。它不能支撑「模型不会主动委派」这一较强的判断。

这些不是对原文的否定。原文自己写明结果「仅作为初步参考」。本报告要提示的是转述层的风险:当这些数字被媒体摘编成「p95 缩短一半」时,读者接收到的确定性远高于数据本身能提供的。

4.4 成本的量级

原文给出了一个很有价值但容易被忽略的数字:完整 Super-agent 单次实验的读缓存 token 为 2323 万,去掉直通后增至 3177 万,增幅约 37%。单次实验包含约 300 条消息,其中约 20 条是工作请求。

把它换算成单位成本:

  • 每个工作请求对应的读缓存 token ≈ 2323 万 ÷ 20 ≈ 116 万。
  • 直通机制节省的 token ≈ 3177 万 − 2323 万 = 854 万,占完整版的 37%。

原文没有给出计价,本报告也不引入外部价格,只给出比值:若读缓存按输入价格的十分之一计价,则每个工作请求的等效全价输入 token 约为 11.6 万。这个量级意味着,这套架构的成本中心不在「执行任务」,而在「反复读取上下文」。任务越复杂、会话越长,单位成本上升得越快。

还有一个负载结构的问题。300 条消息里只有 20 条是工作请求,占 6.7%。Router 需要读取全部消息才能判断哪条需要行动,因此它的绝大部分算力花在了处理非工作消息上。这是一个设计上的必然,不是缺陷——主动性的代价就是必须读完全部输入。但它意味着,原文报告的成本数字高度依赖于这个 6.7% 的比例。在一个工作消息占比更高的团队里,单位成本会下降;在一个闲聊占比更高的群里,单位成本会上升。原文没有说明这个比例的现实依据。

4.5 如果要补做,最小的实验设计

本报告不主张推翻原文的结论,只主张这些结论需要一次成本不高的补充实验。最小设计如下。

采用 2×2 因子设计。两个因子分别是:是否强制委派(代码强制 / 模型裁量)、是否为双层架构(单会话 / Router 加 Worker)。四种组合各运行不少于二十次,负载沿用原文的合成消息流,以便对照。

因变量取两个。一个是单任务完成时间,用于与原文对齐;另一个是人力吞吐量代理指标,例如「在固定的人力预算内(比如每十分钟检查一次、每次最多处理五个待验收项)完成的工作请求数」。后一个指标才是 P1 所关于的量。

同时记录「事件到决定」的时延与「待验收队列长度」两条曲线。前者补上第三节指出的缺口,后者直接对应第八节要讨论的验收瓶颈。

这个设计的成本远低于重做整套系统,但它能把原文目前混在一起的三个效应——架构效应、强制效应、测量效应——分开。对准备采用这套架构的团队来说,这个区分决定了他们要付多少实现成本。

五、结构诊断:路由与全局记忆被放在同一个会话里

第三节说明 Router 的余量比原文描述的更小。本节要指出一个更基础的问题:Router 之所以这么快就接近满负荷,部分原因在于它同时承担了两项扩展性相互冲突的职责。

5.1 Router 的三重身份

原文 2.1 节对 Router 的描述可以拆成三句。

第一句:「所有跨任务的信息与决策都在 Router 层中汇总,由它充当全局的序点(Sequence Point)、协调点和记忆。」这句话把三件事交给同一个组件:全局顺序、跨任务协调、长期记忆。

第二句:「Router 层在设计上不直接执行具体任务,只负责人类交互与任务分派,甚至可以不配备 Bash 工具。」这句话把 Router 定位为轻量的分派者,并建议使用「较轻量的模型」。

第三句:「从我们的实践来看,Router 层的任务常常没有想象中复杂,使用较轻量的模型往往就能兼顾速度与效果。」

三句话合起来,得到一个不太稳的结构:系统里信息最全的组件,按原文建议用的是较轻量的模型;系统里唯一掌握全局事实的组件,是一个可能被重启、被替换、被上下文长度限制的会话。

原文并非没有意识到风险。它紧接着写道:「为了避免这一全局节点成为系统的性能瓶颈,Router 层在设计上不直接执行具体任务。」也就是说,它看到了吞吐瓶颈,并用「不执行具体任务」来规避。但它没有处理另一种瓶颈:记忆的体量。

5.2 两项职责的扩展性冲突

路由与记忆对上下文的要求方向相反。

路由希望上下文短。路由决策的输入是「这条事件该交给谁」,所需信息是当前任务表、订阅关系、以及少量近期状态。上下文越长,单次决策的成本越高、延迟越大、注意力越分散。在第三节的复算中,单次请求耗时随批大小上升,而批大小上升又来自队列积压——这已经显示出成本对上下文规模敏感。

记忆希望上下文长。全局记忆要回答的是「三个月前那个任务为什么改了方案」,所需信息是完整的历史与决策理由。上下文越短,召回越不可靠。

把两者放进同一个会话,会得到一个必然结果:每一次路由决策都要为整个记忆付费。原文的总量数据与这一诊断相容——每个工作请求约 116 万读缓存 token,而真正的「工作」在实验里只是一个消耗时间的空工具。但原文没有给出 Router 与 Worker 的分项,因此这组总量只能作为旁证,不能单独证明。

这个耦合还带来三个次要后果,都会在长期运行中显现。

其一是可用性。原文 5.1 节把会话状态存入数据库、由持久化存储保障连续性,这一步是成立的。问题在于全局记忆仍然以单个上下文窗口为载体,没有外化为可查询的视图;因此重启后的会话能在多大程度上恢复「同一个」全局记忆,取决于上下文能否重建,而原文没有描述这条重建路径。

其二是可替换性。想更换 Router 使用的模型,就必须同时迁移记忆。这使得模型升级与架构升级被绑在一起,团队很难做小步替换。

其三是可评估性。想比较两个 Router 策略的优劣,必须让它们各自维护一份记忆,否则比较不成立;而一旦各自维护,两份记忆又会分叉。评估成本因此远高于一个无状态组件。

5.3 把序列点从会话移到日志序号

原文使用的是「序点(Sequence Point)」这一表述,本报告以下改称「序列点」。这个词来自数据库与日志系统,含义是「全局顺序上的一个位置」。在这个语境里,序列点的作用是为跨任务的事件提供一个统一的时间轴,使「先发生」「后发生」「并发」有确定的判定。

在日志系统里,序列点是一个单调递增的编号,通常称为日志序号。它是一个数值,不是一个进程。进程可以崩溃、重启、替换、水平扩展,而日志序号不变;任何组件只要记住自己处理到哪个序号,就能在重启后从正确的位置继续。

原文把序列点放在一个常驻会话里,等于把一个数值的职责交给了一个进程。这带来两个不必要的约束:全局顺序的可用性依赖该进程存活;全局记忆的完整性依赖该进程的上下文长度。

一个更稳的结构是把两者分开。

事件日志作为唯一权威,以只追加的方式记录所有 Trigger、分派决定、Worker 状态变更与对外动作,每条记录带一个单调递增的序号。Router 会话只持有两样东西:当前处理到的序号,以及一个容量受限的工作集(working set,这一概念来自操作系统对程序局部性的研究)。全局记忆不属于 Router,而是从日志派生出来的物化视图——任务表、决策表、线程表、否决表——可以随时重建,也可以被任何组件查询。

在这个结构下,原文的链式召回会变成另一种东西。原文的链式召回是「每次召回的对象均内联下一跳关联对象的 ID,支持沿引用关系逐跳展开上下文」;它依赖 Router 的上下文持有这些 ID,并且依赖 Router 知道该往哪个方向跳。改为日志查询之后,召回变成一次带条件的检索:给定一个时间点或一个任务标识,取出该任务的全部事件与该任务被否决的方案。前者依赖模型的记忆,后者依赖索引。

这个改法与原文 5.2 节并不冲突,反而更接近原文自己引用的方案。原文在 5.2 节写道,它的思路「与 Anthropic 提出的「脑手分离」(Decoupling the brain from the hands)一致,同样让 harness 保持无状态,把会话日志存放在 harness 之外」。Anthropic 那套设计的核心正是:会话是一份存放在模型上下文之外的、只追加的持久日志,harness 崩溃后凭会话标识重新读取日志并从最后一个事件恢复。原文接受了这一点,但只把它用在 Worker 侧;Router 侧仍然把全局记忆放在会话里。

因此这里的问题不是「原文没想到无状态」,而是「无状态只做了一半」。Worker 的 harness 无状态,Router 的记忆有状态;系统的全局连续性因此仍然系于一个进程。原文 8.1 节承认「长程记忆便成为制约可扩展性的主要瓶颈」,按本节的读法,这个瓶颈的来源不是记忆存得不够多,而是记忆放错了位置。

5.4 一个可以立刻检验的推论

若上述诊断成立,应当能观察到一个具体现象:系统在长期运行后,Router 的单位决策成本随运行时长上升,且上升幅度与任务总量相关,而与当前负载无关。

原文的压测是短时的,无法显示这一点。但原文 7.1 节的成本数据已经给出一丝线索:单次实验 300 条消息就消耗 2323 万读缓存 token。把时间尺度拉长到数周,这个数字会如何变化,原文没有报告。这是一个可以在现有系统上直接测量的量:把 Router 每轮调用的输入 token 数与当时的日志长度做回归,若斜率显著为正,诊断成立。

5.5 隐藏会话带来的第二个问题:没有去重键

原文有一个很漂亮的判断:「Session 应当是系统的实现细节,而不应是用户的认知负担。」这个判断在交互层面成立。但会话除了是认知单位,还是去重单位。

在传统的单会话设计中,用户重复发送同一个请求,系统至少能看出「这是同一个会话里的第二次输入」,从而做上下文内的判重。会话被隐藏之后,同一个意图可以从不同信道到达:先在即时通讯里说一遍,再在邮件里补一句,再在代码平台上开一个议题。这三条事件在底层是三个不同的 Trigger,来自三个不同的 Thread,没有任何共同的标识。

原文的订阅与直通机制解决的是「同一 Thread 内的后续事件」的路由问题,不解决「不同 Thread 表达同一意图」的合并问题。后者需要在全局层面做语义判重,而全局层面恰好只有 Router,Router 又恰好被设定为轻量模型。

于是形成一个两难:要么 Router 用强模型做语义判重,成本与延迟上升;要么用轻量模型,判重准确率不足,出现重复任务。重复任务的代价不是多花一点算力,而是两个 Worker 在同一个外部目标上并行推进,产生冲突的对外动作。

这个两难是本报告认为最值得在下一版设计中处理的具体问题。它有一个低成本的解法:在事件进入时先做一次结构化抽取(谁、要什么、对象是什么),用抽取出的三元组做精确匹配,只把无法匹配的交给语义判重。这样把大部分判重工作从模型移到代码,与原文自己在事件过滤中采用的「程序快路径加模型慢路径」是同一个思路,只是原文把它用在了过滤上,没有用在判重上。

六、类比检验:操作系统隐喻在哪里失效

原文第 9 节写道:「我们并没有提出全新的理论,而是将计算机系统中经典的工程思想应用到了 Agent 系统的构建中。」这句话是准确的,也是一种诚实的自我定位。本节的任务是把这句话推到底:既然整套设计建立在类比之上,那么类比的失效处,就是设计的风险处。

6.1 这个类比已经不是新见解

需要先说清楚一件事,以免读者误以为本文提出了新框架。把 Agent 系统类比为操作系统,在 2025 年至 2026 年已经是成熟话题。围绕「上下文窗口即内存、检索增强即换页、上下文溢出即颠簸」这一组对应,出现了 LLMOS、AgentOS、vMem 等一批命名与实现,也有若干开源项目直接按页表、工作集、缺页处理的语义来管理上下文。国内亦有作者给出过一组对应:大模型是新 CPU、上下文窗口是新内存、数据库是新磁盘、Agent 是应用程序。

因此本报告不把这个类比作为贡献,而是把它作为检验工具:如果类比成立,它应当能预测原文没有讨论的失败模式;如果类比在某个点上失效,那个点就是这套架构的真实边界。

6.2 对应关系

先把对应关系列全,再逐条检验。

操作系统概念 Super-agent 中的对应物 对应强度
进程 Worker Session 强
进程控制块 Worker 的上下文与工具配置 强
调度器 Router 中
中断 Trigger 强
中断亲和性 Thread 订阅直通 强
缓存 上下文窗口内联的信息 强
换出 Spill 到窗口之外 强
多级页表遍历 链式召回 中
硬件看门狗 Watchdog 会话 强
用户态与内核态 Worker 与 Router 的权限分层 反向(Router 权限更少)
进程号 无对应物 缺失
事务与提交 无对应物 缺失

前九行的对应是成立的;第十行方向相反,Router 的权限少于 Worker,与内核态高于用户态的常规相反;最后两行在原文中没有对应物。这三处正是本报告认为最需要补的地方。

6.3 失效之一:外部世界不可回滚

原文 3.4 节借用投机执行,写道「结果有价值就交付,没有价值就丢弃」。

在处理器里,这句话成立,因为投机执行的结果写在寄存器或重排序缓冲里,丢弃的代价是几个时钟周期。在 Agent 系统里,这句话只在沙箱内成立。一旦投机的产物越过了沙箱边界——发出一条群消息、提交一个合并请求、发出一封邮件、调用一次外部接口——它就不再是可丢弃的。原文举的例子恰恰是越界的:Agent 在群里讨论尚未结束时,已经在后台提交了修复用的合并请求。这个动作发生在外部世界,无法因为「结果没有价值」而撤销。

这一点在 2026 年的系统研究中已有回应。围绕 Agent 的事务化执行,出现了「暂存副作用」「提交门」「可逆沙箱」等一组设计:把对外动作先写入一个暂存区,只有在通过校验之后才真正释放。数据库领域的乐观并发控制早就给出了同样的结构——先执行,再在提交阶段校验,校验失败则回滚;而回滚之所以可能,是因为所有写入都还没有落盘。

对本架构而言,这意味着投机执行需要补一个原文没有写的阶段。Worker 可以自由地在沙箱内尝试,但它的产物在越过沙箱之前必须停在一个可审阅、可丢弃的形态:一封草稿邮件、一个未提交的分支、一条待发送的消息。提交这一步应当由策略门执行,而不是由 Worker 自己执行。

6.4 失效之二:副作用不是幂等的

操作系统的系统调用失败后可以重试,因为内核保证大多数调用的语义。Agent 的对外动作不满足这一点:发送一条消息不是幂等操作,提交一个合并请求不是幂等操作,给客户打一个电话更不是。

原文 5.2 节描述了一个必然会遇到重试的场景:端侧 daemon 与云端 Loop 之间的连接可能中断,设备可能间歇在线,「在用户的某台个人设备重新上线后,再由云端 Agent 自动触发并完成需要在该设备上执行的任务」。在这个场景里,同一条命令可能被执行两次,因为云端无法确定第一次是否已经生效。

解决这个问题需要幂等键,而且幂等键必须由发起方生成、随任务一起下发,不能由执行方生成。原文没有讨论这一点。这不是一个可以留到实现阶段再补的细节:幂等键的位置决定了任务标识的设计,而任务标识又决定了日志结构。

6.5 失效之三:人不是中断控制器

中断可以抢占任意一条指令,上下文切换的代价是微秒级。人不行。人的响应延迟以分钟到小时计,且不可预测;人的「上下文切换」代价以十分钟计。关于中断成本的经典研究给出的量级是:一次被打断的工作,平均需要二十余分钟才能回到原来的任务状态。

因此,原文 4.1 节的「全双工交互」在系统层面成立,在人的层面只是「不阻塞」,不是「实时」。这个区别对设计有实际影响:如果系统假设人可以像中断控制器一样随时响应,它就会倾向于频繁地发起确认请求;而每一次确认请求都是一次对人的中断,其成本远高于系统侧的等待。

原文在 4.2 节给出了一个很好的经验规则:单次回复不超过一百词,只在需要决策或验收时通知。这条规则的方向是对的。但它是一条提示词层面的约束,不是结构层面的保证。要让它稳定成立,需要把「什么情况下可以打扰人」变成策略门的一个判定条件,而不是模型的自律。

6.6 失效之四:换出的代价函数不同

在操作系统里,换出页面的代价是慢:一次缺页要访问磁盘。在 Agent 系统里,遗忘的代价可能是不可恢复的:某些信息一旦离开上下文,就再也取不回来。

原文的 Inline & Spill 设计假定「将超出窗口预算或低频使用的完整信息留在上下文窗口之外,仅在窗口内保留引用或摘要,供模型按需读取」。这个假定对可重新读取的对象成立——文件、代码、评论历史都可以再读一次。但它对只在对话中出现过一次的信息不成立:用户口头说的一句约束、讨论中临时决定的一个取舍、被否决的一个方案。

这类信息的特点是:没有对应的可读对象。它们只存在于当时的上下文里。一旦 Spill 掉,引用指向的是空。

这就引出本报告认为原文最应当补充的一类记忆:否决记忆。一个团队真正稀缺的知识,往往不是「做过什么」,而是「试过什么并且为什么不行」。前者通常会留下产物——代码、文档、合并请求;后者通常什么也不留。而链式召回依赖 ID 图,ID 图只能索引有产物的对象。否决没有产物,因此无法被索引。

已有研究把这一类对象称为负面知识或失败记忆,并指出它的检索语义与正向记忆不同:正向记忆可以按语义相似度召回,否决记忆必须按条件精确匹配,因为「一个相似的失败」很可能是完全不同的失败。这个判断与本报告在 5.3 节的诊断相互印证——记忆的关键不在于容量,而在于索引方式是否与对象类型匹配。

6.7 类比成立的推论:缓存一致性会出问题

前几节讲失效,本节讲一个类比反过来给出的有效预测。

在操作系统里,多个处理器各自缓存同一块内存时,需要缓存一致性协议;否则一个处理器改了数据,另一个处理器仍在用旧值。原文的设计里,Worker 之间不直接通信,各自持有隔离的上下文,只通过订阅同一个 Thread 获取相同的事件。这在「同一 Thread」内保证了一致性。

但全局决策不在 Thread 里。Router 可能在中途调整了任务边界、更改了优先级、或者否决了某个方案。这些变更发生在 Router 会话中,不会自动传播到已经在运行的 Worker。Worker 手里拿着的是分派时刻的旧假设,而它仍然在对外执行动作。

按类比的推论,这套系统在生产环境中的第一次严重事故,大概率不是进程崩溃,而是两个 Worker 基于互相矛盾的全局假设同时推进,并且都在对外产生副作用。这个推论可以用一个很轻的机制防范:给全局决策加一个版本号,Worker 在执行任何对外动作之前校验自己的版本号是否仍然有效;不一致则暂停并回报 Router。

这个机制的成本很低,但原文没有提到。本报告把它列为第六节的主要建议。

6.8 小结

操作系统类比在进程、中断、缓存、看门狗四组关系上成立,能带来有用的设计直觉;在事务与进程号两处缺失,而这两处恰好对应着本报告认为这套架构最薄弱的两块:对外动作的提交边界,以及跨信道的任务去重。

一个更一般的观察是:操作系统之所以能把这些机制做得可靠,是因为它控制了硬件;Agent 系统不控制外部世界。凡涉及外部世界的动作,类比都会变弱;凡只涉及系统内部资源的动作,类比都很强。原文的设计在系统内部做得很完整,在边界上留白较多,这与原文自陈的「工程和场景简化」是一致的。

七、缺失的第六模块:结清与回收

原文用五个模块支撑四个特征。本报告认为这套结构缺一个模块,而且缺得很整齐:五个模块全部关于「如何开始」与「如何持续」,没有一个关于「如何结束」。

7.1 五个模块的共同偏向

逐个看这五个模块的功能。

双层架构解决的是任务如何被分派与执行。事件驱动解决的是任务如何被触发与路由。面向人的交互解决的是结果如何被呈现。计算、状态与环境的分离解决的是系统如何在设备离线时继续存在。Watchdog 解决的是系统如何在异常后恢复。

五项都在回答「怎么让事情跑起来并且不停」。没有一项在回答「一件事情的终态是什么,到达终态之后占用怎么释放」。

一份完整的任务生命周期至少需要四个阶段:受理、执行、验收、结清。原文把前三个阶段都覆盖了,第四阶段没有。原文 8.2 节讨论「脱离 Session 之后如何与 Agent 协作」时,谈的是任务发起与结果验收阶段的人的参与,仍然没有触及终态。

这个缺失在短期演示里不会暴露。系统跑三天,任务不多,残留看不出来。但原文的目标形态恰恰是「始终在线」「长期运行」,而残留问题只在长期运行中显现。

7.2 五类残留

按本报告的分析,这套架构在长期运行中会产生五类残留。

僵尸任务。任务是「进行中」状态,但没有任何实质进展。原文的 Watchdog 会判断「各个 Worker 是否有实质进展、方向是否偏离整体目标」,这一步是对的。但原文对 Watchdog 的处置只有一种:介入修复。若修复失败,任务是继续挂着,还是被放弃,原文没有说明。一个既不前进也不终止的任务,会持续占用上下文、占用订阅、占用预算,并在全局记忆里保持「进行中」,从而污染 Router 的判断。

孤儿订阅。原文描述了 Worker 可以主动取消订阅,但没有描述 Worker 终止时的自动撤销与引用计数。后续事件继续直通到一个已经不存在或已经结束的会话。轻则浪费算力,重则产生错误回复。订阅是多对多的,撤销需要精确的引用计数,而原文没有描述订阅的生命周期管理。

投机残骸。被丢弃的投机结果仍然占用存储索引。原文说「没有价值就丢弃」,但丢弃的是「采用」,不是「删除」。那些被判定为无价值的尝试,如果不进入一个明确的归档或删除流程,就会在存储与检索索引里持续累积。

悬空引用。链式召回依赖对象之间的 ID 图。任何一次清理都会在图上留下悬空 ID,而召回路径一旦经过悬空 ID 就断裂。原文没有描述引用完整性如何维护。

提交槽位未结。这一条是本报告第六节建议引入提交门之后新增的:若对外动作先进入暂存区再提交,那么暂存区本身也需要结清机制。一个已经准备好但既未提交也未取消的动作,会在暂存区里永久停留,并在某次重试中被误提交。这是补一个机制所引入的新问题,必须与结清模块一起设计。

五类残留的共同点是多数不触发告警,主要产生成本与不确定性;其中孤儿订阅与悬空引用还可能直接导致错误回复与召回断裂。因此它们很少被告警捕获,通常只表现为单位成本缓慢上升。

7.3 结清的定义与状态机

本报告把「结清」定义为一个可判定的状态,包含三个条件:任务进入终态;该任务占用的四类资源全部释放;终态及其原因写入日志。

四类资源分别是对外动作槽位、订阅关系、上下文存储与预算余额。

对应的状态机如下。

当前状态 可迁移至 迁移条件 必须记录
受理 分派、已合并、已放弃 路由判定、判重命中或人工撤销 受理来源、判定依据
分派 执行、已合并、已放弃 Worker 接收、判重命中或拒绝 分派目标、版本号
执行 待验收、已放弃、已过期 产出完成、预算耗尽、静默超时 产出标识、消耗
待验收 已结清、已合并、已放弃、已过期 人验收、世界回执、人工撤销、超时 验收方式、验收者
已结清 终态 — 结果回执
已放弃 终态 — 放弃原因、否决理由
已合并 终态 — 合并到哪个任务
已过期 终态 — 过期阈值

状态机本身不复杂,但它强制执行两件在原文中被省略的事:任何任务都必须有终态;任何终态都必须有原因。第二件事直接产生本报告在第六章提到的否决记忆——放弃原因是唯一能自然积累下来的负面知识。

状态机中「已合并」一行值得单独说明。在去重失效的场景下,同一意图会产生多个任务。这时正确的处理不是让它们并行了事,也不是简单取消其中一个,而是把后来的任务合并到先到的任务上,并把两条事件的来源都记在合并记录里。合并是结清的一个子类,它同时解决了一部分去重问题。

7.4 回收器:为什么必须是确定性的

结清需要有人执行。原文的 Watchdog 是现成的候选,但它不适合独立承担这件事,原因有两个。

第一,Watchdog 与主系统共享同源失效。原文用模型判断 Worker 是否有实质进展,这个判断本身依赖于同一个模型家族。若模型对「进展」的理解有系统性偏差,Watchdog 会与 Worker 犯同一类错误。这是验证器与被验证器同源时的固有风险,统计学上称为相关误差:两个同源判断的一致性很高,但联合准确率并不会因为多加一个判断者而显著提高。

第二,语义判断不可靠时需要一个确定性兜底。判断一个任务是否「真的做完了」是语义问题,任何模型都会出错。但判断一个任务是否「超过了预算」是算术问题,不会出错。

因此本报告建议,回收器以确定性规则为主、语义判断为辅。主规则是四条:超过预算则结清;超过静默期则结清;订阅对应的 Thread 已关闭则结清;对外动作槽位超时未提交则取消。这四条都不需要模型。语义判断只在任务看起来「还在动但方向可疑」时作为补充,且其输出只能触发「上交给人」,不能直接改变任务状态。

这个分层与原文自己的「程序快路径加模型慢路径」是同一个思路。原文把它用在了事件过滤上,本报告认为它同样适用于任务回收,而且更必要——因为回收的错误代价高于过滤的错误代价。

7.5 预算应当是一等公民

原文的讨论中,预算是隐含的:Worker 会消耗 token,Router 会消耗 token,但没有任何地方说一个任务最多能消耗多少。

缺少预算定义会带来一个结构性后果:系统没有内在的停止条件。任务的终止只能来自「做完了」或「人叫停」,而两者都不可靠。前者依赖模型的自评,后者依赖人的在场。

把预算提升为一等公民,意味着在任务受理时就分配四项上限:token 预算、工具调用预算、墙钟预算、对外动作预算。任何一项耗尽,任务进入「已过期」并以「预算耗尽」为原因结清。

这带来两个好处。其一,成本可预测:一个任务的最坏成本在受理时就已经确定,这使得这套架构可以被采购、被审计、被按项目核算。其二,僵尸任务自动消失:僵尸的定义就是「持续消耗但不产出」,而预算耗尽是一个确定性的终止条件。

本报告认为,第二点是这套架构从「团队内部工具」走向「企业级系统」的关键一步。企业内部可以容忍不确定的成本,采购流程不能。

7.6 这个缺口为什么在账上看不见

结清缺口的隐蔽性来自成本的分摊方式。

一个僵尸任务不会产生一笔可以指认的支出。它每轮只消耗一点上下文,分布在许多次调用里;它不报错,不触发告警,也不出现在任何一个任务的成功率统计里。它唯一的表现是:单位产出的成本缓慢上升。

而这个表现与架构开销无法区分。原文报告的成本变化是「去掉直通后 token 增加 37%」,这是一个可归因的变化。僵尸任务造成的成本上升没有这样的对照,它会被归入「这套架构本来就贵」的范畴。

因此,结清缺口会以「效率莫名下降」的形式出现,而不是以「故障」的形式出现。这也是本报告主张把「僵尸任务占比」列为常规指标的原因——它是唯一能把这类成本从总账里分出来的量。

八、验收制度:三类场景,三种架构

至此,前四节处理的是这套架构在内部是否自洽。本节处理一个外部问题:它在什么样的场景里成立。本报告认为,答案取决于一件原文没有讨论的事——验收延迟。

8.1 一个已经成立的结论

先说明本节的起点不是新的。

把验证视为约束条件,在 2026 年的经济学文献中已经有系统论述。Catalini、Hui 与 Wu 在《Some Simple Economics of AGI》中提出,当执行成本指数下降时,真正的约束转移到验证一侧:人验证、审计并为结果承担责任的能力,受生理与组织边界限制,无法同步扩张。三位作者把这一不对称称为「可测性缺口」,并推断 rents 会向可验证的地面真值、来源证明与责任承保迁移。

这一结论与本报告的问题直接相关,但它是一个宏观经济学判断,不直接回答架构问题。本节的增量在于把它落到工程层面:按验收的性质把场景分类,并说明每一类对架构的要求。

业界的零散观察也指向同一方向。围绕人在回路的产品设计,已经出现一类经验判断:当审核请求连续出现数百次且绝大多数为正常时,审核者会退化为盖章,此时增加审核关口的系统反而更容易放过危险动作。这一观察本报告未取得可核对的原始研究,列入文末待核实清单,此处只作为方向性提示,不作为论据。

8.2 两个维度与三类场景

本报告用两个维度切分场景。

第一个维度是可读性:产出本身能否被人直接检视。第二个维度是可判定性:检视能否确定产出的正确性。

两个维度交叉,得到三类有实际意义的场景。第四象限(既不可读又可判定)不存在,可以忽略。

场景类别 产出的形态 人能否读 读能否判定对错 典型例子 验收延迟
第一类 变更与文本 能 能 代码改动、文案、报表 秒到分钟
第二类 决策与名单 能 不能 寻源名单、投放名单、候选人名单 天到月
第三类 复杂产物 不能 不能 超人类策略、大规模组合优化 无法验收

三类的差别不在难度,而在验收的性质。第一类的验收是审阅,第二类的验收是归因,第三类的验收在人类能力之外,只能靠事先约束与过程监督。

8.3 原文的架构只覆盖第一类

原文的整个设计,从 Router 汇总 Worker 结果、到「只在需要决策或验收时发送通知」、到「单次回复不超过 100 词」,都建立在同一个前提上:人能读懂产出,并据此判断对错。

这个前提在第一类成立。它也解释了为什么原文选择研发协作作为主场景——代码改动恰好是第一类里最成熟的一种。

第一类有一个其他类别不具备的性质:产出是自证的。一份代码改动,在同一个介质里就包含了判断所需的信息:改了什么、为什么改、测试是否通过、有没有影响其他模块。审阅者不需要去外部世界取证,就能做出相当可靠的判断。

这个性质不是 Agent 带来的,是软件工程五十年的积累带来的。版本控制让变更可比对,测试让行为可验证,持续集成让结果可复现,代码评审让责任可追溯。这四样东西构成了一套现成的验收基础设施。Coding agent 之所以率先落地,很大程度上是因为它落在这套基础设施上,而不是因为它的产出天生更容易验收。

这个判断有一个可以直接检验的推论:把同一套架构搬到没有这套基础设施的领域,收益会明显下降。不是因为架构变差了,而是因为验收成本从系统侧转移回了人侧,而人侧没有扩容。

8.4 第二类:制造业寻源的验收即归因

制造业的寻源场景属于第二类。

一次寻源的产出通常是一张企业名单,附带联系方式、主营产品、规模与所在地。这张名单是可读的:每一行都能看懂。但它不可判定:没有任何一种阅读方式能告诉你,这家企业会不会回复、会不会报价、能不能做这个规格、交期是否可信。

判断只能来自外部世界。发出去的消息有没有回,回了之后有没有报价,报价之后有没有样品,样品之后有没有订单。这条链条的周期以周计,长的时候以季度计。

这带来一个直接后果:抽查不是验收。假设一百家里有五家实际不合格,随机抽十家检查,至少发现一家的概率约为 41.6%;若不合格率为 10%,概率约为 67%。也就是说,一个看起来勤勉的抽查流程,在这两档不合格率下,漏检概率都在三成以上。抽查提供的是心理安慰,不是质量控制。

第二类真正需要的是归因能力:当一条线索最终没有成交时,系统能否回答「这条线索是怎么来的」。是哪个查询词召回的,命中了哪条筛选条件,当时的置信度是多少,谁在什么时候把它发出去的,对方的反馈是什么。

要做到这一点,架构上有三处与原文不同。

其一,Worker 的产出必须是结构化对象,不是散文摘要。每一个候选企业需要携带:企业标识、来源、召回理由、证据链接、置信度、以及这条记录的产生时间。原文的 Router 把 Worker 的结果压缩成一段话交给用户,压缩的方向与归因的要求相反——摘要丢掉的恰恰是归因所需的字段。

其二,Router 的对外输出应当是待办清单,不是汇报。人在这里的角色不是读者,是执行者:这批线索要发给谁、用什么话术、什么时候跟进。

其三,系统需要一个结果回传接口。世界的结果必须能被写回同一张表,并与产生它的那次检索建立连接。原文的五个模块里没有任何一个负责这件事,因为它假定验收发生在系统内部。

这三处差异可以归结为一句话:第一类的验收层是审阅层,第二类的验收层是结清层。审阅层回答「这个产出看起来对不对」,结清层回答「这个产出后来怎么样了」。

8.5 结清层的三个字段

若要在第二类场景中落地这套架构,本报告建议结清层至少记录三个字段。

产出标识:这条产出属于哪一次任务、哪一个查询、哪一版筛选条件。它使得任何一条后续结果都能被追溯回产生它的动作。

对外动作:这条产出被以什么形式、在什么时间、发给了谁。它把「系统内部的动作」与「外部世界的动作」连起来,也是责任归属的依据。

结果回执:对方如何回应,包括无回应。无回应也是回执,而且是最重要的一种——它区分了「没有发出去」与「发出去了但没回音」这两种完全不同的失败。

三个字段齐备之后,验收的定义发生变化:从「人点了通过」变成「世界给了回执」。这个变化的实质是把验收从主观判断转成客观记录,从而使验收可以规模化——因为记录不需要人的注意力。

人在第二类里的角色随之改变:从逐条审阅者,变成抽样审计者与例外处理者。这与第一类里人的角色不同,而与质量控制部门的角色相同。

8.6 第三类:不可验证与事先约束

第三类场景在制造业的日常经营中不常见,但在一些高价值决策中会出现,例如大规模产能排布、跨区域的供应链重构、长周期的投资组合。这类产出的正确性超出人的判断能力,验收在原则上不可能完成。

对这一类,本报告只给一个方向性判断:可行的路径不是提高验收能力,而是把控制点从事后移到事前。具体而言,是把人的作用从「判断产出对不对」改为「设定约束并监督是否越界」——预算上限、风险敞口、不可触碰的清单、必须留痕的环节。

这与本报告第六节提出的提交门是同一个机制。差别只在于,第一类与第二类的提交门主要防的是模型的失误,第三类的提交门防的是人的判断力不足。

8.7 本节对原文的总体判断

原文第 9 节写道,随着模型执行单个任务越来越少需要人工干预,「限制生产力进一步提升的瓶颈正在转向人的注意力」,系统使「人类得以从具体的执行细节进一步上移到更高层的决策与验收」。

这个判断在第一类成立,而且原文给出的架构在第一类里是有效的。但它把「验收」当成了一个统一的动作,而验收在不同场景里的性质差别极大。原文没有区分这一点,因为它选择了验收条件最好的那个场景。

这不是原文的缺陷。一份面向自身研发场景的架构说明,没有义务覆盖其他场景。但对准备采纳这套架构的团队来说,这个区分是决定性的:如果他们的业务落在第二类,那么照搬这套架构会得到一个运转良好但无法评估的系统——任务完成得很快,界面很清爽,但没人能回答这些产出到底有没有用。

本院在制造业寻源场景中接触到的高价值 Agent 应用,多数落在第二类。这是本报告认为最需要被说清楚的一件事。

九、度量:把「注意力」变成一个可以计算的量

原文用「人的注意力」作为整套架构的出发点,但只给出了「一个人通常只能同时跟进 3 到 5 个活跃 Session」这一经验观察,没有给出可操作的量化指标。这不影响架构设计的价值,却使得这套架构无法被评估,也无法被改进。

9.1 原文报告的四个指标

原文在实验部分报告了四个量:任务完成时间的 p50 与 p95、Router 需要做出的决定数、读缓存 token 总量、批大小与单次请求耗时。

这四个量都是系统侧指标。它们能回答「系统跑得多快、花多少算力」,不能回答「人因此多做了多少事、少犯多少错」。

对一个以人为出发点设计的系统而言,这个指标集是不完整的。更麻烦的是,只有系统侧指标时,任何优化都会自然地向系统侧倾斜:延迟更低、token 更少,看起来就是进步,哪怕它让人更累。

9.2 建议补充的八个指标

下表的八个指标多数可以从现有事件日志中计算,前提是日志字段在架构设计阶段就定好;其中 M1 依赖人工抽检,M4 需要记录人在系统上投入的时间,这两项需要单独的数据来源。

编号 指标 定义 计算方式 用途
M1 路由准确率 事件被分派到正确 Worker 的比例 人工抽检 1%,按「错分或不必要分派」计错 判断 Router 是否可靠
M2 直通命中率 经订阅直通的事件占全部事件的比例 直通事件数 ÷ 事件总数 衡量 Router 负载结构
M3 每验收产出 token 单位被验收产出的 token 消耗 区间内 token 总量 ÷ 被验收产出数 成本效率的主指标
M4 人类分钟每验收产出 单位产出所需的人力时间 区间内人在该系统上的总时间 ÷ 被验收产出数 直接对应注意力主张
M5 投机命中率与浪费率 投机结果被采用的比例与被丢弃部分的成本 采用数 ÷ 投机数;丢弃部分 token ÷ 总 token 判断投机是否划算
M6 僵尸任务占比 超过静默期仍处进行中的任务比例 僵尸任务数 ÷ 任务总数 衡量结清缺口
M7 重复任务率 同一意图被受理多次的比例 重复受理数 ÷ 任务总数 衡量去重能力
M8 返工率 验收后被打回重做的比例 打回次数 ÷ 验收次数 衡量产出质量

M3 与 M4 是本报告认为最重要的两个。M3 把成本归到「被验收的产出」而不是「任务」,这一点与原文按任务统计的区别很大:一个任务跑完但没人验收,不应计入产出。M4 直接测量了 P1 所关于的量,若这个指标没有改善,那么整套架构关于注意力的主张就没有被验证。

M6 与 M7 对应本报告第七、第五两节指出的两个缺口。它们的作用不是提高性能,而是让缺口显形。一个不测量僵尸占比的系统,会以为自己一切正常。

9.3 先定日志字段,再定架构

这八个指标都依赖同一组字段:事件标识、线程标识、任务标识、状态迁移、消耗、执行者、验收方式、外部回执。

这组字段应当在架构确定之前定好,因为字段决定了系统的能力边界。举例而言,若日志只记录「任务完成」,不记录「任务被验收」,那么 M3 与 M4 永远算不出来;若日志不记录「由谁验收」,责任归属就无法落实。

原文在 3.3 节把上下文窗口当作缓存来管理,这个思路很好。同样的思路可以推广到日志:日志不是调试副产品,而是系统的一等资产。本报告在 5.3 节建议以日志序号作为序列点,理由也在这里——一旦日志成为权威,所有指标都是日志上的查询。

9.4 单项指标会被博弈

任何单一指标都会被优化到失真,这套系统也不例外。

若只考核 M3,系统会倾向于挑选容易验收的任务,把难的推给人。若只考核 M1,Router 会倾向于只处理格式最规范的事件,把其余一律判为无需行动,以减少错分与漏派。若只考核 M6,回收器会过早终止任务,把本可完成的任务提前终止。若只考核 M8,系统会倾向于产出最保守的方案。

因此建议以配对方式考核:M3 与 M8 配对,防止为省成本牺牲质量;M1 与 M2 配对,防止 Router 退化为转发器;M6 与 M5 配对,防止过早结清。

这类配对并不新鲜,是绩效度量的常规做法。之所以要在这里写明,是因为 Agent 系统的特殊之处:它的执行速度远快于人的检查速度,一旦指标被博弈,偏差会在很短时间内累积到很大。

十、安全与责任:两个原文点到为止的问题

原文 8.4 节用很短的篇幅讨论了安全与隐私,并明确承认「如果没有办法很好的解决安全与隐私问题,那么 Super-agent 只有在一个很小且可信的范围才能工作」。这个自我判断是准确的。本节沿着它的两条线索往下走。

10.1 BYOM 的能力模型问题

原文 5.2 节的设计是:Agent Loop 在云端运行,执行环境留在本地,端侧只部署一个「不保存会话状态的轻量 daemon,它只负责执行命令与返回结果」。

这个 daemon 的权限,实际上是「在这台机器上执行任意命令」。原文也意识到了风险:「一旦云端的 Agent Loop 遭遇服务端入侵或提示词注入而被攻破,其连接的全部端侧设备都面临被控制的潜在风险。」

要处理这个风险,靠加密或认证是不够的,需要改变 daemon 的能力模型。安全工程里有一套成熟的原则可以借用:最小权限、完全中介、默认拒绝、权限分离。四条的共同含义是:不要给一个通用执行器,要给一组被明确声明、可核查、可撤销的能力。

具体到端侧 daemon,本报告建议三项约束。

第一,命令白名单,而不是 shell。daemon 不解释任意字符串,只接受预先声明的动作类型,每个动作类型有固定的参数结构与固定的输出结构。这样即使云端被注入,攻击者能做的也只是在已有的动作集合里选择,而不是执行任意命令。

第二,路径与目标的范围约束。每个任务在受理时声明它能触及的路径前缀、仓库、服务与收件人集合。daemon 在执行时校验,越界即拒绝并记录。

第三,短时凭据,且凭据不进上下文。原文已经提到「让 Agent 能够在完全不接触凭据本身的情况下使用凭据」,方向是对的。需要补充的是执行位置:凭据不应出现在模型的上下文里,也不应出现在 daemon 的通用 shell 里,而应只出现在 daemon 与目标服务之间的那一次调用中。安全领域关于信息隔离的经典讨论指出,只要一段信息能被读入一个可编程的实体,它就有办法通过某种输出通道泄露出去。因此「不接触」必须由接口形状保证,不能由提示词保证。

10.2 完全中介:安全边界应当放在哪里

原文的事件驱动设计让 Agent 能够被更广泛的环境驱动,这本身扩大了攻击面。原文 3.1 节的两级过滤——程序层策略加语义层策略——是很好的降噪设计,但它不是安全边界。

原因在于语义层策略本身是一个语言模型,它的输入是不可信的文本。任何能向群里发消息的人,都可以构造一条能通过语义过滤的消息。过滤降低的是噪音量,不是攻击成功率。

同理,原文描述的「持续关注公共群聊,在无人 @ 的情况下主动识别缺陷并提交修复 Pull Request」这一行为,在内部可信群里是合理的,在对外开放的群里则是把「任何人发一句话」变成了「触发一个拥有完整工具权限的 Worker」。

安全边界的正确位置在对外动作之前,而不是在事件进入之时。这就是本报告第六节提出的提交门:任何越过沙箱边界的动作,必须在策略门处校验,校验的依据是动作类型、目标范围、预算与频率,而不是这句话看起来像不像一个请求。

这个设计与安全工程中的端到端原则一致:一项功能若其正确性只能依靠端点掌握的信息来判断,把它放在中间层实现就既冗余又不可靠。判断「这个动作该不该做」所需的信息在策略端,不在事件端,因此检查必须放在策略端。

10.3 可归属主体

原文没有讨论责任归属。这不是疏忽,而是场景使然:在团队内部,责任归属由组织关系自然解决。

一旦这套系统进入企业采购或对外服务,责任归属就变成一个前置条件。企业无法采购一个「出了事找不到人」的系统。这不仅是法律问题,也是流程问题:任何一次对外动作,都需要一个可以被追问的主体。

因此本报告建议,把「可归属主体」作为架构的一等约束:每一个越过沙箱边界的动作,都必须在日志中绑定一个责任主体,这个主体可以是一个自然人,也可以是一个注册的服务身份,但不能是「Agent」这个笼统的称呼。

与之配套的是日志的不可篡改。只追加、带哈希链的日志是常见做法,成本不高。它的价值不在于技术,而在于事后:当需要判断某个动作是谁在什么依据下做出的时候,一份可以被修改的日志等于没有日志。

十一、结论

本报告的结论分为两组。第一组基于原文公开数据的复算,可以被读者独立验证;第二组是设计判断,属于可以争论的范围。

11.1 基于复算的结论

第一,Router 的吞吐余量被高估。按原文 7.2 节的批大小与单次请求耗时计算,单个 Router 会话在每分钟约 40 条 Trigger 时利用率约为 0.93,已接近满负荷。原文「仍未触及单 Router 的吞吐瓶颈」的判断与自身数据不符。且批大小 2.8 与「服务期间的自然到达量」 2.60 几乎相等,说明测到的批处理与排队积压无法区分。

第二,7.1 节的实验没有检验它的主张。实验测量的是单任务完成时间,主张的是人力吞吐量;二者不构成单调关系。实验缺少「强制委派」这一关键对照,因此无法把架构效应与提示词效应分开。以五个样本报告 p95,实际上报告的是最大值。

第三,成本的中心在上下文读取,不在任务执行。每个工作请求对应约 116 万读缓存 token,若读缓存按输入价格十分之一计价,等效全价输入约 11.6 万 token。这个数字高度依赖工作请求在总消息中占 6.7% 这一负载结构。

11.2 基于设计判断的结论

第四,Router 同时承担路由与全局记忆,是长程记忆瓶颈的结构性来源。路由要短上下文,记忆要长上下文,两者耦合使每一次分派都要为整个记忆付费。建议以只追加日志的序号作为序列点,会话只持有工作集,全局记忆改为从日志派生的物化视图。

第五,五个模块覆盖了任务的受理、执行与验收,缺结清。长期运行会产生僵尸任务、孤儿订阅、投机残骸、悬空引用与未结的提交槽位五类残留。结清需要状态机、确定性回收器与一等公民的预算三项要件。

第六,投机执行缺少提交边界。「没有价值就丢弃」只在沙箱内成立,而原文举的例子已经越过沙箱。对外动作应当先进入暂存区,再经策略门提交。

第七,操作系统类比在进程、中断、缓存、看门狗四处成立,在事务与进程号两处缺失,而这两处恰好对应最薄弱的两块:对外动作的提交边界与跨信道的任务去重。

第八,验收按性质分为三类,原文架构只覆盖第一类。第一类的验收是审阅,第二类的验收是归因,第三类的验收只能靠事先约束。制造业寻源属于第二类,需要的是结清层而不是审阅层。

11.3 对准备采纳这套架构的团队的建议

若要落实成一条可操作的建议,本报告认为顺序应当是:先做强制委派的对照实验,再决定是否引入双层架构。

原因很直接。强制委派只需要几行 harness 代码,它检验的是「取消模型裁量权」能带来多少收益。若它能达到双层架构的大部分效果,那么团队可以用极低的成本获得主要收益;若它明显落后,才说明双层结构本身有价值,此时再投入 Router、订阅、链式召回与 Watchdog 是合算的。

原文实际上已经提供了支持这个建议的证据:在中性提示下模型五次全不委派,在明确提示下四次委派且效果改善。这说明提示偏好会显著改变委派率;至于把委派改成强制是否同样有效,仍需那个对照实验来回答。这一点在原文的叙述中被架构层面的讨论盖过了。

第二件事是先把日志字段定下来。八个指标里多数依赖同一组字段,而这些字段一旦在系统上线后再补,历史数据就补不回来。

第三件事是给任务加预算。这是把系统从内部工具变成可采购系统的最低门槛,也是清除僵尸任务的唯一确定性手段。

11.4 关于这份架构说明本身

本报告通篇在做复算与追问,这里应当给出一个整体判断。

这份架构说明的价值,不在于它提出了多少新概念——它自己也承认没有提出新理论。它的价值在于把一个正在被大量团队模糊感受到的问题写清楚了:当 Agent 从「一次对话」变成「持续在场」时,系统的形态会发生什么变化。它给出的五个模块,是这个变化的一个自洽答案,而且是一个可以照着实现的答案。

它的不足集中在两处。一是证据的覆盖范围小于结论的覆盖范围:五个模块里,双层架构只被部分触及,事件驱动只触及订阅直通一项,而叙述的语气是整体性的。二是它把「验收」当作一个不需要定义的动作,因此没有看到不同场景对验收的不同要求。

这两处不足都不是能力问题,而是体裁问题。一份团队内部的架构说明,本来就不必承担外部有效性检验。但当它被当作行业范式传播时,这两处会被继承下来。本报告的工作,就是在这份说明被继承之前,把可以核对的部分核对一遍。

十二、待核实清单

以下各项在本报告写作时无法闭合,列出以备后续核对。本报告未在正文中以推算值替代这些缺口。

  • 原文 7.2 节未定义「单次请求耗时」与「单个决定分摊的推理时间」两个指标的口径。二者在批大小为 1 时不相等(2.5 秒对 6.4 秒),无法用同一服务时间解释。本报告的利用率复算假定前者为服务时间,若该假定不成立,第三节的数值需重算。
  • 原文未披露 Router 与 Worker 各自使用的模型型号、参数量与上下文长度,因此第三节关于「上下文长度不是当前约束」的判断只能按主流模型的常规上下文规模估算。
  • 原文未给出 token 计价,本报告只使用 token 量与比值,未折算金额。
  • 原文称「一个人通常只能同时跟进 3 到 5 个活跃 Session」,未说明样本、测量方法与人群。本报告在 2.3 节将其作为未标注来源的经验值处理,并指出其可能对应三种不同机制(工作记忆容量、中断恢复成本、社会协调容量),三者的架构含义不同。
  • 原文实验的 300 条消息中工作请求占 6.7%,未说明该比例的现实依据。第四节关于成本结构的判断依赖这个比例。
  • 本报告未取得原型仓库 dsh-superagent-prototype 的代码,第六节关于提交门的建议是设计推论,不是对实现的描述。
  • 第六、七节提到的 LLMOS、AgentOS、vMem、暂存副作用、负面知识等方向,系 2026 年 10 月 31 日公开检索所得,本报告未逐篇核对原文,正文只作方向性引用。
  • 第八节引用的「连续数百次正常审核后审核者退化为盖章」这一业界观察,本报告未取得可核对的原始研究,正文已标注为方向性提示,不作为论据。
  • Catalini、Hui 与 Wu 将工作划分为四类,本报告未逐条比对其分类与本节三类验收场景的对应关系,二者的关系有待专门讨论。

十三、参考文献与方法说明

13.1 一级材料

  • DeepSeek Harness 团队:《Super-agent 设计探索:迈向更自主的 Agent 系统》,2026 年 10 月 31 日。本报告全部 E1、E2 级材料出自此文。
  • 同期媒体转述:IT之家、驱动中国、观点网、读懂AI时代、同花顺等,2026 年 10 月 31 日。用于判断公共讨论的分布,不作为技术论据。

13.2 二级文献

  • Anthropic:《Scaling Managed Agents: Decoupling the brain from the hands》,2026 年 4 月。用于 5.3 节关于无状态 harness 与外部会话日志的讨论。
  • Catalini, C., Hui, X., Wu, J.:《Some Simple Economics of AGI》,arXiv:2602.20946,2026 年 2 月。用于 8.1 节关于验证带宽与可测性缺口的讨论。
  • Kung, H. T., Robinson, J. T.:《On Optimistic Methods for Concurrency Control》,1981 年。用于 6.3 节关于提交阶段校验的类比。
  • Saltzer, J. H., Schroeder, M. D.:《The Protection of Information in Computer Systems》,1975 年。用于 10.1 节最小权限、完全中介、默认拒绝、权限分离四项原则。
  • Saltzer, J. H., Reed, D. P., Clark, D. D.:《End-to-End Arguments in System Design》,1984 年。用于 10.2 节关于检查位置与信息分布的论证。
  • Lampson, B. W.:《A Note on the Confinement Problem》,1973 年。用于 10.1 节关于信息隔离必须由接口保证的判断。
  • Denning, P. J.:《The Working Set Model for Program Behavior》,1968 年。用于第五节与第六节关于缓存与工作集的类比。
  • Cowan, N.:《The Magical Number 4 in Short-Term Memory: A Reconsideration of Mental Storage Capacity》,2001 年。用于 2.3 节关于跟踪容量上限的讨论。
  • Mark, G., Gudith, D., Klocke, U.:《The Cost of Interrupted Work: More Speed and Stress》,2008 年。用于 6.5 节关于中断恢复成本的量级判断。

13.3 方法说明

本报告的全部计算均可由正文公式复现。第三节的利用率公式为 ρ = (λ / b) × S;服务时间弹性由两点幂律拟合得到,拟合式为 S = 2.5 × b^0.432;容量曲线为 C = b / S。第四节的单位成本由 2323 万 token 除以 20 个工作请求得到。第八节的抽查检出概率按超几何分布计算,公式为 1 − C(N−D, n) / C(N, n),其中 N 为名单规模,D 为不合格数,n 为抽查数。

本报告承认一项方法局限:复算依赖原文公开的三个读数,样本点为两个,无法做稳健性检验。第三节因此给出的是量级判断,不是精确估计。若原文后续公布完整的压测序列,本报告的结论应当据其修正。

13.4 关于本报告的立场

本报告由天下工厂产业研究院撰写。本院运营制造业企业数据库,并在寻源场景中使用 Agent 系统,因此第八节关于第二类验收的讨论包含本院的实践经验。这一背景可能带来立场偏向,读者在阅读第八节时应当考虑这一点。前七节的分析不依赖本院的业务数据,仅使用原文公开材料与公开文献,可以独立核对。