Skip to content

[BUG] TaskTool 的 tracing 开关不应改变子 Agent 配置与线程归属 #227

Open

Description

@Aias00

已复现问题

TaskTool 只在 tracing=true 时读取 parentConfig,并仅在该分支复制配置、派生 child threadId、调用 subAgent.call(prompt, childConfig)。关闭 tracing 时调用 subAgent.call(prompt)。因此观测开关改变执行上下文和状态命名空间。

当前版本对实际编译类验证结果:关闭时 call 参数数为 1;开启时为 2,子线程为 parent-thread_child。此验证确认调用与配置差异,不代表已证明所有预算/身份场景的具体后果。

证据:https://github.com/agentic-ai-java/argi/blob/76d44429fdaa6a69320e21a1cb77119d0889d792/argi-agent-framework/src/main/java/io/github/agentic/ai/graph/agent/tools/task/TaskTool.java#L126;同文件 invokeSubAgent 第 174 行起。

交付与验收

  • 将委派上下文的提取与派生独立于 tracing;启用、禁用、无观测 handler 时执行语义一致。
  • 明确子调用应继承、收窄或清除的身份、预算、deadline、取消和线程/checkpoint 信息,不能简单无差别复制父配置。
  • 父子运行身份和状态归属由执行策略确定,tracing 仅观察;跨相同子 Agent 的多次/并发委派验证预期隔离规则。
  • 同步与后台委派都验证配置、输出、异常和状态归属在 tracing 开关前后一致。
  • 不通过关闭 tracing 或丢弃可信约束规避问题;迁移到独立执行器时复用相同语义。

基线、关系与变更约束

已验证 Core 76d44429fdaa6a69320e21a1cb77119d0889d792 / Extensions 495414b76a37aca4d7c1022d973a8e5b9a7e92e6。关联:#128、#200、#203;#131 已交付追踪能力,本单修复其执行语义耦合。

局部修复不等待全局 Agent/Workflow/Loop 重构。优先复用现有中立契约;若改公共 API、配置或持久数据,说明替代方案、消费者影响、目标版本与迁移/回滚步骤。不得以跳过检查、删除测试或向 Core 重新引入供应商 SDK 解决问题。

Activity

  1. hengyuss commented on Nov 4, 2026

    @hengyuss
    Contributor

    i want to try this

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions