{"repo":"NousResearch/hermes-agent","public_id":"141893","display_label":"Bounding gateway background delivery retry loops with backoff and limits","summary":"Three members concern background or async deliveries in the gateway that appear to be retried repeatedly without backoff or attempt accounting. Two are fix proposals: one makes refused deliveries settle across several delivery types, and the other adds backoff and a replay-age drop. The third describes the 2-second indefinite retry behavior in the async delegation watcher.","subsystem":"gateway","counts":{"members":3,"open_issues":1,"open_issues_distinct":1,"open_prs":1,"closed_issues":0,"merged_prs":1,"attempt_prs":1},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":141926,"merged_at":"2026-10-20T10:19:02+00:00"},"resolution":{"state":"unresolved","by":null},"freshness":{"state":"verified","last_verified_at":"2026-10-20T10:19:02+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.6666666666666666},"fix_edges":[{"issue_number":139303,"pr_number":141926,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-10-20T10:19:02+00:00"},{"issue_number":140899,"pr_number":141926,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-10-20T10:19:02+00:00"},{"issue_number":141087,"pr_number":141926,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-10-20T10:19:02+00:00"},{"issue_number":141153,"pr_number":141926,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-10-20T10:19:02+00:00"},{"issue_number":141243,"pr_number":141926,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-10-20T10:19:02+00:00"},{"issue_number":141348,"pr_number":141926,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-10-20T10:19:02+00:00"},{"issue_number":141562,"pr_number":141926,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-10-20T10:19:02+00:00"}],"members":[{"kind":"issue","number":141893,"title":"Async delegation watcher retries stranded pending deliveries every 2s forever (no backoff, no attempt accounting)","url":null,"state":"open"},{"kind":"pr","number":141926,"title":"fix: background deliveries the unified gateway refuses settle instead of looping (watch, async, cron, Bot Chat, DM)","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["apps/desktop/src/components/assistant-ui/thread/assistant-message.tsx","apps/desktop/src/i18n/ar_assistant.ts","apps/desktop/src/i18n/de.ts","apps/desktop/src/i18n/de_notices.ts","apps/desktop/src/i18n/en.ts","apps/desktop/src/i18n/en_error_layers.ts","apps/desktop/src/i18n/es.ts","apps/desktop/src/i18n/es_notices.ts","apps/desktop/src/i18n/fr.ts","apps/desktop/src/i18n/fr_notices.ts","apps/desktop/src/i18n/ja.ts","apps/desktop/src/i18n/ja_notices.ts","apps/desktop/src/i18n/ru.ts","apps/desktop/src/i18n/ru_notices.ts","apps/desktop/src/i18n/zh-hant_assistant.ts","apps/desktop/src/i18n/zh.ts","apps/desktop/src/i18n/zh_notices.ts","apps/desktop/src/lib/error-surface.test.ts","apps/desktop/src/lib/error-surface.ts","contributors/emails/[redacted:email]","gateway/run_notifications.py","gateway/run_notifications_ownership.py","gateway/session_automation.py","gateway/session_bot.py","gateway/session_cron.py","gateway/session_results.py","gateway/session_settlement_recovery.py","gateway/wake.py","locales/_keys.desktop.json","locales/af.yaml","locales/ar.yaml","locales/de.yaml","locales/en.yaml","locales/es.yaml","locales/fr.yaml","locales/ga.yaml","locales/hu.yaml","locales/it.yaml","locales/ja.yaml","locales/ko.yaml","locales/pt.yaml","locales/ru.yaml","locales/tr.yaml","locales/uk.yaml","locales/zh-hant.yaml","locales/zh.yaml","tests/gateway/test_bot_chat_unadoptable_local_title.py","tests/gateway/test_completion_delivery.py","tests/gateway/test_cron_admission_error_surface.py","tests/gateway/test_watch_notification_reset_pin.py","tests/module_clock.py","tests/tools/test_bot_live_owner_delivery.py","tools/bot_live_delivery.py","tools/bot_mode_dm.py"]},{"kind":"pr","number":141959,"title":"fix(gateway): bound the async-completion delivery loop with backoff and a replay-age drop","url":null,"state":"open","close_reason":{"refs":[{"kind":"pr","value":"#141926","number":141926},{"kind":"pr","value":"#141893","number":141893}],"category":"implemented_elsewhere","implication":"superseded"},"merged":false}],"trust":{"default_tier":"verified","includes_suggested":false}}