test_automated_outbound_does_not_complete_pending_review (test_protocol_review_assistant.ProtocolReviewAssistantTests.test_automated_outbound_does_not_complete_pending_review) ... ok test_busy_send_lock_yields_without_error_then_sends_next_round (test_protocol_review_assistant.ProtocolReviewAssistantTests.test_busy_send_lock_yields_without_error_then_sends_next_round) ... ok test_close_stops_coordinator (test_protocol_review_assistant.ProtocolReviewAssistantTests.test_close_stops_coordinator) ... ok test_completion_save_failure_rolls_back_queue_and_can_retry (test_protocol_review_assistant.ProtocolReviewAssistantTests.test_completion_save_failure_rolls_back_queue_and_can_retry) ... ok test_coordination_read_error_cannot_clear_a_registered_review (test_protocol_review_assistant.ProtocolReviewAssistantTests.test_coordination_read_error_cannot_clear_a_registered_review) ... ok test_disabled_coordinator_cannot_override_global_review (test_protocol_review_assistant.ProtocolReviewAssistantTests.test_disabled_coordinator_cannot_override_global_review) ... ok test_human_reply_completes_review_discards_draft_and_keeps_seen (test_protocol_review_assistant.ProtocolReviewAssistantTests.test_human_reply_completes_review_discards_draft_and_keeps_seen) ... ok test_late_phone_sync_does_not_swallow_newer_already_queued_question (test_protocol_review_assistant.ProtocolReviewAssistantTests.test_late_phone_sync_does_not_swallow_newer_already_queued_question) ... ok test_new_inbound_while_old_review_is_pending_keeps_review_and_new_draft (test_protocol_review_assistant.ProtocolReviewAssistantTests.test_new_inbound_while_old_review_is_pending_keeps_review_and_new_draft) ... ok test_new_model_risk_still_requires_a_new_review_after_resumption (test_protocol_review_assistant.ProtocolReviewAssistantTests.test_new_model_risk_still_requires_a_new_review_after_resumption) ... ok test_next_message_resumes_automatic_reply_despite_global_review_mode (test_protocol_review_assistant.ProtocolReviewAssistantTests.test_next_message_resumes_automatic_reply_despite_global_review_mode) ... ok test_old_synced_outbound_and_missing_server_receipt_do_not_complete (test_protocol_review_assistant.ProtocolReviewAssistantTests.test_old_synced_outbound_and_missing_server_receipt_do_not_complete) ... ok test_private_assistant_chat_is_never_auto_replied_to (test_protocol_review_assistant.ProtocolReviewAssistantTests.test_private_assistant_chat_is_never_auto_replied_to) ... ok test_registers_one_review_with_persisted_id_and_trigger (test_protocol_review_assistant.ProtocolReviewAssistantTests.test_registers_one_review_with_persisted_id_and_trigger) ... ok test_restart_reconciles_human_reply_then_keeps_subsequent_customer_message (test_protocol_review_assistant.ProtocolReviewAssistantTests.test_restart_reconciles_human_reply_then_keeps_subsequent_customer_message) ... ok test_selective_review_always_precedes_resumed_global_mode (test_protocol_review_assistant.ProtocolReviewAssistantTests.test_selective_review_always_precedes_resumed_global_mode) ... ok test_sending_unknown_and_failed_evidence_are_never_auto_completed (test_protocol_review_assistant.ProtocolReviewAssistantTests.test_sending_unknown_and_failed_evidence_are_never_auto_completed) ... ok test_uncertain_send_releases_shared_lock_and_preserves_receipt_check (test_protocol_review_assistant.ProtocolReviewAssistantTests.test_uncertain_send_releases_shared_lock_and_preserves_receipt_check) ... ok test_actual_store_late_phone_sync_preserves_newer_question (test_protocol_review_assistant.ProtocolSharedCoordinatorTests.test_actual_store_late_phone_sync_preserves_newer_question) ... ok test_cancel_queue_save_failure_does_not_cancel_existing_review (test_protocol_review_assistant.ProtocolSharedCoordinatorTests.test_cancel_queue_save_failure_does_not_cancel_existing_review) ... ok test_cancel_store_failure_retries_after_restart_before_new_question (test_protocol_review_assistant.ProtocolSharedCoordinatorTests.test_cancel_store_failure_retries_after_restart_before_new_question) ... ok test_cancel_works_after_configuration_is_disabled (test_protocol_review_assistant.ProtocolSharedCoordinatorTests.test_cancel_works_after_configuration_is_disabled) ... ok test_durable_completion_survives_protocol_save_failure_without_new_episode (test_protocol_review_assistant.ProtocolSharedCoordinatorTests.test_durable_completion_survives_protocol_save_failure_without_new_episode) ... ok test_durable_manual_resolution_and_new_risk_get_distinct_episode (test_protocol_review_assistant.ProtocolSharedCoordinatorTests.test_durable_manual_resolution_and_new_risk_get_distinct_episode) ... ok test_explicit_cancel_closes_old_reminder_without_auto_resume (test_protocol_review_assistant.ProtocolSharedCoordinatorTests.test_explicit_cancel_closes_old_reminder_without_auto_resume) ... ok test_explicit_handoff_closes_reminder_and_preserves_evidence (test_protocol_review_assistant.ProtocolSharedCoordinatorTests.test_explicit_handoff_closes_reminder_and_preserves_evidence) ... ok test_local_approval_closes_pending_without_future_global_review_bypass (test_protocol_review_assistant.ProtocolSharedCoordinatorTests.test_local_approval_closes_pending_without_future_global_review_bypass) ... ok test_real_store_bot_receipt_is_not_a_manual_approval (test_protocol_review_assistant.ProtocolSharedCoordinatorTests.test_real_store_bot_receipt_is_not_a_manual_approval) ... ok test_recovered_confirmed_local_approval_closes_old_reminder (test_protocol_review_assistant.ProtocolSharedCoordinatorTests.test_recovered_confirmed_local_approval_closes_old_reminder) ... ok test_cancel_during_generation_does_not_send (test_native_protocol_pipeline.EngineTests.test_cancel_during_generation_does_not_send) ... [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 根据当前会话生成回复 ok test_crash_in_sending_becomes_uncertain (test_native_protocol_pipeline.EngineTests.test_crash_in_sending_becomes_uncertain) ... [协议收信] 同名客户 · 已加入回复队列 ok test_database_read_failure_never_announces_healthy_listener (test_native_protocol_pipeline.EngineTests.test_database_read_failure_never_announces_healthy_listener) ... ok test_duplicate_event_only_sent_once (test_native_protocol_pipeline.EngineTests.test_duplicate_event_only_sent_once) ... [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 根据当前会话生成回复 [协议处理] 同名客户 · 原账号单聊发送 [协议发送成功] 同名客户 · 服务器消息 999 ok test_manual_reply_during_generation_cancels_send (test_native_protocol_pipeline.EngineTests.test_manual_reply_during_generation_cancels_send) ... [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 根据当前会话生成回复 ok test_media_is_left_for_manual_handling (test_native_protocol_pipeline.EngineTests.test_media_is_left_for_manual_handling) ... [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 当前消息需要人工处理;当前未回复消息包含图片、语音或其他非文本内容,协议版需人工处理 ok test_memory_setting_preserves_only_unanswered_batch_when_disabled (test_native_protocol_pipeline.EngineTests.test_memory_setting_preserves_only_unanswered_batch_when_disabled) ... ok test_model_control_tokens_are_not_sent (test_native_protocol_pipeline.EngineTests.test_model_control_tokens_are_not_sent) ... [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 根据当前会话生成回复 [协议处理] 同名客户 · 模型生成失败,可重试;模型未返回有效文本 ok test_model_error_can_retry_before_send (test_native_protocol_pipeline.EngineTests.test_model_error_can_retry_before_send) ... [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 根据当前会话生成回复 [协议处理] 同名客户 · 模型生成失败,可重试;offline [协议处理] 同名客户 · 根据当前会话生成回复 [协议处理] 同名客户 · 原账号单聊发送 [协议发送成功] 同名客户 · 服务器消息 999 ok test_new_incoming_during_generation_discards_old_answer (test_native_protocol_pipeline.EngineTests.test_new_incoming_during_generation_discards_old_answer) ... [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 根据当前会话生成回复 [协议收信] 同名客户 · 已加入回复队列 ok test_new_message_invalidates_approved_draft (test_native_protocol_pipeline.EngineTests.test_new_message_invalidates_approved_draft) ... [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 根据当前会话生成回复 [协议处理] 同名客户 · 人工审核 [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 根据当前会话生成回复 [协议处理] 同名客户 · 人工审核 ok test_only_current_account_processed (test_native_protocol_pipeline.EngineTests.test_only_current_account_processed) ... ok test_pending_batch_window_is_honored (test_native_protocol_pipeline.EngineTests.test_pending_batch_window_is_honored) ... [协议收信] 同名客户 · 已加入回复队列 ok test_pending_review_and_errors_do_not_show_idle (test_native_protocol_pipeline.EngineTests.test_pending_review_and_errors_do_not_show_idle) ... ok test_progress_callback_failure_does_not_repeat_or_block_send (test_native_protocol_pipeline.EngineTests.test_progress_callback_failure_does_not_repeat_or_block_send) ... [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 根据当前会话生成回复 [协议处理] 同名客户 · 原账号单聊发送 [协议发送成功] 同名客户 · 服务器消息 999 ok test_progress_follows_receive_generate_send_then_waiting (test_native_protocol_pipeline.EngineTests.test_progress_follows_receive_generate_send_then_waiting) ... ok test_ready_flag_alone_cannot_enable_transport (test_native_protocol_pipeline.EngineTests.test_ready_flag_alone_cannot_enable_transport) ... ok test_restart_after_confirmed_journal_clears_pending_without_send (test_native_protocol_pipeline.EngineTests.test_restart_after_confirmed_journal_clears_pending_without_send) ... [协议收信] 同名客户 · 已加入回复队列 ok test_review_requires_approval (test_native_protocol_pipeline.EngineTests.test_review_requires_approval) ... [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 根据当前会话生成回复 [协议处理] 同名客户 · 人工审核 [协议处理] 同名客户 · 原账号单聊发送 [协议发送成功] 同名客户 · 服务器消息 999 ok test_runtime_uses_protocol_engine_without_visual_construction (test_native_protocol_pipeline.EngineTests.test_runtime_uses_protocol_engine_without_visual_construction) ... ok test_same_name_conversations_use_distinct_ids (test_native_protocol_pipeline.EngineTests.test_same_name_conversations_use_distinct_ids) ... [协议收信] 同名客户 · 已加入回复队列 [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 根据当前会话生成回复 [协议处理] 同名客户 · 原账号单聊发送 [协议发送成功] 同名客户 · 服务器消息 999 [协议处理] 同名客户 · 根据当前会话生成回复 [协议处理] 同名客户 · 原账号单聊发送 [协议发送成功] 同名客户 · 服务器消息 999 ok test_stop_during_generation_does_not_send (test_native_protocol_pipeline.EngineTests.test_stop_during_generation_does_not_send) ... [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 根据当前会话生成回复 ok test_text_pipeline_with_native_receipt_and_no_feedback (test_native_protocol_pipeline.EngineTests.test_text_pipeline_with_native_receipt_and_no_feedback) ... [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 根据当前会话生成回复 [协议处理] 同名客户 · 原账号单聊发送 [协议发送成功] 同名客户 · 服务器消息 999 ok test_uncertain_send_is_persisted_and_not_retried (test_native_protocol_pipeline.EngineTests.test_uncertain_send_is_persisted_and_not_retried) ... [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 根据当前会话生成回复 [协议处理] 同名客户 · 原账号单聊发送 [协议处理] 同名客户 · 本会话发送结果待人工核对,其他会话继续监听;timeout ok test_unknown_receipt_isolated_with_healthy_poll_log (test_native_protocol_pipeline.EngineTests.test_unknown_receipt_isolated_with_healthy_poll_log) ... ok test_waiting_progress_and_periodic_read_confirmation_are_throttled (test_native_protocol_pipeline.EngineTests.test_waiting_progress_and_periodic_read_confirmation_are_throttled) ... ok test_cancelled_before_send_does_not_consume_id (test_native_protocol_pipeline.JournalTests.test_cancelled_before_send_does_not_consume_id) ... ok test_changed_payload_same_event_is_blocked (test_native_protocol_pipeline.JournalTests.test_changed_payload_same_event_is_blocked) ... ok test_failure_does_not_automatically_retry (test_native_protocol_pipeline.JournalTests.test_failure_does_not_automatically_retry) ... ok test_invalid_text_rejected (test_native_protocol_pipeline.JournalTests.test_invalid_text_rejected) ... ok test_missing_conversation_blocks_send (test_native_protocol_pipeline.JournalTests.test_missing_conversation_blocks_send) ... ok test_reopen_after_success_never_resends (test_native_protocol_pipeline.JournalTests.test_reopen_after_success_never_resends) ... ok test_success_receipt_and_repeat_returns_saved_result (test_native_protocol_pipeline.JournalTests.test_success_receipt_and_repeat_returns_saved_result) ... ok test_unknown_blocks_retry (test_native_protocol_pipeline.JournalTests.test_unknown_blocks_retry) ... ok test_wrong_account_rejected_before_journaling_or_send (test_native_protocol_pipeline.JournalTests.test_wrong_account_rejected_before_journaling_or_send) ... ok test_foreign_account_task_cannot_be_approved_deleted_or_retried (test_protocol_review_visibility.ProtocolReviewVisibilityTests.test_foreign_account_task_cannot_be_approved_deleted_or_retried) ... ok test_high_risk_reason_available_in_automatic_mode (test_protocol_review_visibility.ProtocolReviewVisibilityTests.test_high_risk_reason_available_in_automatic_mode) ... ok test_media_batch_is_visible_manual_work_without_approvable_draft (test_protocol_review_visibility.ProtocolReviewVisibilityTests.test_media_batch_is_visible_manual_work_without_approvable_draft) ... ok test_next_valid_batch_discards_old_manual_requirement (test_protocol_review_visibility.ProtocolReviewVisibilityTests.test_next_valid_batch_discards_old_manual_requirement) ... ok test_old_saved_review_and_manual_tasks_restore_metadata_only (test_protocol_review_visibility.ProtocolReviewVisibilityTests.test_old_saved_review_and_manual_tasks_restore_metadata_only) ... ok test_overlong_batch_cannot_be_approved_as_a_draft (test_protocol_review_visibility.ProtocolReviewVisibilityTests.test_overlong_batch_cannot_be_approved_as_a_draft) ... ok test_retry_clears_old_metadata_then_rechecks_media_without_sending (test_protocol_review_visibility.ProtocolReviewVisibilityTests.test_retry_clears_old_metadata_then_rechecks_media_without_sending) ... ok test_review_draft_reason_persists_then_explicit_approval_sends_once (test_protocol_review_visibility.ProtocolReviewVisibilityTests.test_review_draft_reason_persists_then_explicit_approval_sends_once) ... ok test_unknown_receipt_cannot_be_approved_or_retried (test_protocol_review_visibility.ProtocolReviewVisibilityTests.test_unknown_receipt_cannot_be_approved_or_retried) ... ok test_database_wide_failure_propagates_without_healthy_claim_or_send (test_protocol_listener_continuity.ProtocolListenerContinuityTests.test_database_wide_failure_propagates_without_healthy_claim_or_send) ... ok test_explicit_pre_send_unavailable_stays_error_and_peers_continue (test_protocol_listener_continuity.ProtocolListenerContinuityTests.test_explicit_pre_send_unavailable_stays_error_and_peers_continue) ... ok test_foreign_account_task_cannot_send_while_current_account_continues (test_protocol_listener_continuity.ProtocolListenerContinuityTests.test_foreign_account_task_cannot_send_while_current_account_continues) ... ok test_generation_error_does_not_stop_another_conversation (test_protocol_listener_continuity.ProtocolListenerContinuityTests.test_generation_error_does_not_stop_another_conversation) ... ok test_malformed_message_row_does_not_drop_valid_rows (test_protocol_listener_continuity.ProtocolListenerContinuityTests.test_malformed_message_row_does_not_drop_valid_rows) ... ok test_malformed_task_timing_does_not_block_peers (test_protocol_listener_continuity.ProtocolListenerContinuityTests.test_malformed_task_timing_does_not_block_peers) ... ok test_media_manual_handling_only_blocks_its_own_conversation (test_protocol_listener_continuity.ProtocolListenerContinuityTests.test_media_manual_handling_only_blocks_its_own_conversation) ... ok test_new_messages_and_contact_notices_cannot_replace_unknown_send (test_protocol_listener_continuity.ProtocolListenerContinuityTests.test_new_messages_and_contact_notices_cannot_replace_unknown_send) ... ok test_pending_review_only_blocks_its_own_conversation (test_protocol_listener_continuity.ProtocolListenerContinuityTests.test_pending_review_only_blocks_its_own_conversation) ... ok test_restart_keeps_unknown_and_failed_tasks_isolated (test_protocol_listener_continuity.ProtocolListenerContinuityTests.test_restart_keeps_unknown_and_failed_tasks_isolated) ... ok test_sending_persistence_error_preserves_no_replay_and_peer_processing (test_protocol_listener_continuity.ProtocolListenerContinuityTests.test_sending_persistence_error_preserves_no_replay_and_peer_processing) ... ok test_task_context_read_error_is_recorded_without_stopping_peers (test_protocol_listener_continuity.ProtocolListenerContinuityTests.test_task_context_read_error_is_recorded_without_stopping_peers) ... ok test_unexpected_sender_exception_is_unknown_not_automatic_retry (test_protocol_listener_continuity.ProtocolListenerContinuityTests.test_unexpected_sender_exception_is_unknown_not_automatic_retry) ... ok test_unknown_receipt_does_not_stop_same_poll_or_future_peer_tasks (test_protocol_listener_continuity.ProtocolListenerContinuityTests.test_unknown_receipt_does_not_stop_same_poll_or_future_peer_tasks) ... ok test_context_reloaded_for_generation_can_exclude_group (test_protocol_session_exclusions.ProtocolSessionExclusions.test_context_reloaded_for_generation_can_exclude_group) ... ok test_database_existing_direct_filter_rejects_group_before_content_read (test_protocol_session_exclusions.ProtocolSessionExclusions.test_database_existing_direct_filter_rejects_group_before_content_read) ... ok test_duplicate_excluded_event_does_not_rewrite_queue_or_repeat_log (test_protocol_session_exclusions.ProtocolSessionExclusions.test_duplicate_excluded_event_does_not_rewrite_queue_or_repeat_log) ... ok test_excluded_legacy_manual_or_error_tasks_are_removed_before_review (test_protocol_session_exclusions.ProtocolSessionExclusions.test_excluded_legacy_manual_or_error_tasks_are_removed_before_review) ... ok test_excluded_sessions_do_not_block_other_personal_session (test_protocol_session_exclusions.ProtocolSessionExclusions.test_excluded_sessions_do_not_block_other_personal_session) ... ok test_final_native_guard_cancels_then_clears_only_unsent_draft (test_protocol_session_exclusions.ProtocolSessionExclusions.test_final_native_guard_cancels_then_clears_only_unsent_draft) ... ok test_foreign_account_draft_is_never_cleared_by_current_account_policy (test_protocol_session_exclusions.ProtocolSessionExclusions.test_foreign_account_draft_is_never_cleared_by_current_account_policy) ... ok test_group_ids_and_structured_kinds_never_generate (test_protocol_session_exclusions.ProtocolSessionExclusions.test_group_ids_and_structured_kinds_never_generate) ... ok test_identity_changed_during_generation_drops_draft_before_review_or_send (test_protocol_session_exclusions.ProtocolSessionExclusions.test_identity_changed_during_generation_drops_draft_before_review_or_send) ... ok test_latest_context_identity_is_checked_before_generation (test_protocol_session_exclusions.ProtocolSessionExclusions.test_latest_context_identity_is_checked_before_generation) ... ok test_latest_last_message_metadata_is_checked_even_without_context_kind (test_protocol_session_exclusions.ProtocolSessionExclusions.test_latest_last_message_metadata_is_checked_even_without_context_kind) ... ok test_named_system_sessions_never_generate_or_enter_review (test_protocol_session_exclusions.ProtocolSessionExclusions.test_named_system_sessions_never_generate_or_enter_review) ... ok test_new_excluded_message_cannot_replace_unknown_send (test_protocol_session_exclusions.ProtocolSessionExclusions.test_new_excluded_message_cannot_replace_unknown_send) ... ok test_personal_message_mentions_of_groups_or_application_are_not_filtered (test_protocol_session_exclusions.ProtocolSessionExclusions.test_personal_message_mentions_of_groups_or_application_are_not_filtered) ... ok test_personal_name_containing_group_word_is_not_group_identity (test_protocol_session_exclusions.ProtocolSessionExclusions.test_personal_name_containing_group_word_is_not_group_identity) ... ok test_restart_discards_old_drafts_and_reviews_preserving_dedup (test_protocol_session_exclusions.ProtocolSessionExclusions.test_restart_discards_old_drafts_and_reviews_preserving_dedup) ... ok test_restart_keeps_attempted_delivery_evidence (test_protocol_session_exclusions.ProtocolSessionExclusions.test_restart_keeps_attempted_delivery_evidence) ... ok test_unknown_delivery_after_excluded_guard_preserves_evidence (test_protocol_session_exclusions.ProtocolSessionExclusions.test_unknown_delivery_after_excluded_guard_preserves_evidence) ... ok test_cancelled_context_history_only_keeps_unanswered (test_protocol_audit_boundaries.ProtocolAuditBoundaries.test_cancelled_context_history_only_keeps_unanswered) ... ok test_context_enabled_retains_both_roles_and_unanswered_batch (test_protocol_audit_boundaries.ProtocolAuditBoundaries.test_context_enabled_retains_both_roles_and_unanswered_batch) ... ok test_exactly_100_unanswered_messages_preserve_every_part (test_protocol_audit_boundaries.ProtocolAuditBoundaries.test_exactly_100_unanswered_messages_preserve_every_part) ... ok test_existing_approved_draft_with_media_is_not_sent (test_protocol_audit_boundaries.ProtocolAuditBoundaries.test_existing_approved_draft_with_media_is_not_sent) ... ok test_image_then_related_text_stays_manual (test_protocol_audit_boundaries.ProtocolAuditBoundaries.test_image_then_related_text_stays_manual) ... ok test_old_media_before_own_reply_does_not_block_new_text (test_protocol_audit_boundaries.ProtocolAuditBoundaries.test_old_media_before_own_reply_does_not_block_new_text) ... ok test_overflowing_unanswered_batch_cannot_answer_from_truncated_tail (test_protocol_audit_boundaries.ProtocolAuditBoundaries.test_overflowing_unanswered_batch_cannot_answer_from_truncated_tail) ... ok test_own_reply_within_long_history_makes_current_batch_complete (test_protocol_audit_boundaries.ProtocolAuditBoundaries.test_own_reply_within_long_history_makes_current_batch_complete) ... ok test_restart_preserves_uncertain_conversation_and_processes_others (test_protocol_audit_boundaries.ProtocolAuditBoundaries.test_restart_preserves_uncertain_conversation_and_processes_others) ... ok test_unanswered_batch_not_lost_with_short_context_limit (test_protocol_audit_boundaries.ProtocolAuditBoundaries.test_unanswered_batch_not_lost_with_short_context_limit) ... ok test_uncertain_receipt_for_other_account_does_not_pause_current (test_protocol_audit_boundaries.ProtocolAuditBoundaries.test_uncertain_receipt_for_other_account_does_not_pause_current) ... ok test_existing_system_notice_is_checked_before_generation (test_contact_reply_guard.ProtocolContactTests.test_existing_system_notice_is_checked_before_generation) ... [协议收信] 同名客户 · 已加入回复队列 [协议跳过] 同名客户 · 对方开启联系人验证,当前不是联系人,已跳过自动回复 ok test_failed_notice_lookup_keeps_unknown_send_protected (test_contact_reply_guard.ProtocolContactTests.test_failed_notice_lookup_keeps_unknown_send_protected) ... [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 根据当前会话生成回复 [协议处理] 同名客户 · 原账号单聊发送 [协议处理] 同名客户 · 本会话发送结果待人工核对,其他会话继续监听;callback timeout ok test_notice_arriving_during_generation_cancels_draft (test_contact_reply_guard.ProtocolContactTests.test_notice_arriving_during_generation_cancels_draft) ... [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 根据当前会话生成回复 [协议跳过] 同名客户 · 对方开启联系人验证,当前不是联系人,已跳过自动回复 ok test_notice_blocks_one_chat_and_another_chat_still_sends (test_contact_reply_guard.ProtocolContactTests.test_notice_blocks_one_chat_and_another_chat_still_sends) ... [协议跳过] 同名客户 · 对方开启联系人验证,当前不是联系人,已跳过自动回复 [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 根据当前会话生成回复 [协议处理] 同名客户 · 原账号单聊发送 [协议发送成功] 同名客户 · 服务器消息 999 ok test_other_send_failure_remains_protected (test_contact_reply_guard.ProtocolContactTests.test_other_send_failure_remains_protected) ... [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 根据当前会话生成回复 [协议处理] 同名客户 · 原账号单聊发送 [协议处理] 同名客户 · 客户端拒绝发送,需人工核对;network unavailable ok test_rejection_during_send_is_not_retried_after_restart (test_contact_reply_guard.ProtocolContactTests.test_rejection_during_send_is_not_retried_after_restart) ... [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 根据当前会话生成回复 [协议处理] 同名客户 · 原账号单聊发送 [协议跳过] 同名客户 · 该用户不是你的联系人 ok test_restore_notice_allows_later_message (test_contact_reply_guard.ProtocolContactTests.test_restore_notice_allows_later_message) ... [协议跳过] 同名客户 · 对方开启联系人验证,当前不是联系人,已跳过自动回复 [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 根据当前会话生成回复 [协议处理] 同名客户 · 原账号单聊发送 [协议发送成功] 同名客户 · 服务器消息 999 ok test_unknown_receipt_with_contact_notice_isolated_without_resending (test_contact_reply_guard.ProtocolContactTests.test_unknown_receipt_with_contact_notice_isolated_without_resending) ... [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 根据当前会话生成回复 [协议处理] 同名客户 · 原账号单聊发送 [协议跳过] 同名客户 · 对方开启联系人验证,当前不是联系人,已跳过自动回复 ok test_user_quoting_notice_does_not_disable_chat (test_contact_reply_guard.ProtocolContactTests.test_user_quoting_notice_does_not_disable_chat) ... [协议收信] 同名客户 · 已加入回复队列 [协议处理] 同名客户 · 根据当前会话生成回复 [协议处理] 同名客户 · 原账号单聊发送 [协议发送成功] 同名客户 · 服务器消息 999 ok test_bad_rows_do_not_crash_context_or_skip_later_valid_messages (test_database_timestamp_audit.DatabaseTimestampAudit.test_bad_rows_do_not_crash_context_or_skip_later_valid_messages) ... ok test_nonfinite_timestamps_are_not_messages (test_database_timestamp_audit.DatabaseTimestampAudit.test_nonfinite_timestamps_are_not_messages) ... ok test_out_of_range_timestamps_are_not_messages (test_database_timestamp_audit.DatabaseTimestampAudit.test_out_of_range_timestamps_are_not_messages) ... ok test_seconds_and_milliseconds_preserve_chronology (test_database_timestamp_audit.DatabaseTimestampAudit.test_seconds_and_milliseconds_preserve_chronology) ... ok ---------------------------------------------------------------------- Ran 129 tests in 6.167s OK