these 5 derivations will be built: /nix/store/dqyvra6bvxpyyc2079yx34z5w2j619xy-source.drv /nix/store/cdri74bxnxh9ymmj02vpq70ax01li5v8-vendor-registry.drv /nix/store/l282h6p6cvl5v48rzyccqmgjnh6w2p6d-vendor-cargo-deps.drv /nix/store/cpasbpj6dvr2jisgdz744pjv7d47a4qq-herdr-eternal-deps-0.1.0.drv /nix/store/9iznmxbvs7xspb9l28r8994iz0wdm7lg-herdr-eternal-test-0.1.0.drv building '/nix/store/9iznmxbvs7xspb9l28r8994iz0wdm7lg-herdr-eternal-test-0.1.0.drv' herdr-eternal-test-0.1.0> tribuchet: building on jamie herdr-eternal-test-0.1.0> Running phase: unpackPhase herdr-eternal-test-0.1.0> unpacking source archive /nix/store/c4mgr4d9j6bz4pjvdfxpkyxs311vmih2-source herdr-eternal-test-0.1.0> source root is source herdr-eternal-test-0.1.0> Running phase: patchPhase herdr-eternal-test-0.1.0> Executing configureCargoCommonVars herdr-eternal-test-0.1.0> decompressing cargo artifacts from /nix/store/qbk9a9ay0m0z7lf68v9gkryj25zcxypm-herdr-eternal-deps-0.1.0/target.tar.zst to target herdr-eternal-test-0.1.0> Running phase: updateAutotoolsGnuConfigScriptsPhase herdr-eternal-test-0.1.0> Running phase: configurePhase herdr-eternal-test-0.1.0> will append /build/source/.cargo-home/config.toml with contents of /nix/store/6y2lb7wxvb8msfxd9kcb3rhnw8da2imw-vendor-cargo-deps/config.toml herdr-eternal-test-0.1.0> default configurePhase, nothing to do herdr-eternal-test-0.1.0> Running phase: buildPhase herdr-eternal-test-0.1.0> +++ command cargo --version herdr-eternal-test-0.1.0> cargo 1.99.0 (5f94df478 2026-08-27) herdr-eternal-test-0.1.0> Running phase: checkPhase herdr-eternal-test-0.1.0> +++ command cargo test --release --locked herdr-eternal-test-0.1.0> Compiling herdr-eternal-proto v0.1.0 (/build/source/proto) herdr-eternal-test-0.1.0> Compiling herdr-eternal-server v0.1.0 (/build/source/server) herdr-eternal-test-0.1.0> Compiling herdr-eternal-ssh v0.1.0 (/build/source/client) herdr-eternal-test-0.1.0> Finished `release` profile [optimized] target(s) in 32.51s herdr-eternal-test-0.1.0> Running unittests src/lib.rs (target/release/deps/herdr_eternal_proto-1d3b961424aade86) herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> running 5 tests herdr-eternal-test-0.1.0> test tests::frame_decoder_reassembles_split_and_coalesced_frames ... ok herdr-eternal-test-0.1.0> test tests::exec_request_roundtrip ... ok herdr-eternal-test-0.1.0> test tests::frame_decoder_rejects_oversized_frames ... ok herdr-eternal-test-0.1.0> test tests::channel_message_roundtrip ... ok herdr-eternal-test-0.1.0> test tests::large_output_is_compressed_and_roundtrips ... ok herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> Running unittests src/lib.rs (target/release/deps/herdr_eternal_server-f41004ce6e5c8ee0) herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> running 1 test herdr-eternal-test-0.1.0> test tests::outbound_log_replays_after_trim ... ok herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> Running unittests src/main.rs (target/release/deps/herdr_eternal_server-c683d235e2f70056) herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> running 0 tests herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> Running tests/exec.rs (target/release/deps/exec-24a14113868fe714) herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> running 3 tests herdr-eternal-test-0.1.0> test wrong_token_is_rejected ... ok herdr-eternal-test-0.1.0> test exec_relays_stdio_and_exit_code ... ok herdr-eternal-test-0.1.0> test disconnected_session_expires_after_timeout ... ok herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.41s herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> Running tests/oidc.rs (target/release/deps/oidc-eea6396f31765b9f) herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> running 1 test herdr-eternal-test-0.1.0> test oidc_bearer_tokens_are_validated ... ok herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.46s herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> Running unittests src/lib.rs (target/release/deps/herdr_eternal_ssh-351a56065cea1e34) herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> running 2 tests herdr-eternal-test-0.1.0> test tests::load_target_finds_configured_entry ... ok herdr-eternal-test-0.1.0> test channel::tests::quic_next_is_cancel_safe ... ok herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.21s herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> Running unittests src/main.rs (target/release/deps/herdr_eternal_ssh-f05cb02ebabd9d68) herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> running 4 tests herdr-eternal-test-0.1.0> test tests::missing_target_is_rejected ... ok herdr-eternal-test-0.1.0> test tests::parses_target_without_command ... ok herdr-eternal-test-0.1.0> test tests::parses_herdr_bootstrap_invocation ... ok herdr-eternal-test-0.1.0> test tests::skips_other_ssh_options ... ok herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> Running tests/agent.rs (target/release/deps/agent-8d2d6448fa9ae1d8) herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> running 1 test herdr-eternal-test-0.1.0> test remote_program_reaches_local_agent ... ok herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.01s herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> Running tests/exec.rs (target/release/deps/exec-845f2bb161b51335) herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> running 1 test herdr-eternal-test-0.1.0> test exec_roundtrip_through_client_and_server ... ok herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> Running tests/handover.rs (target/release/deps/handover-5feb045d668ba57c) herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> running 1 test herdr-eternal-test-0.1.0> test exec_survives_daemon_handover ... ok herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.06s herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> Running tests/herdr_remote.rs (target/release/deps/herdr_remote-d0bac0f4a6a865d0) herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> running 1 test herdr-eternal-test-0.1.0> test herdr_remote_bootstraps_over_the_transport ... ok herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.51s herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> Running tests/oidc.rs (target/release/deps/oidc-8606ad8c798106e8) herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> running 1 test herdr-eternal-test-0.1.0> To authorize testbox, open: http://127.0.0.1:43569/verify?user_code=TEST-CODE herdr-eternal-test-0.1.0> Logged in to testbox. herdr-eternal-test-0.1.0> test login_and_exec_with_oidc ... ok herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.21s herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> Running tests/oidc_refresh_race.rs (target/release/deps/oidc_refresh_race-9cde5f801366eb19) herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> running 1 test herdr-eternal-test-0.1.0> To authorize testbox, open: http://127.0.0.1:39343/verify?user_code=TEST-CODE herdr-eternal-test-0.1.0> Logged in to testbox. herdr-eternal-test-0.1.0> test concurrent_refreshes_share_one_grant ... ok herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.21s herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> Running tests/quic.rs (target/release/deps/quic-bf2dd4575283370b) herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> running 3 tests herdr-eternal-test-0.1.0> test exec_runs_over_quic ... ok herdr-eternal-test-0.1.0> test long_running_exec_stays_connected_over_quic ... ok herdr-eternal-test-0.1.0> test falls_back_to_websocket_when_quic_is_unreachable ... ok herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 5.01s herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> Running tests/resume.rs (target/release/deps/resume-1bc52e7c21bf445a) herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> running 2 tests herdr-eternal-test-0.1.0> test exec_survives_severed_connection ... ok herdr-eternal-test-0.1.0> test exec_survives_blackholed_connection ... ok herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.15s herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> Doc-tests herdr_eternal_proto herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> running 0 tests herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> Doc-tests herdr_eternal_server herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> running 0 tests herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> Doc-tests herdr_eternal_ssh herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> running 0 tests herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s herdr-eternal-test-0.1.0> herdr-eternal-test-0.1.0> checkPhase completed in 44 seconds herdr-eternal-test-0.1.0> Running phase: installPhase herdr-eternal-test-0.1.0> linking previous artifacts /nix/store/qbk9a9ay0m0z7lf68v9gkryj25zcxypm-herdr-eternal-deps-0.1.0/target.tar.zst to /nix/store/143wf8m72p8d9vp0yis43zq9lyqvdqhw-herdr-eternal-test-0.1.0/target.tar.zst herdr-eternal-test-0.1.0> /*stdin*\ : 35.43% ( 142 MiB => 50.3 MiB, /nix/store/143wf8m72p8d9vp0yis43zq9lyqvdqhw-herdr-eternal-test-0.1.0/target.tar.zst) herdr-eternal-test-0.1.0> Running phase: fixupPhase herdr-eternal-test-0.1.0> shrinking RPATHs of ELF executables and libraries in /nix/store/143wf8m72p8d9vp0yis43zq9lyqvdqhw-herdr-eternal-test-0.1.0 herdr-eternal-test-0.1.0> checking for references to /build/ in /nix/store/143wf8m72p8d9vp0yis43zq9lyqvdqhw-herdr-eternal-test-0.1.0... herdr-eternal-test-0.1.0> patching script interpreter paths in /nix/store/143wf8m72p8d9vp0yis43zq9lyqvdqhw-herdr-eternal-test-0.1.0 post-build step Upload coverage to codecov: ok Skipping codecov: project=Mic92/herdr-eternal attr=checks.x86_64-linux.tests