hermes-agent/tests/cron
teknium1 ece050ac30 fix(delegation): route delegated-child API calls inline to avoid nested-pool wedge (#60203)
Root cause: delegate_task children run through three nested daemon-thread
layers (async-delegation executor -> per-child timeout executor -> the
interrupt worker interruptible_api_call spawns). After multi-day gateway
uptime the deepest layer wedges BEFORE the socket opens — the same
fingerprint as the gateway-cron hang (#62151): zero stale-detector output
(the worker never reaches dispatch), all providers, foreground/restart
works. The cron fix (should_use_direct_api_call) explicitly excluded
delegation 'for lack of evidence' — #60203 is that evidence.

- should_use_direct_api_call: extend the inline gate to delegated
  children, detected via the delegation ContextVar set by
  _run_single_child (platform='subagent' stamp as fallback). Scope
  unchanged otherwise: chat_completions wire only; Codex/Anthropic/
  Bedrock/MoA keep their established workers. Interrupts still work —
  the inline path registers _active_request_abort, which interrupt()
  invokes cross-thread (same mechanism the #72227 stall monitor uses).
- _dump_subagent_timeout_diagnostic: dump ALL thread stacks (bounded,
  40), not just the conversation worker — a pre-HTTP wedge is
  indistinguishable from a slow provider without seeing where the
  nested helper threads sit.
2026-07-26 20:37:51 -07:00
..
__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_direct_api_call_62151.py fix(delegation): route delegated-child API calls inline to avoid nested-pool wedge (#60203) 2026-07-26 20:37:51 -07:00
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_execution_ledger.py
test_file_permissions.py
test_jobs.py
test_jobs_changed_notify.py
test_jobs_crossprocess_lock.py
test_jobs_file_ownership.py
test_parallel_pool.py
test_reasoning_config_per_model.py
test_rewrite_skill_refs.py
test_run_one_job.py
test_scheduler.py
test_scheduler_mcp_init.py
test_scheduler_provider.py
test_scheduler_shutdown_guard.py
test_script_claim_heartbeat.py
test_sessiondb_init_hang.py
test_shutdown_interrupt.py
test_suggestions.py
test_terminal_cwd_lock.py
test_ticker_stall_60703.py