mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-07-13 14:02:16 +00:00
The standalone thread-pool fallback in _deliver_result() runs inside the `except RuntimeError:` block (taken when asyncio.run() sees a running loop). When future.result() raised there (SMTP ConnectionError, timeout, etc.), the exception was NOT caught by the sibling `except Exception:` — it escaped _deliver_result() and crashed the whole delivery loop, silently skipping every remaining target. Multi-target delivery (e.g. deliver: 'email:a,email:b') is a documented feature, so this broke a promised contract. Wrap the fallback in its own try/except so a per-target failure is logged with exc_info and the loop continues to the next target. Fixes #47163 |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| conftest.py | ||
| test_blueprint_catalog.py | ||
| test_claim_job_for_fire.py | ||
| test_codex_execution_paths.py | ||
| test_compute_next_run_last_run_at.py | ||
| test_cron_context_from.py | ||
| test_cron_inactivity_timeout.py | ||
| test_cron_no_agent.py | ||
| test_cron_profile_isolation.py | ||
| test_cron_prompt_injection_skill.py | ||
| test_cron_provider_pin.py | ||
| test_cron_script.py | ||
| test_cron_workdir.py | ||
| test_cronjob_schema.py | ||
| test_file_permissions.py | ||
| test_jobs.py | ||
| test_jobs_changed_notify.py | ||
| test_jobs_crossprocess_lock.py | ||
| test_parallel_pool.py | ||
| test_rewrite_skill_refs.py | ||
| test_run_one_job.py | ||
| test_scheduler.py | ||
| test_scheduler_mcp_init.py | ||
| test_scheduler_provider.py | ||
| test_suggestions.py | ||
| test_terminal_cwd_lock.py | ||