agent.service tick exited status=28 during recovery sweep #394
Labels
No labels
Agent
Compat/Breaking
Kind/Bug
Kind/Documentation
Kind/Enhancement
Kind/Feature
Kind/Security
Kind/Testing
Priority
Critical
Priority
High
Priority
Low
Priority
Medium
Reviewed
Confirmed
Reviewed
Duplicate
Reviewed
Invalid
Reviewed
Won't Fix
Status
Abandoned
Status
Blocked
Status
Need More Info
No milestone
No assignees
1 participant
Notifications
Total time spent: 33 seconds
Due date
igor
33 seconds
No due date set.
Dependencies
No dependencies set
Reference
joshtronic/igor#394
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The 23:46 tick died mid-
recovery sweepwith a nonzero systemd exit (status=28) and no benign log line explaining it. The tick emittedrecovery sweep (igor)and then produced no further output for ~36s before the main process exited abnormally; systemd recordedFailed with result 'exit-code'. Exit 28 has no self-explanation here (commonly ENOSPC/No space left on deviceor a curl operation timeout), so the root cause is unclear. The next tick (23:48) recovered, so this is a single-window crash rather than a stuck loop, but an unexplained nonzero exit of the harness itself is worth a ticket.Fixed = the recovery sweep either completes or fails with a logged, human-readable reason; the harness should trap the failing sub-step (likely a
curl/disk op) and exit 0 for the tick or emit an explicit[agent] recovery: <error>line, so an unattributedstatus=28never reaches systemd.service: agent.service
severity: medium
window: 2026-07-15 23:00-00:00 (filed by the hourly logwatch pass)
Duplicate of #395 — same 23:47
status=28incident. Root-caused there: a brief git.sherver.org blip hung an_fjForgejo API curl ~30s (--max-time 30, no--connect-timeout) → curl exit 28 → errexit abort → thecleanup()trap fired a falsetask failpage; the next tick self-recovered.Fixed in #396 (fail-fast
--connect-timeout 5+--max-time30→15). Your suggested fix here — trap the failing sub-step, emit an explicit[agent] recovery: <error>line, and let the tick exit 0 — is captured as the noted follow-up in #395 (make the idempotent recovery-sweep calls best-effort). Independent confirmation of the same diagnosis, which is reassuring.Closing as a duplicate; track the fix on #396.