feat(agentcli): 运行结果 incomplete 语义与契约文档

RunResult 增加 Outcome/Reason;触顶标记 incomplete:max_steps;
WebSocket finish 区分 incomplete 与 fatal error。补充 ai-agent docs 13 与挂点索引。
This commit is contained in:
Logan.Li committed 2026-10-19 03:53:09 +08:00
1 parent f3a4fb569f
commit 1c98c25c74
9 files changed
+249 -6

No files matched your search

+7
View File
@@ -432,6 +432,13 @@ func (ac *agentConn) runTask(sess *model.AIRun, query, safetyMode string, llmCfg
dur := time.Since(start)
if ctx.Err() != nil {
ac.finish(sess, "aborted", "任务已中断", ac.lastRound(), dur)
} else if result != nil && result.Outcome == "incomplete" {
// 契约 13:步数/预算触顶为 incomplete,可续跑,不与 fatal error 混用 // Logan.Li
msg := result.Output
if msg == "" && err != nil {
msg = err.Error()
}
ac.finish(sess, "incomplete", msg, ac.lastRound(), dur)
} else if err != nil {
ac.finish(sess, "error", err.Error(), ac.lastRound(), dur)
} else {