[INFO] fetching crate nostr-double-ratchet 0.0.92... [INFO] testing nostr-double-ratchet-0.0.92 against try#dec9417b8611e34e787a3e4c37686b5131f9e5c5 for pr-154210 [INFO] extracting crate nostr-double-ratchet 0.0.92 into /workspace/builds/worker-2-tc2/source [INFO] started tweaking crates.io crate nostr-double-ratchet 0.0.92 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate nostr-double-ratchet 0.0.92 [INFO] tweaked toml for crates.io crate nostr-double-ratchet 0.0.92 written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate nostr-double-ratchet 0.0.92 on toolchain dec9417b8611e34e787a3e4c37686b5131f9e5c5 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate nostr-double-ratchet 0.0.92 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 019a8ba7b09a1dde1bdd805ca96ad4d4359e55e30b2f597beb01de57f17479cb [INFO] running `Command { std: "docker" "start" "-a" "019a8ba7b09a1dde1bdd805ca96ad4d4359e55e30b2f597beb01de57f17479cb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "019a8ba7b09a1dde1bdd805ca96ad4d4359e55e30b2f597beb01de57f17479cb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "019a8ba7b09a1dde1bdd805ca96ad4d4359e55e30b2f597beb01de57f17479cb", kill_on_drop: false }` [INFO] [stdout] 019a8ba7b09a1dde1bdd805ca96ad4d4359e55e30b2f597beb01de57f17479cb [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 04f5dae65ad3500b917e83a0981910acaf1d59f64c03a1e3f6113d162b0e26e1 [INFO] running `Command { std: "docker" "start" "-a" "04f5dae65ad3500b917e83a0981910acaf1d59f64c03a1e3f6113d162b0e26e1", kill_on_drop: false }` [INFO] [stderr] Compiling unicode-ident v1.0.22 [INFO] [stderr] Compiling libc v0.2.180 [INFO] [stderr] Compiling zerocopy v0.8.34 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling find-msvc-tools v0.1.8 [INFO] [stderr] Compiling bitcoin-io v0.1.4 [INFO] [stderr] Compiling bitcoin-internals v0.3.0 [INFO] [stderr] Compiling arrayvec v0.7.6 [INFO] [stderr] Compiling hex_lit v0.1.1 [INFO] [stderr] Compiling zmij v1.0.17 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling bitcoin v0.32.8 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling percent-encoding v2.3.2 [INFO] [stderr] Compiling indexmap v2.13.0 [INFO] [stderr] Compiling memchr v2.7.6 [INFO] [stderr] Compiling proc-macro2 v1.0.106 [INFO] [stderr] Compiling form_urlencoded v1.2.2 [INFO] [stderr] Compiling bech32 v0.11.1 [INFO] [stderr] Compiling cc v1.2.54 [INFO] [stderr] Compiling hex-conservative v0.2.2 [INFO] [stderr] Compiling negentropy v0.3.1 [INFO] [stderr] Compiling negentropy v0.4.3 [INFO] [stderr] Compiling urlencoding v2.1.3 [INFO] [stderr] Compiling quote v1.0.44 [INFO] [stderr] Compiling syn v2.0.114 [INFO] [stderr] Compiling crossbeam-channel v0.5.15 [INFO] [stderr] Compiling crypto-common v0.1.7 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling block-padding v0.3.3 [INFO] [stderr] Compiling inout v0.1.4 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling cipher v0.4.4 [INFO] [stderr] Compiling hmac v0.12.1 [INFO] [stderr] Compiling sha2 v0.10.9 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling hkdf v0.12.4 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling chacha20 v0.9.1 [INFO] [stderr] Compiling secp256k1-sys v0.10.1 [INFO] [stderr] Compiling uuid v1.20.0 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling zerofrom v0.1.6 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling yoke v0.8.1 [INFO] [stderr] Compiling tracing v0.1.44 [INFO] [stderr] Compiling zerovec v0.11.5 [INFO] [stderr] Compiling zerotrie v0.2.3 [INFO] [stderr] Compiling tinystr v0.8.2 [INFO] [stderr] Compiling potential_utf v0.1.4 [INFO] [stderr] Compiling icu_collections v2.1.1 [INFO] [stderr] Compiling icu_locale_core v2.1.1 [INFO] [stderr] Compiling bitcoin_hashes v0.14.1 [INFO] [stderr] Compiling hex v0.4.3 [INFO] [stderr] Compiling bitcoin-units v0.1.2 [INFO] [stderr] Compiling icu_provider v2.1.1 [INFO] [stderr] Compiling icu_normalizer v2.1.1 [INFO] [stderr] Compiling icu_properties v2.1.2 [INFO] [stderr] Compiling secp256k1 v0.29.1 [INFO] [stderr] Compiling base58ck v0.1.0 [INFO] [stderr] Compiling idna_adapter v1.2.1 [INFO] [stderr] Compiling idna v1.1.0 [INFO] [stderr] Compiling url v2.5.8 [INFO] [stderr] Compiling nostr v0.37.0 [INFO] [stderr] Compiling nostr-double-ratchet v0.0.92 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 46.32s [INFO] running `Command { std: "docker" "inspect" "04f5dae65ad3500b917e83a0981910acaf1d59f64c03a1e3f6113d162b0e26e1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "04f5dae65ad3500b917e83a0981910acaf1d59f64c03a1e3f6113d162b0e26e1", kill_on_drop: false }` [INFO] [stdout] 04f5dae65ad3500b917e83a0981910acaf1d59f64c03a1e3f6113d162b0e26e1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 38c96903b69955ddc731b07742852368e7452e511bbe8cfd3aedcc0daa27cee8 [INFO] running `Command { std: "docker" "start" "-a" "38c96903b69955ddc731b07742852368e7452e511bbe8cfd3aedcc0daa27cee8", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.180 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling rustix v1.1.3 [INFO] [stderr] Compiling sha1 v0.10.6 [INFO] [stderr] Compiling http v1.4.0 [INFO] [stderr] Compiling tokio-macros v2.6.0 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling futures-task v0.3.31 [INFO] [stderr] Compiling futures-core v0.3.31 [INFO] [stderr] Compiling futures-sink v0.3.31 [INFO] [stderr] Compiling bitflags v2.10.0 [INFO] [stderr] Compiling slab v0.4.11 [INFO] [stderr] Compiling data-encoding v2.10.0 [INFO] [stderr] Compiling iana-time-zone v0.1.64 [INFO] [stderr] Compiling chrono v0.4.43 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling errno v0.3.14 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling mio v1.1.1 [INFO] [stderr] Compiling socket2 v0.6.2 [INFO] [stderr] Compiling uuid v1.20.0 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling signal-hook-registry v1.4.8 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling tokio v1.49.0 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling tempfile v3.24.0 [INFO] [stderr] Compiling secp256k1 v0.29.1 [INFO] [stderr] Compiling tungstenite v0.24.0 [INFO] [stderr] Compiling bitcoin v0.32.8 [INFO] [stderr] Compiling tokio-tungstenite v0.24.0 [INFO] [stderr] Compiling nostr v0.37.0 [INFO] [stderr] Compiling nostr-double-ratchet v0.0.92 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 34.51s [INFO] running `Command { std: "docker" "inspect" "38c96903b69955ddc731b07742852368e7452e511bbe8cfd3aedcc0daa27cee8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "38c96903b69955ddc731b07742852368e7452e511bbe8cfd3aedcc0daa27cee8", kill_on_drop: false }` [INFO] [stdout] 38c96903b69955ddc731b07742852368e7452e511bbe8cfd3aedcc0daa27cee8 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+dec9417b8611e34e787a3e4c37686b5131f9e5c5" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 186a7f1f0ab2313e5fe6e5af470376d749dcd86c984e8f149f765123f2ff2ff9 [INFO] running `Command { std: "docker" "start" "-a" "186a7f1f0ab2313e5fe6e5af470376d749dcd86c984e8f149f765123f2ff2ff9", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.25s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/nostr_double_ratchet-947f7cad33fc0583) [INFO] [stdout] [INFO] [stdout] running 107 tests [INFO] [stdout] test group::tests::add_group_admin_returns_none_if_already_admin ... ok [INFO] [stdout] test group::tests::add_group_admin_can_promote_member ... ok [INFO] [stdout] test group::tests::add_group_admin_returns_none_if_not_member ... ok [INFO] [stdout] test group::tests::add_group_admin_returns_none_if_not_admin ... ok [INFO] [stdout] test group::tests::add_group_member_admin_can_add_and_secret_rotates ... ok [INFO] [stdout] test group::tests::add_group_member_returns_none_if_already_member ... ok [INFO] [stdout] test group::tests::add_group_member_returns_none_if_not_admin ... ok [INFO] [stdout] test group::tests::apply_metadata_update_keeps_existing_secret_when_metadata_has_none ... ok [INFO] [stdout] test group::tests::apply_metadata_update_updates_fields_preserving_accepted ... ok [INFO] [stdout] test group::tests::build_group_metadata_content_excludes_secret ... ok [INFO] [stdout] test group::tests::build_group_metadata_content_omits_empty_optional_fields ... ok [INFO] [stdout] test group::tests::build_group_metadata_content_serializes_to_json ... ok [INFO] [stdout] test group::tests::build_then_parse_roundtrip ... ok [INFO] [stdout] test group::tests::create_group_data_creator_is_first_member_and_sole_admin ... ok [INFO] [stdout] test group::tests::create_group_data_deduplicates_creator ... ok [INFO] [stdout] test group::tests::generate_group_secret_returns_64_char_hex ... ok [INFO] [stdout] test group::tests::group_data_deserializes_from_camel_case ... ok [INFO] [stdout] test group::tests::group_invite_rumor_kind_is_10445 ... ok [INFO] [stdout] test group::tests::group_metadata_kind_is_40 ... ok [INFO] [stdout] test group::tests::group_metadata_roundtrip_json ... ok [INFO] [stdout] test group::tests::group_sender_key_distribution_kind_is_10446 ... ok [INFO] [stdout] test group::tests::group_data_serializes_with_camel_case ... ok [INFO] [stdout] test group::tests::is_group_admin_returns_false_for_non_member ... ok [INFO] [stdout] test group::tests::generate_group_secret_unique ... ok [INFO] [stdout] test group::tests::is_group_admin_returns_true_for_admin ... ok [INFO] [stdout] test group::tests::parse_group_metadata_parses_valid ... ok [INFO] [stdout] test group::tests::group_sender_key_message_kind_is_10447 ... ok [INFO] [stdout] test group::tests::parse_group_metadata_returns_none_for_invalid_json ... ok [INFO] [stdout] test group::tests::parse_group_metadata_returns_none_for_empty_admins ... ok [INFO] [stdout] test group::tests::is_group_admin_returns_false_for_non_admin_member ... ok [INFO] [stdout] test file_storage::tests::test_file_storage_adapter_basic ... ok [INFO] [stdout] test group::tests::remove_group_admin_returns_none_if_not_admin ... ok [INFO] [stdout] test group::tests::remove_group_admin_can_demote ... ok [INFO] [stdout] test group::tests::parse_group_metadata_returns_none_for_non_array_members ... ok [INFO] [stdout] test group::tests::remove_group_admin_returns_none_if_target_not_admin ... ok [INFO] [stdout] test file_storage::tests::test_debounced_storage ... ok [INFO] [stdout] test group::tests::remove_group_admin_returns_none_if_would_remove_last ... ok [INFO] [stdout] test group::tests::parse_group_metadata_returns_none_for_missing_id ... ok [INFO] [stdout] test group::tests::remove_group_member_admin_can_remove_and_secret_rotates ... ok [INFO] [stdout] test group::tests::remove_group_member_returns_none_if_not_admin ... ok [INFO] [stdout] test group::tests::remove_group_member_also_strips_admin_status ... ok [INFO] [stdout] test file_storage::tests::test_file_storage_adapter_json ... ok [INFO] [stdout] test file_storage::tests::test_file_storage_adapter_list ... ok [INFO] [stdout] test group::tests::update_group_data_returns_none_if_not_admin ... ok [INFO] [stdout] test group::tests::validate_metadata_creation_accepts_valid ... ok [INFO] [stdout] test group::tests::remove_group_member_returns_none_if_self_remove ... ok [INFO] [stdout] test group::tests::validate_metadata_creation_rejects_my_pubkey_not_in_members ... ok [INFO] [stdout] test group::tests::validate_metadata_creation_rejects_sender_not_in_admins ... ok [INFO] [stdout] test group::tests::validate_metadata_update_accepts_from_admin ... ok [INFO] [stdout] test group::tests::update_group_data_admin_can_update_description ... ok [INFO] [stdout] test group::tests::validate_metadata_update_rejects_from_non_admin ... ok [INFO] [stdout] test group::tests::validate_metadata_update_returns_removed_when_not_in_members ... ok [INFO] [stdout] test group::tests::update_group_data_admin_can_update_name ... ok [INFO] [stdout] test group::tests::update_group_data_admin_can_update_picture ... ok [INFO] [stdout] test group::tests::remove_group_member_returns_none_if_not_in_group ... ok [INFO] [stdout] test multi_device::tests::evaluates_device_registration_state ... ok [INFO] [stdout] test multi_device::tests::requires_relay_confirmation_for_new_device_on_existing_owner ... ok [INFO] [stdout] test multi_device::tests::resolves_self_targeted_conversation_candidates_with_linked_device_first ... ok [INFO] [stdout] test multi_device::tests::keeps_owner_side_link_bootstrap_before_appkeys_registration ... ok [INFO] [stdout] test multi_device::tests::falls_back_to_device_identity_for_unverified_chat_invites ... ok [INFO] [stdout] test multi_device::tests::merges_same_second_app_keys_snapshots_monotonically ... ok [INFO] [stdout] test multi_device::tests::skips_relay_confirmation_for_first_device_bootstrap ... ok [INFO] [stdout] test message_queue::tests::remove_by_target_and_event_id_only_removes_matching_entry ... ok [INFO] [stdout] test message_queue::tests::different_prefixes_do_not_interfere ... ok [INFO] [stdout] test invite::tests::from_event_preserves_device_scoped_invites ... ok [INFO] [stdout] test message_queue::tests::add_and_get_for_target_returns_sorted_entries ... ok [INFO] [stdout] test pubsub::tests::deduping_pubsub_coalesces_identical_filters_until_last_unsubscribe ... ok [INFO] [stdout] test runtime::tests::runtime_sync_groups_replaces_stale_group_set ... ok [INFO] [stdout] test invite::tests::from_event_maps_public_invites_back_to_inviter_device ... ok [INFO] [stdout] test runtime::tests::runtime_init_queues_initial_publish_events ... ok [INFO] [stdout] test session::tests::subscribe_to_messages_is_idempotent_until_close ... ok [INFO] [stdout] test multi_device::tests::selects_newest_app_keys_event_by_created_at ... ok [INFO] [stdout] test group_manager::tests::outer_subscription_plan_tracks_new_sender_event_pubkeys ... ok [INFO] [stdout] test runtime::tests::runtime_setup_user_delegates_to_session_manager ... ok [INFO] [stdout] test session_manager::tests::group_sender_key_distribution_allows_decrypting_one_to_many_outer_messages ... ok [INFO] [stdout] test session_manager::tests::group_sender_key_queues_outer_until_distribution_arrives_for_key_id ... ok [INFO] [stdout] test session_manager::tests::test_auto_adopt_chat_settings_sender_copy_uses_p_tag_peer ... ok [INFO] [stdout] test session_manager::tests::init_resubscribes_to_stored_group_sender_event_pubkeys ... ok [INFO] [stdout] test session_manager::tests::test_delete_chat_removes_local_state_and_allows_reinit ... ok [INFO] [stdout] test session_manager::tests::test_session_manager_new ... ok [INFO] [stdout] test session_manager::tests::test_send_typing_does_not_record_in_message_history ... ok [INFO] [stdout] test session_manager::tests::init_compacts_duplicate_stored_sessions_and_only_subscribes_once_per_filter ... ok [INFO] [stdout] test session_manager::tests::test_send_text_no_sessions ... ok [INFO] [stdout] test session_manager::tests::stale_appkeys_replay_does_not_remove_newer_devices ... ok [INFO] [stdout] test shared_channel::tests::create_event_signed_by_channel_key ... ok [INFO] [stdout] test shared_channel::tests::channel_from_random_secret ... ok [INFO] [stdout] test shared_channel::tests::create_event_returns_kind_4 ... ok [INFO] [stdout] test shared_channel::tests::is_channel_event_false_for_wrong_kind ... ok [INFO] [stdout] test shared_channel::tests::is_channel_event_false_for_wrong_pubkey ... ok [INFO] [stdout] test shared_channel::tests::is_channel_event_true_for_own_events ... ok [INFO] [stdout] test shared_channel::tests::new_channel_from_secret ... ok [INFO] [stdout] test shared_channel::tests::cross_decrypt_same_secret ... ok [INFO] [stdout] test shared_channel::tests::different_secret_cannot_decrypt ... ok [INFO] [stdout] test shared_channel::tests::roundtrip_create_decrypt ... ok [INFO] [stdout] test session_manager::tests::accept_invite_publishes_bootstrap_message_event ... ok [INFO] [stdout] test user_record::tests::upsert_session_promotes_bidirectional_session_over_send_only ... ok [INFO] [stdout] test user_record::tests::upsert_session_keeps_bidirectional_session_active_over_send_only ... ok [INFO] [stdout] test session_manager::tests::same_timestamp_appkeys_replay_preserves_known_devices ... ok [INFO] [stdout] test session_manager::tests::discovery_entry_retained_when_discovery_expansion_partially_fails ... ok [INFO] [stdout] test session_manager::tests::owner_side_link_invite_accepts_new_device_not_yet_in_cached_appkeys ... ok [INFO] [stdout] test session_manager::tests::appkeys_replacement_cleans_revoked_device_queue_entries ... ok [INFO] [stdout] test session_manager::tests::queued_message_survives_restart_and_flushes_after_session_creation ... ok [INFO] [stdout] test session_manager::tests::transient_expansion_failure_then_revocation_keeps_only_authorized_retry_path ... ok [INFO] [stdout] test session_manager::tests::queued_message_for_known_appkeys_device_flushes_without_new_appkeys_event ... ok [INFO] [stdout] test session_manager::tests::owner_side_link_invite_accepts_new_device_not_yet_in_stored_appkeys_after_restart ... ok [INFO] [stdout] test session::tests::skip_message_keys_prunes_to_max_skip ... ok [INFO] [stdout] test session_manager::tests::accept_invite_retries_bootstrap_message_event_with_future_expiration ... ok [INFO] [stderr] Running tests/advanced_test.rs (/opt/rustwide/target/debug/deps/advanced_test-04e41c503ac8f4df) [INFO] [stdout] [INFO] [stdout] test result: ok. 107 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.12s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stderr] Running tests/app_keys_interop.rs (/opt/rustwide/target/debug/deps/app_keys_interop-ea7919820fdb22ae) [INFO] [stdout] test test_session_reinitialization ... ok [INFO] [stdout] test test_discard_duplicate_messages_after_restoring ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test test_parse_typescript_app_keys_vectors ... ok [INFO] [stderr] Running tests/app_keys_test.rs (/opt/rustwide/target/debug/deps/app_keys_test-b86f4c464f87eb6f) [INFO] [stdout] test test_generate_rust_app_keys_vectors ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test test_app_keys_encrypts_labels_in_event_content ... ok [INFO] [stdout] test test_app_keys_roundtrip_and_merge ... ok [INFO] [stdout] test test_app_keys_owner_can_decrypt_labels_but_public_parsing_cannot ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/group_interop.rs (/opt/rustwide/target/debug/deps/group_interop-3a023b3d49781200) [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test test_generate_rust_group_vectors ... ok [INFO] [stdout] test test_parse_typescript_group_vectors ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/group_manager_test.rs (/opt/rustwide/target/debug/deps/group_manager_test-79198acf99c9f0e0) [INFO] [stdout] [INFO] [stdout] running 9 tests [INFO] [stdout] test create_group_can_disable_metadata_fanout ... ok [INFO] [stdout] test suppresses_local_device_outer_echo_by_default ... ok [INFO] [stdout] test drains_queued_outer_after_sender_key_distribution ... ok [INFO] [stdout] test decrypts_typescript_outer_after_distribution_mapping ... ok [INFO] [stdout] test create_group_fans_out_metadata_by_default_and_returns_group_data ... ok [INFO] [stdout] test send_message_uses_device_pubkey_and_distributes_sender_key_once ... ok [INFO] [stdout] test removing_member_purges_sender_mapping_and_blocks_future_delivery ... ok [INFO] [stdout] test create_group_requires_send_pairwise_when_fanout_enabled ... ok [INFO] [stdout] test fan_out_group_metadata_redacts_secret_for_removed_member ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s [INFO] [stdout] [INFO] [stderr] Running tests/inner_rumor_id_test.rs (/opt/rustwide/target/debug/deps/inner_rumor_id_test-1e32510e7712ec1a) [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test test_session_manager_delivers_messages_with_recomputed_inner_id ... ok [INFO] [stdout] test test_session_receive_recomputes_inner_rumor_id_and_stays_in_sync ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stderr] Running tests/integration_test.rs (/opt/rustwide/target/debug/deps/integration_test-eea1f4a549b1dcaf) [INFO] [stdout] test test_send_event_recomputes_id_with_ms_tag ... ok [INFO] [stderr] Running tests/interop_test.rs (/opt/rustwide/target/debug/deps/interop_test-c78cb880a0912cfe) [INFO] [stdout] test test_alice_bob_conversation ... ok [INFO] [stdout] test test_session_persistence ... ok [INFO] [stdout] test test_multiple_messages_back_and_forth ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test test_decrypt_typescript_messages ... ok [INFO] [stdout] test test_roundtrip_rust_only ... ok [INFO] [stdout] test test_generate_rust_vectors ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/invite_listen_test.rs (/opt/rustwide/target/debug/deps/invite_listen_test-210bd045b225a288) [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test test_from_user_subscription ... ok [INFO] [stdout] test test_invite_listen_and_accept ... ok [INFO] [stdout] test test_owner_claim_verification_allows_single_device_without_app_keys ... ok [INFO] [stdout] test test_listen_without_device_id ... ok [INFO] [stdout] test test_owner_claim_verification_requires_app_keys_for_multi_device ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 10 tests [INFO] [stderr] Running tests/invite_test.rs (/opt/rustwide/target/debug/deps/invite_test-556bd3ec045fad93) [INFO] [stdout] test test_invite_get_event_requires_device_id ... ok [INFO] [stdout] test test_create_new_invite ... ok [INFO] [stdout] test test_url_generation_and_parsing ... ok [INFO] [stdout] test test_invite_accept_creates_session ... ok [INFO] [stdout] test test_url_with_purpose_and_owner ... ok [INFO] [stdout] test test_invite_serialization ... ok [INFO] [stdout] test test_invite_event_conversion ... ok [INFO] [stdout] test test_url_parses_inviter_ephemeral_public_key_field ... ok [INFO] [stdout] test test_accept_with_device_id ... ok [INFO] [stdout] test test_accept_without_device_id ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Running tests/message_origin_test.rs (/opt/rustwide/target/debug/deps/message_origin_test-241898af21abbbde) [INFO] [stdout] running 4 tests [INFO] [stdout] test classifies_local_device_origin ... ok [INFO] [stdout] test classifies_remote_owner_origin ... ok [INFO] [stdout] test classifies_unknown_when_provenance_is_incomplete ... ok [INFO] [stdout] test classifies_same_owner_other_device_origin ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/one_to_many_channel_test.rs (/opt/rustwide/target/debug/deps/one_to_many_channel_test-ae0d47433b29b011) [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stderr] Running tests/one_to_many_interop.rs (/opt/rustwide/target/debug/deps/one_to_many_interop-5a3da622a4d689e8) [INFO] [stdout] test one_to_many_outer_payload_roundtrip ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test test_decrypt_typescript_one_to_many_vectors_out_of_order ... ok [INFO] [stdout] test test_generate_rust_one_to_many_vectors ... ok [INFO] [stdout] [INFO] [stderr] Running tests/out_of_order_test.rs (/opt/rustwide/target/debug/deps/out_of_order_test-2abaa0617ab28deb) [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test test_out_of_order_message_delivery ... ok [INFO] [stdout] test test_consecutive_messages_from_same_sender ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Running tests/sender_key_test.rs (/opt/rustwide/target/debug/deps/sender_key_test-f5401510d2c539cf) [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test sender_key_roundtrip_single_message ... ok [INFO] [stdout] test sender_key_rejects_too_many_skipped_messages ... ok [INFO] [stdout] test sender_key_decrypt_out_of_order ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Running tests/session_manager_multi_device_test.rs (/opt/rustwide/target/debug/deps/session_manager_multi_device_test-124b68d602144b7c) [INFO] [stdout] [INFO] [stdout] running 14 tests [INFO] [stdout] test test_accept_invite_routes_session_under_verified_claimed_owner ... ok [INFO] [stdout] test test_replayed_invite_is_ignored_once_accept_bootstrap_uses_session ... ok [INFO] [stdout] test test_delayed_link_bootstrap_flushes_queued_self_sync_message ... ok [INFO] [stdout] test test_processing_same_owner_sibling_public_invite_upgrades_response_import ... ok [INFO] [stdout] test test_send_text_with_expiration_tag_propagates_to_receiver ... ok [INFO] [stdout] test test_existing_peer_fans_out_to_newly_added_device_after_appkeys_and_invite ... ok [INFO] [stdout] test test_replayed_invite_ignored_after_send_only_session_is_used ... ok [INFO] [stdout] test test_existing_peer_fanout_survives_sender_restart_with_file_storage ... ok [INFO] [stdout] test test_multi_device_self_fanout ... ok [INFO] [stdout] test test_mutual_same_device_chat_invites_still_allow_bidirectional_messages ... ok [INFO] [stdout] test test_processing_peer_public_invite_upgrades_response_import_to_send_capable ... ok [INFO] [stdout] test test_linked_sender_fans_out_to_newly_added_peer_device ... ok [INFO] [stdout] test test_linked_receiver_restores_and_receives_after_restart ... ok [INFO] [stdout] test test_linked_receiver_restores_and_receives_after_restart_with_file_storage ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.47s [INFO] [stdout] [INFO] [stderr] Running tests/session_test.rs (/opt/rustwide/target/debug/deps/session_test-02fafa592172a538) [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stdout] test test_session_init_responder ... ok [INFO] [stdout] test test_session_init ... ok [INFO] [stdout] test test_session_state_serialization ... ok [INFO] [stdout] test test_multiple_messages ... ok [INFO] [stdout] test test_session_send_message ... ok [INFO] [stdout] test test_reaction_roundtrip ... ok [INFO] [stdout] test test_send_reaction_format ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stderr] Running tests/shared_channel_interop.rs (/opt/rustwide/target/debug/deps/shared_channel_interop-50c6b633a3eabeea) [INFO] [stdout] [INFO] [stdout] running 4 tests [INFO] [stdout] test test_parse_typescript_shared_channel_vectors ... ok [INFO] [stdout] test test_generate_rust_shared_channel_vectors ... ok [INFO] [stdout] test test_shared_channel_roundtrip ... ok [INFO] [stdout] test test_shared_channel_from_group_secret ... ok [INFO] [stdout] [INFO] [stderr] Running tests/shared_channel_sender_key_test.rs (/opt/rustwide/target/debug/deps/shared_channel_sender_key_test-d94e8fb9d405cd6f) [INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test session_sender_key_distribution_then_sender_event_message_roundtrip ... ok [INFO] [stderr] Running tests/test_relay.rs (/opt/rustwide/target/debug/deps/test_relay-fa9f9e73925cefd0) [INFO] [stdout] [INFO] [stderr] Doc-tests nostr_double_ratchet [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "186a7f1f0ab2313e5fe6e5af470376d749dcd86c984e8f149f765123f2ff2ff9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "186a7f1f0ab2313e5fe6e5af470376d749dcd86c984e8f149f765123f2ff2ff9", kill_on_drop: false }` [INFO] [stdout] 186a7f1f0ab2313e5fe6e5af470376d749dcd86c984e8f149f765123f2ff2ff9