сообщения больше не выполняется полный scan/rewrite архива для expiry. Очистка остаётся в maintenance и перед MAM-запросами; append и crash checkpoint до fanout сохранены. - Неизменённые native config/persistent index не перезаписываются при каждом сообщении. Удалённые файлы восстанавливаются, ошибки экспорта повторяются. - CSI больше не сохраняет SM snapshot при отсутствии изменения durable очереди. Изменённая очередь сохраняется до отправки; при ошибке записи очередь откатывается. - Личные сообщения, IQ и входящая федерация к аккаунтам больше не захватывают общий MUC mutex, ожидая несвязанную работу с комнатными архивами. - Добавлены регрессии native exports/archive scanning/CSI rollback и реальный TLS latency check в verify-local.sh, автоматически включённый и в CI. Измерения и границы подтверждения: [docs/MESSAGE-LATENCY.md](docs/MESSAGE-LATENCY.md). Результаты итогового прогона: [docs/VALIDATION-0.8.1.md](docs/VALIDATION-0.8.1.md). - Личные сообщения и SM ACK больше не ждут сетевую отправку push. Уведомления отправляются через очередь1024 с максимум8параллельных маршрутов; worker и его задачи отменяются при завершении serve. Ошибки очереди/маршрута логируются. - Offline сообщение сохраняется до публикации push, чтобы проснувшийся клиент мог сразу получить его. Подтверждена очередь при первом TLS stream push gateway. - По умолчанию CSI считает важными bodyless OMEMO legacy/2, delivery receipts и chat markers. Явный список `csi_important_payloads` заменяет расширенные defaults. Низкоприоритетный headline по-прежнему буферизуется. Policy обновляется и при SM resume. - Выбор адресатов и carbons фильтрует владельцев до захвата session mutex; зависшая сессия чужого аккаунта не задерживает этот путь. Duplicate SM ACK без изменения durable counters/queue не переписывает snapshot. - Bind2 и MAM metadata IQ читают только первый/последний native record вместо сканирования всей истории. Индекс не требуется; recovery/лимиты записи сохранены. - Добавлен `message-processing-slow`: обработка message дольше250мс, поля duration_ms/route, без payload/токенов. Это время обработки сервером, не peer receipt. - Новые сетевые регрессии включены в verify-local.sh/GitHub CI. Причины, изменение CSI policy, измерения и ограничения: [docs/PERSONAL-MESSAGE-LATENCY.md](docs/PERSONAL-MESSAGE-LATENCY.md).
1199 lines
50 KiB
Plaintext
1199 lines
50 KiB
Plaintext
Finished `test` profile [unoptimized] target(s) in 0.11s
|
|
Running unittests src/lib.rs (target/debug/deps/rust_xmpp-1dba4060b94f6305)
|
|
|
|
running 48 tests
|
|
test csi::checkpoint_tests::only_queue_changes_require_a_checkpoint ... ok
|
|
test federation::tests::starttls_must_be_an_immediate_stream_feature ... ok
|
|
test federation::tests::federation_domains_are_dns_names_and_case_insensitive ... ok
|
|
test federation::tests::external_must_be_in_the_advertised_mechanisms ... ok
|
|
test http_config::tests::external_prefix_and_standard_port ... ok
|
|
test csi::checkpoint_tests::failed_queue_checkpoints_restore_append_and_drain_without_copying_queue ... ok
|
|
test federation::tests::stream_restarts_compare_canonical_domains ... ok
|
|
test http_config::tests::literal_pchars_and_percent_encoding_are_supported ... ok
|
|
test http_proxy::tests::config_validation_and_network_boundaries ... ok
|
|
test http_config::tests::routes_hosts_and_default_without_overriding_known_hosts ... ok
|
|
test http_config::tests::invalid_paths_types_urls_and_conflicts_are_errors ... ok
|
|
test http_proxy::tests::empty_native_lua_table_disables_proxy_trust ... ok
|
|
test http_config::tests::mounts_inherit_per_app_and_expand_virtual_host ... ok
|
|
test http_proxy::tests::forwarded_mode_stops_at_first_untrusted_hop ... ok
|
|
test http_proxy::tests::forwarded_tls_termination_cannot_upgrade_a_plaintext_chain_hop ... ok
|
|
test http_proxy::tests::legacy_chain_uses_rightmost_untrusted_and_tls_is_preserved ... ok
|
|
test http_proxy::tests::malformed_forwarded_and_unknown_identifiers_are_ignored ... ok
|
|
test http_proxy::tests::untrusted_socket_ignores_spoofed_headers ... ok
|
|
test http_transport::tests::bosh_processing_capacity_is_bounded ... ok
|
|
test http_transport::tests::independent_framing ... ok
|
|
test http_transport::tests::websocket_preserves_inherited_namespaces_and_spaced_declarations ... ok
|
|
test http_transport::tests::configured_mount_host_origin_and_secure_dispatch ... ok
|
|
test logging::tests::console_aliases_share_one_sink_with_combined_levels ... ok
|
|
test sasl::tests::reject_malformed_and_downgrade ... ok
|
|
test sasl::tests::rfc5802_sha1_vector ... ok
|
|
test server::authorization_tests::http_interfaces_follow_secure_override_wildcards_and_global_fallback ... ok
|
|
test server::authorization_tests::pep_diagnostics_count_only_first_item_devices_without_logging_ids ... ok
|
|
test server::authorization_tests::pep_diagnostics_exclude_payloads_and_identifiers ... ok
|
|
test http_service::tests::upload_claim_refreshes_completion_state_after_an_earlier_snapshot ... ok
|
|
test sessions::push_timeout_tests::first_important_push_shortens_extended_hibernation_once ... ok
|
|
test sessions::tests::acknowledgement_wraps ... ok
|
|
test sessions::tests::graceful_disconnect_is_not_resumable ... ok
|
|
test sessions::tests::resume_replays_only_unacked_and_checks_owner ... ok
|
|
test sessions::tests::traffic_before_sm_enable_is_not_counted ... ok
|
|
test upload_migration::tests::local_spool_checks_size_and_hash_and_preserves_source ... ok
|
|
test upload_migration::tests::pending_and_corrupt_journals_block_startup ... ok
|
|
test wire::tests::arbitrary_prefix_and_inherited_namespaces ... ok
|
|
test wire::tests::cdata_and_comments_frame_without_counting_brackets ... ok
|
|
test wire::tests::declarations_rejected ... ok
|
|
test wire::tests::fragmented_and_pipelined ... ok
|
|
test wire::tests::invalid_namespace_and_declarations_rejected ... ok
|
|
test http_service::tests::upload_internal_mount_is_independent_of_advertised_proxy_prefix ... ok
|
|
test sasl::tests::sha256_independent_python_vector ... ok
|
|
test http_service::tests::abandoned_slots_release_quota_without_pruning_existing_or_active_files ... ok
|
|
test sasl::tests::plus_channel_binding_and_ssdp_are_authenticated ... ok
|
|
test server::authorization_tests::upload_requires_registered_local_account_or_explicit_remote_access ... ok
|
|
test sasl::tests::wrong_proof_nonce_binding_and_duplicates ... ok
|
|
test admin::tests::real_admin_xml_protocol_over_duplex ... ok
|
|
|
|
test result: ok. 48 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.39s
|
|
|
|
Running unittests src/main.rs (target/debug/deps/rust_xmpp-18c1e37579680121)
|
|
|
|
running 0 tests
|
|
|
|
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
|
|
|
|
Running tests/admin_socket.rs (target/debug/deps/admin_socket-98ea57263855c936)
|
|
|
|
running 1 test
|
|
test prosody_wire_commands_password_prompt_and_safe_errors ... ignored, requires AF_UNIX socket permission; run on target host with --ignored
|
|
|
|
test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s
|
|
|
|
Running tests/archive_mam.rs (target/debug/deps/archive_mam-3fba5ff1bd14ff0e)
|
|
|
|
running 14 tests
|
|
test archive_larger_than_128mib_streams ... ignored, large-file scalability regression; run explicitly
|
|
test mam_preferences_persist ... ok
|
|
test corrupt_archive_reports_server_error_and_namespace_stripping_is_precise ... ok
|
|
test legacy_records_binary_cache_and_roundtrip ... ok
|
|
test append_is_incremental_and_recovers_torn_tail ... ok
|
|
test archive_roundtrip_preserves_default_namespace_resets ... ok
|
|
test real_archive_sid_and_sender_privacy ... ok
|
|
test equal_cursors_and_normalized_query_jids ... ok
|
|
test smart_enable_and_message_selection ... ok
|
|
test muc_archive_filters_stanza_kind_instead_of_sender_jid ... ok
|
|
test zero_page_dates_and_invalid_forms ... ok
|
|
test mam_paging_filters_and_forbidden ... ok
|
|
test extended_ids_ranges_flip_and_metadata ... ok
|
|
test namespaces_expiry_and_concurrent_append ... ok
|
|
|
|
test result: ok. 13 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.04s
|
|
|
|
Running tests/auth.rs (target/debug/deps/auth-33143b97a74eee33)
|
|
|
|
running 3 tests
|
|
test traversal_and_malicious_account_records_rejected ... ok
|
|
test create_and_read_hashed_accounts ... ok
|
|
test authentication_prepares_names_without_relaxing_account_management ... ok
|
|
|
|
test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.67s
|
|
|
|
Running tests/cli.rs (target/debug/deps/cli-81c768157b2e259b)
|
|
|
|
running 2 tests
|
|
test server_cannot_be_mistaken_for_running_service ... ok
|
|
test conversion_preserves_source_and_refuses_overwrite ... ok
|
|
|
|
test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
|
|
|
|
Running tests/config.rs (target/debug/deps/config-91d6a6fd8d03deb0)
|
|
|
|
running 12 tests
|
|
test component_can_explicitly_enable_global_modules ... ok
|
|
test include_cycles_rejected ... ok
|
|
test declarations_and_overrides ... ok
|
|
test include_has_own_global_scope_and_parent_scope_is_restored ... ok
|
|
test storage_paths_encode_like_prosody ... ok
|
|
test tables_cannot_recurse_forever ... ok
|
|
test supplied_configuration_scopes_arithmetic_and_modules ... ok
|
|
test runtime_capabilities_are_unavailable ... ok
|
|
test malformed_values_rejected ... ok
|
|
test all_formats_round_trip_actual_config ... ok
|
|
test supplied_config_matches_original_prosody_loader ... ok
|
|
test loops_are_bounded ... ok
|
|
|
|
test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
|
|
|
|
Running tests/csi.rs (target/debug/deps/csi-484464365f1be63b)
|
|
|
|
running 2 tests
|
|
test bounded_queue_flush_delay_activity_and_grace ... ok
|
|
test native_importance_rules ... ok
|
|
|
|
test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
|
|
|
|
Running tests/csi_native.rs (target/debug/deps/csi_native-22d788125d4db792)
|
|
|
|
running 1 test
|
|
test native_prosody_csi_importance_matches ... ignored, requires PROSODY_REFERENCE_SOURCE and PROSODY_REFERENCE_LUA
|
|
|
|
test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s
|
|
|
|
Running tests/data_lock.rs (target/debug/deps/data_lock-8d78dbe5153f1bd0)
|
|
|
|
running 2 tests
|
|
test child_process_probe ... ok
|
|
test excludes_another_process_and_releases_on_drop ... ok
|
|
|
|
test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
|
|
|
|
Running tests/debug_legacy.rs (target/debug/deps/debug_legacy-8eed3e61532fa343)
|
|
|
|
running 1 test
|
|
test debug_empty_legacy_bind ... ok
|
|
|
|
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
|
|
|
|
Running tests/federation_tls.rs (target/debug/deps/federation_tls-5b930bc0a4897f80)
|
|
|
|
running 3 tests
|
|
test native_prosody_tls_external_bidirectional ... ignored, requires native Prosody cafd74b9c5ea and Lua TLS dependencies
|
|
test mutual_tls_external_delivery_and_certificate_identity_rejection ... ok
|
|
test reuses_connections_serializes_writes_and_retires_idle_or_closed_peers ... ok
|
|
|
|
test result: ok. 2 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 1.11s
|
|
|
|
Running tests/gajim_features.rs (target/debug/deps/gajim_features-5ea32b08cb6c3580)
|
|
|
|
running 6 tests
|
|
test security_catalog_default_is_a_real_label_and_module_can_be_disabled ... ok
|
|
test unsupported_security_policy_configuration_returns_explicit_error ... ok
|
|
test policy_catalog_selects_default_policy_and_maps_display_and_explicit_label ... ok
|
|
test security_catalogs_serve_both_versions_and_preserve_requested_target ... ok
|
|
test actual_example_policy_configuration_exposes_classifications_as_catalog_labels ... ok
|
|
test malformed_or_unknown_policy_catalog_schemas_are_rejected ... ok
|
|
|
|
test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
|
|
|
|
Running tests/http_altconnect.rs (target/debug/deps/http_altconnect-075f1b2186b0b689)
|
|
|
|
running 3 tests
|
|
test native_link_order_schemes_and_loaded_module_gates ... ok
|
|
test public_prefix_and_host_paths_inherit_independently ... ok
|
|
test bad_advertisement_types_and_route_collisions_are_rejected ... ok
|
|
|
|
test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
|
|
|
|
Running tests/http_transport.rs (target/debug/deps/http_transport-f94bf41ca6508ce7)
|
|
|
|
running 10 tests
|
|
test configured_origin_is_enforced ... ok
|
|
test bosh_preserves_namespace_inherited_from_body ... ok
|
|
test transport_paths_and_cors_preflight_match_prosody ... ok
|
|
test bosh_session_retries_restart_termination ... ok
|
|
test bosh_termination_waits_for_graceful_cleanup_before_reconnect ... ok
|
|
test bosh_reorders_two_requests_without_replaying_stanzas ... ok
|
|
test websocket_frames_are_independent_xml ... ok
|
|
test websocket_disconnect_delivers_eof_without_graceful_close ... ok
|
|
test websocket_close_allows_graceful_engine_cleanup ... ok
|
|
test bosh_retry_survives_aborted_http_request_without_replaying_stanzas ... ok
|
|
|
|
test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s
|
|
|
|
Running tests/http_upload.rs (target/debug/deps/http_upload-985df4a30ade1594)
|
|
|
|
running 5 tests
|
|
test https_endpoint_uses_real_tls ... ok
|
|
test percent_escape_case_and_equivalent_url_spelling ... ok
|
|
test persisted_prosody_archive_and_hs256_slot_survive_without_sidecar ... ok
|
|
test expired_upload_releases_quota ... ok
|
|
test upload_authorization_streaming_ranges_and_restart ... ok
|
|
|
|
test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
|
|
|
|
Running tests/iq_errors.rs (target/debug/deps/iq_errors-57e28d145c2197b1)
|
|
|
|
running 2 tests
|
|
test pep_errors_identify_the_account_and_echo_the_request ... ok
|
|
test server_errors_without_target_remain_unaddressed_and_escape_attributes ... ok
|
|
|
|
test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
|
|
|
|
Running tests/logging.rs (target/debug/deps/logging-6cd0153609754520)
|
|
|
|
running 10 tests
|
|
test native_console_shorthands_are_accepted ... ok
|
|
test json_records_and_bounded_ranges ... ok
|
|
test filters_appends_escapes_and_redacts ... ok
|
|
test rejects_malformed_configuration ... ok
|
|
test overlapping_shorthand_destinations_receive_each_record_once ... ok
|
|
test explicit_sink_levels_select_exactly_and_deduplicate ... ok
|
|
test failed_reopen_keeps_all_original_handles ... ok
|
|
test reopen_rotated_files_updates_clones ... ok
|
|
test shared_sink_unions_levels_and_preserves_distinct_destinations ... ok
|
|
test cloned_loggers_serialize_records ... ok
|
|
|
|
test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
|
|
|
|
Running tests/message_routing.rs (target/debug/deps/message_routing-efbb4699b234977b)
|
|
|
|
running 2 tests
|
|
test unknown_resource_falls_back_to_available_bare_jid ... ok
|
|
test headline_uses_all_nonnegative_available_resources_and_errors_never_fallback ... ok
|
|
|
|
test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
|
|
|
|
Running tests/muc_access.rs (target/debug/deps/muc_access-602820b6fe312a25)
|
|
|
|
running 3 tests
|
|
test binary_occupant_id_salt_survives_saves_and_restarts ... ok
|
|
test moderators_cannot_kick_or_demote_other_moderators ... ok
|
|
test nested_affiliations_do_not_fall_back_to_obsolete_flat_entries ... ok
|
|
|
|
test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
|
|
|
|
Running tests/muc_crash_state.rs (target/debug/deps/muc_crash_state-9359f59aa4d6add4)
|
|
|
|
running 7 tests
|
|
test safe_presence_checkpoint_sanitization_is_idempotent ... ok
|
|
test foreign_stanzas_do_not_initialize_or_rewrite_muc_checkpoint ... ok
|
|
test durable_disconnect_removes_last_temporary_room_without_shutdown_export ... ok
|
|
test journal_failure_returns_no_routing_and_rolls_back_role_mutation ... ok
|
|
test acknowledged_kick_and_room_destruction_cannot_resurrect_membership ... ok
|
|
test dormant_deadline_stays_fixed_when_another_occupant_recovers_and_sends ... ok
|
|
test temporary_membership_and_full_bounded_history_survive_ungraceful_loss ... ok
|
|
|
|
test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
|
|
|
|
Running tests/muc_domain_bans.rs (target/debug/deps/muc_domain_bans-87bb89a13f7d66ac)
|
|
|
|
running 2 tests
|
|
test native_domain_bans_block_remote_users_but_allow_explicit_members ... ok
|
|
test applying_domain_ban_removes_remote_occupants_and_blocks_rejoin ... ok
|
|
|
|
test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
|
|
|
|
Running tests/muc_extensions.rs (target/debug/deps/muc_extensions-d892b608e50c5d11)
|
|
|
|
running 10 tests
|
|
test broadcast_roles_hide_visitors_and_configuration_announces_transition ... ok
|
|
test disabled_optional_vcard_and_occupant_ids_are_not_advertised_or_emitted ... ok
|
|
test messages_cannot_spoof_room_identity_hats_or_occupant_identifiers ... ok
|
|
test large_optional_history_does_not_prevent_checkpointing_membership ... ok
|
|
test mam_all_rooms_presence_logging_public_queries_and_optional_totals ... ok
|
|
test restricted_private_messages_allow_self_and_optional_moderators ... ok
|
|
test offline_reserved_affiliates_follow_anonymity_and_roominfo_counts_nicknames ... ok
|
|
test language_config_sections_discovery_and_native_affiliation_hats ... ok
|
|
test recovery_claim_is_durable_and_unrelated_disconnect_keeps_temporary_claims ... ok
|
|
test explicit_new_nickname_consumes_old_proof_and_pending_nicks_are_reserved ... ok
|
|
|
|
test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
|
|
|
|
Running tests/muc_flow.rs (target/debug/deps/muc_flow-23834b608bde0e71)
|
|
|
|
running 18 tests
|
|
test configured_lock_timeout_expires_without_owner_submission ... ok
|
|
test iq_response_requires_expected_sender ... ok
|
|
test join_lock_chat_leave ... ok
|
|
test authorization_and_conflict ... ok
|
|
test multiple_resources_share_nick_and_private_delivery ... ok
|
|
test occupant_id_is_stable_and_spoofed_ids_removed ... ok
|
|
test nick_invite_destroy_and_local_creation ... ok
|
|
test persistence_roundtrip ... ok
|
|
test preserves_unknown_binary_mixed_room_fields ... ok
|
|
test native_muc_archive_type_and_anonymity_are_preserved ... ok
|
|
test restored_temporary_room_is_deleted_after_last_disconnect ... ok
|
|
test maintenance_expires_idle_archives_and_tombstones ... ok
|
|
test archive_history_and_permissions ... ok
|
|
test persistent_destroy_creates_prosody_tombstone ... ok
|
|
test switching_to_members_only_removes_unaffiliated_users ... ok
|
|
test reserved_nickname_blocks_other_users ... ok
|
|
test visitor_voice_request_cannot_spoof_identity_or_grant_itself_voice ... ok
|
|
test room_vcard_owner_only_and_avatar_presence ... ok
|
|
|
|
test result: ok. 18 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
|
|
|
|
Running tests/muc_history.rs (target/debug/deps/muc_history-39f64fc14afaae94)
|
|
|
|
running 10 tests
|
|
test only_direct_history_children_are_parsed ... ok
|
|
test maxchars_counts_transmitted_utf8_bytes_including_address_and_delay ... ok
|
|
test capacity_changes_trim_and_zero_disables_history ... ok
|
|
test explicit_count_and_zero_limit ... ok
|
|
test replay_carries_room_delay_and_recipient ... ok
|
|
test snapshot_restores_last_message_without_adding_another_delay ... ok
|
|
test subjects_and_hints_follow_native_history_eligibility ... ok
|
|
test since_and_seconds_use_stricter_cutoff_inclusive ... ok
|
|
test ordinary_history_is_bounded_and_returns_oldest_first ... ok
|
|
test default_count_applies_only_without_valid_explicit_constraints ... ok
|
|
|
|
test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
|
|
|
|
Running tests/muc_latency_storage.rs (target/debug/deps/muc_latency_storage-24b24d815895d8ab)
|
|
|
|
running 2 tests
|
|
test groupchat_skips_native_rewrites_and_archive_retention_scan ... ok
|
|
test native_exports_repair_missing_files_and_export_changed_config ... ok
|
|
|
|
test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
|
|
|
|
Running tests/muc_native.rs (target/debug/deps/muc_native-1deb258080c3107b)
|
|
|
|
running 1 test
|
|
test actual_prosody_muc_mam_reads_rust_and_writes_native_archive ... ignored, requires PROSODY_REFERENCE_SOURCE and PROSODY_REFERENCE_LUA
|
|
|
|
test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s
|
|
|
|
Running tests/muc_optional_admin.rs (target/debug/deps/muc_optional_admin-09092f76957af1ff)
|
|
|
|
running 4 tests
|
|
test default_registration_denies_unaffiliated_users ... ok
|
|
test configured_tombstone_expiry_allows_immediate_recreation ... ok
|
|
test optional_registration_grants_membership_and_enforces_reserved_nickname ... ok
|
|
test administration_commands_recheck_authority_bind_sessions_and_update_live_rooms ... ok
|
|
|
|
test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
|
|
|
|
Running tests/muc_protocol.rs (target/debug/deps/muc_protocol-ff2c35e16474b6f1)
|
|
|
|
running 5 tests
|
|
test ordinary_presence_extensions_survive_but_client_identity_is_filtered ... ok
|
|
test subject_with_body_remains_an_ordinary_groupchat_message ... ok
|
|
test probes_and_invalid_presence_cannot_join_or_rename ... ok
|
|
test room_creation_policies_apply_only_to_new_rooms ... ok
|
|
test error_messages_kick_only_on_delivery_failure_and_presence_errors_kick ... ok
|
|
|
|
test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
|
|
|
|
Running tests/muc_recovery.rs (target/debug/deps/muc_recovery-56ecc83fbb4b8e27)
|
|
|
|
running 7 tests
|
|
test claim_is_one_time_and_does_not_change_untrusted_role ... ok
|
|
test pending_snapshot_keeps_original_checkpoint_time ... ok
|
|
test recovery_claim_requires_exact_authenticated_resource_and_expires ... ok
|
|
test native_checkpoint_roundtrip_filters_sensitive_extensions ... ok
|
|
test native_last_message_roundtrip_preserves_namespaces_and_rejects_other_rooms ... ok
|
|
test oversized_status_never_prevents_membership_checkpoint ... ok
|
|
test configuration_fingerprint_is_independent_of_lua_table_iteration_order ... ok
|
|
|
|
test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
|
|
|
|
Running tests/muc_restart_state.rs (target/debug/deps/muc_restart_state-20cc7fc55f4f661b)
|
|
|
|
running 3 tests
|
|
test unrelated_disconnect_does_not_delete_dormant_temporary_room ... ok
|
|
test changed_configuration_invalidates_auto_recovery_without_disclosing_password ... ok
|
|
test repeated_restart_keeps_dormant_claim_and_deadline_without_ghost_routing ... ok
|
|
|
|
test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
|
|
|
|
Running tests/muc_state_native.rs (target/debug/deps/muc_state_native-f35f6eeee693220a)
|
|
|
|
running 1 test
|
|
test actual_prosody_restores_rust_checkpoint_and_rust_reads_native_freeze ... ignored, requires PROSODY_REFERENCE_SOURCE and PROSODY_REFERENCE_LUA
|
|
|
|
test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s
|
|
|
|
Running tests/pep_client_interop.rs (target/debug/deps/pep_client_interop-116d3f27d1887fec)
|
|
|
|
running 7 tests
|
|
test native_component_notification_type_applies_to_events_and_subscription_replay ... ok
|
|
test missing_own_omemo_bundle_returns_recoverable_item_not_found ... ok
|
|
test publish_options_match_implicit_notification_defaults_on_old_nodes ... ok
|
|
test migrated_native_configuration_can_roundtrip_access_model_edit ... ok
|
|
test native_itemreply_controls_publisher_visibility_in_reads_and_replays ... ok
|
|
test avatar_and_omemo_publish_options_support_readback_and_caps_notifications ... ok
|
|
test native_open_and_subscriber_publish_models_preserve_outcast_and_blocking_checks ... ok
|
|
|
|
test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.19s
|
|
|
|
Running tests/pep_diagnostics.rs (target/debug/deps/pep_diagnostics-7741e2c6c32d43e3)
|
|
|
|
running 6 tests
|
|
test nonempty_xml_can_be_an_empty_android_device_list ... ok
|
|
test only_first_direct_item_is_parsed_and_protocols_are_distinct ... ok
|
|
test avatar_classification_does_not_inspect_or_expose_avatar_data ... ok
|
|
test payloadless_notification_is_visible_without_identifiers ... ok
|
|
test arbitrary_node_payload_and_wrong_namespace_do_not_leak ... ok
|
|
test signed_integer_limits_and_duplicates_match_java_parser ... ok
|
|
|
|
test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
|
|
|
|
Running tests/pep_discovery.rs (target/debug/deps/pep_discovery-8d14ca1d74370630)
|
|
|
|
running 4 tests
|
|
test standalone_component_does_not_claim_pep_automatic_subscriptions ... ok
|
|
test account_discovery_does_not_intercept_server_or_resource_caps ... ok
|
|
test account_disco_advertises_pep_without_requiring_a_node ... ok
|
|
test node_discovery_keeps_node_identity_errors_and_access_checks ... ok
|
|
|
|
test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s
|
|
|
|
Running tests/pep_item_order.rs (target/debug/deps/pep_item_order-b2fa0224be6531ab)
|
|
|
|
running 2 tests
|
|
test native_prosody_orders_retained_pep_items_newest_first ... ignored, requires PROSODY_REFERENCE_SOURCE and PROSODY_REFERENCE_LUA
|
|
test first_pep_item_is_current_device_list_even_with_retained_old_items ... ok
|
|
|
|
test result: ok. 1 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.07s
|
|
|
|
Running tests/preauth.rs (target/debug/deps/preauth-bcb62603a77510a9)
|
|
|
|
running 10 tests
|
|
test duplicate_or_wrong_namespace_tokens_do_not_qualify ... ok
|
|
test standard_adhoc_command_returns_contact_uri ... ok
|
|
test unknown_tokens_do_not_create_invite_stores_and_disabled_accounts_cannot_issue ... ok
|
|
test prosody_numeric_expiry_is_consumed_and_other_entries_preserved ... ok
|
|
test unknown_client_token_is_preserved_on_remote_and_pending_delivery ... ok
|
|
test concurrent_redemption_has_exactly_one_winner ... ok
|
|
test identity_scope_does_not_burn_on_wrong_sender_or_leak_to_prosody ... ok
|
|
test invitations_expire_are_single_use_and_owner_scoped ... ok
|
|
test valid_token_autoapproves_and_sends_reciprocal_request ... ok
|
|
test local_invitation_updates_both_rosters_without_granting_reverse_subscription ... ok
|
|
|
|
test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
|
|
|
|
Running tests/preauth_native.rs (target/debug/deps/preauth_native-aa108ad5d4963eb6)
|
|
|
|
running 1 test
|
|
test native_prosody_invitation_tokens_roundtrip ... ignored, requires PROSODY_REFERENCE_SOURCE and PROSODY_REFERENCE_LUA
|
|
|
|
test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s
|
|
|
|
Running tests/pubsub_native.rs (target/debug/deps/pubsub_native-53c63bfbbc6345ac)
|
|
|
|
running 1 test
|
|
test native_prosody_pep_reads_rust_and_rust_reads_native ... ignored, requires PROSODY_REFERENCE_SOURCE and PROSODY_REFERENCE_LUA
|
|
|
|
test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s
|
|
|
|
Running tests/pubsub_persistence.rs (target/debug/deps/pubsub_persistence-70493c941948c65c)
|
|
|
|
running 18 tests
|
|
test modern_bookmarks_notify_legacy_capability ... ok
|
|
test native_string_max_items_satisfies_numeric_publish_precondition ... ok
|
|
test configurable_limits_component_creation_and_publisher ... ok
|
|
test capability_discovery_replays_and_filters_notifications ... ok
|
|
test configure_requires_owner ... ok
|
|
test open_model_and_notifications ... ok
|
|
test nonpersistent_items_stay_in_memory_and_can_be_made_persistent ... ok
|
|
test reads_prosody_legacy_fixture ... ok
|
|
test full_jid_block_applies_to_reads_subscription_replays_and_events ... ok
|
|
test publish_options_conflict_is_recoverable_and_preserves_item ... ok
|
|
test pep_persists_namespaces_and_enforces_owner ... ok
|
|
test remote_unavailable_is_scoped_to_addressed_owner_and_cancels_pending ... ok
|
|
test roster_presence_access_and_foreign_subscription_denied ... ok
|
|
test remote_caps_replay_and_open_node_privacy_revoke ... ok
|
|
test subscription_options_disable_events_and_require_subscriber ... ok
|
|
test payload_policy_applies_to_subscription_and_caps_replays ... ok
|
|
test native_notification_fields_and_retract_policy_are_independent ... ok
|
|
test component_default_retention_matches_prosody_twenty_items ... ok
|
|
|
|
test result: ok. 18 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.24s
|
|
|
|
Running tests/push.rs (target/debug/deps/push-f7822aa8c48ee6ec)
|
|
|
|
running 7 tests
|
|
test native_push_body_lookup_excludes_extensions ... ignored, requires PROSODY_REFERENCE_SOURCE and PROSODY_REFERENCE_LUA
|
|
test foreign_account_cannot_register ... ok
|
|
test queue_coalesces_and_importance_matches_native ... ok
|
|
test push_summary_never_copies_foreign_namespace_body ... ok
|
|
test stable_client_registration_and_targeted_notification ... ok
|
|
test reenable_cancels_old_errors_and_failure_counts_are_per_account ... ok
|
|
test registrations_notifications_and_authenticated_errors ... ok
|
|
|
|
test result: ok. 6 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.07s
|
|
|
|
Running tests/reference_prosody.rs (target/debug/deps/reference_prosody-2be357bf8c803be8)
|
|
|
|
running 1 test
|
|
test real_prosody_storage_and_auth_roundtrip ... ignored, requires native supplied Prosody source; run scripts/prosody_compat/verify.sh
|
|
|
|
test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s
|
|
|
|
Running tests/resource_sessions.rs (target/debug/deps/resource_sessions-c5aabe5ec7bb9c57)
|
|
|
|
running 7 tests
|
|
test invalid_resume_owner_or_ack_does_not_evict_active_session ... ok
|
|
test kick_new_leaves_existing_session_unchanged ... ok
|
|
test random_conflicts_get_distinct_resources_for_same_owner ... ok
|
|
test replacement_revokes_hibernating_resume_and_survives_old_cleanup ... ok
|
|
test increment_skips_occupied_suffixes_and_preserves_sessions ... ok
|
|
test concurrent_default_binds_replace_atomically ... ok
|
|
test active_resume_preserves_state_and_replaces_transport_notifier ... ok
|
|
|
|
test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
|
|
|
|
Running tests/sasl_accounts.rs (target/debug/deps/sasl_accounts-86c86459dcf107f9)
|
|
|
|
running 1 test
|
|
test disabled_legacy_and_unicode_accounts ... ok
|
|
|
|
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.43s
|
|
|
|
Running tests/sm_durable_slots.rs (target/debug/deps/sm_durable_slots-76db8932b2edbb64)
|
|
|
|
running 11 tests
|
|
test corrupt_committed_slot_fails_recovery_closed ... ok
|
|
test durable_tokens_and_private_pending_output_have_owner_only_permissions ... ok
|
|
test session_reference_does_not_keep_store_locked_or_allow_unpersisted_writes ... ok
|
|
test recovery_discards_owned_crash_temps_and_keeps_last_committed_slot ... ok
|
|
test durable_counters_wrap_without_accepting_stale_acknowledgements ... ok
|
|
test disconnected_deadline_is_fixed_across_recovery ... ok
|
|
test independent_hubs_with_identical_connection_names_keep_their_own_slots ... ok
|
|
test shutdown_freeze_retires_old_transport_before_cleanup ... ok
|
|
test restart_restores_owner_presence_and_only_unacknowledged_output ... ok
|
|
test graceful_close_conflict_account_purge_and_expiration_remove_tokens ... ok
|
|
test store_has_one_process_owner_and_enforces_output_byte_bound ... ok
|
|
|
|
test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.23s
|
|
|
|
Running tests/storage_accounts.rs (target/debug/deps/storage_accounts-834822f717e90132)
|
|
|
|
running 20 tests
|
|
test broken_roster_is_not_overwritten ... ok
|
|
test inbound_subscription_requires_pending_to_grant_to ... ok
|
|
test account_purge_refuses_symlink_store_without_touching_other_files ... ok
|
|
test blocklist_enforcement_api ... ok
|
|
test malformed_legacy_vcard_and_private_bookmarks_rejected ... ok
|
|
test domain_roster_and_block_jid_normalization ... ok
|
|
test private_and_vcard_authorization ... ok
|
|
test malformed_roster_iq_never_mutates ... ok
|
|
test privacy_migration_only_default_deny_jids ... ok
|
|
test reads_timestamp_blocklist_and_keeps_metadata ... ok
|
|
test roster_empty_name_and_foreign_group_ignored ... ok
|
|
test purge_account_exact_files_preserves_others_and_extras ... ok
|
|
test roster_preserves_subscription_and_metadata ... ok
|
|
test subscription_handshake_and_cancel ... ok
|
|
test legacy_bookmarks_respect_host_limit_and_read_over_256 ... ok
|
|
test bookmarks_private_pep_bidirectional_and_private ... ok
|
|
test password_change_after_purge_never_recreates_account ... ok
|
|
test legacy_migration_clears_source_after_success ... ok
|
|
test vcard_pep_conversion_and_avatar ... ok
|
|
test creation_and_purge_are_serialized ... ok
|
|
|
|
test result: ok. 20 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.92s
|
|
|
|
Running tests/storage_compat.rs (target/debug/deps/storage_compat-42a6d5716b16b9e1)
|
|
|
|
running 6 tests
|
|
test empty_namespace_preserved ... ok
|
|
test stanza_roundtrip ... ok
|
|
test mixed_binary_roundtrip ... ok
|
|
test path_and_atomic_update ... ok
|
|
test rejects_cycles_code_and_bad_files ... ok
|
|
test concurrent_updates_do_not_lose_entries ... ok
|
|
|
|
test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
|
|
|
|
Running tests/tls_binding.rs (target/debug/deps/tls_binding-25db34289830aad8)
|
|
|
|
running 4 tests
|
|
test malformed_der_and_pss_parameters_fail_closed ... ok
|
|
test unknown_and_eddsa_algorithms_fail_closed ... ok
|
|
test ecdsa_uses_certificate_signature_hash ... ok
|
|
test rsa_signature_digest_and_weak_hash_upgrade ... ok
|
|
|
|
test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.45s
|
|
|
|
Running tests/tls_plus_network.rs (target/debug/deps/tls_plus_network-1a0fc780c64bdfe1)
|
|
|
|
running 2 tests
|
|
test disabling_plus_hides_bindings_and_accepts_scram_y_with_mechanisms_only_ssdp ... ok
|
|
test starttls_scram_plus_binds_real_tls_and_authenticates_ssdp_sasl1_and_sasl2 ... ok
|
|
|
|
test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.91s
|
|
|
|
Doc-tests rust_xmpp
|
|
|
|
running 0 tests
|
|
|
|
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
|
|
|
|
Finished `dev` profile [unoptimized] target(s) in 0.11s
|
|
Finished `release` profile [optimized] target(s) in 0.09s
|
|
PASS: integrated TCP roster/subscriptions, client IQ routing, CSI buffering/keepalive flush, MAM, blocking, OMEMO PEP, MUC, offline replay and SM resumption
|
|
PASS: graceful SIGTERM shutdown
|
|
PASS: independent SCRAM-SHA-1 over TLS, SASL1/SASL2, SSDP verification, server signatures and wrong-password rejection
|
|
PASS: independent SCRAM-SHA-256 over TLS, SASL1/SASL2, SSDP verification, server signatures and wrong-password rejection
|
|
PASS: Android TLS1.2 selector, TLS1.2/1.3 SCRAM SHA1/256 PLUS, SASL1/2, SSDP on/off and invalid binding rejection
|
|
PASS: JSON file logging, TLS/auth/bind correlation, rejection reasons, secret redaction and SIGHUP rotation
|
|
PASS: 20 TLS1.2/1.3 SASL1/2 cases: prepared PLAIN identities and canonical binds, invalid authz rejection, SCRAM abort/retry and active exchange restart
|
|
PASS: WSS SCRAM-SHA-256 SASL1/SASL2 with GS2 y, absent CB/PLUS, SSDP without CB separator, server signatures, bind and ping
|
|
PASS: HTTPS-only configured interfaces (127.0.0.1,::1), verified TLS, reproduced original Origin 403 then allowed Converse Origin 101, xmpp subprotocol, both WS paths, RFC 7395 open/features/close and private HTTP diagnostics
|
|
PASS: custom WS/BOSH routes, default-route 404, exact Origin policy, verified TLS proxy rewrite, trusted HTTPS metadata, untrusted/spoofed metadata denial, IPv6 when available, authenticated WS/BOSH bind/ping in legacy and RFC7239 modes and cached BOSH RID retry
|
|
PASS: XEP-0156 XRD/JRD parity, CORS, safe methods, ignored JSONP, host checks, secure URL preference, custom mounts/public prefixes, module and advertisement gates, HTTP fallback and verified WSS framing
|
|
PASS: SASL2 Bind2 TLS flow, inline SM/CSI/Carbons, private random resource, malformed requests, authentication failure and fallback
|
|
PASS: bind2-disabled, SSDP=False, SCRAM-SHA-1/PLAIN success and wrong-password rejection
|
|
PASS: bind2-disabled, SSDP=True, SCRAM-SHA-1/PLAIN success and wrong-password rejection
|
|
PASS: bind2-enabled, SSDP=False, SCRAM-SHA-1/PLAIN success and wrong-password rejection
|
|
PASS: bind2-enabled, SSDP=True, SCRAM-SHA-1/PLAIN success and wrong-password rejection
|
|
PASS: sm-disabled, SSDP=False, SCRAM-SHA-1/PLAIN success and wrong-password rejection
|
|
PASS: sm-disabled, SSDP=True, SCRAM-SHA-1/PLAIN success and wrong-password rejection
|
|
PASS: enabled-False-registration-False
|
|
PASS: enabled-False-registration-True
|
|
PASS: enabled-True-registration-False
|
|
PASS: enabled-True-registration-True
|
|
PASS: Gajim domain/account discovery, both label catalogs, authenticated password changes, IBR registration gates and fresh logins
|
|
PASS: SASL2 inline SM active/EOF resume, authenticated owner/id/h checks, replay ordering, full JID, Bind2 fallback and malformed requests
|
|
PASS: TLS account/domain discovery with PEP and push enabled/disabled; real push enable, publish options, per-node and service-wide disable
|
|
PASS: TLS Monocles/Conversations PEP first-run, no-to publishing, owner config recovery, migrated metadata, device item selectors and restart persistence
|
|
PASS: Android first-item device-list parsing sees latest publish and replacement before and after restart
|
|
PASS: STARTTLS PEP replay/live diagnostics, legacy/OMEMO2, payloadless notifications with intact IQ payloads, and private values excluded
|
|
PASS: TLS invitation command discovery, preapproval, single-use mutual roster, replay denial, unknown preauth forwarding/offline pending, account isolation
|
|
PASS: STARTTLS MUC SIGTERM restart restores live temporary/persistent rooms, exact full-JID membership, roles, presence and groupchat routing; rejects automatic cross-resource/account claims and nickname theft
|
|
PASS: recovery-history
|
|
PASS: leave
|
|
PASS: kick
|
|
PASS: demotion
|
|
PASS: password
|
|
PASS: configuration
|
|
PASS: restart-grace
|
|
PASS: custom-grace
|
|
PASS: unknown-module
|
|
PASS: destroy-tombstone
|
|
PASS: actual STARTTLS SIGKILL MUC recovery, history, acknowledged barriers and fixed grace
|
|
PASS: TLS legacy/SASL2 durable SM after SIGKILL/SIGTERM, counters, ack pruning, at-least-once pending replay, owner/token/h rejection, transport/resource conflict, MUC activation/offline fanout, grace expiry and account deletion/recreation revocation
|
|
{
|
|
"binary_sha256": "c57757476f2019c60ac877e4a66364b17283218e3cc244ae3f29cde1d3be2977",
|
|
"scope": "loopback STARTTLS; isolated fixture; no production latency claim",
|
|
"cases": [
|
|
{
|
|
"mam_enabled": false,
|
|
"sm_enabled": true,
|
|
"rounds": 3,
|
|
"seeded_muc_archive_records": 0,
|
|
"active": {
|
|
"direct_peer": {
|
|
"samples": 3,
|
|
"median_ms": 1.8904600000269056,
|
|
"p95_ms": 1.9304429999920103,
|
|
"max_ms": 1.9304429999920103,
|
|
"samples_ms": [
|
|
1.8756470000198533,
|
|
1.8904600000269056,
|
|
1.9304429999920103
|
|
]
|
|
},
|
|
"direct_application_rtt": {
|
|
"samples": 3,
|
|
"median_ms": 4.25472400002036,
|
|
"p95_ms": 4.37473499994212,
|
|
"max_ms": 4.37473499994212,
|
|
"samples_ms": [
|
|
3.8919710000300256,
|
|
4.25472400002036,
|
|
4.37473499994212
|
|
]
|
|
},
|
|
"muc_sender_echo": {
|
|
"samples": 3,
|
|
"median_ms": 3.5698000000365937,
|
|
"p95_ms": 3.893650999998499,
|
|
"max_ms": 3.893650999998499,
|
|
"samples_ms": [
|
|
3.1098660000452583,
|
|
3.5698000000365937,
|
|
3.893650999998499
|
|
]
|
|
},
|
|
"muc_peer": {
|
|
"samples": 3,
|
|
"median_ms": 3.6192310000160433,
|
|
"p95_ms": 3.9405589999432777,
|
|
"max_ms": 3.9405589999432777,
|
|
"samples_ms": [
|
|
3.154005000055804,
|
|
3.6192310000160433,
|
|
3.9405589999432777
|
|
]
|
|
}
|
|
},
|
|
"inactive": {
|
|
"direct_peer": {
|
|
"samples": 3,
|
|
"median_ms": 2.1467320000283507,
|
|
"p95_ms": 2.613242999927934,
|
|
"max_ms": 2.613242999927934,
|
|
"samples_ms": [
|
|
2.124384000012469,
|
|
2.1467320000283507,
|
|
2.613242999927934
|
|
]
|
|
},
|
|
"direct_application_rtt": {
|
|
"samples": 3,
|
|
"median_ms": 4.911349999929371,
|
|
"p95_ms": 5.607715999985885,
|
|
"max_ms": 5.607715999985885,
|
|
"samples_ms": [
|
|
4.401708000045801,
|
|
4.911349999929371,
|
|
5.607715999985885
|
|
]
|
|
},
|
|
"muc_sender_echo": {
|
|
"samples": 3,
|
|
"median_ms": 4.0735349999749815,
|
|
"p95_ms": 4.238021000105618,
|
|
"max_ms": 4.238021000105618,
|
|
"samples_ms": [
|
|
3.089648000013767,
|
|
4.0735349999749815,
|
|
4.238021000105618
|
|
]
|
|
},
|
|
"muc_peer": {
|
|
"samples": 3,
|
|
"median_ms": 4.11955900005978,
|
|
"p95_ms": 4.2870900000480106,
|
|
"max_ms": 4.2870900000480106,
|
|
"samples_ms": [
|
|
3.1140530001039224,
|
|
4.11955900005978,
|
|
4.2870900000480106
|
|
]
|
|
}
|
|
},
|
|
"urgent_flush": {
|
|
"samples": 1,
|
|
"median_ms": 3.5513789999868095,
|
|
"p95_ms": 3.5513789999868095,
|
|
"max_ms": 3.5513789999868095,
|
|
"samples_ms": [
|
|
3.5513789999868095
|
|
]
|
|
},
|
|
"headline_durably_buffered": true,
|
|
"activation_drained_queue": true,
|
|
"personal_archive_records": 0,
|
|
"muc_archive_records": 0,
|
|
"wire_body_deliveries": 27,
|
|
"status": "pass"
|
|
},
|
|
{
|
|
"mam_enabled": true,
|
|
"sm_enabled": true,
|
|
"rounds": 3,
|
|
"seeded_muc_archive_records": 0,
|
|
"active": {
|
|
"direct_peer": {
|
|
"samples": 3,
|
|
"median_ms": 5.57562999995298,
|
|
"p95_ms": 6.627433999938148,
|
|
"max_ms": 6.627433999938148,
|
|
"samples_ms": [
|
|
5.414346000065962,
|
|
5.57562999995298,
|
|
6.627433999938148
|
|
]
|
|
},
|
|
"direct_application_rtt": {
|
|
"samples": 3,
|
|
"median_ms": 11.672713999928419,
|
|
"p95_ms": 12.136518000033902,
|
|
"max_ms": 12.136518000033902,
|
|
"samples_ms": [
|
|
9.967780000010862,
|
|
11.672713999928419,
|
|
12.136518000033902
|
|
]
|
|
},
|
|
"muc_sender_echo": {
|
|
"samples": 3,
|
|
"median_ms": 5.446227999982511,
|
|
"p95_ms": 6.189593000044624,
|
|
"max_ms": 6.189593000044624,
|
|
"samples_ms": [
|
|
5.022585999995499,
|
|
5.446227999982511,
|
|
6.189593000044624
|
|
]
|
|
},
|
|
"muc_peer": {
|
|
"samples": 3,
|
|
"median_ms": 5.501564000041981,
|
|
"p95_ms": 6.313648000059402,
|
|
"max_ms": 6.313648000059402,
|
|
"samples_ms": [
|
|
5.076121999991301,
|
|
5.501564000041981,
|
|
6.313648000059402
|
|
]
|
|
}
|
|
},
|
|
"inactive": {
|
|
"direct_peer": {
|
|
"samples": 3,
|
|
"median_ms": 5.386627000007138,
|
|
"p95_ms": 5.490081000061764,
|
|
"max_ms": 5.490081000061764,
|
|
"samples_ms": [
|
|
5.2206389999582825,
|
|
5.386627000007138,
|
|
5.490081000061764
|
|
]
|
|
},
|
|
"direct_application_rtt": {
|
|
"samples": 3,
|
|
"median_ms": 10.997781000014584,
|
|
"p95_ms": 11.280016000000614,
|
|
"max_ms": 11.280016000000614,
|
|
"samples_ms": [
|
|
10.779805999959535,
|
|
10.997781000014584,
|
|
11.280016000000614
|
|
]
|
|
},
|
|
"muc_sender_echo": {
|
|
"samples": 3,
|
|
"median_ms": 5.9416880000071615,
|
|
"p95_ms": 6.300728000042,
|
|
"max_ms": 6.300728000042,
|
|
"samples_ms": [
|
|
5.658265000079155,
|
|
5.9416880000071615,
|
|
6.300728000042
|
|
]
|
|
},
|
|
"muc_peer": {
|
|
"samples": 3,
|
|
"median_ms": 5.995042000108697,
|
|
"p95_ms": 6.3529389999530395,
|
|
"max_ms": 6.3529389999530395,
|
|
"samples_ms": [
|
|
5.773301000090214,
|
|
5.995042000108697,
|
|
6.3529389999530395
|
|
]
|
|
}
|
|
},
|
|
"urgent_flush": {
|
|
"samples": 1,
|
|
"median_ms": 6.166175999965162,
|
|
"p95_ms": 6.166175999965162,
|
|
"max_ms": 6.166175999965162,
|
|
"samples_ms": [
|
|
6.166175999965162
|
|
]
|
|
},
|
|
"headline_durably_buffered": true,
|
|
"activation_drained_queue": true,
|
|
"personal_archive_records": 26,
|
|
"muc_archive_records": 6,
|
|
"wire_body_deliveries": 27,
|
|
"status": "pass"
|
|
},
|
|
{
|
|
"mam_enabled": true,
|
|
"sm_enabled": true,
|
|
"rounds": 3,
|
|
"seeded_muc_archive_records": 10000,
|
|
"active": {
|
|
"direct_peer": {
|
|
"samples": 3,
|
|
"median_ms": 5.892937999988135,
|
|
"p95_ms": 6.487584999945284,
|
|
"max_ms": 6.487584999945284,
|
|
"samples_ms": [
|
|
5.324401000052603,
|
|
5.892937999988135,
|
|
6.487584999945284
|
|
]
|
|
},
|
|
"direct_application_rtt": {
|
|
"samples": 3,
|
|
"median_ms": 10.666736999951354,
|
|
"p95_ms": 12.053192999928797,
|
|
"max_ms": 12.053192999928797,
|
|
"samples_ms": [
|
|
9.926160000077289,
|
|
10.666736999951354,
|
|
12.053192999928797
|
|
]
|
|
},
|
|
"muc_sender_echo": {
|
|
"samples": 3,
|
|
"median_ms": 5.197909000003165,
|
|
"p95_ms": 5.9229750000895365,
|
|
"max_ms": 5.9229750000895365,
|
|
"samples_ms": [
|
|
4.911608000043088,
|
|
5.197909000003165,
|
|
5.9229750000895365
|
|
]
|
|
},
|
|
"muc_peer": {
|
|
"samples": 3,
|
|
"median_ms": 5.222090000074786,
|
|
"p95_ms": 5.947224999999889,
|
|
"max_ms": 5.947224999999889,
|
|
"samples_ms": [
|
|
4.934721000040554,
|
|
5.222090000074786,
|
|
5.947224999999889
|
|
]
|
|
}
|
|
},
|
|
"inactive": {
|
|
"direct_peer": {
|
|
"samples": 3,
|
|
"median_ms": 5.153808000045501,
|
|
"p95_ms": 5.780468000011751,
|
|
"max_ms": 5.780468000011751,
|
|
"samples_ms": [
|
|
5.086673999926461,
|
|
5.153808000045501,
|
|
5.780468000011751
|
|
]
|
|
},
|
|
"direct_application_rtt": {
|
|
"samples": 3,
|
|
"median_ms": 9.816193999995448,
|
|
"p95_ms": 10.903567000013936,
|
|
"max_ms": 10.903567000013936,
|
|
"samples_ms": [
|
|
9.812457999942126,
|
|
9.816193999995448,
|
|
10.903567000013936
|
|
]
|
|
},
|
|
"muc_sender_echo": {
|
|
"samples": 3,
|
|
"median_ms": 5.199423000021852,
|
|
"p95_ms": 5.341851000025599,
|
|
"max_ms": 5.341851000025599,
|
|
"samples_ms": [
|
|
4.466079999929207,
|
|
5.199423000021852,
|
|
5.341851000025599
|
|
]
|
|
},
|
|
"muc_peer": {
|
|
"samples": 3,
|
|
"median_ms": 5.223214000011467,
|
|
"p95_ms": 5.400911000037922,
|
|
"max_ms": 5.400911000037922,
|
|
"samples_ms": [
|
|
4.519688999948812,
|
|
5.223214000011467,
|
|
5.400911000037922
|
|
]
|
|
}
|
|
},
|
|
"urgent_flush": {
|
|
"samples": 1,
|
|
"median_ms": 6.889136999916445,
|
|
"p95_ms": 6.889136999916445,
|
|
"max_ms": 6.889136999916445,
|
|
"samples_ms": [
|
|
6.889136999916445
|
|
]
|
|
},
|
|
"headline_durably_buffered": true,
|
|
"activation_drained_queue": true,
|
|
"personal_archive_records": 26,
|
|
"muc_archive_records": 10006,
|
|
"wire_body_deliveries": 27,
|
|
"status": "pass"
|
|
}
|
|
]
|
|
}
|
|
PASS: TLS conflict_resolve=default, live and hibernating SM resources
|
|
PASS: TLS conflict_resolve=kick_old, live and hibernating SM resources
|
|
PASS: TLS conflict_resolve=kick_new, live and hibernating SM resources
|
|
PASS: TLS conflict_resolve=increment, live and hibernating SM resources
|
|
PASS: TLS conflict_resolve=random, live and hibernating SM resources
|
|
PASS: integrated WSS + HTTPS BOSH SASL/bind, CSI, inherited BOSH namespaces, roster, bidirectional chat, upload IQ/PUT/GET/reuse, graceful SM close and same-resource relogin under kick_new
|
|
PASS: integrated WSS + HTTPS BOSH SASL/bind, CSI, inherited BOSH namespaces, roster, bidirectional chat, upload IQ/PUT/GET/reuse, graceful SM close and same-resource relogin under kick_new
|
|
PASS: configured upload HTTP path with $host through integrated listener
|
|
PASS: multiple upload hosts/shared-host paths, discovery, quotas, JWT isolation, persistence, transport composition and conflict validation
|
|
PASS upload S3 protocol fixture: SigV4, multipart, abort, range, restart, expiry and backend isolation
|
|
PASS upload migration: local -> S3 -> S3 -> local, hashes, original URLs/JWT/HEAD, lock, dry-run, fail-closed resume
|
|
{
|
|
"total_load_wall_seconds": 8.892,
|
|
"requested_resources": 500,
|
|
"authenticated_bound_resources": 500,
|
|
"connection_setup_concurrency": 50,
|
|
"setup_wall_seconds": 0.646,
|
|
"setup_latency": {
|
|
"samples": 500,
|
|
"median_ms": 60.166,
|
|
"p95_ms": 81.981,
|
|
"max_ms": 105.233
|
|
},
|
|
"ping_rounds": 10,
|
|
"ping_round_trip": {
|
|
"samples": 5000,
|
|
"median_ms": 10.879,
|
|
"p95_ms": 21.103,
|
|
"max_ms": 23.338
|
|
},
|
|
"accounts": 100,
|
|
"message_rounds": 10,
|
|
"messages_sent": 5000,
|
|
"messages_received": 5000,
|
|
"message_batch_seconds": 6.009,
|
|
"metrics_before": {
|
|
"rss_kib": 8412,
|
|
"cpu_seconds": 0.0,
|
|
"fd_count": 11
|
|
},
|
|
"metrics_connected": {
|
|
"rss_kib": 27472,
|
|
"cpu_seconds": 1.09,
|
|
"fd_count": 511
|
|
},
|
|
"metrics_after_workload": {
|
|
"rss_kib": 28176,
|
|
"cpu_seconds": 11.23,
|
|
"fd_count": 511
|
|
},
|
|
"metrics_two_seconds_after_disconnect": {
|
|
"rss_kib": 28240,
|
|
"cpu_seconds": 11.27,
|
|
"fd_count": 11
|
|
},
|
|
"sampled_peak_rss_kib": 28240,
|
|
"fd_delta_after_disconnect": 0,
|
|
"failures": [],
|
|
"scope": "One loopback host, 100 accounts with distinct resources, TLS+PLAIN, ping and directed messages; not a production benchmark or proof of no memory leaks.",
|
|
"mam": {
|
|
"archive_files": 100,
|
|
"records": 10000,
|
|
"expected_records": 10000
|
|
}
|
|
}
|
|
MUC+SM load: connected (3.149s)
|
|
MUC+SM load: joined (28.693s)
|
|
MUC+SM load: fanout_verified (34.197s)
|
|
MUC+SM load: before_sigkill (36.066s)
|
|
{
|
|
"clients": 500,
|
|
"accounts": 100,
|
|
"rooms": 10,
|
|
"message_rounds": 3,
|
|
"concurrency": 20,
|
|
"binary": "/tmp/xmpp-durable-muc-load-p95vsvii/rust-xmpp",
|
|
"binary_sha256": "c57757476f2019c60ac877e4a66364b17283218e3cc244ae3f29cde1d3be2977",
|
|
"before": {
|
|
"rss_kib": 10076,
|
|
"cpu_seconds": 0.0,
|
|
"fd_count": 12
|
|
},
|
|
"connect_seconds": 3.149,
|
|
"connect_latency": {
|
|
"samples": 500,
|
|
"median_ms": 121.817,
|
|
"p95_ms": 169.081,
|
|
"max_ms": 257.299
|
|
},
|
|
"phase": "completed",
|
|
"status": "pass",
|
|
"elapsed_seconds": 39.535,
|
|
"join_seconds": 25.54,
|
|
"joined": {
|
|
"rss_kib": 42224,
|
|
"cpu_seconds": 14.41,
|
|
"fd_count": 512
|
|
},
|
|
"join_presence_deliveries": 25000,
|
|
"slots_joined": {
|
|
"count": 500,
|
|
"bytes": 309790
|
|
},
|
|
"message_seconds": 5.504,
|
|
"room_messages_sent": 30,
|
|
"room_messages_delivered": 1500,
|
|
"before_kill": {
|
|
"rss_kib": 42224,
|
|
"cpu_seconds": 17.88,
|
|
"fd_count": 512
|
|
},
|
|
"slots_before_kill": {
|
|
"count": 500,
|
|
"bytes": 514030
|
|
},
|
|
"restart_seconds": 2.962,
|
|
"resumed_resources": 10,
|
|
"replayed_pending_room_messages": 10,
|
|
"membership_groupchat_deliveries_after_resume": 10,
|
|
"after_resume": {
|
|
"rss_kib": 20796,
|
|
"cpu_seconds": 2.81,
|
|
"fd_count": 22
|
|
},
|
|
"slots_after_resume": {
|
|
"count": 500,
|
|
"bytes": 671070
|
|
},
|
|
"total_seconds": 39.535,
|
|
"peak_rss_kib": 42240
|
|
}
|
|
Finished `test` profile [unoptimized] target(s) in 0.09s
|
|
Running tests/csi_native.rs (target/debug/deps/csi_native-22d788125d4db792)
|
|
|
|
running 1 test
|
|
test native_prosody_csi_importance_matches ... ok
|
|
|
|
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
|
|
|
|
Running tests/muc_native.rs (target/debug/deps/muc_native-1deb258080c3107b)
|
|
|
|
running 1 test
|
|
test actual_prosody_muc_mam_reads_rust_and_writes_native_archive ... ok
|
|
|
|
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
|
|
|
|
Running tests/muc_state_native.rs (target/debug/deps/muc_state_native-f35f6eeee693220a)
|
|
|
|
running 1 test
|
|
test actual_prosody_restores_rust_checkpoint_and_rust_reads_native_freeze ... ok
|
|
|
|
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
|
|
|
|
Running tests/pep_item_order.rs (target/debug/deps/pep_item_order-b2fa0224be6531ab)
|
|
|
|
running 1 test
|
|
test native_prosody_orders_retained_pep_items_newest_first ... ok
|
|
|
|
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 1 filtered out; finished in 0.09s
|
|
|
|
Running tests/preauth_native.rs (target/debug/deps/preauth_native-aa108ad5d4963eb6)
|
|
|
|
running 1 test
|
|
test native_prosody_invitation_tokens_roundtrip ... ok
|
|
|
|
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s
|
|
|
|
Running tests/pubsub_native.rs (target/debug/deps/pubsub_native-53c63bfbbc6345ac)
|
|
|
|
running 1 test
|
|
test native_prosody_pep_reads_rust_and_rust_reads_native ... ok
|
|
|
|
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s
|
|
|
|
Running tests/push.rs (target/debug/deps/push-f7822aa8c48ee6ec)
|
|
|
|
running 1 test
|
|
test native_push_body_lookup_excludes_extensions ... ok
|
|
|
|
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 6 filtered out; finished in 0.00s
|
|
|
|
Running tests/reference_prosody.rs (target/debug/deps/reference_prosody-2be357bf8c803be8)
|
|
|
|
running 1 test
|
|
PROSODY_NATIVE_ROUNDTRIP_OK SHA-1
|
|
PROSODY_NATIVE_FINAL_OK SHA-1
|
|
PROSODY_NATIVE_ROUNDTRIP_OK SHA-256
|
|
PROSODY_NATIVE_FINAL_OK SHA-256
|
|
test real_prosody_storage_and_auth_roundtrip ... ok
|
|
|
|
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.70s
|
|
|
|
Finished `test` profile [unoptimized] target(s) in 0.08s
|
|
Running tests/federation_tls.rs (target/debug/deps/federation_tls-5b930bc0a4897f80)
|
|
|
|
running 1 test
|
|
test native_prosody_tls_external_bidirectional ... ok
|
|
|
|
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 2 filtered out; finished in 0.90s
|
|
|