Paper: 2609.01600 Authors: Damien Sileo, Dimitri Kachler Categories: cs.AI, cs.CL

The Gap

Dynamic agent harnesses let a language model change the software that shapes its own execution — add a plugin, reconfigure a component, register or tear down a dependency. That flexibility is the point, and it introduces a reasoning burden that ordinary code generation does not have: a local change propagates through dependencies and cleanup. Editing one plugin can leave another in a state nobody intended, and the consequences only appear when something is torn down.

That is a new reasoning task, and it had no benchmark. It is also a task with an unusual structure: unlike most coding problems, the answer is computable — you can execute the configuration and observe the resulting state. So the interesting question is not only whether models can reason about it, but whether they are reasoning at all where an exact method exists.

   DYNAMIC AGENT HARNESSES

   the model can CHANGE the software that shapes its own
   execution: add a plugin | reconfigure a component |
   register or tear down a dependency
        |
        v
   [NEW REASONING BURDEN] a LOCAL change PROPAGATES
     through dependencies and cleanup
     -> editing one plugin can leave another in an
        unintended state
     -> consequences appear only when something is TORN DOWN
        |
        v
   [GAP] no benchmark for this
        |
        v
   AND: unlike most coding problems, the answer is COMPUTABLE
        -> you can execute the configuration and observe state
        -> so the question is not only "can models reason about it"
           but "are they reasoning where an exact method exists"

The Increment

One sentence: Before this paper, lifecycle reasoning about dynamic agent harnesses was unmeasured; after it, a 1,200-question benchmark shows models degrade as interactions multiply — and a finite reference semantics proves the expensive inference was avoidable on these instances.

Core Mechanism

The benchmark has 1,200 questions and combines a controlled formal setting with programs executed against Cordis, a runtime that manages component dependencies and cleanup. That pairing is the design’s strength: the formal setting makes the questions unambiguous, and the real runtime means the ground truth comes from execution rather than from a specification someone wrote.

Four question types, each probing a different part of the reasoning:

  • Identify affected components — the propagation question at its most direct.
  • Predict state after a specified teardown order — requiring the model to simulate cleanup rather than just dependency edges.
  • Determine which conditions hold under all or some orders — a quantifier over orders, which is where the reasoning gets genuinely hard.
  • Choose reconfigurations that succeed when executed — the constructive version, where a wrong answer is a broken system rather than a wrong label.

The evaluation targets three efficiency-oriented models at low reasoning effort, with the number of relevant interactions swept over 2, 4, 8, 16, 24 and 32, and deterministic task-specific scoring. The sweep is the experimental spine: it measures degradation as a function of complexity rather than reporting a single accuracy.

Models usually handle small systems well but grow less reliable as more interactions become relevant — and the degradation is uneven across question types. It is worst when predicting final state and when reasoning across teardown orders. Both are the cases where the model must simulate rather than trace: identifying affected components is graph traversal, while predicting the state after a given teardown order requires modelling what cleanup actually does. And reasoning across orders adds a quantifier on top of that. So the failure concentrates exactly where the required operation is simulation rather than lookup.

Additional inference effort recovers marked gains for some models — a partial remedy, and the cost is quantified: on the 16-interaction subset, one model uses nearly 3,000 reasoning tokens per question at medium effort.

