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

lsm / neokai / 28218871896 / 24
82%
dev: 82%

Build:
DEFAULT BRANCH: dev
Ran 26 Jun 2026 05:24AM UTC
Files 248
Run time 9s
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

26 Jun 2026 05:20AM UTC coverage: 74.627%. Remained the same
28218871896.24

push

github

web-flow
feat(space-runtime): auto-continue on terminal error results (#2180)

* feat(space-runtime): auto-continue on terminal error results (#673)

A node-agent session that ends on a terminal error result (e.g. Codex 400,
error_during_execution) left the node silently idle with a *live* session and
no recovery firing — every result message was classified terminal, so the
alive-stuck, non-terminal-idle, crash-retry, and blocked-run sweeps all bailed.
The worker was revivable only by a manual 'continue'.

Add handleTerminalErrorIdleExecutions, a catch-all sweep in processRunTick
(right after handleNonTerminalIdleExecutions) that injects a bounded number of
'continue' messages via the same primitive a manual continue uses
(tam.injectRuntimeRecoveryMessage), then escalates to 'blocked' so
attemptBlockedRunRecovery takes over with its own MAX_BLOCKED_RUN_RETRIES cap.

Guards (task #673):
- Only retryable subtypes: error_during_execution, error_max_turns.
  Cost (error_max_budget_usd) and structured-output exhaustion are skipped.
- Prompt-too-long results skipped (deferred to #670 compaction), detected via
  terminal_reason='prompt_too_long' or errors[] signature.
- Only when task is in_progress with no reportedStatus and session alive.
- Per-execution cap MAX_TERMINAL_ERROR_CONTINUE_RETRIES=2, then blocked.
- Deterministic repeats (identical error signature) escalate immediately.
- Grace cooldown between attempts (mirrors alive-stuck nag grace); applied on
  failure too so a transiently-failing injection cannot tight-loop.
- Re-spawn (new session id after blocked recovery) resets the budget; total
  stays bounded by MAX_BLOCKED_RUN_RETRIES.

Escalation mirrors handleAliveStuckExecutions' blocked path: execution/run/task
-> blocked with blockReason 'execution_failed' + task_blocked/workflow_run_blocked
notifications, deduplicated via notifiedTaskSet.

* fix(space-runtime): harden terminal-error recovery per review (#673)

Address codex review findings on PR #2180... (continued)

11423 of 16451 branches covered (69.44%)

Branch coverage included in aggregate %.

14257 of 17960 relevant lines covered (79.38%)

54.64 hits per line

Source Files on job web - 28218871896.24
  • Tree
  • List 248
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Build 28218871896
  • 9987c099 on github
  • Prev Job for on dev (#28218727048.6)
  • Next Job for on dev (#28238590024.10)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc