[bug] agent loop 三类失败回路:UNKNOWN_TOOL 无恢复信息、数值微调逃逸重复检测、exec 反馈隐藏工具失败
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 20/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Estancado
- Stack tecnológico
- typescript
- Área
- ai-infra-agents
Línea de trabajo
Start by reviewing PR #111 and the Code Mode exec/wait and repeated-call detection paths described in the issue. Run the core test suite, then verify that unknown tools expose recovery guidance, large numeric changes do not evade repetition detection, and nested exec failures are visible to the model; done means the reported feedback loops are covered and the 314 core tests remain green.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
问题
对 step-3.7-flash 做了 5 类任务的基线实测(392 次请求 / 约 1590 万 prompt tokens,经本地记录代理逐请求落盘),发现 agent 纠错回路存在三类失败模式。失败全部集中在多步工具编排场景,单步任务正常。三类问题彼此放大,最终表现为失控循环:一次运行 600 秒 / 305 请求 / 约 1480 万 prompt tokens 才被外部杀掉。
FM1:UNKNOWN_TOOL 报错没有给模型任何恢复信息
Code Mode 下顶层只有 exec + wait,但模型(Claude Code 风格先验)会调用顶层 read_file 等幻觉工具名。原报错只有 Tool 'read_file' is not registered,模型收不到任何"该用什么"的信息,实测最多 13+ 轮无效重试。
FM2:数值微调逃逸 REPEATED_TOOL_CALL 检测
命令失败后模型误诊为超时问题,指数级抬高 timeout_ms(实测序列 2e10 → 2.4e37 → 3.6e76)。指纹含完整参数原文,每次只改一个数字就生成新指纹,重复调用检测永远不触发——这是失控循环的直接机制。
FM3:exec 沙盒反馈隐藏工具失败
脚本内嵌套工具失败时整体仍返回 ok: true + Script completed,失败原因(exit code/stderr,已记录在 nested call summary 里)没有渲染进模型可见输出;无返回值时的 Diagnostic 文案也无法与"工具失败/超时"区分。模型因此把 FM2 的命令失败误诊为超时。
修复
PR #111 修复了三个反馈缺口:报错附真实工具清单与 Code Mode 路由指引(含 Levenshtein 最近匹配)、指纹把 |数值| > 1e9 的参数折叠为占位符、✗ 行带失败原因 + summary 失败计数 + Diagnostic 明确排除超时方向。core 314 测试全绿;端到端对比:定位检索任务 90s 超时 → 47s 完成零无效重试;精确编辑任务 30 次调用熔断 → 9 次收敛。
诚实的边界:修复让"踩雷后"恢复变快,不阻止首次幻觉调用(模型指令遵循的固有限制,prompt 侧另行缓解)。
- Lenguaje dominante
- TypeScript
- Estrellas
- 54
- Forks
- 20
- Merge medio
- 21 h 12 min
- PR fusionados (30 d)
- 18
Preparar el entorno
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de stepfun-ai/Step-Code
-
area/build bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
stepfun-ai/Step-Code#190 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
area/tools bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
stepfun-ai/Step-Code#186 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
area/tools bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
stepfun-ai/Step-Code#185 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
area/tools bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
stepfun-ai/Step-Code#184 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
stepfun-ai/Step-Code#179 · 1 comentario ·
Los mantenedores suelen responder en 1 día
Todos los issues de stepfun-ai/Step-Code
Issues similares
-
Dificultad 1/5 1-3 horas Aptitud para principiantes 88/100
supabase/agent-skills#611 ·
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 68/100
polka-codes/test#345 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 1-3 horas Aptitud para principiantes 92/100
GoogleChromeLabs/project-sesame#217 ·
Los mantenedores suelen responder en 12 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
solana-foundation/solana-com#2202 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100