Then the finding that reframes the cost. For these controlled instances, that cost is avoidable: an independent finite reference semantics agrees with Cordis execution on every observation and action outcome used for scoring across all 528 executable questions. A finite reference semantics means the answers are derivable by computation rather than by inference. So the benchmark demonstrates a capability gap and shows that on this class of problems the expensive route is not required — which sharpens what the benchmark is measuring: not whether models can compute the answer, but whether they can do it by reasoning where a cheap exact procedure exists.

   BENCHMARK: 1,200 questions
     combination of:
       a CONTROLLED FORMAL SETTING   (questions unambiguous)
       PROGRAMS EXECUTED AGAINST CORDIS
         a runtime managing component dependencies + cleanup
       -> ground truth comes from EXECUTION, not from
          a specification someone wrote

   FOUR QUESTION TYPES
     identify affected components
     predict state after a SPECIFIED TEARDOWN ORDER
     determine which conditions hold under ALL or SOME orders
     choose reconfigurations that SUCCEED WHEN EXECUTED

   EVALUATION
     three efficiency-oriented models, LOW reasoning effort
     relevant interactions swept: 2, 4, 8, 16, 24, 32
     deterministic, task-specific scoring

   FINDINGS
     small systems: usually fine
     more interactions -> LESS RELIABLE
     degradation is UNEVEN:
       worst when predicting FINAL STATE
       worst when reasoning ACROSS TEARDOWN ORDERS
       <- both require SIMULATION, not graph traversal
     more inference effort recovers marked gains for some models
       COST: ~3,000 reasoning tokens per question at medium effort
             (16-interaction subset, one model)

   AND THE COST IS AVOIDABLE ON THESE INSTANCES
     an independent FINITE REFERENCE SEMANTICS agrees with
     Cordis execution on EVERY observation and action outcome
     used for scoring, across all 528 executable questions
     -> the answers are DERIVABLE BY COMPUTATION

Think of it as asking someone to predict the final layout of a kitchen after cooks have been working in it in a specified order. Listing which cupboards a cook touched is bookkeeping and most people manage it. Predicting what the kitchen looks like after a given order of departures is different: you have to know which cooks clean up after themselves and which leave things where they are. And answering “is there a dirty pan on the stove under every possible order” adds a quantifier on top. The paper finds the failures concentrate in the second and third kinds — and then makes the sharper point: because the kitchen has exact rules, you could just read the state off the rules instead of imagining it, so the inference effort is optional for this class of question.

Key Concepts

  • Lifecycle reasoning as a distinct task: propagation through dependencies and cleanup, where consequences surface at teardown. It is not ordinary code generation, because the effect of a local edit is not local.
  • Execution as ground truth: running programs against a real runtime rather than checking against a written spec. It removes the class of disagreements that come from specification drift.
  • Uneven degradation across question types: worst where the required operation is simulation (final state, cross-order reasoning) rather than traversal. It tells you which capability is missing, not merely that accuracy falls.
  • Finite reference semantics as the alternative: an exact procedure agreeing with execution on all scored outcomes. It shows the inference was avoidable here, which reframes the benchmark as measuring reasoning where computation suffices.
  • Cost as a first-class measurement: nearly 3,000 reasoning tokens per question at medium effort. Reporting the price of the partial remedy is what makes the avoidability finding actionable.

Framework Shift

Before (no benchmark; lifecycle reasoning unmeasured):
  dynamic harnesses let models edit the software that
  shapes their own execution
  -> propagation through dependencies and cleanup unmeasured
  -> no way to say which part of the reasoning is hard

After (1,200 questions, swept by complexity):
  identify affected components | predict state after an order |
  conditions under all/some orders | choose a working config
  -> small systems fine; reliability falls as interactions grow
  -> worst at final-state prediction and cross-order reasoning
  -> and an exact finite semantics matches execution on every
     scored outcome, so the inference was avoidable

From having no way to characterise a new kind of reasoning burden, to knowing which question types fail and that an exact procedure exists for them, the core shift is that the benchmark measures whether models simulate correctly where simulation is not strictly necessary.

Expert Assessment

Problem choice: Excellent, and the timing is right. Dynamic harnesses are becoming the normal way agents are extended, so reasoning about propagation and cleanup is about to be a routine requirement rather than an exotic one — and it is a burden the agent creates for itself, which makes measuring it directly relevant.

