# felhom-agent-limits.conf — start-limit + rollback-trigger drop-in for felhom-agent.service # (TASK D1). Install as /etc/systemd/system/felhom-agent.service.d/felhom-agent-limits.conf # and `systemctl daemon-reload`. # # Values are the SPIKE-agent-selfupdate-2026-07-05 tuned set, verbatim [SF-2]: with the unit's # Restart=on-failure + RestartSec=5s and systemd 257's compiled defaults (10s/5), a crash-looping # binary NEVER trips the start limit and loops forever (35 starts/180s measured). 120s/4 gives a # terminal `failed` ≈20s after the first crash. # # PLACEMENT TRAP [SF-3]: these keys MUST be in [Unit]. On systemd 257 a [Service] placement is # HALF-APPLIED — StartLimitBurst is accepted while StartLimitIntervalSec is silently ignored # (journal warning only). Never split them; never put them in [Service]. # # OnFailure fires on EVERY crash on systemd 257 [SF-1] — see the comment block in # felhom-agent-rollback.service for why that is safe (pending-marker guard). [Unit] StartLimitIntervalSec=120 StartLimitBurst=4 OnFailure=felhom-agent-rollback.service