hermes-agent/tests
alt-glitch 21c64f90aa feat(tui_gateway): emit notification.show on background-process completion (Option B)
A notify_on_complete background process (the agent's terminal tool, proc_*) only
reached the TUI as the AGENT'S NARRATION — the completion is fed to the model as a
synthetic prompt (_run_prompt_submit) and the gateway emitted only message.start +
the reply, never the completion itself. So the OpenTUI card mechanism had nothing
to render and the synthetic turn read as a context-less line.

Additive fix (glitch-approved relaxation of the no-core rule for this one emit):
new _emit_process_completion_card() fires a `notification.show` (text "<cmd> exited
<code>", level info/warn by exit code, kind process.complete, key proc:<id>) at the
two completion-delivery sites, just before the agent turn. The OpenTUI engine
renders it as a distinct inline card (P1) + an OSC ping; Ink treats it as a notice.
Completion events only (watch matches skipped); call-site dedup → one card per exit.
No existing behavior changes — the agent turn still happens.

Gateway suite green (321 passed incl. 5 new TestProcessCompletionCard cases).
2026-06-14 08:55:29 +05:30
..
acp feat(acp): emit session provenance metadata for compression rotation (#41724) 2026-06-07 22:22:21 -07:00
acp_adapter feat(azure-foundry): add Microsoft Entra ID auth 2026-05-18 10:14:38 -07:00
agent fix(tui): chrome cost from Nous portal headers only (F3) 2026-06-13 19:17:41 +05:30
cli tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
cron tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
docker tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
e2e chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
fakes
fixtures/plugins/example-dashboard/dashboard feat(dashboard): nous-blue theme, bulk sessions, schedule picker (#37383) 2026-06-02 12:37:40 -04:00
gateway tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
hermes_cli fix(tui): opentui launches when fnm default is older than 26.3; chrome bar reads the real cwd 2026-06-13 13:24:54 +05:30
hermes_state tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
honcho_plugin tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
integration refactor(gateway): migrate Home Assistant adapter to bundled plugin 2026-06-06 11:46:24 -07:00
openviking_plugin fix(openviking): add missing /agent/{agent}/ segment to memory URI — fixes #36969 2026-06-04 17:40:33 -07:00
plugins tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
providers tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
run_agent tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
scripts tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
skills fix(google-workspace): fall back to uv when venv has no pip (#39516) 2026-06-05 13:30:02 +10:00
stress chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
tools tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
tui_gateway tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
website feat(skills): fix browse cap, add source links + copy buttons + category cleanup (#37143) 2026-06-01 19:52:28 -07:00
__init__.py
conftest.py fix: batch of small robustness/correctness fixes from @kyssta-exe 2026-06-01 19:51:03 -07:00
run_interrupt_test.py
test_account_usage.py
test_atomic_replace_symlinks.py
test_base_url_hostname.py
test_batch_runner_checkpoint.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_bitwarden_secrets.py fix(bitwarden): prevent zip-slip path traversal when extracting bws binary (#40569) 2026-06-06 18:33:44 -07:00
test_cli_file_drop.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_cli_manual_compress.py fix(tests): catch up six stale tests after compression/aux/kanban changes (#28465) 2026-05-18 21:43:59 -07:00
test_cli_skin_integration.py
test_ctx_halving_fix.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_dashboard_sidecar_close_on_disconnect.py tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
test_desktop_mac_entitlements.py test(desktop): assert macOS device entitlements are inherited 2026-06-03 07:32:00 +07:00
test_docker_home_override_scripts.py tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
test_docker_stage2_browser_discovery.py fix(docker): discover Playwright headless_shell browser (#35717) 2026-06-01 16:06:44 +10:00
test_dockerfile_tini_compat_shim.py fix(docker): add /usr/bin/tini compatibility shim for legacy wrappers (#34192) (#34382) 2026-06-01 13:32:55 +10:00
test_empty_model_fallback.py test(models): guard Nous silent default against expensive-flagship escalation 2026-06-05 02:54:34 -07:00
test_empty_session_hygiene.py tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
test_env_loader_secret_sources.py fix(secrets): only apply external secrets once per HERMES_HOME per process (#32271) 2026-05-25 15:18:55 -07:00
test_evidence_store.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_gateway_streaming_nested_config.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_get_tool_definitions_cache_isolation.py tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
test_hermes_bootstrap.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_hermes_constants.py fix(constants): use windows native default hermes home 2026-06-03 19:37:29 -07:00
test_hermes_home_profile_warning.py
test_hermes_logging.py fix(gateway): tolerate Unicode in stderr log handlers on Windows 2026-06-06 19:57:44 -07:00
test_hermes_state.py gateway: compact /usage with current-session per-model costs 2026-06-11 00:15:00 +05:30
test_hermes_state_compression_locks.py fix(compression): prevent session-id fork from concurrent compressions (#34351) 2026-05-28 21:40:39 -07:00
test_hermes_state_wal_fallback.py fix(kanban): skip redundant WAL pragma on already-WAL connections 2026-05-27 14:31:55 -07:00
test_honcho_client_concurrency.py tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
test_honcho_client_config.py fix(honcho): harden self-hosted setup paths 2026-05-29 22:29:48 -07:00
test_honcho_session_context.py fix(honcho): align user context peer perspective 2026-05-27 10:49:33 -07:00
test_honcho_startup_fail_open.py fix: make Honcho startup fail open 2026-06-01 20:13:42 -07:00
test_install_no_initial_commit.py tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
test_install_sh_browser_install.py
test_install_sh_pythonpath_sanitization.py
test_install_sh_root_fhs_uv_python_path.py test(install): harden uv-python-path regression test against future drift 2026-05-27 13:55:51 -07:00
test_install_sh_setup_wizard_tty_probe.py
test_install_sh_symlink_stomp.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_install_sh_termux_network_prereqs.py
test_ipv4_preference.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_lazy_session_regressions.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_lint_config.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_live_system_guard_self_test.py chore: ruff auto-fix PLR6201 resweep — tuple → set in membership tests (#27355) 2026-05-17 02:29:41 -07:00
test_mcp_serve.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_mini_swe_runner.py
test_minimax_model_validation.py
test_minimax_oauth.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_minisweagent_path.py
test_model_forces_max_completion_tokens.py tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
test_model_picker_scroll.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_model_tools.py feat(middleware): add adaptive execution intercepts 2026-06-03 11:22:06 -07:00
test_model_tools_async_bridge.py fix(web): run URL SSRF checks off the event loop in async paths 2026-06-04 18:04:47 -07:00
test_ollama_num_ctx.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_output_cap_parsing.py tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
test_package_json_lazy_deps.py fix(update): make Camofox lazy-installed instead of eager (#27055) 2026-05-16 12:15:45 -07:00
test_packaging_metadata.py tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
test_plugin_skills.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_plugin_utils.py tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
test_process_loop_event_loop_warning.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_project_metadata.py tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
test_retry_utils.py
test_run_tests_parallel.py tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
test_sanitize_tool_error.py security: sanitize tool error strings before injecting into model context (#26823) 2026-05-16 00:57:39 -07:00
test_slash_worker_watchdog.py tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
test_sql_injection.py
test_state_db_malformed_repair.py tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
test_subprocess_home_isolation.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_termux_all_extra_compat.py
test_timezone.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_toolset_distributions.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_toolsets.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_trajectory_compressor.py fix(research): keep tool_call/tool_response pairs intact when compressing trajectories 2026-06-07 05:01:27 -07:00
test_trajectory_compressor_async.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_transform_llm_output_hook.py
test_transform_tool_result_hook.py test: stub has_hook in transform_tool_result hook tests 2026-06-03 06:36:46 -07:00
test_tui_gateway_server.py feat(tui_gateway): emit notification.show on background-process completion (Option B) 2026-06-14 08:55:29 +05:30
test_tui_gateway_ws.py tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
test_utils_truthy_values.py
test_web_server.py tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
test_wheel_locales_e2e.py fix(packaging): ship locales/ i18n catalogs in wheel, sdist, and Nix (#38383) 2026-06-03 12:00:27 -07:00
test_yuanbao_integration.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_yuanbao_markdown.py
test_yuanbao_pipeline.py tests: pin ink engine in _make_tui_argv npm-bootstrap tests (post-merge semantic fix) 2026-06-12 10:32:40 +05:30
test_yuanbao_proto.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_yuanbao_shutdown.py fix(yuanbao): bound ws.close() so an idle server can't stall shutdown ~5s (#40607) 2026-06-07 17:49:38 -07:00