CI: FAILURE radicle-artifact

Table of Contents

Run log

Plan, inside VM without network

plan: Executor starts
After 0.00 seconds at 2026-05-28 07:51:16ZProgram: ambient-execute-plan
Version: 0.14.0@c37ec71
plan: Runnable plan
After 0.00 seconds at 2026-05-28 07:51:16Z
steps:
- action: mkdir
  pathname: /ci
- action: mkdir
  pathname: /ci/artifacts
- action: tar_extract
  archive: /dev/vdc
  directory: /ci/src
- action: tar_extract
  archive: /dev/vdf
  directory: /ci/deps
- action: tar_extract
  archive: /dev/vde
  directory: /ci/cache
- action: shell
  shell: ln -sf /ci /workspace
- action: shell
  shell: git config --global user.name 'Ambient CI'
- action: shell
  shell: git config --global user.email ambient@example.com
- action: cargo_fmt
- action: cargo_clippy
- action: cargo_test
- action: tar_create
  archive: /dev/vde
  directory: /ci/cache
- action: tar_create
  archive: /dev/vdd
  directory: /ci/artifacts
executor_drive: /dev/vdb
source_drive: /dev/vdc
artifact_drive: /dev/vdd
cache_drive: /dev/vde
deps_drive: /dev/vdf
workspace_dir: /ci
source_dir: /ci/src
deps_dir: /ci/deps
cache_dir: /ci/cache
artifacts_dir: /ci/artifacts
envs: {}
plan: Successful action mkdir: /ci
After 0.00 seconds at 2026-05-28 07:51:16Z
  • plan: Start action mkdir: /ci
    After 0.00 seconds at 2026-05-28 07:51:16Z
    Mkdir(
        Mkdir {
            pathname: "/ci",
        },
    )
  • plan: Action succeeded mkdir: /ci
    After 0.00 seconds at 2026-05-28 07:51:16Z
    Mkdir(
        Mkdir {
            pathname: "/ci",
        },
    )
plan: Successful action mkdir: /ci/artifacts
After 0.00 seconds at 2026-05-28 07:51:16Z
  • plan: Start action mkdir: /ci/artifacts
    After 0.00 seconds at 2026-05-28 07:51:16Z
    Mkdir(
        Mkdir {
            pathname: "/ci/artifacts",
        },
    )
  • plan: Action succeeded mkdir: /ci/artifacts
    After 0.00 seconds at 2026-05-28 07:51:16Z
    Mkdir(
        Mkdir {
            pathname: "/ci/artifacts",
        },
    )
plan: Successful action tar_extract
After 0.00 seconds at 2026-05-28 07:51:16Z
  • plan: Start action tar_extract
    After 0.00 seconds at 2026-05-28 07:51:16Z
    TarExtract(
        TarExtract {
            archive: "/dev/vdc",
            directory: "/ci/src",
        },
    )
  • plan: Action succeeded tar_extract
    After 0.00 seconds at 2026-05-28 07:51:16Z
    TarExtract(
        TarExtract {
            archive: "/dev/vdc",
            directory: "/ci/src",
        },
    )
plan: Successful action tar_extract
After 0.04 seconds at 2026-05-28 07:51:16Z
  • plan: Start action tar_extract
    After 0.00 seconds at 2026-05-28 07:51:16Z
    TarExtract(
        TarExtract {
            archive: "/dev/vdf",
            directory: "/ci/deps",
        },
    )
  • plan: Action succeeded tar_extract
    After 0.00 seconds at 2026-05-28 07:51:19Z
    TarExtract(
        TarExtract {
            archive: "/dev/vdf",
            directory: "/ci/deps",
        },
    )
plan: Successful action tar_extract
After 2.25 seconds at 2026-05-28 07:51:19Z
  • plan: Start action tar_extract
    After 0.00 seconds at 2026-05-28 07:51:19Z
    TarExtract(
        TarExtract {
            archive: "/dev/vde",
            directory: "/ci/cache",
        },
    )
  • plan: Action succeeded tar_extract
    After 0.00 seconds at 2026-05-28 07:51:23Z
    TarExtract(
        TarExtract {
            archive: "/dev/vde",
            directory: "/ci/cache",
        },
    )
plan: Successful action shell: ln -sf /ci /workspace
After 6.95 seconds at 2026-05-28 07:51:23Z
  • plan: Start action shell: ln -sf /ci /workspace
    After 0.00 seconds at 2026-05-28 07:51:23Z
    Shell(
        Shell {
            shell: "ln -sf /ci /workspace",
        },
    )
  • plan: Start program bash
    After 0.00 seconds at 2026-05-28 07:51:23Z
    • bash
    • -c
    • set -xeuo pipefail ln -sf /ci /workspace
  • plan: Program succeeded
    After 0.00 seconds at 2026-05-28 07:51:23Z
    Exit code: 0
    Stderr:
    + ln -sf /ci /workspace
    
  • plan: Action succeeded shell: ln -sf /ci /workspace
    After 0.00 seconds at 2026-05-28 07:51:23Z
    Shell(
        Shell {
            shell: "ln -sf /ci /workspace",
        },
    )
plan: Successful action shell: git config --global user.name 'Ambient CI'
After 6.96 seconds at 2026-05-28 07:51:23Z
  • plan: Start action shell: git config --global user.name 'Ambient CI'
    After 0.00 seconds at 2026-05-28 07:51:23Z
    Shell(
        Shell {
            shell: "git config --global user.name 'Ambient CI'",
        },
    )
  • plan: Start program bash
    After 0.00 seconds at 2026-05-28 07:51:23Z
    • bash
    • -c
    • set -xeuo pipefail git config --global user.name 'Ambient CI'
  • plan: Program succeeded
    After 0.00 seconds at 2026-05-28 07:51:23Z
    Exit code: 0
    Stderr:
    + git config --global user.name 'Ambient CI'
    
  • plan: Action succeeded shell: git config --global user.name 'Ambient CI'
    After 0.00 seconds at 2026-05-28 07:51:23Z
    Shell(
        Shell {
            shell: "git config --global user.name 'Ambient CI'",
        },
    )
plan: Successful action shell: git config --global user.email ambient@example.com
After 6.98 seconds at 2026-05-28 07:51:23Z
  • plan: Start action shell: git config --global user.email ambient@example.com
    After 0.00 seconds at 2026-05-28 07:51:23Z
    Shell(
        Shell {
            shell: "git config --global user.email ambient@example.com",
        },
    )
  • plan: Start program bash
    After 0.00 seconds at 2026-05-28 07:51:23Z
    • bash
    • -c
    • set -xeuo pipefail git config --global user.email ambient@example.com
  • plan: Program succeeded
    After 0.00 seconds at 2026-05-28 07:51:23Z
    Exit code: 0
    Stderr:
    + git config --global user.email ambient@example.com
    
  • plan: Action succeeded shell: git config --global user.email ambient@example.com
    After 0.00 seconds at 2026-05-28 07:51:23Z
    Shell(
        Shell {
            shell: "git config --global user.email ambient@example.com",
        },
    )
plan: Successful action cargo_fmt
After 6.99 seconds at 2026-05-28 07:51:23Z
  • plan: Start action cargo_fmt
    After 0.00 seconds at 2026-05-28 07:51:23Z
    CargoFmt(
        CargoFmt,
    )
  • plan: Start program cargo
    After 0.00 seconds at 2026-05-28 07:51:23Z
    • cargo
    • --version
  • plan: Program succeeded
    After 0.00 seconds at 2026-05-28 07:51:23Z
    Exit code: 0
    Stdout:
    cargo 1.95.0 (f2d3ce0bd 2026-03-21)
    
  • plan: Start program cargo
    After 0.00 seconds at 2026-05-28 07:51:23Z
    • cargo
    • clippy
    • --version
  • plan: Program succeeded
    After 0.00 seconds at 2026-05-28 07:51:23Z
    Exit code: 0
    Stdout:
    clippy 0.1.95 (59807616e1 2026-04-14)
    
  • plan: Start program rustc
    After 0.00 seconds at 2026-05-28 07:51:23Z
    • rustc
    • --version
  • plan: Program succeeded
    After 0.00 seconds at 2026-05-28 07:51:24Z
    Exit code: 0
    Stdout:
    rustc 1.95.0 (59807616e 2026-04-14)
    
  • plan: Start program cargo
    After 0.00 seconds at 2026-05-28 07:51:24Z
    • cargo
    • fmt
    • --check
  • plan: Program succeeded
    After 0.00 seconds at 2026-05-28 07:51:24Z
    Exit code: 0
  • plan: Action succeeded cargo_fmt
    After 0.00 seconds at 2026-05-28 07:51:24Z
    CargoFmt(
        CargoFmt,
    )
plan: Successful action cargo_clippy
After 7.27 seconds at 2026-05-28 07:51:24Z
  • plan: Start action cargo_clippy
    After 0.00 seconds at 2026-05-28 07:51:24Z
    CargoClippy(
        CargoClippy,
    )
  • plan: Start program cargo
    After 0.00 seconds at 2026-05-28 07:51:24Z
    • cargo
    • --version
  • plan: Program succeeded
    After 0.00 seconds at 2026-05-28 07:51:24Z
    Exit code: 0
    Stdout:
    cargo 1.95.0 (f2d3ce0bd 2026-03-21)
    
  • plan: Start program cargo
    After 0.00 seconds at 2026-05-28 07:51:24Z
    • cargo
    • clippy
    • --version
  • plan: Program succeeded
    After 0.00 seconds at 2026-05-28 07:51:24Z
    Exit code: 0
    Stdout:
    clippy 0.1.95 (59807616e1 2026-04-14)
    
  • plan: Start program rustc
    After 0.00 seconds at 2026-05-28 07:51:24Z
    • rustc
    • --version
  • plan: Program succeeded
    After 0.00 seconds at 2026-05-28 07:51:24Z
    Exit code: 0
    Stdout:
    rustc 1.95.0 (59807616e 2026-04-14)
    
  • plan: Start program cargo
    After 0.00 seconds at 2026-05-28 07:51:24Z
    • cargo
    • clippy
    • --offline
    • --locked
    • --workspace
    • --all-targets
    • --no-deps
    • --
    • --deny
    • warnings
  • plan: Program succeeded
    After 0.00 seconds at 2026-05-28 07:51:42Z
    Exit code: 0
    Stderr:
        Checking tokio v1.52.3
        Checking tracing-core v0.1.36
        Checking tracing v0.1.44
        Checking noq-udp v1.0.0-rc.0
        Checking hickory-proto v0.26.1
        Checking noq-proto v1.0.0-rc.0
        Checking tokio-util v0.7.18
        Checking h2 v0.4.14
        Checking tokio-rustls v0.26.4
        Checking n0-future v0.3.2
        Checking tower v0.5.3
        Checking netlink-sys v0.8.8
        Checking tower-http v0.6.10
        Checking tokio-stream v0.1.18
        Checking hyper v1.9.0
        Checking hickory-net v0.26.1
        Checking hyper-util v0.1.20
        Checking iroh-metrics v1.0.0-rc.0
        Checking hickory-resolver v0.26.1
        Checking hyper-rustls v0.27.9
        Checking reqwest v0.13.3
        Checking netdev v0.43.0
        Checking noq v1.0.0-rc.0
        Checking netlink-proto v0.12.0
        Checking n0-watcher v1.0.0-rc.0
        Checking tokio-websockets v0.13.2
        Checking iroh-dns v1.0.0-rc.0
        Checking igd-next v0.17.0
        Checking netwatch v0.17.0
        Checking iroh-relay v1.0.0-rc.0
        Checking portmapper v0.17.0
        Checking backon v1.6.0
        Checking regex-syntax v0.8.10
        Checking iroh v1.0.0-rc.0
        Checking regex-automata v0.4.14
        Checking iroh-io v0.6.2
        Checking bao-tree v0.16.0
        Checking irpc v0.15.0
        Checking matchers v0.2.0
        Checking sharded-slab v0.1.7
        Checking tracing-log v0.2.0
        Checking tracing-serde v0.2.0
        Checking nu-ansi-term v0.50.3
        Checking tracing-subscriber v0.3.23
        Checking iroh-util v0.4.0
        Checking iroh-blobs v0.101.0
        Checking radicle-artifact v0.14.0 (/ci/src)
        Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.75s
    
  • plan: Action succeeded cargo_clippy
    After 0.00 seconds at 2026-05-28 07:51:42Z
    CargoClippy(
        CargoClippy,
    )
plan: Start action cargo_test
After 25.16 seconds at 2026-05-28 07:51:42Z
CargoTest(
    CargoTest,
)
plan: Start program cargo
After 25.16 seconds at 2026-05-28 07:51:42Z
  • cargo
  • --version
plan: Program succeeded
After 25.20 seconds at 2026-05-28 07:51:42Z
Exit code: 0
Stdout:
cargo 1.95.0 (f2d3ce0bd 2026-03-21)
plan: Start program cargo
After 25.20 seconds at 2026-05-28 07:51:42Z
  • cargo
  • clippy
  • --version
plan: Program succeeded
After 25.23 seconds at 2026-05-28 07:51:42Z
Exit code: 0
Stdout:
clippy 0.1.95 (59807616e1 2026-04-14)
plan: Start program rustc
After 25.23 seconds at 2026-05-28 07:51:42Z
  • rustc
  • --version
plan: Program succeeded
After 25.25 seconds at 2026-05-28 07:51:42Z
Exit code: 0
Stdout:
rustc 1.95.0 (59807616e 2026-04-14)
plan: Start program cargo
After 25.25 seconds at 2026-05-28 07:51:42Z
  • cargo
  • test
  • --offline
  • --locked
  • --workspace