Method maturity: The design is well matched to the problem: formal setting for unambiguity, real runtime for credible ground truth, four question types that separate traversal from simulation from quantification, and a complexity sweep rather than a single accuracy. The finite reference semantics is the most sophisticated element, because building and validating an exact alternative to the learned approach is what turns the experiment into a statement about the necessity of inference.

Experimental integrity: The honest scoping is what I would single out. The reference semantics agreement is claimed for these controlled instances, and the caveat is stated — the benchmark shows the cost was avoidable here, not in general. Restricting to three efficiency-oriented models at low reasoning effort is a deliberate and stated choice, and the finding that more inference effort helps partially is reported rather than glossed. The limitation is that a single runtime anchors the ground truth, so generality across harness implementations is assumed rather than demonstrated.

Writing quality: The four question types are stated as tasks rather than as metrics, which makes the failure pattern readable — you can see why final-state prediction and cross-order reasoning are harder. Because the practical upshot is that an executable reference exists, a short section on when a reader should build one for their own harness would make the paper directly reusable rather than only informative.

Verdict: strong accept — it defines and measures a reasoning burden that agents impose on themselves, localises the failure to simulation rather than traversal, and shows with an independent exact method that the expensive path was optional.

Takeaways

  • Separate traversal from simulation when diagnosing failures. Identifying affected components and predicting post-teardown state demand different operations, and only the second is hard.
  • Build an executable reference when the answer is computable. If an exact procedure matches your runtime, the model’s inference effort is optional and its errors are avoidable.
  • Sweep complexity rather than reporting one accuracy. Reliability that falls with the number of relevant interactions is a different finding from low accuracy overall.
  • Price the remedy. Reporting that more inference effort helps, alongside what it costs per question, is what lets a reader decide whether to buy it.

论文: 2609.01600 作者: Damien Sileo, Dimitri Kachler 分类: cs.AI, cs.CL

缺口

动态智能体脚手架允许语言模型修改塑造自身执行的软件——加一个插件、重配一个组件、注册或拆除一个依赖。这种灵活性正是它的意义所在,但它带来了一种普通代码生成所没有的推理负担:一次局部改动会沿依赖与清理过程传播。 改动一个插件,可能让另一个插件停在一个谁都没想要的状态上,而后果只在某个东西被拆除时才显现。

这是一项新的推理任务,而它此前没有基准。它还有一个不寻常的结构:与大多数编码问题不同,它的答案是可计算的——你可以执行那个配置,观察得到的状态。所以有意思的问题不只是”模型能否推理它”,而是”在一个精确方法存在的地方,它们究竟有没有在推理”。

   动态智能体脚手架

   模型可以「修改」塑造自身执行的软件:
   加一个插件 | 重配一个组件 | 注册或拆除一个依赖
        |
        v
   [新的推理负担] 一次「局部」改动会「沿依赖与清理传播」
     -> 改动一个插件,可能让另一个停在
        谁都没想要的状态上
     -> 后果只在「某个东西被拆除时」才显现
        |
        v
   [缺口] 没有针对这一点的基准
        |
        v
   而且:与大多数编码问题不同,答案是「可计算的」
        -> 你可以执行那个配置并观察状态
        -> 所以问题不只是"模型能否推理它",
           而是"在一个精确方法存在的地方,它们是否在推理"

增量

一句话: 在这篇论文之前,针对动态智能体脚手架的生命周期推理从未被测量;在这篇论文之后,一个 1,200 题的基准显示:随着交互变多,模型可靠性下降——而一套有限的参考语义证明,在这些实例上那次昂贵的推理本可避免。

核心机制

基准包含 1,200 道题,并把一个受控的形式化设定针对 Cordis 执行的真实程序结合起来——Cordis 是一个管理组件依赖与清理的运行时。这种配对正是设计的长处:形式化设定让问题无歧义,而真实运行时意味着真值来自执行,而不是来自某个人写下的规格说明。

