工具总线装配面测试:三路各穿各的缝

守开环 Agent 最容易出事的三条:
- 写类工具**过程中不落地**(只登记意向,并如实告诉 Agent 世界还没变)——
  骗它说已执行,它会据此往下推而世界一步没动
- 调人 = 发工单 + 立监听,卡号记进 trace(引擎据此挂起,不重复发第二张)
- LLM 五件经模型网关、用活动声明的用途名;提示词归系统

六例全绿;顺带钉住 Mastra 的 tool id 规矩(点号 → 双下划线)。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KeDBx2PHLavbURXB8LJJ7m
This commit is contained in:
2026-07-28 23:48:40 +08:00
co-authored by Claude Fable 5
parent f96eff906a
commit f30f24e0ba
4 changed files with 249 additions and 1 deletions
+3 -1
View File
@@ -262,11 +262,13 @@ export const routeA = createWorkflow({
outputSchema: z.object({ rounds: z.number(), finalOutcome: z.string().nullable() }),
})
.then(start)
.dowhile(roundBody, async ({ inputData, iterationCount }) => {
.dowhile(roundBody, async ({ inputData, iterationCount, requestContext, getInitData }) => {
t('dowhile.condition', 'evaluated', {
iterationCount,
reopen: inputData.reopen,
round: inputData.round,
'requestContext.tenant': requestContext?.get?.('tenant') ?? null,
'getInitData()': getInitData(),
'继续循环?': inputData.reopen === true,
});
return inputData.reopen === true;