plan: ERROR: Program failed
After 94.99 seconds at 2026-05-28 07:52:51Z
Exit code: 101
Stdout:
running 97 tests
test node::lifecycle::tests::log_path_is_under_artifacts_dir ... ok
test node::lifecycle::tests::rotate_log_moves_current_to_dot_one ... ok
test node::tests::double_start_errors ... ok
test protocol::tests::wire_snapshot_command_result_ok_and_err ... ok
test protocol::tests::wire_snapshot_command_seed ... ok
test protocol::tests::wire_snapshot_command_status ... ok
test protocol::tests::wire_snapshot_command_unseed_and_lookups ... ok
test protocol::tests::wire_snapshot_receipts ... ok
test protocol::tests::wire_snapshot_status_zeroed ... ok
test seeder::tests::per_repo_tags_isolate ... ok
test seeder::tests::unregister_unknown_is_noop ... ok
test share::cid_utils::tests::artifact_kind_blob ... ok
test share::cid_utils::tests::artifact_kind_collection ... ok
test share::cid_utils::tests::artifact_kind_unknown_codec ... ok
test share::cid_utils::tests::blake3_hash_to_cid_blob_roundtrip ... ok
test share::cid_utils::tests::blake3_hash_to_cid_collection_roundtrip ... ok
test share::cid_utils::tests::canonical_walk_normalizes_separators ... ok
test share::cid_utils::tests::canonical_walk_returns_absolute_paths ... ok
test share::cid_utils::tests::canonical_walk_returns_sorted_entries ... ok
test share::cid_utils::tests::canonical_walk_skips_directories ... ok
test share::cid_utils::tests::cid_to_blake3_hash_rejects_sha256 ... ok
test share::cid_utils::tests::cid_to_blake3_hash_roundtrip ... ok
test share::cid_utils::tests::cid_to_blake3_works_with_hashseq_codec ... ok
test share::cid_utils::tests::determinism ... ok
test share::cid_utils::tests::golden_hash ... ok
test share::cid_utils::tests::symlink_is_skipped ... ok
test share::fetch::tests::download_collection_url_only_reports_unsupported ... ok
test share::fetch::tests::download_http_connect_times_out_fast ... ok
test share::fetch::tests::download_no_locations ... ok
test share::fetch::tests::download_unsupported_scheme ... ok
test share::fetch::tests::partition_locations_splits_iroh_and_url ... ok
test share::iroh::tests::default_uses_radworks_endpoints ... ok
test share::iroh::tests::parse_env_rejects_malformed_value ... ok
test share::keys::tests::display_differs_from_iroh_default ... ok
test share::keys::tests::display_is_endpoint_url ... ok
test node::tests::node_round_trip ... ok
test share::keys::tests::from_url_bare_is_none ... ok
test share::keys::tests::from_url_garbage_host_errors ... ok
test share::keys::tests::from_url_wrong_scheme_errors ... ok
test share::keys::tests::fromstr_round_trip ... ok
test share::keys::tests::is_endpoint_url_only_matches_endpoint_scheme ... ok
test share::keys::tests::radicle_and_iroh_keys_share_same_public_identity ... ok
test share::keys::tests::url_round_trip ... ok
test test::add_artifact_records_author ... ok
test test::add_location_for_missing_cid_is_noop ... ok
test test::attest_missing_cid_is_noop ... ok
test test::attestation_persists_through_reload ... ok
test test::author_self_attestation_is_noop ... ok
test test::create_records_tag_oid ... ok
test test::create_rejects_commit_oid_as_tag ... ok
test test::create_rejects_tag_pointing_at_other_commit ... ok
test test::create_rejects_unknown_tag_oid ... ok
test test::create_without_tag_leaves_none ... ok
test test::creator_persists_through_reload ... ok
test test::display_renders_metadata ... ok
test test::e2e ... ok
test test::find_by_cid_aggregates_across_different_oids ... ok
test test::find_by_cid_aggregates_duplicate_oid_releases ... ok
test test::find_by_cid_finds_across_releases ... ok
test test::find_by_commit_returns_empty_for_no_match ... ok
test share::keys::tests::encrypted_keystore_requires_passphrase ... ok
test test::get_mut_not_found ... ok
test test::find_by_commit_returns_matching_releases ... ok
test test::idempotent_add_artifact ... ok
test test::idempotent_create ... FAILED
test test::idempotent_attestation ... ok
test test::locations_by_scheme_duplicate_url_from_two_dids ... ok
test test::locations_by_scheme_filters_correctly ... ok
test test::missing_commit ... ok
test test::metadata_persists_through_reload ... ok
test test::multi_user_redaction ... ok
test test::multi_delegate_attestation ... ok
test test::multi_user_same_reason ... ok
test test::multiple_locations_per_node ... ok
test test::non_author_cannot_rename_artifact ... ok
test test::pretty_renders_compact_and_detailed ... ok
test test::redact_artifact ... ok
test test::redact_nonexistent_cid_errors ... ok
test test::redact_empty_reason ... ok
test test::redact_reason_too_long ... ok
test test::redact_only_removes_own_attestation ... ok
test test::redact_removes_attestation ... ok
test test::redact_then_attest_is_blocked ... ok
test test::redact_updates_reason ... ok
test test::redaction_persists_through_reload ... ok
test test::reload_refreshes_from_store ... ok
test test::remove_location_for_node_that_never_added_is_noop ... ok
test test::remove_metadata_drops_key ... ok
test test::remove_metadata_for_missing_key_is_noop ... ok
test test::set_metadata_accepts_json_object ... ok
test test::set_metadata_basic ... ok
test test::set_metadata_for_missing_cid_is_noop ... ok
test test::set_metadata_rejects_invalid_keys ... ok
test test::set_metadata_last_writer_wins ... ok
test test::tag_field_default_none_on_old_actions ... ok
test test::set_metadata_rejects_oversized_value ... ok
test test::tag_persists_through_reload ... ok

failures:

---- test::idempotent_create stdout ----

thread 'test::idempotent_create' (2477) panicked at src/lib.rs:1219:9:
assertion `left == right` failed
  left: ReleaseId(ObjectId(74653c1706f265129ae4685bf1062d97d8a0af72))
 right: ReleaseId(ObjectId(822add02e1f21ec55c92f0e8811167cad867db34))
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace


failures:
    test::idempotent_create

test result: FAILED. 96 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 11.95s

Stderr:
   Compiling tokio v1.52.3
   Compiling tracing-core v0.1.36
   Compiling tracing v0.1.44
   Compiling noq-udp v1.0.0-rc.0
   Compiling hickory-proto v0.26.1
   Compiling tokio-util v0.7.18
   Compiling h2 v0.4.14
   Compiling tokio-rustls v0.26.4
   Compiling n0-future v0.3.2
   Compiling tower v0.5.3
   Compiling netlink-sys v0.8.8
   Compiling noq-proto v1.0.0-rc.0
   Compiling hyper v1.9.0
   Compiling hyper-util v0.1.20
   Compiling hyper-rustls v0.27.9
   Compiling hickory-net v0.26.1
   Compiling tower-http v0.6.10
   Compiling tokio-stream v0.1.18
   Compiling iroh-metrics v1.0.0-rc.0
   Compiling netdev v0.43.0
   Compiling hickory-resolver v0.26.1
   Compiling noq v1.0.0-rc.0
   Compiling reqwest v0.13.3
   Compiling netlink-proto v0.12.0
   Compiling n0-watcher v1.0.0-rc.0
   Compiling tokio-websockets v0.13.2
   Compiling iroh-dns v1.0.0-rc.0
   Compiling igd-next v0.17.0
   Compiling netwatch v0.17.0
   Compiling iroh-relay v1.0.0-rc.0
   Compiling portmapper v0.17.0
   Compiling backon v1.6.0
   Compiling regex-syntax v0.8.10
   Compiling iroh v1.0.0-rc.0
   Compiling regex-automata v0.4.14
   Compiling iroh-io v0.6.2
   Compiling bao-tree v0.16.0
   Compiling irpc v0.15.0
   Compiling matchers v0.2.0
   Compiling sharded-slab v0.1.7
   Compiling tracing-log v0.2.0
   Compiling tracing-serde v0.2.0
   Compiling nu-ansi-term v0.50.3
   Compiling tracing-subscriber v0.3.23
   Compiling iroh-util v0.4.0
   Compiling iroh-blobs v0.101.0
   Compiling radicle-artifact v0.14.0 (/ci/src)
    Finished `test` profile [unoptimized + debuginfo] target(s) in 57.74s
     Running unittests src/lib.rs (/ci/cache/cargo-target/debug/deps/radicle_artifact-af036db7a44c8e0c)
error: test failed, to rerun pass `--lib`
plan: Action failed: cargo_test
After 95.05 seconds at 2026-05-28 07:52:51Z
CargoTest(
    CargoTest,
)

Raw log messages for Ambient troubleshooting

Raw log messages

These raw log messages are meant to help Ambient developers figure out problems. You can ignore them.

  1. {
      "type": "executor_starts",
      "name": "ambient-execute-plan",
      "version": "0.14.0@c37ec71",
      "timestamp": {
        "secs_since_epoch": 1779954676,
        "nanos_since_epoch": 908732162
      },
      "log_source": "Plan"
    }
  2. {
      "type": "runnable_plan",
      "steps": [
        {
          "action": "mkdir",
          "pathname": "/ci"
        },
        {
          "action": "mkdir",
          "pathname": "/ci/artifacts"
        },
        {
          "action": "tar_extract",
          "archive": "/dev/vdc",
          "directory": "/ci/src"
        },
        {
          "action": "tar_extract",
          "archive": "/dev/vdf",
          "directory": "/ci/deps"
        },
        {
          "action": "tar_extract",
          "archive": "/dev/vde",
          "directory": "/ci/cache"
        },
        {
          "action": "shell",
          "shell": "ln -sf /ci /workspace"
        },
        {
          "action": "shell",
          "shell": "git config --global user.name 'Ambient CI'"
        },
        {
          "action": "shell",
          "shell": "git config --global user.email ambient@example.com"
        },
        {
          "action": "cargo_fmt"
        },
        {
          "action": "cargo_clippy"
        },
        {
          "action": "cargo_test"
        },
        {
          "action": "tar_create",
          "archive": "/dev/vde",
          "directory": "/ci/cache"
        },
        {
          "action": "tar_create",
          "archive": "/dev/vdd",
          "directory": "/ci/artifacts"
        }
      ],
      "executor_drive": "/dev/vdb",
      "source_drive": "/dev/vdc",
      "artifact_drive": "/dev/vdd",
      "cache_drive": "/dev/vde",
      "deps_drive": "/dev/vdf",
      "workspace_dir": "/ci",
      "source_dir": "/ci/src",
      "deps_dir": "/ci/deps",
      "cache_dir": "/ci/cache",
      "artifacts_dir": "/ci/artifacts",
      "envs": {},
      "timestamp": {
        "secs_since_epoch": 1779954676,
        "nanos_since_epoch": 909071518
      },
      "log_source": "Plan"
    }
  3. {
      "type": "execute_action",
      "action": "mkdir",
      "pathname": "/ci",
      "timestamp": {
        "secs_since_epoch": 1779954676,
        "nanos_since_epoch": 909136147
      },
      "log_source": "Plan"
    }
  4. {
      "type": "action_succeeded",
      "action": "mkdir",
      "pathname": "/ci",
      "timestamp": {
        "secs_since_epoch": 1779954676,
        "nanos_since_epoch": 911862921
      },
      "log_source": "Plan"
    }
  5. {
      "type": "execute_action",
      "action": "mkdir",
      "pathname": "/ci/artifacts",
      "timestamp": {
        "secs_since_epoch": 1779954676,
        "nanos_since_epoch": 911911709
      },
      "log_source": "Plan"
    }
  6. {
      "type": "action_succeeded",
      "action": "mkdir",
      "pathname": "/ci/artifacts",
      "timestamp": {
        "secs_since_epoch": 1779954676,
        "nanos_since_epoch": 911943412
      },
      "log_source": "Plan"
    }
  7. {
      "type": "execute_action",
      "action": "tar_extract",
      "archive": "/dev/vdc",
      "directory": "/ci/src",
      "timestamp": {
        "secs_since_epoch": 1779954676,
        "nanos_since_epoch": 912126546
      },
      "log_source": "Plan"
    }
  8. {
      "type": "action_succeeded",
      "action": "tar_extract",
      "archive": "/dev/vdc",
      "directory": "/ci/src",
      "timestamp": {
        "secs_since_epoch": 1779954676,
        "nanos_since_epoch": 944727825
      },
      "log_source": "Plan"
    }
  9. {
      "type": "execute_action",
      "action": "tar_extract",
      "archive": "/dev/vdf",
      "directory": "/ci/deps",
      "timestamp": {
        "secs_since_epoch": 1779954676,
        "nanos_since_epoch": 945181013
      },
      "log_source": "Plan"
    }
  10. {
      "type": "action_succeeded",
      "action": "tar_extract",
      "archive": "/dev/vdf",
      "directory": "/ci/deps",
      "timestamp": {
        "secs_since_epoch": 1779954679,
        "nanos_since_epoch": 157111604
      },
      "log_source": "Plan"
    }
  11. {
      "type": "execute_action",
      "action": "tar_extract",
      "archive": "/dev/vde",
      "directory": "/ci/cache",
      "timestamp": {
        "secs_since_epoch": 1779954679,
        "nanos_since_epoch": 157585256
      },
      "log_source": "Plan"
    }
  12. {
      "type": "action_succeeded",
      "action": "tar_extract",
      "archive": "/dev/vde",
      "directory": "/ci/cache",
      "timestamp": {
        "secs_since_epoch": 1779954683,
        "nanos_since_epoch": 855210249
      },
      "log_source": "Plan"
    }
  13. {
      "type": "execute_action",
      "action": "shell",
      "shell": "ln -sf /ci /workspace",
      "timestamp": {
        "secs_since_epoch": 1779954683,
        "nanos_since_epoch": 858325915
      },
      "log_source": "Plan"
    }
  14. {
      "type": "start_program",
      "argv": [
        {
          "Unix": [
            98,
            97,
            115,
            104
          ]
        },
        {
          "Unix": [
            45,
            99
          ]
        },
        {
          "Unix": [
            115,
            101,
            116,
            32,
            45,
            120,
            101,
            117,
            111,
            32,
            112,
            105,
            112,
            101,
            102,
            97,
            105,
            108,
            10,
            108,
            110,
            32,
            45,
            115,
            102,
            32,
            47,
            99,
            105,
            32,
            47,
            119,
            111,
            114,
            107,
            115,
            112,
            97,
            99,
            101,
            10
          ]
        }
      ],
      "timestamp": {
        "secs_since_epoch": 1779954683,
        "nanos_since_epoch": 860818313
      },
      "log_source": "Plan"
    }
  15. {
      "type": "program_succeeded",
      "exit_code": 0,
      "stdout": "",
      "stderr": "+ ln -sf /ci /workspace\n",
      "timestamp": {
        "secs_since_epoch": 1779954683,
        "nanos_since_epoch": 868255223
      },
      "log_source": "Plan"
    }
  16. {
      "type": "action_succeeded",
      "action": "shell",
      "shell": "ln -sf /ci /workspace",
      "timestamp": {
        "secs_since_epoch": 1779954683,
        "nanos_since_epoch": 870798306
      },
      "log_source": "Plan"
    }
  17. {
      "type": "execute_action",
      "action": "shell",
      "shell": "git config --global user.name 'Ambient CI'",
      "timestamp": {
        "secs_since_epoch": 1779954683,
        "nanos_since_epoch": 873157645
      },
      "log_source": "Plan"
    }
  18. {
      "type": "start_program",
      "argv": [
        {
          "Unix": [
            98,
            97,
            115,
            104
          ]
        },
        {
          "Unix": [
            45,
            99
          ]
        },
        {
          "Unix": [
            115,
            101,
            116,
            32,
            45,
            120,
            101,
            117,
            111,
            32,
            112,
            105,
            112,
            101,
            102,
            97,
            105,
            108,
            10,
            103,
            105,
            116,
            32,
            99,
            111,
            110,
            102,
            105,
            103,
            32,
            45,
            45,
            103,
            108,
            111,
            98,
            97,
            108,
            32,
            117,
            115,
            101,
            114,
            46,
            110,
            97,
            109,
            101,
            32,
            39,
            65,
            109,
            98,
            105,
            101,
            110,
            116,
            32,
            67,
            73,
            39,
            10
          ]
        }
      ],
      "timestamp": {
        "secs_since_epoch": 1779954683,
        "nanos_since_epoch": 875795722
      },
      "log_source": "Plan"
    }
  19. {
      "type": "program_succeeded",
      "exit_code": 0,
      "stdout": "",
      "stderr": "+ git config --global user.name 'Ambient CI'\n",
      "timestamp": {
        "secs_since_epoch": 1779954683,
        "nanos_since_epoch": 886795353
      },
      "log_source": "Plan"
    }
  20. {
      "type": "action_succeeded",
      "action": "shell",
      "shell": "git config --global user.name 'Ambient CI'",
      "timestamp": {
        "secs_since_epoch": 1779954683,
        "nanos_since_epoch": 887249250
      },
      "log_source": "Plan"
    }
  21. {
      "type": "execute_action",
      "action": "shell",
      "shell": "git config --global user.email ambient@example.com",
      "timestamp": {
        "secs_since_epoch": 1779954683,
        "nanos_since_epoch": 887459449
      },
      "log_source": "Plan"
    }
  22. {
      "type": "start_program",
      "argv": [
        {
          "Unix": [
            98,
            97,
            115,
            104
          ]
        },
        {
          "Unix": [
            45,
            99
          ]
        },
        {
          "Unix": [
            115,
            101,
            116,
            32,
            45,
            120,
            101,
            117,
            111,
            32,
            112,
            105,
            112,
            101,
            102,
            97,
            105,
            108,
            10,
            103,
            105,
            116,
            32,
            99,
            111,
            110,
            102,
            105,
            103,
            32,
            45,
            45,
            103,
            108,
            111,
            98,
            97,
            108,
            32,
            117,
            115,
            101,
            114,
            46,
            101,
            109,
            97,
            105,
            108,
            32,
            97,
            109,
            98,
            105,
            101,
            110,
            116,
            64,
            101,
            120,
            97,
            109,
            112,
            108,
            101,
            46,
            99,
            111,
            109,
            10
          ]
        }
      ],
      "timestamp": {
        "secs_since_epoch": 1779954683,
        "nanos_since_epoch": 887470002
      },
      "log_source": "Plan"
    }
  23. {
      "type": "program_succeeded",
      "exit_code": 0,
      "stdout": "",
      "stderr": "+ git config --global user.email ambient@example.com\n",
      "timestamp": {
        "secs_since_epoch": 1779954683,
        "nanos_since_epoch": 902852185
      },
      "log_source": "Plan"
    }
  24. {
      "type": "action_succeeded",
      "action": "shell",
      "shell": "git config --global user.email ambient@example.com",
      "timestamp": {
        "secs_since_epoch": 1779954683,
        "nanos_since_epoch": 903296137
      },
      "log_source": "Plan"
    }
  25. {
      "type": "execute_action",
      "action": "cargo_fmt",
      "timestamp": {
        "secs_since_epoch": 1779954683,
        "nanos_since_epoch": 903504783
      },
      "log_source": "Plan"
    }
  26. {
      "type": "start_program",
      "argv": [
        {
          "Unix": [
            99,
            97,
            114,
            103,
            111
          ]
        },
        {
          "Unix": [
            45,
            45,
            118,
            101,
            114,
            115,
            105,
            111,
            110
          ]
        }
      ],
      "timestamp": {
        "secs_since_epoch": 1779954683,
        "nanos_since_epoch": 903512929
      },
      "log_source": "Plan"
    }
  27. {
      "type": "program_succeeded",
      "exit_code": 0,
      "stdout": "cargo 1.95.0 (f2d3ce0bd 2026-03-21)\n",
      "stderr": "",
      "timestamp": {
        "secs_since_epoch": 1779954683,
        "nanos_since_epoch": 939548744
      },
      "log_source": "Plan"
    }
  28. {
      "type": "start_program",
      "argv": [
        {
          "Unix": [
            99,
            97,
            114,
            103,
            111
          ]
        },
        {
          "Unix": [
            99,
            108,
            105,
            112,
            112,
            121
          ]
        },
        {
          "Unix": [
            45,
            45,
            118,
            101,
            114,
            115,
            105,
            111,
            110
          ]
        }
      ],
      "timestamp": {
        "secs_since_epoch": 1779954683,
        "nanos_since_epoch": 940066481
      },
      "log_source": "Plan"
    }
  29. {
      "type": "program_succeeded",
      "exit_code": 0,
      "stdout": "clippy 0.1.95 (59807616e1 2026-04-14)\n",
      "stderr": "",
      "timestamp": {
        "secs_since_epoch": 1779954683,
        "nanos_since_epoch": 995452151
      },
      "log_source": "Plan"
    }
  30. {
      "type": "start_program",
      "argv": [
        {
          "Unix": [
            114,
            117,
            115,
            116,
            99
          ]
        },
        {
          "Unix": [
            45,
            45,
            118,
            101,
            114,
            115,
            105,
            111,
            110
          ]
        }
      ],
      "timestamp": {
        "secs_since_epoch": 1779954683,
        "nanos_since_epoch": 998331232
      },
      "log_source": "Plan"
    }
  31. {
      "type": "program_succeeded",
      "exit_code": 0,
      "stdout": "rustc 1.95.0 (59807616e 2026-04-14)\n",
      "stderr": "",
      "timestamp": {
        "secs_since_epoch": 1779954684,
        "nanos_since_epoch": 15973413
      },
      "log_source": "Plan"
    }
  32. {
      "type": "start_program",
      "argv": [
        {
          "Unix": [
            99,
            97,
            114,
            103,
            111
          ]
        },
        {
          "Unix": [
            102,
            109,
            116
          ]
        },
        {
          "Unix": [
            45,
            45,
            99,
            104,
            101,
            99,
            107
          ]
        }
      ],
      "timestamp": {
        "secs_since_epoch": 1779954684,
        "nanos_since_epoch": 16443402
      },
      "log_source": "Plan"
    }
  33. {
      "type": "program_succeeded",
      "exit_code": 0,
      "stdout": "",
      "stderr": "",
      "timestamp": {
        "secs_since_epoch": 1779954684,
        "nanos_since_epoch": 175382794
      },
      "log_source": "Plan"
    }
  34. {
      "type": "action_succeeded",
      "action": "cargo_fmt",
      "timestamp": {
        "secs_since_epoch": 1779954684,
        "nanos_since_epoch": 177612531
      },
      "log_source": "Plan"
    }
  35. {
      "type": "execute_action",
      "action": "cargo_clippy",
      "timestamp": {
        "secs_since_epoch": 1779954684,
        "nanos_since_epoch": 179509110
      },
      "log_source": "Plan"
    }
  36. {
      "type": "start_program",
      "argv": [
        {
          "Unix": [
            99,
            97,
            114,
            103,
            111
          ]
        },
        {
          "Unix": [
            45,
            45,
            118,
            101,
            114,
            115,
            105,
            111,
            110
          ]
        }
      ],
      "timestamp": {
        "secs_since_epoch": 1779954684,
        "nanos_since_epoch": 181496583
      },
      "log_source": "Plan"
    }
  37. {
      "type": "program_succeeded",
      "exit_code": 0,
      "stdout": "cargo 1.95.0 (f2d3ce0bd 2026-03-21)\n",
      "stderr": "",
      "timestamp": {
        "secs_since_epoch": 1779954684,
        "nanos_since_epoch": 192504661
      },
      "log_source": "Plan"
    }
  38. {
      "type": "start_program",
      "argv": [
        {
          "Unix": [
            99,
            97,
            114,
            103,
            111
          ]
        },
        {
          "Unix": [
            99,
            108,
            105,
            112,
            112,
            121
          ]
        },
        {
          "Unix": [
            45,
            45,
            118,
            101,
            114,
            115,
            105,
            111,
            110
          ]
        }
      ],
      "timestamp": {
        "secs_since_epoch": 1779954684,
        "nanos_since_epoch": 195177562
      },
      "log_source": "Plan"
    }
  39. {
      "type": "program_succeeded",
      "exit_code": 0,
      "stdout": "clippy 0.1.95 (59807616e1 2026-04-14)\n",
      "stderr": "",
      "timestamp": {
        "secs_since_epoch": 1779954684,
        "nanos_since_epoch": 224170221
      },
      "log_source": "Plan"
    }
  40. {
      "type": "start_program",
      "argv": [
        {
          "Unix": [
            114,
            117,
            115,
            116,
            99
          ]
        },
        {
          "Unix": [
            45,
            45,
            118,
            101,
            114,
            115,
            105,
            111,
            110
          ]
        }
      ],
      "timestamp": {
        "secs_since_epoch": 1779954684,
        "nanos_since_epoch": 224667538
      },
      "log_source": "Plan"
    }
  41. {
      "type": "program_succeeded",
      "exit_code": 0,
      "stdout": "rustc 1.95.0 (59807616e 2026-04-14)\n",
      "stderr": "",
      "timestamp": {
        "secs_since_epoch": 1779954684,
        "nanos_since_epoch": 241365215
      },
      "log_source": "Plan"
    }
  42. {
      "type": "start_program",
      "argv": [
        {
          "Unix": [
            99,
            97,
            114,
            103,
            111
          ]
        },
        {
          "Unix": [
            99,
            108,
            105,
            112,
            112,
            121
          ]
        },
        {
          "Unix": [
            45,
            45,
            111,
            102,
            102,
            108,
            105,
            110,
            101
          ]
        },
        {
          "Unix": [
            45,
            45,
            108,
            111,
            99,
            107,
            101,
            100
          ]
        },
        {
          "Unix": [
            45,
            45,
            119,
            111,
            114,
            107,
            115,
            112,
            97,
            99,
            101
          ]
        },
        {
          "Unix": [
            45,
            45,
            97,
            108,
            108,
            45,
            116,
            97,
            114,
            103,
            101,
            116,
            115
          ]
        },
        {
          "Unix": [
            45,
            45,
            110,
            111,
            45,
            100,
            101,
            112,
            115
          ]
        },
        {
          "Unix": [
            45,
            45
          ]
        },
        {
          "Unix": [
            45,
            45,
            100,
            101,
            110,
            121
          ]
        },
        {
          "Unix": [
            119,
            97,
            114,
            110,
            105,
            110,
            103,
            115
          ]
        }
      ],
      "timestamp": {
        "secs_since_epoch": 1779954684,
        "nanos_since_epoch": 244082068
      },
      "log_source": "Plan"
    }
  43. {
      "type": "program_succeeded",
      "exit_code": 0,
      "stdout": "",
      "stderr": "    Checking tokio v1.52.3\n    Checking tracing-core v0.1.36\n    Checking tracing v0.1.44\n    Checking noq-udp v1.0.0-rc.0\n    Checking hickory-proto v0.26.1\n    Checking noq-proto v1.0.0-rc.0\n    Checking tokio-util v0.7.18\n    Checking h2 v0.4.14\n    Checking tokio-rustls v0.26.4\n    Checking n0-future v0.3.2\n    Checking tower v0.5.3\n    Checking netlink-sys v0.8.8\n    Checking tower-http v0.6.10\n    Checking tokio-stream v0.1.18\n    Checking hyper v1.9.0\n    Checking hickory-net v0.26.1\n    Checking hyper-util v0.1.20\n    Checking iroh-metrics v1.0.0-rc.0\n    Checking hickory-resolver v0.26.1\n    Checking hyper-rustls v0.27.9\n    Checking reqwest v0.13.3\n    Checking netdev v0.43.0\n    Checking noq v1.0.0-rc.0\n    Checking netlink-proto v0.12.0\n    Checking n0-watcher v1.0.0-rc.0\n    Checking tokio-websockets v0.13.2\n    Checking iroh-dns v1.0.0-rc.0\n    Checking igd-next v0.17.0\n    Checking netwatch v0.17.0\n    Checking iroh-relay v1.0.0-rc.0\n    Checking portmapper v0.17.0\n    Checking backon v1.6.0\n    Checking regex-syntax v0.8.10\n    Checking iroh v1.0.0-rc.0\n    Checking regex-automata v0.4.14\n    Checking iroh-io v0.6.2\n    Checking bao-tree v0.16.0\n    Checking irpc v0.15.0\n    Checking matchers v0.2.0\n    Checking sharded-slab v0.1.7\n    Checking tracing-log v0.2.0\n    Checking tracing-serde v0.2.0\n    Checking nu-ansi-term v0.50.3\n    Checking tracing-subscriber v0.3.23\n    Checking iroh-util v0.4.0\n    Checking iroh-blobs v0.101.0\n    Checking radicle-artifact v0.14.0 (/ci/src)\n    Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.75s\n",
      "timestamp": {
        "secs_since_epoch": 1779954702,
        "nanos_since_epoch": 69397340
      },
      "log_source": "Plan"
    }
  44. {
      "type": "action_succeeded",
      "action": "cargo_clippy",
      "timestamp": {
        "secs_since_epoch": 1779954702,
        "nanos_since_epoch": 69958325
      },
      "log_source": "Plan"
    }
  45. {
      "type": "execute_action",
      "action": "cargo_test",
      "timestamp": {
        "secs_since_epoch": 1779954702,
        "nanos_since_epoch": 70220139
      },
      "log_source": "Plan"
    }
  46. {
      "type": "start_program",
      "argv": [
        {
          "Unix": [
            99,
            97,
            114,
            103,
            111
          ]
        },
        {
          "Unix": [
            45,
            45,
            118,
            101,
            114,
            115,
            105,
            111,
            110
          ]
        }
      ],
      "timestamp": {
        "secs_since_epoch": 1779954702,
        "nanos_since_epoch": 70229338
      },
      "log_source": "Plan"
    }
  47. {
      "type": "program_succeeded",
      "exit_code": 0,
      "stdout": "cargo 1.95.0 (f2d3ce0bd 2026-03-21)\n",
      "stderr": "",
      "timestamp": {
        "secs_since_epoch": 1779954702,
        "nanos_since_epoch": 108679290
      },
      "log_source": "Plan"
    }
  48. {
      "type": "start_program",
      "argv": [
        {
          "Unix": [
            99,
            97,
            114,
            103,
            111
          ]
        },
        {
          "Unix": [
            99,
            108,
            105,
            112,
            112,
            121
          ]
        },
        {
          "Unix": [
            45,
            45,
            118,
            101,
            114,
            115,
            105,
            111,
            110
          ]
        }
      ],
      "timestamp": {
        "secs_since_epoch": 1779954702,
        "nanos_since_epoch": 111337459
      },
      "log_source": "Plan"
    }
  49. {
      "type": "program_succeeded",
      "exit_code": 0,
      "stdout": "clippy 0.1.95 (59807616e1 2026-04-14)\n",
      "stderr": "",
      "timestamp": {
        "secs_since_epoch": 1779954702,
        "nanos_since_epoch": 139922099
      },
      "log_source": "Plan"
    }
  50. {
      "type": "start_program",
      "argv": [
        {
          "Unix": [
            114,
            117,
            115,
            116,
            99
          ]
        },
        {
          "Unix": [
            45,
            45,
            118,
            101,
            114,
            115,
            105,
            111,
            110
          ]
        }
      ],
      "timestamp": {
        "secs_since_epoch": 1779954702,
        "nanos_since_epoch": 142661552
      },
      "log_source": "Plan"
    }
  51. {
      "type": "program_succeeded",
      "exit_code": 0,
      "stdout": "rustc 1.95.0 (59807616e 2026-04-14)\n",
      "stderr": "",
      "timestamp": {
        "secs_since_epoch": 1779954702,
        "nanos_since_epoch": 157097339
      },
      "log_source": "Plan"
    }
  52. {
      "type": "start_program",
      "argv": [
        {
          "Unix": [
            99,
            97,
            114,
            103,
            111
          ]
        },
        {
          "Unix": [
            116,
            101,
            115,
            116
          ]
        },
        {
          "Unix": [
            45,
            45,
            111,
            102,
            102,
            108,
            105,
            110,
            101
          ]
        },
        {
          "Unix": [
            45,
            45,
            108,
            111,
            99,
            107,
            101,
            100
          ]
        },
        {
          "Unix": [
            45,
            45,
            119,
            111,
            114,
            107,
            115,
            112,
            97,
            99,
            101
          ]
        }
      ],
      "timestamp": {
        "secs_since_epoch": 1779954702,
        "nanos_since_epoch": 159787492
      },
      "log_source": "Plan"
    }
  53. {
      "type": "program_failed",
      "exit_code": 101,
      "stdout": "\nrunning 97 tests\ntest node::lifecycle::tests::log_path_is_under_artifacts_dir ... ok\ntest node::lifecycle::tests::rotate_log_moves_current_to_dot_one ... ok\ntest node::tests::double_start_errors ... ok\ntest protocol::tests::wire_snapshot_command_result_ok_and_err ... ok\ntest protocol::tests::wire_snapshot_command_seed ... ok\ntest protocol::tests::wire_snapshot_command_status ... ok\ntest protocol::tests::wire_snapshot_command_unseed_and_lookups ... ok\ntest protocol::tests::wire_snapshot_receipts ... ok\ntest protocol::tests::wire_snapshot_status_zeroed ... ok\ntest seeder::tests::per_repo_tags_isolate ... ok\ntest seeder::tests::unregister_unknown_is_noop ... ok\ntest share::cid_utils::tests::artifact_kind_blob ... ok\ntest share::cid_utils::tests::artifact_kind_collection ... ok\ntest share::cid_utils::tests::artifact_kind_unknown_codec ... ok\ntest share::cid_utils::tests::blake3_hash_to_cid_blob_roundtrip ... ok\ntest share::cid_utils::tests::blake3_hash_to_cid_collection_roundtrip ... ok\ntest share::cid_utils::tests::canonical_walk_normalizes_separators ... ok\ntest share::cid_utils::tests::canonical_walk_returns_absolute_paths ... ok\ntest share::cid_utils::tests::canonical_walk_returns_sorted_entries ... ok\ntest share::cid_utils::tests::canonical_walk_skips_directories ... ok\ntest share::cid_utils::tests::cid_to_blake3_hash_rejects_sha256 ... ok\ntest share::cid_utils::tests::cid_to_blake3_hash_roundtrip ... ok\ntest share::cid_utils::tests::cid_to_blake3_works_with_hashseq_codec ... ok\ntest share::cid_utils::tests::determinism ... ok\ntest share::cid_utils::tests::golden_hash ... ok\ntest share::cid_utils::tests::symlink_is_skipped ... ok\ntest share::fetch::tests::download_collection_url_only_reports_unsupported ... ok\ntest share::fetch::tests::download_http_connect_times_out_fast ... ok\ntest share::fetch::tests::download_no_locations ... ok\ntest share::fetch::tests::download_unsupported_scheme ... ok\ntest share::fetch::tests::partition_locations_splits_iroh_and_url ... ok\ntest share::iroh::tests::default_uses_radworks_endpoints ... ok\ntest share::iroh::tests::parse_env_rejects_malformed_value ... ok\ntest share::keys::tests::display_differs_from_iroh_default ... ok\ntest share::keys::tests::display_is_endpoint_url ... ok\ntest node::tests::node_round_trip ... ok\ntest share::keys::tests::from_url_bare_is_none ... ok\ntest share::keys::tests::from_url_garbage_host_errors ... ok\ntest share::keys::tests::from_url_wrong_scheme_errors ... ok\ntest share::keys::tests::fromstr_round_trip ... ok\ntest share::keys::tests::is_endpoint_url_only_matches_endpoint_scheme ... ok\ntest share::keys::tests::radicle_and_iroh_keys_share_same_public_identity ... ok\ntest share::keys::tests::url_round_trip ... ok\ntest test::add_artifact_records_author ... ok\ntest test::add_location_for_missing_cid_is_noop ... ok\ntest test::attest_missing_cid_is_noop ... ok\ntest test::attestation_persists_through_reload ... ok\ntest test::author_self_attestation_is_noop ... ok\ntest test::create_records_tag_oid ... ok\ntest test::create_rejects_commit_oid_as_tag ... ok\ntest test::create_rejects_tag_pointing_at_other_commit ... ok\ntest test::create_rejects_unknown_tag_oid ... ok\ntest test::create_without_tag_leaves_none ... ok\ntest test::creator_persists_through_reload ... ok\ntest test::display_renders_metadata ... ok\ntest test::e2e ... ok\ntest test::find_by_cid_aggregates_across_different_oids ... ok\ntest test::find_by_cid_aggregates_duplicate_oid_releases ... ok\ntest test::find_by_cid_finds_across_releases ... ok\ntest test::find_by_commit_returns_empty_for_no_match ... ok\ntest share::keys::tests::encrypted_keystore_requires_passphrase ... ok\ntest test::get_mut_not_found ... ok\ntest test::find_by_commit_returns_matching_releases ... ok\ntest test::idempotent_add_artifact ... ok\ntest test::idempotent_create ... FAILED\ntest test::idempotent_attestation ... ok\ntest test::locations_by_scheme_duplicate_url_from_two_dids ... ok\ntest test::locations_by_scheme_filters_correctly ... ok\ntest test::missing_commit ... ok\ntest test::metadata_persists_through_reload ... ok\ntest test::multi_user_redaction ... ok\ntest test::multi_delegate_attestation ... ok\ntest test::multi_user_same_reason ... ok\ntest test::multiple_locations_per_node ... ok\ntest test::non_author_cannot_rename_artifact ... ok\ntest test::pretty_renders_compact_and_detailed ... ok\ntest test::redact_artifact ... ok\ntest test::redact_nonexistent_cid_errors ... ok\ntest test::redact_empty_reason ... ok\ntest test::redact_reason_too_long ... ok\ntest test::redact_only_removes_own_attestation ... ok\ntest test::redact_removes_attestation ... ok\ntest test::redact_then_attest_is_blocked ... ok\ntest test::redact_updates_reason ... ok\ntest test::redaction_persists_through_reload ... ok\ntest test::reload_refreshes_from_store ... ok\ntest test::remove_location_for_node_that_never_added_is_noop ... ok\ntest test::remove_metadata_drops_key ... ok\ntest test::remove_metadata_for_missing_key_is_noop ... ok\ntest test::set_metadata_accepts_json_object ... ok\ntest test::set_metadata_basic ... ok\ntest test::set_metadata_for_missing_cid_is_noop ... ok\ntest test::set_metadata_rejects_invalid_keys ... ok\ntest test::set_metadata_last_writer_wins ... ok\ntest test::tag_field_default_none_on_old_actions ... ok\ntest test::set_metadata_rejects_oversized_value ... ok\ntest test::tag_persists_through_reload ... ok\n\nfailures:\n\n---- test::idempotent_create stdout ----\n\nthread 'test::idempotent_create' (2477) panicked at src/lib.rs:1219:9:\nassertion `left == right` failed\n  left: ReleaseId(ObjectId(74653c1706f265129ae4685bf1062d97d8a0af72))\n right: ReleaseId(ObjectId(822add02e1f21ec55c92f0e8811167cad867db34))\nnote: run with `RUST_BACKTRACE=1` environment variable to display a backtrace\n\n\nfailures:\n    test::idempotent_create\n\ntest result: FAILED. 96 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 11.95s\n\n",
      "stderr": "   Compiling tokio v1.52.3\n   Compiling tracing-core v0.1.36\n   Compiling tracing v0.1.44\n   Compiling noq-udp v1.0.0-rc.0\n   Compiling hickory-proto v0.26.1\n   Compiling tokio-util v0.7.18\n   Compiling h2 v0.4.14\n   Compiling tokio-rustls v0.26.4\n   Compiling n0-future v0.3.2\n   Compiling tower v0.5.3\n   Compiling netlink-sys v0.8.8\n   Compiling noq-proto v1.0.0-rc.0\n   Compiling hyper v1.9.0\n   Compiling hyper-util v0.1.20\n   Compiling hyper-rustls v0.27.9\n   Compiling hickory-net v0.26.1\n   Compiling tower-http v0.6.10\n   Compiling tokio-stream v0.1.18\n   Compiling iroh-metrics v1.0.0-rc.0\n   Compiling netdev v0.43.0\n   Compiling hickory-resolver v0.26.1\n   Compiling noq v1.0.0-rc.0\n   Compiling reqwest v0.13.3\n   Compiling netlink-proto v0.12.0\n   Compiling n0-watcher v1.0.0-rc.0\n   Compiling tokio-websockets v0.13.2\n   Compiling iroh-dns v1.0.0-rc.0\n   Compiling igd-next v0.17.0\n   Compiling netwatch v0.17.0\n   Compiling iroh-relay v1.0.0-rc.0\n   Compiling portmapper v0.17.0\n   Compiling backon v1.6.0\n   Compiling regex-syntax v0.8.10\n   Compiling iroh v1.0.0-rc.0\n   Compiling regex-automata v0.4.14\n   Compiling iroh-io v0.6.2\n   Compiling bao-tree v0.16.0\n   Compiling irpc v0.15.0\n   Compiling matchers v0.2.0\n   Compiling sharded-slab v0.1.7\n   Compiling tracing-log v0.2.0\n   Compiling tracing-serde v0.2.0\n   Compiling nu-ansi-term v0.50.3\n   Compiling tracing-subscriber v0.3.23\n   Compiling iroh-util v0.4.0\n   Compiling iroh-blobs v0.101.0\n   Compiling radicle-artifact v0.14.0 (/ci/src)\n    Finished `test` profile [unoptimized + debuginfo] target(s) in 57.74s\n     Running unittests src/lib.rs (/ci/cache/cargo-target/debug/deps/radicle_artifact-af036db7a44c8e0c)\nerror: test failed, to rerun pass `--lib`\n",
      "timestamp": {
        "secs_since_epoch": 1779954771,
        "nanos_since_epoch": 903276632
      },
      "log_source": "Plan"
    }
  54. {
      "type": "action_failed",
      "action": "cargo_test",
      "timestamp": {
        "secs_since_epoch": 1779954771,
        "nanos_since_epoch": 956477999
      },
      "log_source": "Plan"
    }
  55. {
      "type": "executor_ends_in_failure",
      "exit_code": 1,
      "timestamp": {
        "secs_since_epoch": 1779954772,
        "nanos_since_epoch": 7344318
      },
      "log_source": "Plan"
    }