四种题型,各自探测推理的不同部分:

  • 识别受影响的组件——最直接的传播问题。
  • 预测在某个指定拆除顺序之后的状态——要求模型模拟清理过程,而不只是追踪依赖边。
  • 判断哪些条件在”所有/某些”顺序下成立——在顺序上加了量词,推理在这里才真正变难。
  • 选择”执行后能够成功”的重配置——建设性版本:答错意味着一个坏掉的系统,而不只是一个错标签。

评测面向三个以效率为导向的模型、低推理投入,并把相关交互数在 2、4、8、16、24、32 上扫描,计分确定性且按题型定制。这个扫描是实验的主干:它测量的是随复杂度变化的退化,而不是报一个单一准确率。

模型在小系统上通常表现良好,但随着相关交互变多而可靠性下降——而退化在不同题型上并不均匀。它在预测最终状态跨拆除顺序推理这两种情形下最严重。两者都是模型必须模拟而非追踪的场合:识别受影响组件是图遍历,而预测某个给定拆除顺序之后的状态,要求对清理过程究竟做了什么建模。跨顺序推理则在此之上再加一个量词。所以失效恰好集中在”所需操作是模拟而非查找”的地方。

额外的推理投入能为某些模型带来显著回升——这是一个部分的补救,而代价被量化了:在 16 交互子集上,某个模型在中等投入下每题消耗近 3,000 个推理 token

接着是重新框定这项代价的那个发现:对这些受控实例而言,那份代价是可以避免的——一套独立的有限参考语义与 Cordis 的执行在全部 528 道可执行题目的每一个观测与动作结果上完全一致。有限参考语义意味着答案是通过计算可导出的,而不是通过推理猜出的。所以这个基准既展示了一个能力缺口,表明在这一类问题上那条昂贵路线并不必要——这也把基准在测什么收得更准:不是”模型能否算出答案”,而是”在一条廉价的精确程序存在的地方,它们能否靠推理做出来”。

   基准:1,200 道题
     组合:
       一个「受控的形式化设定」  (问题无歧义)
       针对「CORDIS 执行的程序」
         一个管理组件依赖与清理的运行时
       -> 真值来自「执行」,而不是来自
          某个人写下的一份规格说明

   四种题型
     识别受影响的组件
     预测在「指定拆除顺序」之后的状态
     判断哪些条件在「所有 / 某些」顺序下成立
     选择「执行后能成功」的重配置

   评测
     三个以效率为导向的模型、低推理投入
     相关交互数扫描:2、4、8、16、24、32
     确定性、按题型定制计分

   发现
     小系统:通常没问题
     交互变多 -> 可靠性「下降」
     退化是「不均匀」的:
       预测「最终状态」时最差
       「跨拆除顺序」推理时最差
       <- 两者都需要「模拟」,而不是图遍历
     更多推理投入能为某些模型带来显著回升
       代价:中等投入下每题约 3,000 个推理 token
             (16 交互子集,某一个模型)

   而在这些实例上那份代价「本可避免」
     一套独立的「有限参考语义」与 Cordis 执行在
     「每一个」用于计分的观测与动作结果上完全一致,
     覆盖全部 528 道可执行题目
     -> 答案是「通过计算可导出」的

可以用**“让某人预测几位厨师按指定顺序作业之后厨房的最终布局”来理解这件事: 列出某位厨师碰过哪些柜子属于记账,大多数人做得到。 但要预测在某个给定的离开顺序之后厨房长什么样,就不一样了:你必须知道哪些厨师会顺手收拾、哪些会把东西留在原处**。而回答”在所有可能顺序下,灶台上都有一只脏锅吗”,还要再叠一个量词。 论文发现失效集中在第二、第三类;接着给出了更锋利的论点:因为厨房有精确规则,你完全可以直接从规则里读出状态,而不必去想象它——所以对这类问题,那份推理投入是可选的

关键概念

  • 把生命周期推理作为一种独立任务: 沿依赖清理传播,而后果在拆除时浮现。它不是普通代码生成,因为一次局部改动的影响并不局部
  • 以执行作为真值: 在真实运行时上跑程序,而不是对照一份写下的规格。它排除了因”规格漂移”而产生的那一类分歧。
  • 题型间的非均匀退化: 在所需操作是模拟(最终状态、跨顺序推理)而非遍历的地方最差。它告诉你缺的是哪种能力,而不只是”准确率下降了”。
  • 以有限参考语义作为替代方案: 一套在所有计分结果上与执行一致的精确程序。它表明这里的推理本可避免,也把基准重新框定为”在计算足够之处测量推理”。
  • 把代价当作一等测量: 中等投入下每题近 3,000 个推理 token。报出这个部分补救的价格,才让”本可避免”这一发现可操作。

框架转变

之前(没有基准;生命周期推理未被测量):
  动态脚手架让模型编辑塑造自身执行的软件
  -> 沿依赖与清理的传播未被测量
  -> 无法说清推理的哪一部分是难的

之后(1,200 道题,按复杂度扫描):
  识别受影响组件 | 预测某顺序后的状态 |
  在全部/某些顺序下的条件 | 选择可用配置
  -> 小系统没问题;交互变多则可靠性下降
  -> 在最终状态预测与跨顺序推理上最差
  -> 而一套精确的有限语义在每个计分结果上
     都与执行一致,所以那次推理本可避免

从”没有办法刻画一种新的推理负担”,转变为”知道哪几类题型会失效、并且知道它们存在一条精确程序”,核心转变在于:这个基准测的是在本不必模拟的地方,模型能否正确地模拟

专家评审

选题眼光: 极好,而且时机对。 动态脚手架正在成为扩展智能体的常规方式,因此关于传播与清理的推理即将从”异域需求”变成”日常要求”——而且这份负担是智能体自己给自己造的,这让直接测量它更有现实意义。

方法成熟度: 设计与问题匹配得很好:形式化设定保证无歧义、真实运行时保证真值可信、四种题型把遍历/模拟/量化分开、以及用复杂度扫描而非单一准确率。 有限参考语义是最高级的一环,因为构建并验证一条精确替代方案,才把实验从”测准确率”变成”关于推理必要性的判断”。

实验诚意: 我会特别指出那种诚实的范围界定。参考语义的一致性主张是针对这些受控实例的,保留条件也被写明——基准表明代价在这里本可避免,而非在一般情况下。 限制在”三个以效率为导向的模型、低推理投入”是一个刻意且已声明的选择;而”更多推理投入能部分改善”这一结果也被如实报告、未被模糊处理。局限在于真值只锚定在一个运行时上,因此跨不同脚手架实现的普适性是假定而非证明的。

写作功力: 四种题型是以任务而非指标的形式陈述的,这让失效模式可读——你能看出为什么”最终状态预测”和”跨顺序推理”更难。 由于实际上最有价值的落点是”存在一份可执行的参考”,若能补一小节讲清”什么时候读者该为自己的脚手架也造一份”,论文会从”有信息量”变成”可直接复用”。

判决: 强接收(Strong Accept) — 它定义并测量了一种智能体加诸自身的推理负担,把失效定位到”模拟”而非”遍历”,并用一条独立的精确方法证明那条昂贵路径是可选的。

要点总结

  • 诊断失效时,把遍历模拟分开。识别受影响组件与预测拆除后的状态要求不同的操作,而只有后者是难的。
  • 当答案是可计算的时候,就造一份可执行的参考。如果一条精确程序与你的运行时一致,那么模型的推理投入就是可选的,它的错误也是可以避免的。
  • 扫描复杂度,而不是只报一个准确率。“可靠性随相关交互数下降”与”整体准确率偏低”是两个不同的发现。
  • 给补救标价。报出”更多推理投入有帮助”并同时报出它每题的成本,才能让读者判断该不该买。