mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-07-09 13:21:42 +00:00
The TestRunJobSessionPersistence run_job tests shared a helper that returned a positional list of patches; callers applied a hardcoded slice (patches[0..N]). When the BSM-seam fix split one env patch into two, the list grew and every caller's slice silently dropped resolve_runtime_provider off the end. The tests still passed locally — a dev machine has ambient provider state (seeded via the cron delivery-routing path's plugin discovery) that let the real resolver succeed — but failed on CI's clean HOME where nothing seeds a provider, so run_job raised AuthError and AIAgent was never constructed. Fix: _run_job_patches is now a contextmanager that enters the whole patch bundle via ExitStack and yields (fake_db, mock_agent_cls). A caller can no longer drop a patch by index, so a future seam change can't reintroduce the local-green/CI-red split. Behaviour and assertions unchanged; 577 cron tests pass. |
||
|---|---|---|
| .. | ||
| __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 | ||