Trigger message

{
  "request": "trigger",
  "version": 1,
  "event_type": "patch",
  "repository": {
    "id": "rad:z4VYyJ9KuwMNkXGQnmKuGPGKw3inv",
    "name": "radicle-artifact",
    "description": "A Radicle Collaborative Object (COB) for content-addressed release artifacts and their discovery locations",
    "private": false,
    "default_branch": "main",
    "delegates": [
      "did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm"
    ]
  },
  "action": "Created",
  "patch": {
    "id": "1d18b26148ff28ed7d47928cb3aad20cf5679ea8",
    "author": {
      "id": "did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm",
      "alias": "2color"
    },
    "title": "Introduce a new long running daemon to enable seeding multiple artifacts from both the cli and the desktop app.",
    "state": {
      "status": "open",
      "conflicts": []
    },
    "before": "7eb20942b636e50cc4d8b9aefe1feb4fb6a20566",
    "after": "28eab996d4ee2c6780e3009cc3a95060d79753d1",
    "commits": [
      "28eab996d4ee2c6780e3009cc3a95060d79753d1",
      "21a5ba992ef1fb1976ae0f2409a1fe0811d8c9bc",
      "70acf952de5deea6d65778bb2e3e28b1c0b35a84",
      "88216b44200ef57a78ea102f8582e14d6c1cf37a",
      "6f27193877248ea203ee882dd15f75f51ced9288",
      "5f5bf682489cf5076a18f2387c5e6ee9e9c8c831",
      "356cf0cfc835e332da22db8e73bfd1e88e7ad4fe",
      "08e3c8bc89f1a1a8973237a1b090005b350b1e94",
      "aff3cf70c98bdc906fd987320aab3faeeb3fcafb",
      "4f61111ce0268400e9eb4a2bb3b063f33232d7fc",
      "3f85b6c7c9556598f7ae77b6cdd82e5b11d0a09a",
      "adda6427ba8ba223fc5f95d24d146e74d880e45b",
      "1466e9f01916aacadedf8e19ad34d106ac821524",
      "65b9b37a683b11ac611faf3a8689ab2f038af296",
      "1e3726883e88e81a12093a4ff70bb3299b2159b5",
      "c39d863b3a9e3f52cbe4a1653d57a6c96283c287",
      "24ae3686ea115f043b372b9f1e39d289f4705ffd",
      "a4a23e76028ff64503fd552efc1038d5f5127d41",
      "a6e47556df3de4bd75971ef9364f5e417ecfb80c",
      "754a4077716674ede897c2a5c013e856281d2b30",
      "b95b7b3fdbaca55bd3aac5b9f17c1d3927d3a060",
      "82deac39e3950dfbb14c79c10121fb741d720fd2",
      "1f6d1e810c73be10dac1db9f0e6f7cdff4265c92",
      "4c6a7ece5befb99e72880bde88fabfe24ab56cdb",
      "3800a6bda993d23e32583fc01139e8375ffe0c8c",
      "8a78020a6f0fa7e9801b8c119796156eee1f47b7",
      "d2f21306de80db68e6397b9e52f9af1f72bb28ec",
      "8e69822efa72db37e7e712d2ee661ae867ad781a",
      "18f795054b99fdea7e2cfcd350227ff3aa48d678",
      "2739576d1da1615422223c6fdacc52def2cf475f",
      "456b81ced1036c2d28d47db8b468c5f4f361b386",
      "70be7830c5db9cb9f89e4f6efe3930b4a9ea32d0",
      "49e828d96f55e3698e579d4342e494c16aae3886",
      "ef4fd2c4d30e7ede0658a71ba7af39797c2e9062",
      "3a058984e979974af6e5bbe6b94e286e2a9af454",
      "e3f0bdd53302225f9b81924b1272c7b87e36fce1",
      "460dff4155621ee57368198bf0ec069d2582ab5d",
      "b306c26f62382ebc9186604edd411446e53016c3",
      "eeba35c1ca5fd5d2b8a60a65aa740569871c8498",
      "8af7a589f45c84b777a3e72610fb63f600539f03",
      "ec2f7c36cc3e5795aad6b03ae8efc6dccf5744b4",
      "973132934291a452bf16ee03e17fe17ed666d19d"
    ],
    "target": "7eb20942b636e50cc4d8b9aefe1feb4fb6a20566",
    "labels": [],
    "assignees": [],
    "revisions": [
      {
        "id": "1d18b26148ff28ed7d47928cb3aad20cf5679ea8",
        "author": {
          "id": "did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm",
          "alias": "2color"
        },
        "description": "",
        "base": "7eb20942b636e50cc4d8b9aefe1feb4fb6a20566",
        "oid": "28eab996d4ee2c6780e3009cc3a95060d79753d1",
        "timestamp": 1779898618
      }
    ]
  }
}

Ambient stdout

executor from config: /usr/bin/ambient-execute-plan
executor from PATH: /usr/bin/ambient-execute-plan
run CI for rad:z4VYyJ9KuwMNkXGQnmKuGPGKw3inv
ERROR: CI run failed inside QEMU

Ambient stderr

<empty log>