{"repo":"NousResearch/hermes-agent","public_id":"100971","display_label":"Kanban worker liveness and progress separation fixes","summary":"These items address a flaw where worker heartbeats refresh on any activity, preventing stale detection of looping workers that make no real progress. The work involves separating liveness signals from progress tracking and bounding worker runtime by estimates.","subsystem":"cron","counts":{"members":3,"open_issues":1,"open_issues_distinct":1,"open_prs":2,"closed_issues":0,"merged_prs":0,"attempt_prs":2},"landed_fix":null,"resolution":{"state":"unresolved","by":null},"freshness":{"state":"never_verified","last_verified_at":null,"is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.6666666666666666},"fix_edges":[],"members":[{"kind":"issue","number":100971,"title":"Kanban worker heartbeat refreshes on any activity, so a looping worker never goes stale — only max_runtime_seconds ends it","url":null,"state":"open"},{"kind":"pr","number":101014,"title":"fix(kanban): reclaim looping workers that stay live without progress","url":null,"state":"open","close_reason":{"category":"silent_close","implication":"active"},"merged":false},{"kind":"pr","number":134830,"title":"fix(kanban): separate worker liveness from progress; bound runtime by estimate","url":null,"state":"open","close_reason":{"category":"silent_close","implication":"active"},"merged":false}],"trust":{"default_tier":"verified","includes_suggested":false}}