hermes-agent/tests/gateway
Brooklyn Nicholson cef7d1a1e1 fix(api): persist session pins instead of 400ing them
PATCH /api/sessions/{id} only accepted title and end_reason, so the
`pinned` flag the desktop sends was rejected as an unsupported field —
and the client swallows that error. Pins lived in one app's localStorage
and never reached state.db, which also meant the server-side auto-archive
sweep was free to hide the chats a pin exists to keep.

Accept pinned and archived as booleans, route them to the SessionDB
setters that already existed, and include both in the serialized session
so clients can reconcile against server truth.
2026-08-06 21:10:54 -05:00
..
platforms fix(yuanbao): pop tracking entries only for truthy matching msg_id + regression tests 2026-08-03 17:33:14 +05:30
relay fix(gateway): keep event loop alive during /compress and Relay drain 2026-08-04 11:17:11 +05:30
__init__.py
…
_plugin_adapter_loader.py
…
conftest.py test: bind lark SDK globals session-wide, not per-file 2026-08-03 17:24:11 +05:30
feishu_helpers.py
…
restart_test_helpers.py test(gateway): cover restart after-turn deferral (#77184) 2026-08-03 09:57:58 +05:30
test_7100_transient_failure_transcript.py
…
test_10710_auto_reset_evicts_cached_agent.py
…
test_13121_shutdown_inflight_transcript_flush.py
…
test_25107_stale_base_url_api_mode.py
…
test_35809_auto_reset_clean_context.py
…
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(secrets): allowlist API_SERVER listener settings as global deployment env 2026-08-02 09:59:52 -07:00
test_71671_faulthandler_no_stderr.py
…
test_73297_memory_flush_on_reset.py
…
test_73771_media_resend_dedup.py fix(gateway): widen explicit-MEDIA resend fix to the streaming path + log bare-path suppression 2026-07-29 18:33:38 -07:00
test_75349_whatsapp_multiplex_secret_scope.py fix(whatsapp): route WHATSAPP_* env reads through secret scope for multiplex profiles 2026-08-02 00:11:50 -07:00
test_abandoned_turn_process_cleanup.py fix(gateway): guard empty task_id reaps and prefer the finished worker's result 2026-08-02 14:23:55 +05:30
test_active_session_text_merge.py fix(gateway): skip topic recovery for non-DM messages 2026-08-02 21:48:46 +05:30
test_adapter_connect_is_reconnect_contract.py
…
test_adapter_startup_secret_scope.py fix(secrets): scoped BLUEBUBBLES_PASSWORD + API_SERVER_KEY init read; add parametrized regression tests 2026-08-02 10:00:44 -07:00
test_agent_cache.py feat(gateway): session activity watchdog, stall notify, compress timeout (#72424) 2026-08-02 16:16:36 -07:00
test_agents_command_delegations.py
…
test_aiohttp_body_caps.py
…
test_allowed_channels_widening.py
…
test_allowlist_startup_check.py
…
test_api_server.py fix(test): feed the SSE writers an asyncio queue, not queue.Queue 2026-08-04 13:07:44 +05:30
test_api_server_active_work_drain.py
…
test_api_server_bind_guard.py
…
test_api_server_jobs.py
…
test_api_server_media_data_urls.py
…
test_api_server_multimodal.py
…
test_api_server_multiplex_secret_scope.py
…
test_api_server_normalize.py
…
test_api_server_runs.py
…
test_api_server_toolset.py
…
test_approval_prompt_redaction.py
…
test_approvals_command.py
…
test_approve_deny_commands.py test(approval): event-based waits for blocking-approval E2E polls (PR #63522 port) 2026-07-29 18:55:10 -07:00
test_async_delegation_session_binding.py
…
test_async_delivery_capability.py
…
test_async_session_db.py
…
test_async_session_store.py
…
test_audio_cache.py
…
test_auth_fallback.py
…
test_auto_continue.py
…
test_auto_voice_reply_format.py fix(gateway): preserve voice_only semantics for text input 2026-07-30 00:11:33 -07:00
test_background_command.py
…
test_background_process_notifications.py
…
test_base_auto_tts_output_format.py
…
test_base_topic_sessions.py
…
test_bluebubbles.py
…
test_bounded_adapter_teardown.py
…
test_bundles_command.py
…
test_busy_session_ack.py
…
test_busy_session_auth_bypass.py
…
test_buzz_adapter.py
…
test_buzz_websocket.py
…
test_cached_agent_max_iterations.py feat(gateway): session activity watchdog, stall notify, compress timeout (#72424) 2026-08-02 16:16:36 -07:00
test_cancel_background_drain.py
…
test_cgroup_cleanup.py
…
test_channel_continuity_hint.py
…
test_channel_directory.py feat(gateway): simplex channel enumeration + show configured platforms in hermes send --list 2026-08-02 15:08:45 -07:00
test_channel_directory_connected_only.py
…
test_channel_overrides.py
…
test_checkpoint_config.py
…
test_choice_picker.py
…
test_cjk_fts_config_bridge.py
…
test_clarify_active_session_bypass.py
…
test_clarify_progress_leak.py
…
test_clarify_thread_followup_not_swallowed.py
…
test_clean_shutdown_marker.py
…
test_code_fence_tracking.py
…
test_command_bypass_active_session.py
…
test_complete_path_at_filter.py fix(test): patch _launch_configured_cwd in completion tests for hermeticity (#70041) 2026-07-29 18:55:10 -07:00
test_completion_delivery.py
…
test_compress_command.py fix(gateway): keep event loop alive during /compress and Relay drain 2026-08-04 11:17:11 +05:30
test_compress_focus.py
…
test_compress_plugin_engine.py
…
test_compress_preview.py
…
test_compression_concurrent_sessions.py
…
test_compression_deferred_soft_result.py
…
test_compression_failure_session_sync.py
…
test_compression_in_flight_check.py
…
test_compression_interrupt_demotion_56391.py
…
test_compression_progress_notices.py
…
test_compression_session_id_persistence.py
…
test_config.py
…
test_config_cwd_bridge.py Revert "remove Vercel AI Gateway and Vercel Sandbox (#33067)" 2026-07-29 19:48:37 -07:00
test_config_driven_access_policy.py
…
test_config_env_bridge_authority.py feat(gateway): session activity watchdog, stall notify, compress timeout (#72424) 2026-08-02 16:16:36 -07:00
test_context_ref_expansion_runtime.py
…
test_conversation_scope_funnel.py
…
test_cron_active_work_drain.py
…
test_cron_fire_webhook.py fix(api_server): run the cron-fire token verifier off the event loop 2026-08-02 23:12:22 +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_delegation_session_id_leak.py fix(delegation): prevent child HERMES_SESSION_ID leak into parent process env 2026-07-31 22:32:55 -07:00
test_delivery.py
…
test_delivery_ledger.py test: raise blocking-probe timeouts for loaded CI runners 2026-08-03 11:00:49 +05:30
test_delivery_ledger_fd_leak.py
…
test_delivery_ledger_producer.py test: raise blocking-probe timeouts for loaded CI runners 2026-08-03 11:00:49 +05:30
test_delivery_silence_filter.py
…
test_destructive_slash_always_persist_report.py fix(gateway): do not claim a destructive-slash opt-out that was not saved 2026-07-31 22:35:03 -07:00
test_destructive_slash_confirm.py
…
test_diff_command.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 perf(discord): build reply references from ids instead of fetch_message 2026-08-02 21:14:36 +05:30
test_discord_exec_approval_content.py
…
test_discord_fail_closed_feedback.py
…
test_discord_format.py fix(discord): suppress link embeds in tool preview markdown links 2026-08-02 21:48:06 -07:00
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_missed_message_backfill.py
…
test_discord_model_picker.py
…
test_discord_opus.py
…
test_discord_pending_text_batch_shutdown.py
…
test_discord_plugin_setup.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 perf(discord): build reply references from ids instead of fetch_message 2026-08-02 21:14:36 +05:30
test_discord_roles_dm_scope.py
…
test_discord_send.py Discord drops an empty outbound message instead of sending it (#78815) 2026-08-04 18:23:04 +00:00
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(gateway): fix order-dependent telegram-mock flake cluster 2026-07-29 21:30:53 -07:00
test_document_cache.py
…
test_document_context_note.py
…
test_duplicate_reply_suppression.py
…
test_email.py
…
test_email_robustness.py
…
test_email_secret_scope.py fix(email): Slack-pattern helper for unscoped default-profile adapter + scope ports/trust flag 2026-08-02 10:01:16 -07:00
test_empty_model_recovery.py
…
test_env_flag_truthy.py
…
test_ephemeral_reply.py
…
test_escape_reasoning_fences.py
…
test_external_drain_control.py
…
test_extract_local_files.py
…
test_fallback_chain_reload.py refactor(gateway): extract run_sync onto TurnRunner (completes the TurnContext seam; AST-identical body) 2026-07-29 16:21:46 -07:00
test_fallback_eviction.py
…
test_fast_command.py
…
test_feishu.py test: bind lark SDK globals session-wide, not per-file 2026-08-03 17:24:11 +05:30
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_lazy_import.py fix(feishu): defer the lark_oapi import off the startup path 2026-08-03 17:24:11 +05:30
test_feishu_meeting_invite.py
…
test_feishu_onboard.py
…
test_feishu_sdk_executor.py
…
test_feishu_table_markdown.py
…
test_feishu_voice_message_type.py
…
test_fence_chunker.py
…
test_first_turn_session_meta_rebaseline.py
…
test_footer_command_mid_run.py
…
test_fresh_reset_skill_injection.py
…
test_gateway_command_dispatch_minimal.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_gateway_utf8_encoding.py
…
test_goal_continuation_drain.py test: wait for ledger-wrapped sends in drain assertions 2026-08-03 11:00:49 +05:30
test_goal_max_turns_config.py
…
test_goal_status_notice.py
…
test_goal_verdict_send.py
…
test_google_chat.py
…
test_google_chat_oauth_dependencies.py fix(deps): repair Google transitive security floors (#72108) 2026-07-31 23:18:38 -07:00
test_handoff_thread_session_key.py fix: Discord-specific guard + cron sibling + non-regression tests 2026-08-03 00:32:17 +05:30
test_handoff_watcher_async_db.py
…
test_history_media_current_turn.py fix(gateway): relay TTS attachments + semantic auto-thread rename on the title turn (#74482) 2026-07-29 18:00:18 -07:00
test_home_target_env_var.py
…
test_homeassistant.py
…
test_hooks.py
…
test_hygiene_failure_cooldown_ladder.py refactor(gateway): extract the hygiene recovery gate and forward the failure reason 2026-08-06 15:04:53 +05:30
test_image_input_routing_runtime.py
…
test_incomplete_gateway_turns.py
…
test_insights_unicode_flags.py
…
test_interactive_prompt_base.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 fix(kanban): deliver notifications from non-dispatch gateways 2026-07-31 21:52:11 -07:00
test_kanban_notifier_apiserver_wake.py fix(kanban): deliver notifications from non-dispatch gateways 2026-07-31 21:52:11 -07:00
test_kanban_notifier_watcher_dispatch_gate.py fix(kanban): deliver notifications from non-dispatch gateways 2026-07-31 21:52:11 -07:00
test_kanban_notifier_zero_sub_gate.py
…
test_kanban_watchers_mixin.py
…
test_keep_typing_timeout.py
…
test_lifecycle_ledger.py
…
test_line_plugin.py
…
test_load_transcript_db_only.py
…
test_loop_exception_handler.py
…
test_loop_liveness_watchdog.py
…
test_matrix.py fix(matrix): commit the migrated account only after the session sweep 2026-08-03 10:03:35 +05:30
test_matrix_approval_reaction_fail_closed.py
…
test_matrix_dm_invite_recording.py
…
test_matrix_exec_approval.py
…
test_matrix_mention.py
…
test_matrix_message_length.py
…
test_matrix_plugin_setup.py
…
test_matrix_project_context_isolation.py
…
test_matrix_recovery_key_scope.py fix(matrix): honor profile secret scope for recovery key under multiplex 2026-08-02 00:11:50 -07:00
test_matrix_voice.py
…
test_mattermost.py test: restore four silently shadowed definitions and guard against more 2026-07-31 22:35:16 -07:00
test_mattermost_plugin_setup.py
…
test_max_concurrent_sessions.py
…
test_max_tokens_propagation.py
…
test_mcp_reload_refreshes_cached_agents.py
…
test_media_cache.py
…
test_media_download_retry.py
…
test_media_extraction.py test(gateway): cover current-turn TTS media dedup 2026-07-29 19:11:05 -07:00
test_media_metadata_contract.py
…
test_media_spaced_paths_and_history_dedupe.py fix(gateway): collect quoted/spaced/home-relative MEDIA paths into the history dedup set 2026-07-29 19:11:05 -07:00
test_media_tag_cleanup.py
…
test_media_tag_formatting_variants.py
…
test_media_tag_separator.py
…
test_memory_monitor.py
…
test_memory_trim_housekeeping.py feat(mem): config-driven allocator trim with telemetry and lifecycle coverage 2026-08-02 22:44:38 +05:30
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_context_offload.py fix(gateway): offload preflight-compression warning enrichment; behavioral offload tests 2026-07-31 22:39:34 -07:00
test_model_command_custom_providers.py
…
test_model_command_expensive_confirm.py
…
test_model_command_flat_string_config.py
…
test_model_picker_persist.py
…
test_model_switch_persistence.py
…
test_msgraph_webhook.py
…
test_multiplex_adapter_registry.py
…
test_multiplex_api_server_routing.py
…
test_multiplex_background_task_scope.py
…
test_multiplex_credential_isolation.py fix(gateway): hydrate cold profile secret sources 2026-08-02 00:11:50 -07:00
test_multiplex_http_routing.py
…
test_multiplex_lifecycle.py
…
test_multiplex_pairing_stores.py fix(gateway): align multiplex pairing stores 2026-07-29 18:43:50 -05:00
test_multiplex_phase0.py
…
test_multiplex_profile_authz.py
…
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 fix(pairing): scope the approve/revoke endpoints to a profile 2026-07-29 18:43:50 -05:00
test_pairing_allowlist_bypass.py fix(gateway): honor empty WhatsApp allow_from over env grants 2026-08-02 11:50:05 +05:30
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
…
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 fix(teams): suppress SDK import-time dotenv instead of clearing environ 2026-08-01 15:34:19 -07:00
test_plugin_platform_interface.py
…
test_post_delivery_callback_chaining.py
…
test_post_stream_media_delivery.py
…
test_pre_gateway_dispatch.py
…
test_priority_path_compression_demotion_56391.py
…
test_profile_resolution.py
…
test_profile_routing.py
…
test_prompt_tail_freeze.py
…
test_proxy_mode.py
…
test_qqbot.py
…
test_qqbot_credential_isolation.py fix(qqbot): scope the authz, startup-validation, and direct-send QQ reads 2026-08-02 10:01:16 -07:00
test_qqbot_scope_paths.py test(qqbot): mark environ-opt-in isolation case xfail pending authz_mixin gate PR 2026-08-02 10:01:16 -07:00
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
…
test_relay_capability_surface.py
…
test_relay_upstream_authz.py
…
test_reload_skills_command.py
…
test_reload_skills_discord_resync.py
…
test_replace_child_reap.py
…
test_replay_entry_fields.py
…
test_reply_to_injection.py
…
test_response_filters.py
…
test_restart_after_turn.py test(gateway): cover restart after-turn deferral (#77184) 2026-08-03 09:57:58 +05:30
test_restart_drain.py test(gateway): cover restart after-turn deferral (#77184) 2026-08-03 09:57:58 +05:30
test_restart_notification.py
…
test_restart_redelivery_dedup.py
…
test_restart_resume_pending.py
…
test_restart_service_detection.py fix(test): hermetic env-detection tests — pin container/supervisor/HOME probes (#422) 2026-07-29 18:55:10 -07:00
test_resume_command.py fix(gateway): scope session lists before limiting 2026-07-31 22:36:55 -07:00
test_retry_replacement.py
…
test_retry_response.py
…
test_routing_save_fast_path.py perf(gateway): single-row routing UPSERT fast path for metadata-only saves 2026-08-02 22:33:09 +05:30
test_run_cleanup_progress.py
…
test_run_progress_interrupt.py
…
test_run_progress_topics.py fix(relay): route Discord tool-progress into the auto-thread, not the parent channel (#77830) 2026-08-03 15:58:15 +00:00
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: cover gateway per-turn reload and flip dump terminal-backend pin 2026-08-02 18:21:58 -07:00
test_runtime_footer.py feat(gateway): add opt-in 'latency' runtime footer field 2026-08-03 17:16:57 +05:30
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 perf: replace COUNT(*) with LIMIT-based existence checks 2026-08-03 17:31:29 +05:30
test_session_api.py fix(api): persist session pins instead of 400ing them 2026-08-06 21:10:54 -05:00
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 fix(cron): scope cron approval context per session 2026-08-03 00:25:20 +05:30
test_session_hygiene.py refactor(gateway): extract the hygiene recovery gate and forward the failure reason 2026-08-06 15:04:53 +05:30
test_session_id_cache_coherence.py
…
test_session_info.py test(gateway): cover named-custom context pin on session-info banner 2026-08-04 11:00:04 +05:30
test_session_list_allowed_sources.py
…
test_session_load_bool.py
…
test_session_messages_shutdown_preserve.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: wait for ledger-wrapped sends in drain assertions 2026-08-03 11:00:49 +05:30
test_session_stall_watchdog.py fix(gateway): bound the stall-notify adapter.send (re-review #2) 2026-08-02 16:16:36 -07:00
test_session_state_cleanup.py
…
test_session_store_expiry_finalized.py
…
test_session_store_lock_io.py
…
test_session_store_prune.py fix(session): resolve default state DB path at call time 2026-07-29 18:55:10 -07:00
test_session_store_runtime_stale_guard.py
…
test_session_store_stale_prune.py
…
test_setup_feishu.py
…
test_shared_group_sender_prefix.py
…
test_shutdown_cache_cleanup.py
…
test_shutdown_flush.py
…
test_shutdown_forensics.py
…
test_shutdown_memory_provider_messages.py
…
test_shutdown_watchdog.py
…
test_signal.py
…
test_signal_format.py
…
test_signal_rate_limit.py
…
test_simplex_plugin.py feat(gateway): simplex channel enumeration + show configured platforms in hermes send --list 2026-08-02 15:08:45 -07:00
test_skip_context_files_wiring.py perf(gateway): per-platform skip_context_files to cut agent build latency 2026-08-03 21:22:56 +05:30
test_slack.py fix: trim identity prompt — remove jargon, tighten directive 2026-07-31 17:55:23 +05:30
test_slack_approval_buttons.py
…
test_slack_block_kit.py
…
test_slack_block_kit_adapter.py
…
test_slack_bot_auth_bypass.py
…
test_slack_channel_session_scope.py
…
test_slack_channel_skills.py
…
test_slack_clarify_buttons.py
…
test_slack_cron_continuable_surface.py
…
test_slack_dedup_ttl.py
…
test_slack_download_ssrf.py
…
test_slack_group_dm_scope_warning.py
…
test_slack_ignore_other_user_mentions.py
…
test_slack_log_noise.py
…
test_slack_mention.py
…
test_slack_mention_humanization.py
…
test_slack_peer_agent_smoke.py
…
test_slack_plugin_action_handlers.py
…
test_slack_plugin_setup.py
…
test_slack_relay_parent_command.py
…
test_slack_require_mention_channels.py
…
test_slack_runner_ignored_channels.py
…
test_slack_send_retry.py
…
test_slack_socket_reconnect_heal.py
…
test_slack_status_update.py
…
test_slack_user_token_warning.py
…
test_slack_wake_external_bot_messages.py
…
test_slash_access.py
…
test_slash_access_dispatch.py
…
test_sms.py
…
test_sse_agent_cancel.py test: exercise the production _loop_ref path in put_threadsafe tests 2026-08-04 13:07:44 +05:30
test_sse_frame.py refactor(gateway): route session event stream through _sse_frame (ensure_ascii=False) 2026-08-04 13:07:44 +05:30
test_ssl_cert_detection.py
…
test_ssl_certs.py
…
test_stacked_skill_platform_disabled.py
…
test_stale_confirmation_expiry.py refactor: config auto-migration support floor at v12 + deprecated shim retirement 2026-07-29 16:44:31 -07:00
test_stale_finalize_suppression.py fix(gateway): don't claim deleted head chunks as delivered in the empty-fallback recovery 2026-08-06 03:13:32 +05:30
test_stale_platform_lock_retryable.py
…
test_stale_self_heal_agent_cache_eviction.py
…
test_startup_no_eager_platform_install.py
…
test_startup_restart_race.py
…
test_status.py fix(windows): native Windows correctness for CLI, gateway status, banner, and WSL browser paths 2026-07-29 23:16:18 -07:00
test_status_command.py
…
test_status_phrases.py
…
test_steer_command.py
…
test_steer_fifo_overwrite.py fix(gateway): /steer fallback uses _enqueue_fifo to preserve FIFO head (#75164) 2026-07-31 22:35:58 -07:00
test_step_callback_compat.py
…
test_sticker_cache.py
…
test_stop_thread_sibling.py
…
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_streaming_tts_consumer.py
…
test_streaming_tts_gateway_regression.py
…
test_stt_config.py
…
test_stt_transcript_echo_config.py
…
test_stuck_loop.py
…
test_subagent_protection_30170.py
…
test_systemd_notify.py
…
test_systemd_watchdog_lifecycle.py
…
test_table_helpers.py
…
test_teams.py fix(teams): suppress SDK import-time dotenv instead of clearing environ 2026-08-01 15:34:19 -07:00
test_teams_dotenv_isolation.py fix(teams): suppress SDK import-time dotenv instead of clearing environ 2026-08-01 15:34:19 -07:00
test_teams_pipeline_runtime_wiring.py
…
test_telegram_approval_buttons.py
…
test_telegram_audio_vs_voice.py
…
test_telegram_auth_check.py test(telegram): cover allowlist + unauthorized_dm_behavior pair pass-through 2026-08-01 12:38:38 +05:30
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+sqlite): resolve polling conflict loop + misleading WAL warning 2026-08-04 14:34:50 +05:30
test_telegram_connect.py
…
test_telegram_documents.py
…
test_telegram_error_redaction.py
…
test_telegram_fallback_pool_release_71593.py
…
test_telegram_final_delivery.py
…
test_telegram_format.py
…
test_telegram_forum_commands.py
…
test_telegram_group_gating.py
…
test_telegram_init_deadline.py
…
test_telegram_long_command_batching.py fix(telegram): batch near-limit command chunks so split /queue pastes don't orphan their continuation 2026-07-29 17:22:52 -07:00
test_telegram_max_doc_bytes.py
…
test_telegram_media_read_timeout.py fix(telegram): send_image uploads still went out on the short read timeout 2026-07-31 22:36:10 -07:00
test_telegram_mention_boundaries.py
…
test_telegram_model_picker.py
…
test_telegram_network.py
…
test_telegram_network_reconnect.py
…
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
…
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
…
test_telegram_rich_newlines.py
…
test_telegram_send_draft_format.py
…
test_telegram_send_path_health.py
…
test_telegram_slash_confirm.py
…
test_telegram_start_polling_timeout.py test(xai): cover Firecrawl vs native web_search on Responses 2026-08-04 15:44:15 +05:30
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_caption_markdown.py
…
test_telegram_voice_duration.py
…
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 fix(gateway): reap only the background processes an abandoned turn created 2026-08-02 14:23:55 +05:30
test_transcript_offset.py
…
test_tts_media_routing.py test: restore four silently shadowed definitions and guard against more 2026-07-31 22:35:16 -07:00
test_tui_approval_redaction.py
…
test_turn_context.py
…
test_turn_lease.py
…
test_typing_indicator_toggle.py
…
test_unauthorized_dm_behavior.py fix(gateway): align multiplex pairing stores 2026-07-29 18:43:50 -05:00
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
…
test_verbose_command.py
…
test_version_command.py
…
test_video_context_note.py
…
test_vision_memory_leak.py
…
test_voice_command.py fix(discord): leave voice channels before cancelling the bot task 2026-08-03 22:47:14 +05:30
test_voice_mode_platform_isolation.py
…
test_wake_delivery.py
…
test_watchdog_review_76354.py docs(gateway): precise watchdog scope, explicit import-resets-activity contract (review S4) 2026-08-02 16:16:36 -07:00
test_weak_credential_guard.py
…
test_webhook_adapter.py
…
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_wecom_plugin_setup.py
…
test_weixin.py
…
test_weixin_secret_scope.py fix(weixin): Slack-pattern secret scoping for WEIXIN_* credential reads 2026-08-02 09:59:52 -07:00
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
…
test_whatsapp_cloud_allowed_users.py fix(gateway): honor empty WhatsApp allow_from over env grants 2026-08-02 11:50:05 +05:30
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_plugin_setup.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_forwarded_heartbeat.py fix(yuanbao): await the forwarded-records loading heartbeat 2026-07-31 22:35:20 -07:00
test_yuanbao_media_ssrf.py
…