• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

lsm / neokai / 27853891521 / 3
82%
dev: 82%

Build:
DEFAULT BRANCH: dev
Ran 20 Jun 2026 12:04AM UTC
Files 73
Run time 3s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

20 Jun 2026 12:00AM UTC coverage: 37.845%. Remained the same
27853891521.3

push

github

web-flow
feat(forge): break repeated tool-use errors with conversation_friction evidence (#2137)

* feat(forge): break repeated tool-use errors with conversation_friction evidence

Adds RepeatedToolErrorGuardrail to SDKMessageHandler. After 2 consecutive
identical tool-use errors (same tool name + normalized error substring)
within a session, the guardrail emits a synthetic assistant recovery
message prompting re-validation / alternative path / operator escalation,
and logs a conversation_friction evidence row on the owning task's
evolution scope with metadata {tool, error, count}.

The guardrail records tool_use ids -> names from assistant messages and
observes user-message tool_result blocks for is_error=true, resetting
the streak on any successful result or differing error.

* fix: scope repeated tool error guardrail to Forge tasks and cap state growth

- Only observe errors and intervene when the session is attached to a Forge task with an evolution scope.

- Cap tool_use_id -> tool_name lookup map to avoid unbounded growth.

- Add a per-(tool,error) cooldown after intervention to prevent evidence/message spam.

- Fix the 'error message changes' unit test and add coverage for no-task/no-scope/map-cap cases.

* fix: route recovery through message queue and resolve task from session context

- Rename recovery callback to routeRecoveryMessage and enqueue the recovery text via MessageQueue so the running SDK turn receives it.

- Resolve Forge tasks from session.context.taskId as a fallback to getTaskBySessionId for node-agent worker sessions.

- Deduplicate identical (tool, error) blocks within a single user message so parallel batched failures do not count as retries.

- Add unit tests for batched-error deduplication and cooldown behavior.

* fix: reset stale error streaks on non-error user messages and clean merge artifacts

- observeToolResultErrors now resets the streak for plain-text user messages and any message without error tool_result blocks, so a sin... (continued)

6814 of 18005 relevant lines covered (37.85%)

20.58 hits per line

Source Files on job daemon-4-space-migrations-a - 27853891521.3
  • Tree
  • List 73
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 27853891521
  • c7eb339b on github
  • Prev Job for on dev (#27851418725.6)
  • Next Job for on dev (#27854099564.21)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc