Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Agent does not see tool errors in its history, so it repeats the same failing call

Đang mở Phù hợp với người mới
#9,119 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
2/5
Thời gian dự kiến
1-3 giờ
Mức phù hợp với người mới
82/100
Loại issue
Lỗi
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
typescript
Lĩnh vực
ai, backend

Hướng nghiên cứu

Bắt đầu tại agent-service/src/agent/util/context-utils.ts, ở serializeTask (dòng 119–133), rồi đọc prompts.ts để xem định dạng lịch sử mong đợi. Cập nhật lịch sử gọi công cụ đã được tuần tự hóa để bao gồm phần tóm tắt và đầu ra, hoặc thông báo lỗi nếu thất bại. Hoàn tất khi các lần gọi trước hiển thị những chi tiết đó trong ngữ cảnh đầu vào của agent và quá trình tái hiện không còn lặp lại một lần gọi thất bại mà không thấy lỗi của nó.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

What happened?

The agent does not see the result of its earlier tool calls. When a call fails, the agent does not know why, so it makes the same call again and again.

In agent-service/src/agent/util/context-utils.ts, serializeTask writes each past tool call as one line:

lines.push(`- ${tc.toolName} (${statusAttr})`);

It only writes the tool name. The system prompt (prompts.ts) says each call should also have Summary, Output, or Error lines, but these lines are never added.

Example on main with claude-haiku-4.5. Prompt: "Add a Limit operator that keeps 10 rows, and connect its input to the existing operator op7." (there is no op7). Every call returned [ERROR] Source operator "op7" not found. The agent made the same modifyOperator call 5 times until it hit the step limit. At turn 3, the agent got this context:

### Turn 1
Thought: I'll add a Limit operator that keeps 10 rows and connect it to op7.
- addOperator (succeeded)

### Turn 2
Thought: I can see that you've already successfully added the Limit operator `op8` ...
- modifyOperator (succeeded)

The error message is not there.

Expected: each tool call in the history should include its summary and output, or the error message if it failed.

Screenshots

Step 1, tool call: addOperator returned [ERROR] Source operator "op7" not found.

A-step1-toolcall.png

Step 3, what the agent was given: Turn 1 and Turn 2 only say (succeeded). There is no error text.

A-step3-context.png

The chat: the agent says "Let me connect it to op7" again and again, until the step limit (5).

A-workspace.png

How to reproduce?
  1. Open an empty workflow and create an agent.
  2. Send: Add a Limit operator that keeps 10 rows, and connect its input to the existing operator op7.
  3. Click "View details" on a later step and look at Input Messages. Past calls show only - <tool> (succeeded), with no error text. The agent keeps repeating the call.
Version/Branch

1.4.0-incubating-SNAPSHOT (main)

Commit Hash (Optional)

57faa6b

What browsers are you seeing the problem on?

Chrome

Relevant log output
agent-service/src/agent/util/context-utils.ts:119-133  serializeTask
Ngôn ngữ chính
Scala
Star
325
Fork
196
Merge trung bình
3 ngày 11 giờ
Pull request đã merge (30 ngày)
131

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của apache/texera

Tất cả issue của apache/texera

Issue tương tự

Thêm issue về Scala

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.