Skip to content

fix(kanban): fingerprint crash errors to prevent fleet-wide retry exhaustion (#24023) - #28380

Merged
teknium1 merged 1 commit into
mainfrom
hermes/hermes-de55f5dd
May 19, 2026
Merged

fix(kanban): fingerprint crash errors to prevent fleet-wide retry exhaustion (#24023)#28380
teknium1 merged 1 commit into
mainfrom
hermes/hermes-de55f5dd

Conversation

@teknium1

Copy link
Copy Markdown
Contributor

Salvages #24023 by @bradhallett.

Small crash-fingerprint grouping fix (96 LOC) — no fingerprint logic visible in main kanban_db.

Cherry-picked onto current main with original authorship preserved via rebase merge.

…austion

When a systemic failure (provider outage, auth expiry, OOM) crashes
multiple workers simultaneously, detect_crashed_workers increments
each task failure counter independently. The circuit breaker only
trips after N × failure_limit retries across the fleet.

Fingerprint crash errors by normalizing host-specific details (PIDs,
timestamps). When 3+ tasks crash with the same fingerprint in a
single detection cycle, immediately trip the circuit breaker
(failure_limit=1) instead of waiting for repeated failures.

Isolated crashes (unique fingerprints) retain their normal retry
budget. Protocol violations continue to trip immediately.

Includes regression tests for systemic and isolated crash paths.
@teknium1
teknium1 merged commit de9bcfc into main May 19, 2026
@teknium1
teknium1 deleted the hermes/hermes-de55f5dd branch May 19, 2026 03:16
@github-actions

Copy link
Copy Markdown
Contributor

🔎 Lint report: hermes/hermes-de55f5dd vs origin/main

ruff

Total: 0 on HEAD, 0 on base (➖ 0)

🆕 New issues: none

✅ Fixed issues: none

Unchanged: 0 pre-existing issues carried over.

ty (type checker)

Total: 8807 on HEAD, 8803 on base (🆕 +4)

🆕 New issues: none

✅ Fixed issues: none

Unchanged: 4630 pre-existing issues carried over.

Diagnostics are surfaced as warnings — this check never fails the build.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants