hermes-agent/tests/gateway
aeyeopsdev a7ec1b6e39 fix(google-chat): cache callback token cert fetches 2026-07-16 07:31:05 -07:00
..
platforms
…
relay fix(relay): normalize a 0/negative max_message_length at the descriptor boundary 2026-07-16 07:21:23 -07:00
__init__.py
…
_plugin_adapter_loader.py
…
conftest.py
…
feishu_helpers.py
…
restart_test_helpers.py fix(gateway): quiesce API and cron work during drains 2026-07-13 23:26:10 +05:30
test_7100_transient_failure_transcript.py
…
test_10710_auto_reset_evicts_cached_agent.py
…
test_13121_shutdown_inflight_transcript_flush.py
…
test_35809_auto_reset_clean_context.py test: alternate roles in the #35809 bloat fixture 2026-07-16 04:43:45 -07:00
test_35994_reset_button_deadlock.py
…
test_42039_duplicate_user_message.py
…
test_48031_model_switch_after_auto_reset.py
…
test_53175_cleanup_off_loop.py
…
test_64674_multiplex_primary_token_scope.py fix(gateway): resolve multiplex primary bot tokens without empty reconnect loops 2026-07-16 04:26:06 -07:00
test_active_session_text_merge.py
…
test_adapter_connect_is_reconnect_contract.py
…
test_agent_cache.py
…
test_aiohttp_body_caps.py
…
test_allowed_channels_widening.py
…
test_allowlist_startup_check.py
…
test_api_server.py feat(gateway): route platform HTTP event callbacks 2026-07-16 07:31:05 -07:00
test_api_server_active_work_drain.py fix(gateway): quiesce API and cron work during drains 2026-07-13 23:26:10 +05:30
test_api_server_bind_guard.py fix(api_server): mark port conflict as non-retryable to stop infinite reconnect loop (#65665) 2026-07-16 06:29:09 -07:00
test_api_server_jobs.py fix(gateway): quiesce API and cron work during drains 2026-07-13 23:26:10 +05:30
test_api_server_media_data_urls.py
…
test_api_server_multimodal.py
…
test_api_server_multiplex_secret_scope.py fix(gateway): scope default-listener api_server requests under multiplex 2026-07-16 07:17:55 -07:00
test_api_server_normalize.py
…
test_api_server_runs.py
…
test_api_server_toolset.py
…
test_approval_prompt_redaction.py
…
test_approve_deny_commands.py test(gateway): cover ws_orphan_reap session recovery (#63207) 2026-07-14 16:58:47 +05:30
test_async_delegation_session_binding.py
…
test_async_delivery_capability.py
…
test_async_session_db.py
…
test_async_session_store.py
…
test_auth_fallback.py
…
test_auto_continue.py
…
test_auto_voice_reply_format.py
…
test_background_command.py
…
test_background_process_notifications.py
…
test_base_topic_sessions.py fix(slack): complete agent view workspace routing 2026-07-14 13:58:36 -07:00
test_bluebubbles.py
…
test_bounded_adapter_teardown.py
…
test_bundles_command.py
…
test_busy_session_ack.py
…
test_busy_session_auth_bypass.py
…
test_cached_agent_max_iterations.py
…
test_cancel_background_drain.py
…
test_cgroup_cleanup.py
…
test_channel_directory.py
…
test_channel_directory_connected_only.py
…
test_channel_overrides.py
…
test_clarify_active_session_bypass.py fix(gateway): resume typing after clarify reply 2026-07-14 21:31:32 -07:00
test_clean_shutdown_marker.py
…
test_command_bypass_active_session.py
…
test_complete_path_at_filter.py
…
test_completion_delivery.py fix(delegation): harden durable completion delivery 2026-07-13 07:28:21 -07:00
test_compress_command.py
…
test_compress_focus.py
…
test_compress_plugin_engine.py
…
test_compress_preview.py
…
test_compression_concurrent_sessions.py
…
test_compression_failure_session_sync.py
…
test_compression_in_flight_check.py fix(gateway): fail closed on compression state probe errors 2026-07-14 16:56:34 +05:30
test_compression_interrupt_demotion_56391.py fix(gateway): fail closed on compression state probe errors 2026-07-14 16:56:34 +05:30
test_compression_session_id_persistence.py
…
test_config.py fix(config): honor gateway.multiplex_profiles nested form 2026-07-15 09:50:05 -07:00
test_config_cwd_bridge.py
…
test_config_driven_access_policy.py
…
test_config_env_bridge_authority.py
…
test_context_ref_expansion_runtime.py
…
test_cron_active_work_drain.py
…
test_cron_fire_webhook.py fix(api): reserve cron fire work during drain 2026-07-13 23:26:10 +05:30
test_cron_shutdown_drain.py
…
test_cwd_placeholder.py
…
test_dead_targets.py
…
test_debug_command.py
…
test_dedupe_user_turns.py
…
test_delivery.py
…
test_delivery_silence_filter.py
…
test_destructive_slash_confirm.py
…
test_dingtalk.py
…
test_discord_allowed_channels.py
…
test_discord_allowed_mentions.py
…
test_discord_approval_mentions.py
…
test_discord_attachment_download.py
…
test_discord_bot_auth_bypass.py
…
test_discord_bot_filter.py
…
test_discord_channel_controls.py
…
test_discord_channel_prompts.py
…
test_discord_channel_skills.py
…
test_discord_clarify_buttons.py
…
test_discord_component_auth.py
…
test_discord_connect.py
…
test_discord_document_handling.py
…
test_discord_double_dispatch.py
…
test_discord_edit_message_overflow.py
…
test_discord_exec_approval_content.py
…
test_discord_fail_closed_feedback.py
…
test_discord_format.py
…
test_discord_free_response.py
…
test_discord_imports.py
…
test_discord_lazy_install_views.py
…
test_discord_liveness.py
…
test_discord_media_metadata.py
…
test_discord_model_picker.py
…
test_discord_opus.py
…
test_discord_pending_text_batch_shutdown.py
…
test_discord_prompt_content_siblings.py
…
test_discord_prompt_timeout_config.py
…
test_discord_race_polish.py
…
test_discord_reactions.py
…
test_discord_reply_mode.py
…
test_discord_roles_dm_scope.py
…
test_discord_send.py
…
test_discord_slash_auth.py
…
test_discord_slash_commands.py
…
test_discord_sync_limit.py
…
test_discord_system_messages.py
…
test_discord_thread_persistence.py
…
test_discord_thread_slash_expired_defer.py
…
test_discord_voice_mixer.py
…
test_display_config.py
…
test_dm_topics.py
…
test_document_cache.py
…
test_document_context_note.py
…
test_duplicate_reply_suppression.py
…
test_email.py
…
test_email_robustness.py
…
test_empty_model_recovery.py
…
test_env_flag_truthy.py
…
test_ephemeral_reply.py
…
test_external_drain_control.py fix(gateway): quiesce API and cron work during drains 2026-07-13 23:26:10 +05:30
test_extract_local_files.py
…
test_fallback_chain_reload.py
…
test_fallback_eviction.py
…
test_fast_command.py
…
test_feishu.py
…
test_feishu_approval_buttons.py
…
test_feishu_bot_admission.py
…
test_feishu_bot_auth_bypass.py
…
test_feishu_channel_prompts.py
…
test_feishu_comment.py
…
test_feishu_comment_rules.py
…
test_feishu_meeting_invite.py
…
test_feishu_onboard.py
…
test_feishu_sdk_executor.py
…
test_first_turn_session_meta_rebaseline.py
…
test_footer_command_mid_run.py fix(gateway): /footer is unreachable mid-run — add "footer" to safe-toggle set 2026-07-16 04:40:23 -07:00
test_fresh_reset_skill_injection.py
…
test_gateway_command_help.py
…
test_gateway_command_line_matcher.py
…
test_gateway_inactivity_timeout.py
…
test_gateway_process_exit.py
…
test_gateway_shutdown.py
…
test_gateway_silence_tokens.py
…
test_goal_max_turns_config.py
…
test_goal_status_notice.py
…
test_goal_verdict_send.py
…
test_google_chat.py fix(google-chat): cache callback token cert fetches 2026-07-16 07:31:05 -07:00
test_handoff_watcher_async_db.py
…
test_home_target_env_var.py
…
test_homeassistant.py fix(gateway): validate multiplex adapter config by platform 2026-07-16 05:39:58 -07:00
test_hooks.py
…
test_image_input_routing_runtime.py
…
test_incomplete_gateway_turns.py fix(gateway): harden hidden-incomplete detection against the sentinel final_response 2026-07-15 09:48:24 -07:00
test_insights_unicode_flags.py
…
test_internal_event_bypass_pairing.py
…
test_internal_event_never_interrupts_busy_session.py
…
test_interrupt_key_match.py
…
test_irc_adapter.py
…
test_kanban_auto_decompose_live.py
…
test_kanban_notifier.py
…
test_kanban_notifier_watcher_dispatch_gate.py
…
test_kanban_watchers_mixin.py
…
test_keep_typing_timeout.py
…
test_line_plugin.py
…
test_load_transcript_db_only.py
…
test_loop_exception_handler.py
…
test_matrix.py
…
test_matrix_approval_reaction_fail_closed.py
…
test_matrix_dm_invite_recording.py
…
test_matrix_exec_approval.py
…
test_matrix_mention.py
…
test_matrix_project_context_isolation.py
…
test_matrix_voice.py
…
test_mattermost.py fix(gateway): validate multiplex adapter config by platform 2026-07-16 05:39:58 -07:00
test_max_concurrent_sessions.py
…
test_max_tokens_propagation.py
…
test_mcp_reload_refreshes_cached_agents.py
…
test_media_download_retry.py
…
test_media_extraction.py
…
test_media_metadata_contract.py
…
test_memory_monitor.py
…
test_message_deduplicator.py
…
test_message_timestamps.py
…
test_mirror.py
…
test_mixed_attachment_routing.py
…
test_moa_one_shot_restore.py
…
test_model_command_async_offload.py
…
test_model_command_custom_providers.py
…
test_model_command_expensive_confirm.py
…
test_model_command_flat_string_config.py
…
test_model_picker_persist.py fix(gateway): preserve multiplex profile in model picker 2026-07-16 07:17:55 -07:00
test_model_switch_persistence.py
…
test_msgraph_webhook.py fix(security): widen non-ASCII compare_digest crash fix to all sibling sites 2026-07-16 07:22:24 -07:00
test_multiplex_adapter_registry.py test: accept profile_name kwarg in auth-check stubs 2026-07-16 07:17:55 -07:00
test_multiplex_api_server_routing.py test(gateway): cover api_server multiplex /p/<profile>/ routing 2026-07-16 15:59:45 +05:30
test_multiplex_credential_isolation.py
…
test_multiplex_http_routing.py
…
test_multiplex_lifecycle.py
…
test_multiplex_pairing_stores.py fix(gateway): import PairingStore in _start_secondary_profile_adapters (#65118) 2026-07-15 12:11:16 -07:00
test_multiplex_phase0.py
…
test_multiplex_profile_authz.py fix(gateway): scope secondary-adapter auth callback to its own profile 2026-07-16 07:17:55 -07:00
test_native_image_buffer_isolation.py
…
test_new_clears_last_resolved_model.py
…
test_notice_delivery.py
…
test_notice_rendering.py
…
test_ntfy_plugin.py
…
test_own_policy_startup_gate.py
…
test_pairing.py
…
test_pairing_allowlist_bypass.py
…
test_pending_drain_no_recursion.py
…
test_pending_drain_race.py
…
test_pending_event_none.py
…
test_per_platform_streaming_defaults.py
…
test_pii_redaction.py
…
test_plaintext_approval_routing.py
…
test_planned_stop_watcher.py
…
test_platform_base.py fix(relay): normalize a 0/negative max_message_length at the descriptor boundary 2026-07-16 07:21:23 -07:00
test_platform_connected_checkers.py
…
test_platform_http_client_limits.py
…
test_platform_reconnect.py
…
test_platform_reconnect_fd_leak.py
…
test_platform_registry.py
…
test_plugin_platform_interface.py
…
test_post_delivery_callback_chaining.py
…
test_pre_gateway_dispatch.py
…
test_priority_path_compression_demotion_56391.py
…
test_profile_resolution.py fix(gateway): gate profile routing on multiplex_profiles + widen batch-key routing to all adapters 2026-07-15 09:50:05 -07:00
test_profile_routing.py fix(gateway): profile routing — conjunctive matching + universal gateway_runner 2026-07-15 09:50:05 -07:00
test_proxy_mode.py
…
test_qqbot.py
…
test_queue_command.py
…
test_queue_consumption.py
…
test_queued_native_image_session_key.py
…
test_raft_adapter.py
…
test_readiness.py
…
test_reasoning_command.py
…
test_reasoning_config_per_model.py refactor(reasoning): unify per-model reasoning resolution behind a single chokepoint 2026-07-14 11:46:40 -07:00
test_relay_capability_surface.py
…
test_relay_upstream_authz.py
…
test_reload_skills_command.py
…
test_reload_skills_discord_resync.py
…
test_replay_entry_fields.py
…
test_reply_to_injection.py
…
test_response_filters.py
…
test_restart_drain.py
…
test_restart_notification.py
…
test_restart_redelivery_dedup.py
…
test_restart_resume_pending.py
…
test_restart_service_detection.py fix(gateway): preserve external supervisor ownership 2026-07-16 05:08:56 -07:00
test_resume_command.py
…
test_retry_replacement.py
…
test_retry_response.py
…
test_run_cleanup_progress.py
…
test_run_progress_interrupt.py
…
test_run_progress_topics.py
…
test_run_tool_media_re.py
…
test_runner_fatal_adapter.py
…
test_runner_startup_failures.py
…
test_running_agent_session_toggles.py
…
test_runtime_config_env_expansion.py
…
test_runtime_env_reload_config_authority.py
…
test_runtime_footer.py
…
test_safe_adapter_disconnect.py
…
test_scale_to_zero.py
…
test_scale_to_zero_watcher.py
…
test_send_error_classification.py
…
test_send_image_file.py
…
test_send_multiple_images.py
…
test_send_retry.py
…
test_send_voice_reply_notify.py
…
test_session.py fix(gateway): sanitize sender-name prefix in shared multi-user sessions 2026-07-15 23:48:34 +05:30
test_session_api.py
…
test_session_boundary_hooks.py
…
test_session_boundary_security_state.py
…
test_session_context_inheritance.py
…
test_session_dm_thread_seeding.py
…
test_session_env.py
…
test_session_hygiene.py
…
test_session_id_cache_coherence.py
…
test_session_info.py
…
test_session_list_allowed_sources.py
…
test_session_load_bool.py
…
test_session_model_override_credential_pool.py
…
test_session_model_override_persistence.py
…
test_session_model_override_routing.py
…
test_session_model_reset.py
…
test_session_override_thread_recovery.py
…
test_session_race_guard.py
…
test_session_reset_notify.py
…
test_session_split_brain_11016.py
…
test_session_state_cleanup.py
…
test_session_store_lock_io.py
…
test_session_store_prune.py fix(gateway): never prune sessions when active-process check fails 2026-07-14 17:13:20 +05:30
test_session_store_runtime_stale_guard.py test(gateway): cover ws_orphan_reap session recovery (#63207) 2026-07-14 16:58:47 +05:30
test_session_store_stale_prune.py
…
test_setup_feishu.py
…
test_shared_group_sender_prefix.py
…
test_shutdown_cache_cleanup.py fix(gateway): complete API-server shutdown drain 2026-07-13 23:26:10 +05:30
test_shutdown_forensics.py
…
test_shutdown_memory_provider_messages.py
…
test_signal.py fix(gateway): validate multiplex adapter config by platform 2026-07-16 05:39:58 -07:00
test_signal_format.py
…
test_signal_rate_limit.py
…
test_simplex_plugin.py
…
test_slack.py fix(gateway): harden multiplex credential cluster salvage 2026-07-16 05:39:58 -07:00
test_slack_approval_buttons.py fix(slack): scope Agent View workspace state 2026-07-14 13:58:36 -07:00
test_slack_block_kit.py
…
test_slack_block_kit_adapter.py fix(slack): gate feedback buttons behind rich_blocks as documented 2026-07-14 13:58:36 -07:00
test_slack_bot_auth_bypass.py
…
test_slack_channel_session_scope.py
…
test_slack_channel_skills.py
…
test_slack_cron_continuable_surface.py
…
test_slack_group_dm_scope_warning.py
…
test_slack_mention.py
…
test_slack_plugin_action_handlers.py
…
test_slack_plugin_setup.py
…
test_slack_user_token_warning.py
…
test_slash_access.py
…
test_slash_access_dispatch.py
…
test_sms.py
…
test_sse_agent_cancel.py
…
test_ssl_cert_detection.py
…
test_ssl_certs.py
…
test_stacked_skill_platform_disabled.py
…
test_stale_confirmation_expiry.py
…
test_stale_platform_lock_retryable.py
…
test_stale_self_heal_agent_cache_eviction.py fix(gateway): evict stale-self-heal agent cache entries pointing at dead sessions 2026-07-16 00:11:22 +05:30
test_startup_no_eager_platform_install.py
…
test_startup_restart_race.py
…
test_status.py
…
test_status_command.py fix(gateway): gate /profile source scoping on multiplex_profiles 2026-07-16 07:17:55 -07:00
test_status_phrases.py
…
test_steer_command.py
…
test_step_callback_compat.py
…
test_sticker_cache.py
…
test_stop_thread_sibling.py fix(slack): clear stuck assistant status on /stop and via explicit metadata 2026-07-14 21:31:32 -07:00
test_stream_consumer.py
…
test_stream_consumer_draft.py
…
test_stream_consumer_fresh_final.py
…
test_stream_consumer_silence.py
…
test_stream_consumer_thread_routing.py
…
test_stream_events.py
…
test_stt_config.py
…
test_stt_transcript_echo_config.py
…
test_stuck_loop.py
…
test_subagent_protection_30170.py
…
test_table_helpers.py
…
test_teams.py
…
test_teams_pipeline_runtime_wiring.py
…
test_telegram_approval_buttons.py
…
test_telegram_audio_vs_voice.py
…
test_telegram_auth_check.py
…
test_telegram_bot_auth_bypass.py
…
test_telegram_callback_auth_fail_closed.py
…
test_telegram_caption_merge.py
…
test_telegram_channel_posts.py
…
test_telegram_clarify_buttons.py
…
test_telegram_closewait_limits_31599.py
…
test_telegram_conflict.py fix(telegram): gate polling health on getUpdates progress 2026-07-14 17:32:41 +05:30
test_telegram_documents.py
…
test_telegram_error_redaction.py fix(telegram): widen transport-error redaction to all remaining raw exception sites 2026-07-16 04:25:54 -07:00
test_telegram_final_delivery.py
…
test_telegram_format.py
…
test_telegram_forum_commands.py
…
test_telegram_group_gating.py fix(telegram): support free-response topics 2026-07-16 04:53:08 -07:00
test_telegram_init_deadline.py fix(telegram): diagnose blocked-loop init hangs, unbind DoH from system DNS 2026-07-14 17:09:50 +05:30
test_telegram_max_doc_bytes.py
…
test_telegram_mention_boundaries.py
…
test_telegram_model_picker.py
…
test_telegram_network.py fix(telegram): diagnose blocked-loop init hangs, unbind DoH from system DNS 2026-07-14 17:09:50 +05:30
test_telegram_network_reconnect.py fix(telegram): gate polling health on getUpdates progress 2026-07-14 17:32:41 +05:30
test_telegram_noise_filter.py
…
test_telegram_overflow_partial.py
…
test_telegram_pending_update_probe.py
…
test_telegram_photo_interrupts.py
…
test_telegram_polling_progress.py fix(telegram): gate polling health on getUpdates progress 2026-07-14 17:32:41 +05:30
test_telegram_progress_edit_transient.py
…
test_telegram_prune_stale_topic_binding_31501.py
…
test_telegram_reactions.py
…
test_telegram_reply_mode.py
…
test_telegram_reply_quote.py
…
test_telegram_rich_messages.py fix(telegram): respect rich_messages config for pipe table routing 2026-07-14 06:48:53 -07:00
test_telegram_rich_newlines.py
…
test_telegram_send_draft_format.py
…
test_telegram_send_path_health.py fix(telegram): gate polling health on getUpdates progress 2026-07-14 17:32:41 +05:30
test_telegram_slash_confirm.py
…
test_telegram_start_polling_timeout.py
…
test_telegram_status_indicator.py
…
test_telegram_status_update.py
…
test_telegram_text_batch_perf.py
…
test_telegram_text_batching.py
…
test_telegram_thread_fallback.py
…
test_telegram_topic_mode.py
…
test_telegram_typing_backoff.py
…
test_telegram_username_chat_id.py
…
test_telegram_voice_duration.py fix(telegram): include duration in standalone sends 2026-07-16 04:40:35 -07:00
test_telegram_voice_v0_regressions.py
…
test_telegram_webhook_secret.py
…
test_text_batching.py
…
test_title_command.py
…
test_tool_log_mode.py
…
test_tool_response_drop_recovery.py
…
test_transcript_offset.py
…
test_tts_media_routing.py
…
test_tui_approval_redaction.py
…
test_typing_indicator_toggle.py
…
test_unauthorized_dm_behavior.py
…
test_unavailable_skill_hint.py
…
test_undo_rewind_session.py
…
test_unknown_command.py
…
test_update_command.py
…
test_update_cron_drain.py
…
test_update_streaming.py
…
test_usage_command.py feat(codex): redeem banked usage-limit resets via /usage reset (#64280) 2026-07-14 03:23:19 -07:00
test_verbose_command.py
…
test_version_command.py
…
test_video_context_note.py
…
test_vision_memory_leak.py
…
test_voice_command.py
…
test_voice_mode_platform_isolation.py
…
test_weak_credential_guard.py
…
test_webhook_adapter.py test(webhook): cover the Svix v1 branch in the non-ASCII signature regression 2026-07-16 07:22:24 -07:00
test_webhook_deliver_only.py
…
test_webhook_dynamic_routes.py
…
test_webhook_integration.py
…
test_webhook_session_close.py
…
test_webhook_signature_rate_limit.py
…
test_wecom.py
…
test_wecom_callback.py
…
test_weixin.py
…
test_weixin_typing.py
…
test_whatsapp_allowlist_lid_resolution.py
…
test_whatsapp_bridge_dir_resolution.py
…
test_whatsapp_bridge_pidfile.py
…
test_whatsapp_cloud.py fix(security): widen non-ASCII compare_digest crash fix to all sibling sites 2026-07-16 07:22:24 -07:00
test_whatsapp_cloud_allowed_users.py
…
test_whatsapp_connect.py
…
test_whatsapp_formatting.py
…
test_whatsapp_from_owner.py
…
test_whatsapp_group_gating.py
…
test_whatsapp_identity.py
…
test_whatsapp_media_path_profile.py
…
test_whatsapp_native_delivery.py
…
test_whatsapp_reply_prefix.py
…
test_whatsapp_stale_bridge.py
…
test_whatsapp_text_batching.py
…
test_whatsapp_to_jid.py
…
test_ws_auth_retry.py
…
test_yolo_command.py
…
test_yuanbao_media_ssrf.py
…