CI run for rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5

Radicle repository id rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5

Table of Contents

Run log

[2025-09-15T15:19:56Z INFO  ambient] ambient starts
[=3h[=3hBdsDxe: failed to load Boot0001 "UEFI QEMU DVD-ROM QM00005 " from PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x2,0xFFFF,0x0): Not Found
BdsDxe: loading Boot0002 "UEFI Misc Device" from PciRoot(0x0)/Pci(0x2,0x0)
BdsDxe: starting Boot0002 "UEFI Misc Device" from PciRoot(0x0)/Pci(0x2,0x0)
Welcome to GRUB!


INFO: Block devices
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
vda    254:0    0   100G  0 disk 
├─vda1 254:1    0   953M  0 part 
└─vda2 254:2    0  99.1G  0 part /
vdb    254:16   0   2.9M  1 disk 
vdc    254:32   0  26.1M  1 disk 
vdd    254:48   0   9.3G  0 disk 
vde    254:64   0  46.6G  0 disk 
vdf    254:80   0 796.6M  1 disk 
INFO: Extracting tar archive from /dev/vdb
drwxr-xr-x _rad/_rad         0 2025-09-15 15:14 ./
-rw-r--r-- _rad/_rad      2454 2025-09-15 15:14 ./plan.yaml
-rwxr-xr-x _rad/_rad   3007128 2025-09-15 15:14 ./run-ci
INFO: Extracted files:
  4587526      4 drwxr-xr-x   2 1001     1001         4096 Sep 15 15:14 .
  4587527      4 -rw-r--r--   1 1001     1001         2454 Sep 15 15:14 ./plan.yaml
  4587530   2940 -rwxr-xr-x   1 1001     1001      3007128 Sep 15 15:14 ./run-ci
INFO: Running run-ci from /dev/vdb
================================ BEGIN ================================
[2025-09-15T15:15:05Z TRACE ambient_execute_plan] ambient-execute-plan starts
[2025-09-15T15:15:05Z DEBUG ambient_execute_plan] ambient-execute-plan starts
[2025-09-15T15:15:05Z INFO  ambient_execute_plan] ambient-execute-plan starts
[2025-09-15T15:15:05Z WARN  ambient_execute_plan] ambient-execute-plan starts
[2025-09-15T15:15:05Z ERROR ambient_execute_plan] ambient-execute-plan starts
RunnablePlan::from_file: filename=plan.yaml
steps:
- action: mkdir
  pathname: /workspace
- action: mkdir
  pathname: /workspace/artifacts
- action: tar_extract
  archive: /dev/vdc
  directory: /workspace/src
- action: tar_extract
  archive: /dev/vdf
  directory: /workspace/deps
- action: tar_extract
  archive: /dev/vde
  directory: /workspace/cache
- action: spawn
  argv:
  - find
  - /workspace
  - '-maxdepth'
  - '2'
  - '-ls'
- action: cargo_fmt
- action: cargo_clippy
- action: cargo_build
- action: cargo_test
- action: shell
  shell: |
    # Because of a (temporary) limitation in Ambient, we need to set
    # these variables manually. Once Ambient manages environment
    # variables better, these can be deleted.
    export CARGO_TARGET_DIR=/workspace/cache
    export CARGO_HOME=/workspace/deps
    export HOME=/root
    export PATH="/root/.cargo/bin:$PATH"
    export RUSTDOCFLAGS='-D warnings'

    cargo doc --workspace --no-deps
- action: shell
  shell: |
    # Because of a (temporary) limitation in Ambient, we need to set
    # these variables manually. Once Ambient manages environment
    # variables better, these can be deleted.
    export CARGO_TARGET_DIR=/workspace/cache
    export CARGO_HOME=/workspace/deps
    export HOME=/root
    export PATH="/root/.cargo/bin:$PATH"

    # These are based on debian/control.
    export DEBEMAIL=liw@liw.fi
    export DEBFULLNAME="Lars Wirzenius"

    # Clean up after tests and documentation building. The Debian
    # package building tools do not want changes outside the
    # `debian` directory, compared to what is committed to Git, from
    # which the "upstream tarball" is created.
    git reset --hard
    git clean -fdx
    git status --ignored

    # Update debian/changelog with a new version so that every run
    # creates a newer version. This avoids us having to update the
    # file manually for every CI run.
    V="$(dpkg-parsechangelog -SVersion | sed 's/-[^-]*$//')"
    T="$(date -u "+%Y%m%dT%H%M%S")"
    version="$V.ci$T-1"
    dch -v "$version" "CI build under Ambient."
    dch -r ''
- action: deb
- action: tar_create
  archive: /dev/vde
  directory: /workspace/cache
- action: tar_create
  archive: /dev/vdd
  directory: /workspace/artifacts
executor_drive: /dev/vdb
source_drive: /dev/vdc
artifact_drive: /dev/vdd
cache_drive: /dev/vde
deps_drive: /dev/vdf
workspace_dir: /workspace
source_dir: /workspace/src
deps_dir: /workspace/deps
cache_dir: /workspace/cache
artifacts_dir: /workspace/artifacts


RUN: Action Mkdir {
    pathname: "/workspace",
}
[2025-09-15T15:15:05Z DEBUG ambient_ci::action] Plan::execute: Mkdir {
        pathname: "/workspace",
    }
RUN: Action finished OK
RUN: Action Mkdir {
    pathname: "/workspace/artifacts",
}
[2025-09-15T15:15:05Z DEBUG ambient_ci::action] Plan::execute: Mkdir {
        pathname: "/workspace/artifacts",
    }
RUN: Action finished OK
RUN: Action TarExtract {
    archive: "/dev/vdc",
    directory: "/workspace/src",
}
[2025-09-15T15:15:05Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
        archive: "/dev/vdc",
        directory: "/workspace/src",
    }
[2025-09-15T15:15:05Z TRACE ambient_ci::vdrive] extracting /dev/vdc to /workspace/src
[2025-09-15T15:15:05Z TRACE ambient_ci::vdrive] extraction OK
RUN: Action finished OK
RUN: Action TarExtract {
    archive: "/dev/vdf",
    directory: "/workspace/deps",
}
[2025-09-15T15:15:05Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
        archive: "/dev/vdf",
        directory: "/workspace/deps",
    }
[2025-09-15T15:15:05Z TRACE ambient_ci::vdrive] extracting /dev/vdf to /workspace/deps
[2025-09-15T15:15:07Z TRACE ambient_ci::vdrive] extraction OK
RUN: Action finished OK
RUN: Action TarExtract {
    archive: "/dev/vde",
    directory: "/workspace/cache",
}
[2025-09-15T15:15:07Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
        archive: "/dev/vde",
        directory: "/workspace/cache",
    }
[2025-09-15T15:15:07Z TRACE ambient_ci::vdrive] extracting /dev/vde to /workspace/cache
[2025-09-15T15:15:07Z TRACE ambient_ci::vdrive] extraction OK
RUN: Action finished OK
RUN: Action Spawn {
    argv: [
        "find",
        "/workspace",
        "-maxdepth",
        "2",
        "-ls",
    ],
}
[2025-09-15T15:15:07Z DEBUG ambient_ci::action] Plan::execute: Spawn {
        argv: [
            "find",
            "/workspace",
            "-maxdepth",
            "2",
            "-ls",
        ],
    }
SPAWN: argv=["find", "/workspace", "-maxdepth", "2", "-ls"]
       cwd=/workspace/src (exists? true)
       extra_env=[]
  2621441      4 drwxr-xr-x   6 root     root         4096 Sep 15 15:15 /workspace
  2622225      4 drwxr-xr-x   3 root     root         4096 Sep 15 15:14 /workspace/deps
  2622226      0 -rw-r--r--   1 root     root            0 Sep 15 14:35 /workspace/deps/.package-cache-mutate
  2622229      4 drwxr-xr-x   5 root     root         4096 Sep 15 14:35 /workspace/deps/registry
  2622227    120 -rw-r--r--   1 root     root       122880 Sep 15 15:14 /workspace/deps/.global-cache
  2622228      0 -rw-r--r--   1 root     root            0 Sep 15 14:35 /workspace/deps/.package-cache
  2621443      4 drwxr-xr-x  12 root     root         4096 Sep 15 15:14 /workspace/src
  2621499      4 -rw-r--r--   1 root     root         2653 Sep 15 15:14 /workspace/src/Cargo.toml
  2622221     12 -rw-r--r--   1 root     root         9636 Sep 15 15:14 /workspace/src/CONTRIBUTING.md
  2621500      4 drwxr-xr-x   2 root     root         4096 Sep 15 15:14 /workspace/src/.config
  2621496      4 -rw-r--r--   1 root     root         1623 Sep 15 15:14 /workspace/src/build.rs
  2621502      4 -rw-r--r--   1 root     root          426 Sep 15 15:14 /workspace/src/radicle-node.1.adoc
  2621504      4 drwxr-xr-x   8 root     root         4096 Sep 15 15:14 /workspace/src/.git
  2622218      8 -rw-r--r--   1 root     root         7144 Sep 15 15:14 /workspace/src/rad-id.1.adoc
  2621460      4 -rw-r--r--   1 root     root         2163 Sep 15 15:14 /workspace/src/VERSIONING.md
  2621495      4 -rw-r--r--   1 root     root         3133 Sep 15 15:14 /workspace/src/README.md
  2621641     12 -rw-r--r--   1 root     root        10770 Sep 15 15:14 /workspace/src/rad-patch.1.adoc
  2622222      4 -rw-r--r--   1 root     root           79 Sep 15 15:14 /workspace/src/ARCHITECTURE.md
  2621649      4 drwxr-xr-x  17 root     root         4096 Sep 15 15:14 /workspace/src/crates
  2621448      4 drwxr-xr-x   2 root     root         4096 Sep 15 15:14 /workspace/src/scripts
  2621444      4 drwxr-xr-x   2 root     root         4096 Sep 15 15:14 /workspace/src/.radicle
  2621467      8 -rw-r--r--   1 root     root         7900 Sep 15 15:14 /workspace/src/CHANGELOG.md
  2621482      4 drwxr-xr-x   3 root     root         4096 Sep 15 15:14 /workspace/src/debian
  2621465      4 -rw-r--r--   1 root     root           42 Sep 15 15:14 /workspace/src/.envrc
  2622219      4 -rw-r--r--   1 root     root         1203 Sep 15 15:14 /workspace/src/DCO
  2622214      4 drwxr-xr-x   3 root     root         4096 Sep 15 15:14 /workspace/src/.github
  2622224    116 -rw-r--r--   1 root     root       117616 Sep 15 15:14 /workspace/src/Cargo.lock
  2621642      4 drwxr-xr-x   5 root     root         4096 Sep 15 15:14 /workspace/src/systemd
  2621640     12 -rw-r--r--   1 root     root         9723 Sep 15 15:14 /workspace/src/LICENSE-APACHE
  2621498      4 -rw-r--r--   1 root     root          101 Sep 15 15:14 /workspace/src/.gitignore
  2622220      8 -rw-r--r--   1 root     root         5102 Sep 15 15:14 /workspace/src/flake.lock
  2621464      4 -rw-r--r--   1 root     root           77 Sep 15 15:14 /workspace/src/rust-toolchain.toml
  2621497     12 -rw-r--r--   1 root     root        10500 Sep 15 15:14 /workspace/src/flake.nix
  2621468      4 -rw-r--r--   1 root     root          571 Sep 15 15:14 /workspace/src/git-remote-rad.1.adoc
  2621466      4 -rw-r--r--   1 root     root           61 Sep 15 15:14 /workspace/src/.env.seed
  2621503      8 -rw-r--r--   1 root     root         5432 Sep 15 15:14 /workspace/src/deny.toml
  2621458      8 -rw-r--r--   1 root     root         7645 Sep 15 15:14 /workspace/src/HACKING.md
  2621447      4 -rw-r--r--   1 root     root         1079 Sep 15 15:14 /workspace/src/LICENSE-MIT
  2621463      8 -rw-r--r--   1 root     root         8023 Sep 15 15:14 /workspace/src/rad.1.adoc
  2621469      4 drwxr-xr-x   2 root     root         4096 Sep 15 15:14 /workspace/src/build
  2622223      4 -rw-r--r--   1 root     root         1083 Sep 15 15:14 /workspace/src/.gitsigners
  2621459      4 -rw-r--r--   1 root     root           30 Sep 15 15:14 /workspace/src/.dockerignore
  2621461      4 drwxr-xr-x   2 root     root         4096 Sep 15 15:14 /workspace/src/.cargo
  2621442      4 drwxr-xr-x   2 root     root         4096 Sep 15 15:15 /workspace/artifacts
  2648954      4 drwxr-xr-x   2 root     root         4096 Sep 15 14:35 /workspace/cache
RUN: Action finished OK
RUN: Action CargoFmt
[2025-09-15T15:15:07Z DEBUG ambient_ci::action] Plan::execute: CargoFmt
SPAWN: argv=["cargo", "fmt", "--check"]
       cwd=/workspace/src (exists? true)
       extra_env=[("CARGO_TARGET_DIR", "/workspace/cache"), ("CARGO_HOME", "/workspace/deps"), ("PATH", "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin")]
RUN: Action finished OK
RUN: Action CargoClippy
[2025-09-15T15:15:08Z DEBUG ambient_ci::action] Plan::execute: CargoClippy
SPAWN: argv=["cargo", "clippy", "--offline", "--locked", "--workspace", "--all-targets", "--no-deps", "--", "--deny", "warnings"]
       cwd=/workspace/src (exists? true)
       extra_env=[("CARGO_TARGET_DIR", "/workspace/cache"), ("CARGO_HOME", "/workspace/deps"), ("PATH", "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin")]
   Compiling libc v0.2.174
   Compiling proc-macro2 v1.0.92
   Compiling unicode-ident v1.0.12
    Checking cfg-if v1.0.0
   Compiling shlex v1.3.0
   Compiling version_check v0.9.4
   Compiling serde v1.0.219
    Checking memchr v2.7.2
    Checking log v0.4.27
   Compiling quote v1.0.36
   Compiling autocfg v1.2.0
    Checking getrandom v0.2.15
   Compiling jobserver v0.1.31
   Compiling syn v2.0.89
    Checking smallvec v1.13.2
    Checking aho-corasick v1.1.3
   Compiling cc v1.2.2
    Checking regex-syntax v0.8.5
   Compiling typenum v1.17.0
   Compiling generic-array v0.14.7
    Checking regex-automata v0.4.9
    Checking rand_core v0.6.4
    Checking fastrand v2.1.0
    Checking crypto-common v0.1.6
    Checking bitflags v2.9.1
   Compiling lock_api v0.4.11
   Compiling parking_lot_core v0.9.9
    Checking scopeguard v1.2.0
    Checking once_cell v1.21.3
    Checking subtle v2.5.0
    Checking stable_deref_trait v1.2.0
    Checking parking_lot v0.12.3
   Compiling syn v1.0.109
    Checking tinyvec_macros v0.1.1
    Checking tinyvec v1.6.0
   Compiling thiserror v2.0.12
    Checking bstr v1.9.1
   Compiling synstructure v0.13.1
    Checking zeroize v1.7.0
    Checking unicode-normalization v0.1.23
    Checking cpufeatures v0.2.12
   Compiling crc32fast v1.4.0
   Compiling icu_locid_transform_data v1.5.1
    Checking writeable v0.5.5
    Checking litemap v0.7.5
    Checking block-padding v0.3.3
   Compiling icu_properties_data v1.5.1
    Checking inout v0.1.3
    Checking block-buffer v0.10.4
   Compiling pkg-config v0.3.30
    Checking hashbrown v0.14.3
   Compiling serde_derive v1.0.219
   Compiling zerofrom-derive v0.1.6
   Compiling yoke-derive v0.7.5
   Compiling zerovec-derive v0.10.3
    Checking zerofrom v0.1.6
    Checking yoke v0.7.5
   Compiling displaydoc v0.2.5
   Compiling thiserror-impl v2.0.12
   Compiling icu_provider_macros v1.5.0
    Checking zerovec v0.10.4
    Checking itoa v1.0.11
   Compiling icu_normalizer_data v1.5.1
    Checking digest v0.10.7
    Checking tinystr v0.7.6
    Checking icu_locid v1.5.0
    Checking icu_collections v1.5.0
    Checking cipher v0.4.4
    Checking utf8_iter v1.0.4
    Checking adler2 v2.0.0
    Checking utf16_iter v1.0.5
    Checking write16 v1.0.0
    Checking icu_provider v1.5.0
   Compiling thiserror v1.0.69
    Checking miniz_oxide v0.8.8
    Checking icu_locid_transform v1.5.0
   Compiling thiserror-impl v1.0.69
    Checking percent-encoding v2.3.1
   Compiling rustix v0.38.34
    Checking linux-raw-sys v0.4.13
    Checking icu_properties v1.5.1
    Checking sha2 v0.10.8
    Checking gix-trace v0.1.12
    Checking form_urlencoded v1.2.1
    Checking universal-hash v0.5.1
   Compiling vcpkg v0.2.15
    Checking opaque-debug v0.3.1
    Checking faster-hex v0.9.0
   Compiling amplify_syn v2.0.1
   Compiling libz-sys v1.1.16
   Compiling data-encoding v2.5.0
    Checking tempfile v3.10.1
    Checking icu_normalizer v1.5.0
   Compiling amplify_derive v4.0.0
    Checking idna_adapter v1.2.0
   Compiling data-encoding-macro-internal v0.1.12
    Checking idna v1.0.3
    Checking url v2.5.4
    Checking gix-utils v0.1.14
    Checking ascii v1.1.0
    Checking signature v1.6.4
    Checking amplify_num v0.5.2
    Checking data-encoding-macro v0.1.14
    Checking ed25519 v1.5.3
    Checking gix-hash v0.15.1
   Compiling libgit2-sys v0.17.0+1.8.1
    Checking aead v0.5.2
   Compiling num-traits v0.2.19
    Checking amplify v4.6.0
   Compiling proc-macro-error-attr v1.0.4
    Checking ct-codecs v1.1.1
    Checking base-x v0.2.11
    Checking byteorder v1.5.0
    Checking same-file v1.0.6
    Checking multibase v0.9.1
    Checking walkdir v2.5.0
    Checking ec25519 v0.1.0
    Checking flate2 v1.1.1
    Checking poly1305 v0.8.0
    Checking chacha20 v0.9.1
    Checking prodash v29.0.2
   Compiling proc-macro-error v1.0.4
    Checking sha1_smol v1.0.0
    Checking cyphergraphy v0.3.0
    Checking gix-features v0.39.1
    Checking keccak v0.1.5
   Compiling crossbeam-utils v0.8.19
    Checking sha3 v0.10.8
   Compiling git-ref-format-core v0.3.1
    Checking polyval v0.6.2
    Checking hmac v0.12.1
   Compiling sqlite3-src v0.5.1
    Checking equivalent v1.0.1
    Checking base32 v0.4.0
    Checking ppv-lite86 v0.2.17
    Checking base64ct v1.6.0
    Checking home v0.5.9
   Compiling serde_json v1.0.140
    Checking pem-rfc7468 v0.7.0
    Checking rand_chacha v0.3.1
    Checking gix-path v0.10.15
   Compiling git-ref-format-macro v0.3.1
    Checking cypheraddr v0.4.0
    Checking indexmap v2.2.6
    Checking pbkdf2 v0.12.2
    Checking ghash v0.5.1
    Checking chacha20poly1305 v0.10.1
    Checking aes v0.8.4
    Checking ctr v0.9.2
    Checking ryu v1.0.17
    Checking aes-gcm v0.10.3
    Checking git-ref-format v0.3.1
    Checking crossbeam-channel v0.5.15
    Checking noise-framework v0.4.0
    Checking socks5-client v0.4.1
    Checking rand v0.8.5
    Checking ssh-encoding v0.2.0
    Checking blowfish v0.9.1
    Checking cbc v0.1.2
   Compiling ref-cast v1.0.24
    Checking radicle-std-ext v0.1.0
    Checking ssh-cipher v0.2.0
    Checking bcrypt-pbkdf v0.10.0
    Checking cyphernet v0.5.2
   Compiling ref-cast-impl v1.0.24
    Checking signature v2.2.0
    Checking ssh-key v0.6.6
    Checking qcheck v1.0.0
    Checking radicle-ssh v0.10.0 (/workspace/src/crates/radicle-ssh)
   Compiling typeid v1.0.3
    Checking dyn-clone v1.0.17
    Checking lazy_static v1.5.0
    Checking siphasher v1.0.1
    Checking jiff v0.2.1
    Checking nonempty v0.9.0
   Compiling serde_derive_internals v0.29.1
    Checking radicle-dag v0.10.0 (/workspace/src/crates/radicle-dag)
    Checking winnow v0.6.26
   Compiling schemars_derive v1.0.4
    Checking gix-date v0.9.4
    Checking gix-actor v0.33.2
    Checking erased-serde v0.4.6
    Checking gix-hashtable v0.6.0
    Checking gix-validate v0.9.4
    Checking iana-time-zone v0.1.60
    Checking chrono v0.4.38
    Checking schemars v1.0.4
    Checking gix-object v0.46.1
    Checking serde-untagged v0.1.7
    Checking colored v2.1.0
    Checking bytesize v2.0.1
    Checking localtime v1.3.1
    Checking memmap2 v0.9.4
    Checking tree-sitter-language v0.1.2
    Checking base64 v0.21.7
    Checking fast-glob v0.3.3
    Checking dunce v1.0.5
    Checking anstyle-query v1.0.2
    Checking gix-chunk v0.4.11
    Checking utf8parse v0.2.1
    Checking anstyle-parse v0.2.3
    Checking gix-commitgraph v0.25.1
    Checking colorchoice v1.0.0
    Checking anstyle v1.0.6
   Compiling rustix v1.0.7
    Checking anstream v0.6.13
    Checking gix-revwalk v0.17.0
    Checking gix-fs v0.12.1
    Checking linux-raw-sys v0.9.4
    Checking gix-tempfile v15.0.0
    Checking errno v0.3.13
    Checking sem_safe v0.2.0
    Checking shell-words v1.1.0
    Checking either v1.11.0
    Checking gix-command v0.4.1
    Checking signals_receipts v0.2.0
   Compiling signal-hook v0.3.18
    Checking gix-lock v15.0.1
    Checking gix-url v0.28.2
    Checking gix-config-value v0.14.12
    Checking gix-quote v0.4.15
    Checking gix-sec v0.10.12
    Checking signal-hook-registry v1.4.5
   Compiling getrandom v0.3.3
    Checking gix-prompt v0.9.1
    Checking radicle-signals v0.11.0 (/workspace/src/crates/radicle-signals)
    Checking gix-traverse v0.43.1
    Checking gix-revision v0.31.1
    Checking gix-diff v0.49.0
    Checking gix-packetline v0.18.4
   Compiling tree-sitter v0.24.4
    Checking mio v1.0.4
    Checking mio v0.8.11
   Compiling unicode-segmentation v1.11.0
   Compiling anyhow v1.0.82
   Compiling convert_case v0.7.1
    Checking signal-hook-mio v0.2.4
    Checking sqlite3-sys v0.15.2
    Checking sqlite v0.32.0
    Checking gix-transport v0.44.0
    Checking gix-pack v0.56.0
    Checking gix-refspec v0.27.0
    Checking gix-credentials v0.26.0
    Checking gix-shallow v0.1.0
    Checking gix-ref v0.49.1
    Checking gix-negotiate v0.17.0
   Compiling maybe-async v0.2.10
    Checking regex v1.11.1
    Checking arc-swap v1.7.1
   Compiling portable-atomic v1.11.0
    Checking gix-odb v0.66.0
    Checking gix-protocol v0.47.0
    Checking uuid v1.16.0
   Compiling xattr v1.3.1
   Compiling derive_more-impl v2.0.1
   Compiling filetime v0.2.23
    Checking lexopt v0.3.0
    Checking bitflags v1.3.2
    Checking unicode-width v0.2.1
   Compiling object v0.36.7
   Compiling litrs v0.4.1
    Checking console v0.16.0
    Checking crossterm v0.25.0
    Checking derive_more v2.0.1
   Compiling document-features v0.2.11
   Compiling tar v0.4.40
    Checking newline-converter v0.3.0
    Checking snapbox-macros v0.3.8
    Checking fxhash v0.2.1
    Checking salsa20 v0.10.2
    Checking siphasher v0.3.11
    Checking unicode-width v0.1.11
    Checking normalize-line-endings v0.3.0
    Checking similar v2.5.0
    Checking gimli v0.31.1
    Checking unit-prefix v0.5.1
    Checking streaming-iterator v0.1.9
    Checking snapbox v0.4.17
    Checking indicatif v0.18.0
   Compiling radicle-surf v0.22.0
    Checking bloomy v1.2.0
    Checking inquire v0.7.5
    Checking scrypt v0.11.0
    Checking crossterm v0.29.0
    Checking unicode-display-width v0.3.0
    Checking systemd-journal-logger v2.2.2
    Checking addr2line v0.24.2
    Checking serde_spanned v1.0.0
    Checking toml_datetime v0.7.0
   Compiling tree-sitter-md v0.3.2
   Compiling tree-sitter-ruby v0.23.1
   Compiling tree-sitter-json v0.24.8
   Compiling tree-sitter-typescript v0.23.2
   Compiling tree-sitter-html v0.23.2
   Compiling tree-sitter-c v0.23.2
   Compiling tree-sitter-css v0.23.1
   Compiling tree-sitter-python v0.23.4
   Compiling tree-sitter-rust v0.23.2
   Compiling tree-sitter-go v0.23.4
   Compiling tree-sitter-bash v0.23.3
   Compiling tree-sitter-toml-ng v0.6.0
    Checking popol v3.0.0
    Checking bytes v1.10.1
    Checking rustc-demangle v0.1.26
    Checking toml_writer v1.0.2
    Checking toml v0.9.5
    Checking io-reactor v0.5.2
    Checking backtrace v0.3.75
    Checking os_info v3.12.0
    Checking socket2 v0.5.7
    Checking nonempty v0.5.0
   Compiling radicle-node v0.15.0 (/workspace/src/crates/radicle-node)
    Checking base64 v0.13.1
    Checking yansi v0.5.1
    Checking diff v0.1.13
   Compiling radicle-cli v0.16.0 (/workspace/src/crates/radicle-cli)
    Checking pretty_assertions v1.4.0
    Checking netservices v0.8.0
    Checking human-panic v2.0.3
    Checking radicle-systemd v0.10.0 (/workspace/src/crates/radicle-systemd)
    Checking tree-sitter-highlight v0.24.4
    Checking itertools v0.14.0
    Checking num-integer v0.1.46
    Checking timeago v0.4.2
   Compiling escargot v0.5.10
   Compiling qcheck-macros v1.0.0
    Checking num-bigint v0.4.6
   Compiling ahash v0.8.11
    Checking num-iter v0.1.45
    Checking num-complex v0.4.6
    Checking env_filter v0.1.3
    Checking bit-vec v0.8.0
    Checking borrow-or-share v0.2.2
    Checking zerocopy v0.7.35
    Checking fluent-uri v0.3.2
    Checking num-rational v0.4.2
    Checking num v0.4.3
    Checking bit-set v0.8.0
    Checking env_logger v0.11.8
    Checking phf_shared v0.11.3
   Compiling test-log-macros v0.2.18
   Compiling paste v1.0.15
    Checking outref v0.5.2
   Compiling radicle-remote-helper v0.13.0 (/workspace/src/crates/radicle-remote-helper)
    Checking vsimd v0.8.0
    Checking phf v0.11.3
    Checking test-log v0.2.18
    Checking fancy-regex v0.14.0
    Checking referencing v0.30.0
    Checking uuid-simd v0.8.0
    Checking fraction v0.15.3
    Checking email_address v0.2.9
    Checking num-cmp v0.1.0
    Checking bytecount v0.6.8
    Checking base64 v0.22.1
    Checking emojis v0.6.4
    Checking jsonschema v0.30.0
    Checking git2 v0.19.0
    Checking radicle-git-ext v0.8.1
    Checking radicle-term v0.15.0 (/workspace/src/crates/radicle-term)
    Checking radicle-crypto v0.13.0 (/workspace/src/crates/radicle-crypto)
    Checking radicle-cob v0.16.0 (/workspace/src/crates/radicle-cob)
    Checking radicle v0.19.0 (/workspace/src/crates/radicle)
    Checking radicle-fetch v0.15.0 (/workspace/src/crates/radicle-fetch)
    Checking radicle-cli-test v0.13.0 (/workspace/src/crates/radicle-cli-test)
    Checking radicle-schemars v0.5.0 (/workspace/src/crates/radicle-schemars)
    Checking radicle-protocol v0.3.0 (/workspace/src/crates/radicle-protocol)
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 01s
RUN: Action finished OK
RUN: Action CargoBuild
[2025-09-15T15:16:10Z DEBUG ambient_ci::action] Plan::execute: CargoBuild
SPAWN: argv=["cargo", "build", "--offline", "--locked", "--workspace", "--all-targets"]
       cwd=/workspace/src (exists? true)
       extra_env=[("CARGO_TARGET_DIR", "/workspace/cache"), ("CARGO_HOME", "/workspace/deps"), ("PATH", "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin")]
   Compiling cfg-if v1.0.0
   Compiling libc v0.2.174
   Compiling shlex v1.3.0
   Compiling serde v1.0.219
   Compiling memchr v2.7.2
   Compiling jobserver v0.1.31
   Compiling log v0.4.27
   Compiling cc v1.2.2
   Compiling getrandom v0.2.15
   Compiling smallvec v1.13.2
   Compiling aho-corasick v1.1.3
   Compiling regex-syntax v0.8.5
   Compiling typenum v1.17.0
   Compiling rand_core v0.6.4
   Compiling generic-array v0.14.7
   Compiling bitflags v2.9.1
   Compiling fastrand v2.1.0
   Compiling regex-automata v0.4.9
   Compiling crypto-common v0.1.6
   Compiling scopeguard v1.2.0
   Compiling once_cell v1.21.3
   Compiling lock_api v0.4.11
   Compiling zerofrom v0.1.6
   Compiling parking_lot_core v0.9.9
   Compiling subtle v2.5.0
   Compiling stable_deref_trait v1.2.0
   Compiling yoke v0.7.5
   Compiling parking_lot v0.12.3
   Compiling tinyvec_macros v0.1.1
   Compiling tinyvec v1.6.0
   Compiling zerovec v0.10.4
   Compiling zeroize v1.7.0
   Compiling cpufeatures v0.2.12
   Compiling thiserror v2.0.12
   Compiling adler2 v2.0.0
   Compiling litemap v0.7.5
   Compiling unicode-normalization v0.1.23
   Compiling writeable v0.5.5
   Compiling miniz_oxide v0.8.8
   Compiling tinystr v0.7.6
   Compiling block-padding v0.3.3
   Compiling icu_locid v1.5.0
   Compiling inout v0.1.3
   Compiling icu_locid_transform_data v1.5.1
   Compiling block-buffer v0.10.4
   Compiling hashbrown v0.14.3
   Compiling bstr v1.9.1
   Compiling icu_provider v1.5.0
   Compiling itoa v1.0.11
   Compiling digest v0.10.7
   Compiling icu_locid_transform v1.5.0
   Compiling cipher v0.4.4
   Compiling crc32fast v1.4.0
   Compiling icu_properties_data v1.5.1
   Compiling icu_collections v1.5.0
   Compiling icu_normalizer_data v1.5.1
   Compiling utf8_iter v1.0.4
   Compiling write16 v1.0.0
   Compiling utf16_iter v1.0.5
   Compiling percent-encoding v2.3.1
   Compiling icu_properties v1.5.1
   Compiling linux-raw-sys v0.4.13
   Compiling rustix v0.38.34
   Compiling thiserror v1.0.69
   Compiling sha2 v0.10.8
   Compiling gix-trace v0.1.12
   Compiling form_urlencoded v1.2.1
   Compiling universal-hash v0.5.1
   Compiling opaque-debug v0.3.1
   Compiling libz-sys v1.1.16
   Compiling faster-hex v0.9.0
   Compiling gix-utils v0.1.14
   Compiling icu_normalizer v1.5.0
   Compiling idna_adapter v1.2.0
   Compiling idna v1.0.3
   Compiling tempfile v3.10.1
   Compiling url v2.5.4
   Compiling signature v1.6.4
   Compiling data-encoding v2.5.0
   Compiling amplify_num v0.5.2
   Compiling ascii v1.1.0
   Compiling data-encoding-macro v0.1.14
   Compiling ed25519 v1.5.3
   Compiling gix-hash v0.15.1
   Compiling libgit2-sys v0.17.0+1.8.1
   Compiling aead v0.5.2
   Compiling byteorder v1.5.0
   Compiling same-file v1.0.6
   Compiling ct-codecs v1.1.1
   Compiling base-x v0.2.11
   Compiling ec25519 v0.1.0
   Compiling multibase v0.9.1
   Compiling walkdir v2.5.0
   Compiling amplify v4.6.0
   Compiling poly1305 v0.8.0
   Compiling chacha20 v0.9.1
   Compiling flate2 v1.1.1
   Compiling prodash v29.0.2
   Compiling sha1_smol v1.0.0
   Compiling cyphergraphy v0.3.0
   Compiling gix-features v0.39.1
   Compiling num-traits v0.2.19
   Compiling keccak v0.1.5
   Compiling polyval v0.6.2
   Compiling sha3 v0.10.8
   Compiling git-ref-format-core v0.3.1
   Compiling hmac v0.12.1
   Compiling sqlite3-src v0.5.1
   Compiling base64ct v1.6.0
   Compiling base32 v0.4.0
   Compiling ppv-lite86 v0.2.17
   Compiling equivalent v1.0.1
   Compiling home v0.5.9
   Compiling gix-path v0.10.15
   Compiling pem-rfc7468 v0.7.0
   Compiling rand_chacha v0.3.1
   Compiling indexmap v2.2.6
   Compiling cypheraddr v0.4.0
   Compiling git-ref-format-macro v0.3.1
   Compiling pbkdf2 v0.12.2
   Compiling ghash v0.5.1
   Compiling crossbeam-utils v0.8.19
   Compiling chacha20poly1305 v0.10.1
   Compiling ctr v0.9.2
   Compiling aes v0.8.4
   Compiling ryu v1.0.17
   Compiling serde_json v1.0.140
   Compiling aes-gcm v0.10.3
   Compiling git-ref-format v0.3.1
   Compiling noise-framework v0.4.0
   Compiling crossbeam-channel v0.5.15
   Compiling socks5-client v0.4.1
   Compiling rand v0.8.5
   Compiling ssh-encoding v0.2.0
   Compiling blowfish v0.9.1
   Compiling cbc v0.1.2
   Compiling radicle-std-ext v0.1.0
   Compiling ssh-cipher v0.2.0
   Compiling bcrypt-pbkdf v0.10.0
   Compiling cyphernet v0.5.2
   Compiling signature v2.2.0
   Compiling ssh-key v0.6.6
   Compiling ref-cast v1.0.24
   Compiling qcheck v1.0.0
   Compiling radicle-ssh v0.10.0 (/workspace/src/crates/radicle-ssh)
   Compiling lazy_static v1.5.0
   Compiling dyn-clone v1.0.17
   Compiling siphasher v1.0.1
   Compiling jiff v0.2.1
   Compiling typeid v1.0.3
   Compiling radicle-dag v0.10.0 (/workspace/src/crates/radicle-dag)
   Compiling nonempty v0.9.0
   Compiling winnow v0.6.26
   Compiling erased-serde v0.4.6
   Compiling gix-hashtable v0.6.0
   Compiling gix-validate v0.9.4
   Compiling iana-time-zone v0.1.60
   Compiling chrono v0.4.38
   Compiling gix-date v0.9.4
   Compiling gix-actor v0.33.2
   Compiling gix-object v0.46.1
   Compiling serde-untagged v0.1.7
   Compiling schemars v1.0.4
   Compiling colored v2.1.0
   Compiling bytesize v2.0.1
   Compiling localtime v1.3.1
   Compiling memmap2 v0.9.4
   Compiling tree-sitter-language v0.1.2
   Compiling fast-glob v0.3.3
   Compiling anstyle-query v1.0.2
   Compiling dunce v1.0.5
   Compiling base64 v0.21.7
   Compiling gix-chunk v0.4.11
   Compiling utf8parse v0.2.1
   Compiling anstyle-parse v0.2.3
   Compiling gix-commitgraph v0.25.1
   Compiling anstyle v1.0.6
   Compiling colorchoice v1.0.0
   Compiling gix-revwalk v0.17.0
   Compiling anstream v0.6.13
   Compiling gix-fs v0.12.1
   Compiling linux-raw-sys v0.9.4
   Compiling gix-tempfile v15.0.0
   Compiling errno v0.3.13
   Compiling sem_safe v0.2.0
   Compiling shell-words v1.1.0
   Compiling unicode-segmentation v1.11.0
   Compiling sqlite3-sys v0.15.2
   Compiling rustix v1.0.7
   Compiling sqlite v0.32.0
   Compiling either v1.11.0
   Compiling gix-command v0.4.1
   Compiling signals_receipts v0.2.0
   Compiling gix-lock v15.0.1
   Compiling gix-url v0.28.2
   Compiling gix-config-value v0.14.12
   Compiling gix-quote v0.4.15
   Compiling gix-sec v0.10.12
   Compiling signal-hook-registry v1.4.5
   Compiling signal-hook v0.3.18
   Compiling gix-prompt v0.9.1
   Compiling radicle-signals v0.11.0 (/workspace/src/crates/radicle-signals)
   Compiling gix-traverse v0.43.1
   Compiling gix-revision v0.31.1
   Compiling gix-diff v0.49.0
   Compiling gix-packetline v0.18.4
   Compiling tree-sitter v0.24.4
   Compiling mio v1.0.4
   Compiling mio v0.8.11
   Compiling signal-hook-mio v0.2.4
   Compiling gix-transport v0.44.0
   Compiling gix-pack v0.56.0
   Compiling gix-refspec v0.27.0
   Compiling gix-credentials v0.26.0
   Compiling getrandom v0.3.3
   Compiling gix-shallow v0.1.0
   Compiling gix-ref v0.49.1
   Compiling convert_case v0.7.1
   Compiling gix-negotiate v0.17.0
   Compiling regex v1.11.1
   Compiling arc-swap v1.7.1
   Compiling gix-odb v0.66.0
   Compiling gix-protocol v0.47.0
   Compiling derive_more-impl v2.0.1
   Compiling uuid v1.16.0
   Compiling xattr v1.3.1
   Compiling filetime v0.2.23
   Compiling lexopt v0.3.0
   Compiling unicode-width v0.2.1
   Compiling bitflags v1.3.2
   Compiling console v0.16.0
   Compiling tar v0.4.40
   Compiling crossterm v0.25.0
   Compiling derive_more v2.0.1
   Compiling anyhow v1.0.82
   Compiling portable-atomic v1.11.0
   Compiling newline-converter v0.3.0
   Compiling snapbox-macros v0.3.8
   Compiling fxhash v0.2.1
   Compiling salsa20 v0.10.2
   Compiling unicode-width v0.1.11
   Compiling siphasher v0.3.11
   Compiling streaming-iterator v0.1.9
   Compiling similar v2.5.0
   Compiling normalize-line-endings v0.3.0
   Compiling unit-prefix v0.5.1
   Compiling gimli v0.31.1
   Compiling indicatif v0.18.0
   Compiling snapbox v0.4.17
   Compiling radicle-surf v0.22.0
   Compiling addr2line v0.24.2
   Compiling bloomy v1.2.0
   Compiling inquire v0.7.5
   Compiling scrypt v0.11.0
   Compiling crossterm v0.29.0
   Compiling object v0.36.7
   Compiling systemd-journal-logger v2.2.2
   Compiling unicode-display-width v0.3.0
   Compiling tree-sitter-go v0.23.4
   Compiling tree-sitter-css v0.23.1
   Compiling tree-sitter-c v0.23.2
   Compiling tree-sitter-typescript v0.23.2
   Compiling tree-sitter-json v0.24.8
   Compiling tree-sitter-ruby v0.23.1
   Compiling tree-sitter-html v0.23.2
   Compiling tree-sitter-python v0.23.4
   Compiling tree-sitter-bash v0.23.3
   Compiling tree-sitter-toml-ng v0.6.0
   Compiling tree-sitter-rust v0.23.2
   Compiling tree-sitter-md v0.3.2
   Compiling toml_datetime v0.7.0
   Compiling serde_spanned v1.0.0
   Compiling popol v3.0.0
   Compiling toml_writer v1.0.2
   Compiling bytes v1.10.1
   Compiling rustc-demangle v0.1.26
   Compiling backtrace v0.3.75
   Compiling toml v0.9.5
   Compiling io-reactor v0.5.2
   Compiling os_info v3.12.0
   Compiling socket2 v0.5.7
   Compiling base64 v0.13.1
   Compiling nonempty v0.5.0
   Compiling yansi v0.5.1
   Compiling radicle-node v0.15.0 (/workspace/src/crates/radicle-node)
   Compiling radicle-cli v0.16.0 (/workspace/src/crates/radicle-cli)
   Compiling diff v0.1.13
   Compiling human-panic v2.0.3
   Compiling pretty_assertions v1.4.0
   Compiling netservices v0.8.0
   Compiling radicle-systemd v0.10.0 (/workspace/src/crates/radicle-systemd)
   Compiling tree-sitter-highlight v0.24.4
   Compiling itertools v0.14.0
   Compiling num-integer v0.1.46
   Compiling timeago v0.4.2
   Compiling escargot v0.5.10
   Compiling num-bigint v0.4.6
   Compiling num-iter v0.1.45
   Compiling num-complex v0.4.6
   Compiling num-rational v0.4.2
   Compiling env_filter v0.1.3
   Compiling borrow-or-share v0.2.2
   Compiling bit-vec v0.8.0
   Compiling zerocopy v0.7.35
   Compiling bit-set v0.8.0
   Compiling num v0.4.3
   Compiling fluent-uri v0.3.2
   Compiling env_logger v0.11.8
   Compiling ahash v0.8.11
   Compiling phf_shared v0.11.3
   Compiling radicle-remote-helper v0.13.0 (/workspace/src/crates/radicle-remote-helper)
   Compiling vsimd v0.8.0
   Compiling outref v0.5.2
   Compiling referencing v0.30.0
   Compiling phf v0.11.3
   Compiling git2 v0.19.0
   Compiling uuid-simd v0.8.0
   Compiling test-log v0.2.18
   Compiling fraction v0.15.3
   Compiling fancy-regex v0.14.0
   Compiling email_address v0.2.9
   Compiling base64 v0.22.1
   Compiling bytecount v0.6.8
   Compiling num-cmp v0.1.0
   Compiling emojis v0.6.4
   Compiling jsonschema v0.30.0
   Compiling radicle-git-ext v0.8.1
   Compiling radicle-crypto v0.13.0 (/workspace/src/crates/radicle-crypto)
   Compiling radicle-cob v0.16.0 (/workspace/src/crates/radicle-cob)
   Compiling radicle-term v0.15.0 (/workspace/src/crates/radicle-term)
   Compiling radicle v0.19.0 (/workspace/src/crates/radicle)
   Compiling radicle-fetch v0.15.0 (/workspace/src/crates/radicle-fetch)
   Compiling radicle-protocol v0.3.0 (/workspace/src/crates/radicle-protocol)
   Compiling radicle-cli-test v0.13.0 (/workspace/src/crates/radicle-cli-test)
   Compiling radicle-schemars v0.5.0 (/workspace/src/crates/radicle-schemars)
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 38s
RUN: Action finished OK
RUN: Action CargoTest
[2025-09-15T15:17:48Z DEBUG ambient_ci::action] Plan::execute: CargoTest
SPAWN: argv=["cargo", "test", "--offline", "--locked", "--workspace"]
       cwd=/workspace/src (exists? true)
       extra_env=[("CARGO_TARGET_DIR", "/workspace/cache"), ("CARGO_HOME", "/workspace/deps"), ("PATH", "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin")]
    Finished `test` profile [unoptimized + debuginfo] target(s) in 0.29s
     Running unittests src/lib.rs (/workspace/cache/debug/deps/radicle-51334f29bf16c6df)

running 237 tests
test canonical::formatter::test::ascii_control_characters ... ok
test cob::cache::migrations::_2::tests::test_migration_2 ... ok
test cob::cache::tests::test_check_version ... ok
test cob::cache::migrations::_2::tests::test_patch_json_deserialization ... ok
test cob::common::test::test_color ... ok
test cob::common::test::test_emojis ... ok
test canonical::formatter::test::securesystemslib_asserts ... ok
test canonical::formatter::test::ordered_nested_object ... ok
test cob::cache::tests::test_migrate_to ... ok
test cob::identity::test::prop_json_eq_str ... ok
test cob::identity::test::test_identity_redact_revision ... ok
test cob::identity::test::test_identity_remove_delegate_concurrent ... ok
test cob::identity::test::test_identity_reject_concurrent ... ok
test cob::identity::test::test_identity_updates ... ok
test cob::identity::test::test_identity_update_rejected ... ok
test cob::issue::cache::tests::test_counts ... ok
test cob::issue::cache::tests::test_get ... ok
test cob::issue::cache::tests::test_is_empty ... ok
test cob::issue::cache::tests::test_list ... ok
test cob::issue::cache::tests::test_list_by_status ... ok
test cob::issue::cache::tests::test_remove ... ok
test cob::identity::test::test_valid_identity ... ok
test cob::identity::test::test_identity_updates_concurrent ... ok
test cob::issue::test::test_embeds ... ok
test cob::issue::test::test_embeds_edit ... ok
test cob::identity::test::test_identity_updates_concurrent_outdated ... ok
test cob::issue::test::test_invalid_actions ... ok
test cob::issue::test::test_invalid_tx ... ok
test cob::issue::test::test_concurrency ... ok
test cob::issue::test::test_invalid_tx_reference ... ok
test cob::issue::test::test_invalid_cob ... ok
test cob::issue::test::test_issue_all ... ok
test cob::issue::test::test_issue_comment ... ok
test cob::issue::test::test_issue_create_and_assign ... ok
test cob::issue::test::test_issue_comment_redact ... ok
test cob::issue::test::test_issue_create_and_get ... ok
test cob::issue::test::test_issue_create_and_change_state ... ok
test cob::issue::test::test_issue_create_and_unassign ... ok
test cob::issue::test::test_issue_create_and_reassign ... ok
test cob::issue::test::test_issue_edit ... ok
test cob::issue::test::test_issue_edit_description ... ok
test cob::issue::test::test_issue_multilines ... ok
test cob::issue::test::test_issue_state_serde ... ok
test cob::issue::test::test_ordering ... ok
test cob::patch::actions::test::test_review_edit ... ok
test cob::issue::test::test_issue_label ... ok
test cob::patch::cache::tests::test_find_by_revision ... ok
test cob::issue::test::test_issue_react ... ok
test cob::patch::cache::tests::test_is_empty ... ok
test cob::issue::test::test_issue_reply ... ok
test cob::patch::cache::tests::test_list_by_status ... ok
test cob::patch::cache::tests::test_get ... ok
test cob::patch::cache::tests::test_remove ... ok
test cob::patch::encoding::review::test::test_review_deserialize_summary_migration_with_summary ... ok
test cob::patch::encoding::review::test::test_review_deserialize_summary_migration_without_summary ... ok
test cob::patch::encoding::review::test::test_review_deserialize_summary_v2 ... ok
test cob::patch::encoding::review::test::test_review_summary ... ok
test cob::patch::test::test_json ... ok
test cob::patch::test::test_json_serialization ... ok
test cob::patch::encoding::review::test::test_review_deserialize_summary_migration_null_summary ... ok
test cob::patch::test::test_patch_create_and_get ... ok
test cob::patch::test::test_patch_discussion ... ok
test cob::patch::cache::tests::test_list ... ok
test cob::patch::test::test_patch_merge ... ok
test cob::patch::test::test_patch_review ... ok
test cob::patch::cache::tests::test_counts ... ok
test cob::patch::test::test_patch_redact ... ok
test cob::patch::test::test_patch_review_comment ... ok
test cob::patch::test::test_patch_review_duplicate ... ok
test cob::patch::test::test_patch_review_edit ... ok
test cob::patch::test::test_patch_review_remove_summary ... ok
test cob::patch::test::test_reactions_json_serialization ... ok
test cob::patch::test::test_revision_edit_redact ... ok
test cob::patch::test::test_revision_reaction ... ok
test cob::patch::test::test_revision_review_merge_redacted ... ok
test cob::patch::test::test_patch_review_edit_comment ... ok
test cob::stream::tests::test_all_from ... ok
test cob::stream::tests::test_all_from_until ... ok
test cob::stream::tests::test_all_until ... ok
test cob::patch::test::test_patch_review_revision_redact ... ok
test cob::stream::tests::test_regression_from_until ... ok
test cob::thread::tests::test_comment_edit_missing ... ok
test cob::thread::tests::test_comment_edit_redacted ... ok
test cob::thread::tests::test_comment_redact_missing ... ok
test cob::thread::tests::test_duplicate_comments ... ok
test cob::thread::tests::test_edit_comment ... ok
test cob::thread::tests::test_redact_comment ... ok
test cob::stream::tests::test_from_until ... ok
test git::canonical::quorum::test::merge_base_commutative ... ok
test cob::thread::tests::test_timeline ... ok
test git::canonical::quorum::test::test_merge_bases ... ok
test git::canonical::rules::tests::test_deserialization ... ok
test git::canonical::rules::tests::test_deserialize_extensions ... ok
test git::canonical::rules::tests::test_order ... ok
test git::canonical::rules::tests::test_roundtrip ... ok
test git::canonical::rules::tests::test_canonical ... ok
test git::canonical::rules::tests::test_rule_validate_success ... ok
test git::canonical::rules::tests::test_special_branches ... ok
test git::canonical::tests::test_commit_quorum_fork_of_a_fork ... ok
test git::canonical::tests::test_commit_quorum_forked_merge_commits ... ok
test git::canonical::tests::test_commit_quorum_groups ... ok
test git::canonical::tests::test_commit_quorum_linear ... ok
test git::canonical::tests::test_commit_quorum_merges ... ok
test git::canonical::tests::test_commit_quorum_single ... ok
test git::canonical::tests::test_commit_quorum_three_way_fork ... ok
test git::canonical::tests::test_commit_quorum_two_way_fork ... ok
test git::canonical::tests::test_quorum_different_types ... ok
test cob::patch::test::test_patch_update ... ok
test git::canonical::tests::test_tag_quorum ... ok
test git::test::test_version_from_str ... ok
test git::test::test_version_ord ... ok
test identity::did::test::test_did_encode_decode ... ok
test identity::did::test::test_did_vectors ... ok
test identity::doc::id::test::prop_from_str ... ok
test git::canonical::rules::tests::test_rule_validate_failures ... ok
test identity::doc::test::test_canonical_doc ... ok
test identity::doc::test::test_canonical_example ... ok
test identity::doc::test::test_duplicate_dids ... ok
test identity::doc::test::test_future_version_error ... ok
test identity::doc::test::test_is_valid_version ... ok
test identity::doc::test::test_max_delegates ... ok
test identity::doc::test::test_not_found ... ok
test identity::doc::test::test_parse_version ... ok
test identity::doc::test::test_visibility_json ... ok
test identity::doc::update::test::test_can_update_crefs ... ok
test identity::doc::update::test::test_cannot_include_default_branch_rule ... ok
test identity::doc::update::test::test_default_branch_rule_exists_after_verification ... ok
test identity::project::test::test_project_name ... ok
test node::address::store::test::test_alias ... ok
test node::address::store::test::test_disconnected ... ok
test node::address::store::test::test_disconnected_ban ... ok
test git::canonical::tests::test_quorum_properties ... ok
test node::address::store::test::test_entries ... ok
test node::address::store::test::test_empty ... ok
test node::address::store::test::test_get_none ... ok
test node::address::store::test::test_insert_and_get ... ok
test node::address::store::test::test_insert_and_remove ... ok
test node::address::store::test::test_insert_duplicate ... ok
test node::address::store::test::test_insert_and_update ... ok
test node::address::store::test::test_node_aliases ... ok
test node::config::test::partial ... ok
test node::db::test::test_version ... ok
test node::features::test::test_operations ... ok
test node::notifications::store::test::test_branch_notifications ... ok
test node::notifications::store::test::test_clear ... ok
test node::notifications::store::test::test_cob_notifications ... ok
test node::notifications::store::test::test_counts_by_repo ... ok
test node::notifications::store::test::test_duplicate_notifications ... ok
test node::notifications::store::test::test_notification_status ... ok
test node::policy::store::test::test_follow_and_unfollow_node ... ok
test node::address::store::test::test_remove_nothing ... ok
test node::policy::store::test::test_node_aliases ... ok
test node::policy::store::test::test_node_policy ... ok
test node::policy::store::test::test_repo_policies ... ok
test node::policy::store::test::test_repo_policy ... ok
test node::policy::store::test::test_seed_and_unseed_repo ... ok
test node::policy::store::test::test_update_alias ... ok
test node::policy::store::test::test_update_scope ... ok
test node::refs::store::test::test_count ... ok
test node::refs::store::test::test_set_and_delete ... ok
test node::refs::store::test::test_set_and_get ... ok
test node::policy::store::test::test_node_policies ... ok
test node::routing::test::test_count ... ok
test node::routing::test::test_entries ... ok
test node::routing::test::test_insert_and_get ... ok
test node::routing::test::test_insert_and_get_resources ... ok
test node::routing::test::test_insert_and_remove ... ok
test node::routing::test::test_insert_existing_updated_time ... ok
test node::routing::test::test_len ... ok
test node::routing::test::test_insert_duplicate ... ok
test node::routing::test::test_remove_many ... ok
test node::routing::test::test_remove_redundant ... ok
test node::routing::test::test_update_existing_multi ... ok
test node::sync::announce::test::all_synced_nodes_are_preferred_seeds ... ok
test node::routing::test::test_prune ... ok
test node::sync::announce::test::announcer_adapts_target_to_reach ... ok
test node::sync::announce::test::announcer_preferred_seeds_or_replica_factor ... ok
test node::sync::announce::test::announcer_reached_max_replication_target ... ok
test node::sync::announce::test::announcer_reached_min_replication_target ... ok
test node::sync::announce::test::announcer_synced_with_unknown_node ... ok
test node::sync::announce::test::announcer_reached_preferred_seeds ... ok
test node::sync::announce::test::announcer_timed_out ... ok
test node::sync::announce::test::announcer_with_replication_factor_zero_and_preferred_seeds ... ok
test node::sync::announce::test::cannot_construct_announcer ... ok
test node::sync::announce::test::construct_only_preferred_seeds_provided ... ok
test node::sync::announce::test::construct_node_appears_in_multiple_input_sets ... ok
test node::sync::announce::test::invariant_progress_should_match_state ... ok
test node::sync::announce::test::local_node_in_preferred_seeds ... ok
test node::sync::announce::test::local_node_in_synced_set ... ok
test node::sync::announce::test::local_node_in_multiple_sets ... ok
test node::sync::announce::test::local_node_in_unsynced_set ... ok
test node::sync::announce::test::local_node_only_in_all_sets_results_in_no_seeds_error ... ok
test node::sync::announce::test::preferred_seeds_already_synced ... ok
test node::sync::announce::test::synced_with_same_node_multiple_times ... ok
test node::sync::announce::test::synced_with_local_node_is_ignored ... ok
test node::sync::announce::test::timed_out_after_reaching_success ... ok
test cob::thread::tests::prop_ordering ... ok
test node::sync::fetch::test::all_nodes_are_fetchable ... ok
test node::sync::fetch::test::ignores_duplicates_and_local_node ... ok
test node::sync::fetch::test::preferred_seeds_target_returned_over_replicas ... ok
test node::sync::fetch::test::could_not_reach_target ... ok
test node::sync::fetch::test::reaches_target_of_max_replicas ... ok
test node::sync::fetch::test::all_nodes_are_candidates ... ok
test node::sync::fetch::test::reaches_target_of_preferred_seeds ... ok
test node::sync::test::ensure_replicas_construction ... ok
test node::sync::fetch::test::reaches_target_of_replicas ... ok
test node::sync::test::replicas_constrain_to ... ok
test node::test::test_alias ... ok
test node::test::test_command_result ... ok
test node::test::test_user_agent ... ok
test node::timestamp::tests::test_timestamp_max ... ok
test profile::test::canonicalize_home ... ok
test profile::test::test_config ... ok
test rad::tests::test_checkout ... ok
test rad::tests::test_fork ... ok
test serde_ext::test::test_localtime ... ok
test serde_ext::test::test_localtime_ext ... ok
test rad::tests::test_init ... ok
test storage::git::tests::test_references_of ... ok
test storage::git::tests::test_sign_refs ... ok
test storage::git::transport::local::url::test::test_url_parse ... ok
test storage::git::transport::local::url::test::test_url_to_string ... ok
test storage::git::transport::remote::url::test::test_url_parse ... ok
test storage::refs::tests::prop_canonical_roundtrip ... ok
test storage::git::tests::test_remote_refs ... ok
test storage::tests::test_storage ... ok
test test::assert::test::assert_with_message ... ok
test test::assert::test::test_assert_no_move ... ok
test test::assert::test::test_assert_panic_0 - should panic ... ok
test test::assert::test::test_assert_panic_1 - should panic ... ok
test test::assert::test::test_assert_panic_2 - should panic ... ok
test test::assert::test::test_assert_succeed ... ok
test test::assert::test::test_panic_message ... ok
test version::test::test_version ... ok
test storage::refs::tests::test_rid_verification ... ok
test profile::config::test::schema ... ok
test identity::doc::test::prop_encode_decode ... ok

test result: ok. 237 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.87s

     Running unittests src/lib.rs (/workspace/cache/debug/deps/radicle_cli-621b4b410a8c352b)

running 14 tests
test commands::patch::review::builder::tests::test_review_comments_before ... ok
test commands::patch::review::builder::tests::test_review_comments_basic ... ok
test commands::patch::review::builder::tests::test_review_comments_split_hunk ... ok
test commands::inspect::test::test_tree ... ok
test commands::patch::review::builder::tests::test_review_comments_multiline ... ok
test git::ddiff::tests::diff_encode_decode_ddiff_hunk ... ok
test git::pretty_diff::test::test_pretty ... ignored
test git::unified_diff::test::test_diff_content_encode_decode_content ... ok
test git::unified_diff::test::test_diff_encode_decode_diff ... ok
test terminal::format::test::test_bytes ... ok
test terminal::format::test::test_strip_comments ... ok
test terminal::patch::test::test_edit_display_message ... ok
test terminal::patch::test::test_update_display_message ... ok
test terminal::patch::test::test_create_display_message ... ok

test result: ok. 13 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.02s

     Running unittests src/main.rs (/workspace/cache/debug/deps/rad-90c5a176eb08002b)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running tests/commands.rs (/workspace/cache/debug/deps/commands-c121b642be9ff500)

running 104 tests
test framework_home ... ok
test git_push_and_fetch ... ok
test git_push_amend ... ok
test git_push_canonical_annotated_tags ... ok
test git_push_canonical_lightweight_tags ... ok
test git_push_diverge ... ok
test rad_auth ... ok
test rad_auth_errors ... ok
test rad_block ... ok
test git_push_rollback ... ok
test git_tag ... ok
test rad_checkout ... ok
test git_push_converge ... ok
test rad_clone ... ok
test rad_clone_bare ... ok
test rad_clean ... ok
test rad_clone_all ... ok
test rad_clone_unknown ... ok
test rad_clone_directory ... ok
test rad_clone_connect ... ok
test rad_cob_log ... ok
test rad_cob_migrate ... ok
test rad_cob_multiset ... ok
test rad_clone_partial_fail ... ok
test rad_cob_operations ... ok
test rad_cob_show ... ok
test rad_cob_update ... ok
test rad_cob_update_identity ... ok
test rad_diff ... ok
test rad_config ... ok
test rad_id_collaboration ... ignored, slow
test rad_id ... ok
test rad_id_conflict ... ok
test rad_id_private ... ok
test rad_fetch ... ok
test rad_fork ... ok
test rad_id_multi_delegate ... ok
test rad_id_unknown_field ... ok
test rad_id_update_delete_field ... ok
test rad_init ... ignored, part of many other tests
test rad_id_threshold ... ok
test rad_id_threshold_soft_fork ... ok
test rad_init_bare ... ok
test rad_init_detached_head ... ok
test rad_init_existing ... ok
test rad_init_no_git ... ok
test rad_init_existing_bare ... ok
test rad_init_no_seed ... ok
test rad_init_private ... ok
test rad_init_private_no_seed ... ok
test rad_init_private_clone ... ok
test rad_inbox ... ok
test rad_init_private_clone_seed ... ok
test rad_init_private_seed ... ok
test rad_init_sync_not_connected ... ok
test rad_init_with_existing_remote ... ok
test rad_init_sync_preferred ... ok
test rad_inspect ... ok
test rad_issue ... ok
test rad_merge_after_update ... ok
test rad_merge_no_ff ... ok
test rad_merge_via_push ... ok
test rad_node_connect ... ok
test rad_node ... ok
test rad_init_sync_and_clone ... ok
test rad_node_connect_without_address ... ok
test rad_init_sync_timeout ... ok
test rad_patch_ahead_behind ... ok
test rad_patch_change_base ... ok
test rad_patch_checkout ... ok
test rad_patch ... ok
test rad_patch_detached_head ... ok
test rad_patch_checkout_revision ... ok
test rad_patch_diff ... ok
test rad_patch_draft ... ok
test rad_patch_checkout_force ... ok
test rad_patch_edit ... ok
test rad_patch_fetch_2 ... FAILED
test rad_patch_merge_draft ... ok
test rad_patch_fetch_1 ... ok
test rad_patch_revert_merge ... ok
test rad_patch_delete ... ok
test rad_patch_update ... ok
test rad_patch_open_explore ... ok
test rad_patch_via_push ... FAILED
test rad_publish ... ok
test rad_review_by_hunk ... ok
test rad_seed_and_follow ... ok
test rad_remote ... ok
test rad_seed_many ... ok
test rad_self ... ok
test rad_push_and_pull_patches ... ok
test rad_patch_pull_update ... ok
test rad_unseed ... ok
test rad_sync_without_node ... ok
test rad_warn_old_nodes ... ok
test rad_unseed_many ... ok
test test_clone_without_seeds ... ok
test rad_watch ... ok
test rad_sync ... ok
test test_cob_deletion ... ok
test test_cob_replication ... ok
test rad_workflow ... ok
test test_replication_via_seed ... ok

failures:

---- rad_patch_fetch_2 stdout ----
1757949572 test: Using PATH ["/workspace/cache/debug", "/workspace/deps/bin", "/root/.cargo/bin", "/usr/local/sbin", "/usr/local/bin", "/usr/sbin", "/usr/bin", "/sbin", "/bin", "/tmp/radicle-41ukSg/work/alice"]
1757949572 test: rad-init.md: Running `/workspace/cache/debug/rad` with ["init", "--name", "heartwood", "--description", "Radicle Heartwood Protocol & Stack", "--no-confirm", "--public", "-v"] in `/tmp/radicle-41ukSg/work/alice`..
1757949572 test: rad-init.md: Running `/workspace/cache/debug/rad` with ["init"] in `/tmp/radicle-41ukSg/work/alice`..
1757949572 test: rad-init.md: Running `/workspace/cache/debug/rad` with ["ls"] in `/tmp/radicle-41ukSg/work/alice`..
1757949572 test: rad-init.md: Running `/workspace/cache/debug/rad` with ["node", "inventory"] in `/tmp/radicle-41ukSg/work/alice`..
1757949572 test: Using PATH ["/workspace/cache/debug", "/workspace/deps/bin", "/root/.cargo/bin", "/usr/local/sbin", "/usr/local/bin", "/usr/sbin", "/usr/bin", "/sbin", "/bin", "/tmp/radicle-41ukSg/work/alice"]
1757949572 test: rad-patch-fetch-2.md: Running `git` with ["checkout", "-b", "alice/1", "-q"] in `/tmp/radicle-41ukSg/work/alice`..
1757949572 test: rad-patch-fetch-2.md: Running `git` with ["commit", "--allow-empty", "-m", "Changes #1", "-q"] in `/tmp/radicle-41ukSg/work/alice`..
1757949572 test: rad-patch-fetch-2.md: Running `git` with ["push", "rad", "-o", "patch.message=Changes", "HEAD:refs/patches"] in `/tmp/radicle-41ukSg/work/alice`..
1757949572 test: rad-patch-fetch-2.md: Running `git` with ["checkout", "master", "-q"] in `/tmp/radicle-41ukSg/work/alice`..
1757949572 test: rad-patch-fetch-2.md: Running `git` with ["branch", "-D", "alice/1", "-q"] in `/tmp/radicle-41ukSg/work/alice`..
1757949572 test: rad-patch-fetch-2.md: Running `git` with ["update-ref", "-d", "refs/remotes/rad/alice/1"] in `/tmp/radicle-41ukSg/work/alice`..
1757949572 test: rad-patch-fetch-2.md: Running `git` with ["update-ref", "-d", "refs/remotes/rad/patches/5e2dedcc5d515fcbc1cca483d3376609fe889bfb"] in `/tmp/radicle-41ukSg/work/alice`..
1757949572 test: rad-patch-fetch-2.md: Running `git` with ["gc", "--prune=now"] in `/tmp/radicle-41ukSg/work/alice`..
1757949572 test: rad-patch-fetch-2.md: Running `git` with ["branch", "-r"] in `/tmp/radicle-41ukSg/work/alice`..
1757949572 test: rad-patch-fetch-2.md: Running `git` with ["pull"] in `/tmp/radicle-41ukSg/work/alice`..
1757949572 test: rad-patch-fetch-2.md: Running `git` with ["branch", "-r"] in `/tmp/radicle-41ukSg/work/alice`..

thread 'rad_patch_fetch_2' panicked at crates/radicle-cli-test/src/lib.rs:491:36:

--- Expected
++++ actual:   stdout
   1      -   rad/HEAD -> rad/master
   2    1 |   rad/master
   3    2 |   rad/patches/5e2dedcc5d515fcbc1cca483d3376609fe889bfb

Exit status: 0

note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

---- rad_patch_via_push stdout ----
1757949576 test: Using PATH ["/workspace/cache/debug", "/workspace/deps/bin", "/root/.cargo/bin", "/usr/local/sbin", "/usr/local/bin", "/usr/sbin", "/usr/bin", "/sbin", "/bin", "/tmp/radicle-SmCdTE/work/alice"]
1757949576 test: rad-init.md: Running `/workspace/cache/debug/rad` with ["init", "--name", "heartwood", "--description", "Radicle Heartwood Protocol & Stack", "--no-confirm", "--public", "-v"] in `/tmp/radicle-SmCdTE/work/alice`..
1757949576 test: rad-init.md: Running `/workspace/cache/debug/rad` with ["init"] in `/tmp/radicle-SmCdTE/work/alice`..
1757949576 test: rad-init.md: Running `/workspace/cache/debug/rad` with ["ls"] in `/tmp/radicle-SmCdTE/work/alice`..
1757949576 test: rad-init.md: Running `/workspace/cache/debug/rad` with ["node", "inventory"] in `/tmp/radicle-SmCdTE/work/alice`..
1757949576 test: Using PATH ["/workspace/cache/debug", "/workspace/deps/bin", "/root/.cargo/bin", "/usr/local/sbin", "/usr/local/bin", "/usr/sbin", "/usr/bin", "/sbin", "/bin", "/tmp/radicle-SmCdTE/work/alice"]
1757949576 test: rad-patch-via-push.md: Running `git` with ["checkout", "-b", "feature/1"] in `/tmp/radicle-SmCdTE/work/alice`..
1757949576 test: rad-patch-via-push.md: Running `git` with ["commit", "-a", "-m", "Add things", "-q", "--allow-empty"] in `/tmp/radicle-SmCdTE/work/alice`..
1757949576 test: rad-patch-via-push.md: Running `git` with ["push", "-o", "patch.message=Add things #1", "-o", "patch.message=See commits for details.", "rad", "HEAD:refs/patches"] in `/tmp/radicle-SmCdTE/work/alice`..
1757949576 test: rad-patch-via-push.md: Running `/workspace/cache/debug/rad` with ["patch", "show", "6035d2f582afbe01ff23ea87528ae523d76875b6"] in `/tmp/radicle-SmCdTE/work/alice`..
1757949576 test: rad-patch-via-push.md: Running `git` with ["branch", "-vv"] in `/tmp/radicle-SmCdTE/work/alice`..
1757949576 test: rad-patch-via-push.md: Running `git` with ["status", "--short", "--branch"] in `/tmp/radicle-SmCdTE/work/alice`..
1757949576 test: rad-patch-via-push.md: Running `git` with ["fetch"] in `/tmp/radicle-SmCdTE/work/alice`..
1757949576 test: rad-patch-via-push.md: Running `git` with ["push"] in `/tmp/radicle-SmCdTE/work/alice`..
1757949576 test: rad-patch-via-push.md: Running `git` with ["show-ref"] in `/tmp/radicle-SmCdTE/work/alice`..

thread 'rad_patch_via_push' panicked at crates/radicle-cli-test/src/lib.rs:491:36:

--- Expected
++++ actual:   stdout
   1    1 | 42d894a83c9c356552a57af09ccdbd5587a99045 refs/heads/feature/1
   2    2 | f2de534b5e81d7c6e2dcaf58c3dd91573c0a0354 refs/heads/master
   3      - f2de534b5e81d7c6e2dcaf58c3dd91573c0a0354 refs/remotes/rad/HEAD
   4    3 | f2de534b5e81d7c6e2dcaf58c3dd91573c0a0354 refs/remotes/rad/master
   5    4 | 42d894a83c9c356552a57af09ccdbd5587a99045 refs/remotes/rad/patches/6035d2f582afbe01ff23ea87528ae523d76875b6

Exit status: 0



failures:
    rad_patch_fetch_2
    rad_patch_via_push

test result: FAILED. 100 passed; 2 failed; 2 ignored; 0 measured; 0 filtered out; finished in 121.31s

error: test failed, to rerun pass `-p radicle-cli --test commands`
ERROR: Action failed: command failed: ["cargo", "test", "--offline", "--locked", "--workspace"]
ERROR: command failed: ["cargo", "test", "--offline", "--locked", "--workspace"]
EXIT CODE: 1
[2025-09-15T15:19:56Z INFO  ambient] ambient ends successfully

Trigger message

{
  "request": "trigger",
  "version": 1,
  "event_type": "patch",
  "repository": {
    "id": "rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5",
    "name": "heartwood",
    "description": "Radicle Heartwood Protocol & Stack",
    "private": false,
    "default_branch": "master",
    "delegates": [
      "did:key:z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT",
      "did:key:z6MktaNvN1KVFMkSRAiN4qK5yvX1zuEEaseeX5sffhzPZRZW",
      "did:key:z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM",
      "did:key:z6MkgFq6z5fkF2hioLLSNu1zP2qEL1aHXHZzGH1FLFGAnBGz",
      "did:key:z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz"
    ]
  },
  "action": "Updated",
  "patch": {
    "id": "ae0c6cc8b3f71c94bde192ee99e82dc70173cb75",
    "author": {
      "id": "did:key:z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz",
      "alias": "lorenz"
    },
    "title": "Revisit bare repositories",
    "state": {
      "status": "merged",
      "conflicts": []
    },
    "before": "101fbff8094bb6665963b5a819f0ba9ec2abdc6b",
    "after": "ef27961866b4bed092de9c58dcf2c0584aff5b99",
    "commits": [
      "ef27961866b4bed092de9c58dcf2c0584aff5b99"
    ],
    "target": "101fbff8094bb6665963b5a819f0ba9ec2abdc6b",
    "labels": [],
    "assignees": [],
    "revisions": [
      {
        "id": "ae0c6cc8b3f71c94bde192ee99e82dc70173cb75",
        "author": {
          "id": "did:key:z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz",
          "alias": "lorenz"
        },
        "description": "This patchset starts off with changes to `radicle-remote-helper`: Maintainence such as making the crate binary-only and a small clean up.\nThen, handling of `GIT_DIR` is simplified throughout `radicle{,-remote-helper,-cli}`, which unlocks usage of the remote helper with bare repositories.\nNext, the commands `rad init` and `rad clone` learn to handle bare repositories.\nFinally, code paths that would error or degrade upon detecting a bare repository are removed or fixed.\n\nOverall, this patch should significantly improve interoperability with bare repositories.",
        "base": "379037956a6cb88cb826a7f57276fca4a2c6c084",
        "oid": "525a241ddf4428fdbe2e5076262832ac4d4a21bd",
        "timestamp": 1757672429
      },
      {
        "id": "81fd9a59dfb1f8048cdd9c74be08672494330895",
        "author": {
          "id": "did:key:z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz",
          "alias": "lorenz"
        },
        "description": "REVIEW",
        "base": "379037956a6cb88cb826a7f57276fca4a2c6c084",
        "oid": "b2b132fa62232528ad402046c0bf67165f8871cb",
        "timestamp": 1757680539
      },
      {
        "id": "37bde804d2ecf3b2f5d7dfbd169abd87f04c111c",
        "author": {
          "id": "did:key:z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz",
          "alias": "lorenz"
        },
        "description": "Incorporate Fintan's review.",
        "base": "379037956a6cb88cb826a7f57276fca4a2c6c084",
        "oid": "5bff08f75044330991dc6f0e1e9e986d5441caf5",
        "timestamp": 1757780842
      },
      {
        "id": "d3a28c470673a6d66ca0f5546642c2c36ea1ed90",
        "author": {
          "id": "did:key:z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz",
          "alias": "lorenz"
        },
        "description": "Implement listing `HEAD`.",
        "base": "379037956a6cb88cb826a7f57276fca4a2c6c084",
        "oid": "9b6683739e60d930ad2bd63f3e0cfdd46118c60d",
        "timestamp": 1757798893
      },
      {
        "id": "9120167c0fd635bea71d53e813cb12c2019ca6fa",
        "author": {
          "id": "did:key:z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz",
          "alias": "lorenz"
        },
        "description": "Changes:\n- `cargo fmt`\n- Fix doc link by removing, since the method was unknown",
        "base": "379037956a6cb88cb826a7f57276fca4a2c6c084",
        "oid": "693ca362e06dac69f8ea6114ae05deb130863f47",
        "timestamp": 1757928028
      },
      {
        "id": "c9e4d85a2444ee4ea8fbc921b7f6a393a09b623d",
        "author": {
          "id": "did:key:z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz",
          "alias": "lorenz"
        },
        "description": "Rebase",
        "base": "66adbffd615bcd6a560213f01f3a35c424714c45",
        "oid": "ee9e6de5f347eff1e0472c2aaa30e806c38fe03e",
        "timestamp": 1757928761
      },
      {
        "id": "59a1325af115b757d80575992c816a2bfff242ce",
        "author": {
          "id": "did:key:z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz",
          "alias": "lorenz"
        },
        "description": "Simplify",
        "base": "101fbff8094bb6665963b5a819f0ba9ec2abdc6b",
        "oid": "ef27961866b4bed092de9c58dcf2c0584aff5b99",
        "timestamp": 1757949082
      }
    ]
  }
}

Ambient stdout

[2025-09-15T15:14:56Z INFO  ambient] ambient starts
[2025-09-15T15:14:56Z DEBUG ambient] load default configuration file /home/_rad/.config/ambient/config.yaml if it exists
[2025-09-15T15:14:56Z DEBUG ambient] complete configuration: Config {
        tmpdir: "/srv/tmp",
        image_store: "/home/_rad/.local/state/ambient-ci/images",
        projects: "/home/_rad/ambient-projects.yaml",
        state: "/srv/ambient-state",
        rsync_target: None,
        rsync_target_base: None,
        rsync_target_map: None,
        dput_target: None,
        executor: Some(
            "/usr/bin/ambient-execute-plan",
        ),
        artifacts_max_size: Byte(
            10000000000,
        ),
        cache_max_size: Byte(
            50000000000,
        ),
        qemu: QemuConfig {
            cpus: 4,
            memory: Byte(
                8000000000,
            ),
            kvm_binary: "/usr/bin/kvm",
            ovmf_vars_file: "/usr/share/ovmf/OVMF.fd",
            ovmf_code_file: "/usr/share/ovmf/OVMF.fd",
        },
    }
[2025-09-15T15:14:56Z DEBUG ambient] configuration: Config {
        tmpdir: "/srv/tmp",
        image_store: "/home/_rad/.local/state/ambient-ci/images",
        projects: "/home/_rad/ambient-projects.yaml",
        state: "/srv/ambient-state",
        rsync_target: None,
        rsync_target_base: None,
        rsync_target_map: None,
        dput_target: None,
        executor: Some(
            "/usr/bin/ambient-execute-plan",
        ),
        artifacts_max_size: Byte(
            10000000000,
        ),
        cache_max_size: Byte(
            50000000000,
        ),
        qemu: QemuConfig {
            cpus: 4,
            memory: Byte(
                8000000000,
            ),
            kvm_binary: "/usr/bin/kvm",
            ovmf_vars_file: "/usr/share/ovmf/OVMF.fd",
            ovmf_code_file: "/usr/share/ovmf/OVMF.fd",
        },
    }
[2025-09-15T15:14:56Z DEBUG ambient_ci::project] load project state from /srv/ambient-state/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5/meta.yaml
[2025-09-15T15:14:56Z DEBUG ambient_ci::run] no latest commit stored
[2025-09-15T15:14:56Z DEBUG ambient_ci::run] is a git repository
[2025-09-15T15:14:56Z DEBUG ambient_ci::run] git repository is clean
[2025-09-15T15:14:56Z DEBUG ambient_ci::run] current (HEAD) commit: ef27961866b4bed092de9c58dcf2c0584aff5b99
[2025-09-15T15:14:56Z DEBUG ambient_ci::run] no dry run requested
[2025-09-15T15:14:56Z DEBUG ambient_ci::run] forced run requested
[2025-09-15T15:14:56Z DEBUG ambient_ci::run] run? true
[2025-09-15T15:14:56Z INFO  ambient_ci::run] project rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5: running CI
[2025-09-15T15:14:56Z DEBUG ambient_ci::run] Executing pre-plan steps
[2025-09-15T15:14:56Z DEBUG ambient_ci::action] Plan::execute: CargoFetch {
        sourcedir: "/tmp/.tmpm6sdtX/src",
        dependenciesdir: "/srv/ambient-state/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5/dependencies",
    }
SPAWN: argv=["env", "CARGO_HOME=/srv/ambient-state/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5/dependencies", "cargo", "fetch", "--locked"]
       cwd=/tmp/.tmpm6sdtX/src (exists? true)
       extra_env=[]
[2025-09-15T15:14:56Z DEBUG ambient_ci::run] create virtual drive /srv/tmp/.tmpsJk4jr/src.tar
[2025-09-15T15:14:57Z DEBUG ambient_ci::run] create virtual drive /srv/tmp/.tmpsJk4jr/deps.tar
[2025-09-15T15:14:58Z DEBUG ambient_ci::run] create_executor_vdrive: executor="/usr/bin/ambient-execute-plan"
[2025-09-15T15:14:58Z DEBUG ambient_ci::run] create_executor_vdrive: plan=RunnablePlan {
        steps: [
            Mkdir {
                pathname: "/workspace",
            },
            Mkdir {
                pathname: "/workspace/artifacts",
            },
            TarExtract {
                archive: "/dev/vdc",
                directory: "/workspace/src",
            },
            TarExtract {
                archive: "/dev/vdf",
                directory: "/workspace/deps",
            },
            TarExtract {
                archive: "/dev/vde",
                directory: "/workspace/cache",
            },
            Spawn {
                argv: [
                    "find",
                    "/workspace",
                    "-maxdepth",
                    "2",
                    "-ls",
                ],
            },
            CargoFmt,
            CargoClippy,
            CargoBuild,
            CargoTest,
            Shell {
                shell: "# Because of a (temporary) limitation in Ambient, we need to set\n# these variables manually. Once Ambient manages environment\n# variables better, these can be deleted.\nexport CARGO_TARGET_DIR=/workspace/cache\nexport CARGO_HOME=/workspace/deps\nexport HOME=/root\nexport PATH=\"/root/.cargo/bin:$PATH\"\nexport RUSTDOCFLAGS='-D warnings'\n\ncargo doc --workspace --no-deps\n",
            },
            Shell {
                shell: "# Because of a (temporary) limitation in Ambient, we need to set\n# these variables manually. Once Ambient manages environment\n# variables better, these can be deleted.\nexport CARGO_TARGET_DIR=/workspace/cache\nexport CARGO_HOME=/workspace/deps\nexport HOME=/root\nexport PATH=\"/root/.cargo/bin:$PATH\"\n\n# These are based on debian/control.\nexport DEBEMAIL=liw@liw.fi\nexport DEBFULLNAME=\"Lars Wirzenius\"\n\n# Clean up after tests and documentation building. The Debian\n# package building tools do not want changes outside the\n# `debian` directory, compared to what is committed to Git, from\n# which the \"upstream tarball\" is created.\ngit reset --hard\ngit clean -fdx\ngit status --ignored\n\n# Update debian/changelog with a new version so that every run\n# creates a newer version. This avoids us having to update the\n# file manually for every CI run.\nV=\"$(dpkg-parsechangelog -SVersion | sed 's/-[^-]*$//')\"\nT=\"$(date -u \"+%Y%m%dT%H%M%S\")\"\nversion=\"$V.ci$T-1\"\ndch -v \"$version\" \"CI build under Ambient.\"\ndch -r ''\n",
            },
            Deb,
            TarCreate {
                archive: "/dev/vde",
                directory: "/workspace/cache",
            },
            TarCreate {
                archive: "/dev/vdd",
                directory: "/workspace/artifacts",
            },
        ],
        executor_drive: Some(
            "/dev/vdb",
        ),
        source_drive: Some(
            "/dev/vdc",
        ),
        artifact_drive: Some(
            "/dev/vdd",
        ),
        cache_drive: Some(
            "/dev/vde",
        ),
        deps_drive: Some(
            "/dev/vdf",
        ),
        workspace_dir: Some(
            "/workspace",
        ),
        source_dir: Some(
            "/workspace/src",
        ),
        deps_dir: Some(
            "/workspace/deps",
        ),
        cache_dir: Some(
            "/workspace/cache",
        ),
        artifacts_dir: Some(
            "/workspace/artifacts",
        ),
    }
[2025-09-15T15:14:58Z DEBUG ambient_ci::run] executor bin /usr/bin/ambient-execute-plan
[2025-09-15T15:14:58Z DEBUG ambient_ci::run] copying /usr/bin/ambient-execute-plan to /srv/tmp/.tmpsJk4jr/ambient-execute-plan/run-ci
[2025-09-15T15:14:58Z DEBUG ambient_ci::run] copy OK: true
[2025-09-15T15:14:58Z DEBUG ambient_ci::run] create virtual drive /srv/tmp/.tmpsJk4jr/executor.tar
[2025-09-15T15:14:58Z DEBUG ambient_ci::project] removing run log file /srv/ambient-state/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5/run.log
[2025-09-15T15:14:58Z DEBUG ambient_ci::project] statedir is /srv/ambient-state/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5, exists? true
[2025-09-15T15:14:58Z DEBUG ambient_ci::project] creating run log file /srv/ambient-state/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5/run.log
[2025-09-15T15:14:58Z DEBUG ambient_ci::project] created run log file /srv/ambient-state/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5/run.log OK
[2025-09-15T15:14:58Z DEBUG ambient_ci::cloud_init] with_hostname called: "ambient"
[2025-09-15T15:14:58Z DEBUG ambient_ci::cloud_init] with_runcmd called: "echo xyzzy > /dev/ttyS1"
[2025-09-15T15:14:58Z DEBUG ambient_ci::cloud_init] with_runcmd called: "\n(set -xeu\nenv\ndir=\"$(mktemp -d)\"\ncd \"$dir\"\ntar -xvf /dev/vdb\nfind -ls || true\nldd ./run-ci || true\necho ================================ BEGIN ================================\nexport RUST_BACKTRACE=1\nif ./run-ci; then\n        echo \"EXIT CODE: 0\"\nelse\n        echo \"EXIT CODE: $?\"\nfi) > /dev/ttyS1 2>&1\n"
[2025-09-15T15:14:58Z DEBUG ambient_ci::cloud_init] with_runcmd called: "poweroff"
[2025-09-15T15:14:58Z DEBUG ambient_ci::cloud_init] LocalDataStoreBuilder: LocalDataStoreBuilder {
        hostname: Some(
            "ambient",
        ),
        network: false,
        bootcmd: [],
        runcmd: [
            "echo xyzzy > /dev/ttyS1",
            "\n(set -xeu\nenv\ndir=\"$(mktemp -d)\"\ncd \"$dir\"\ntar -xvf /dev/vdb\nfind -ls || true\nldd ./run-ci || true\necho ================================ BEGIN ================================\nexport RUST_BACKTRACE=1\nif ./run-ci; then\n        echo \"EXIT CODE: 0\"\nelse\n        echo \"EXIT CODE: $?\"\nfi) > /dev/ttyS1 2>&1\n",
            "poweroff",
        ],
    }
[2025-09-15T15:14:58Z DEBUG ambient_ci::qemu] run QEMU
[2025-09-15T15:14:58Z DEBUG ambient_ci::qemu] create copy-on-write image and UEFI vars file
[2025-09-15T15:14:58Z DEBUG ambient_ci::qemu_utils] qemu-img create /srv/tmp/.tmpwGXLkv/.tmpzahuLb/vm.qcow2 backing on /home/_rad/ambient.qcow2
[2025-09-15T15:14:58Z DEBUG ambient_ci::qemu] create cloud-init ISO file
[2025-09-15T15:14:58Z DEBUG ambient_ci::cloud_init] LocalDataStore: LocalDataStore {
        hostname: "ambient",
        network: false,
        bootcmd: [],
        runcmd: [
            "echo xyzzy > /dev/ttyS1",
            "\n(set -xeu\nenv\ndir=\"$(mktemp -d)\"\ncd \"$dir\"\ntar -xvf /dev/vdb\nfind -ls || true\nldd ./run-ci || true\necho ================================ BEGIN ================================\nexport RUST_BACKTRACE=1\nif ./run-ci; then\n        echo \"EXIT CODE: 0\"\nelse\n        echo \"EXIT CODE: $?\"\nfi) > /dev/ttyS1 2>&1\n",
            "poweroff",
        ],
    }
[2025-09-15T15:14:58Z DEBUG ambient_ci::cloud_init] write /tmp/.tmpvNnkYl/meta-data
[2025-09-15T15:14:58Z DEBUG ambient_ci::cloud_init] write /tmp/.tmpvNnkYl/user-data
[2025-09-15T15:14:58Z DEBUG ambient_ci::qemu] set console log file to /srv/tmp/.tmpwGXLkv/.tmpzahuLb/console.log
[2025-09-15T15:14:58Z DEBUG ambient_ci::util] create file /srv/tmp/.tmpwGXLkv/.tmpzahuLb/console.log
[2025-09-15T15:14:58Z DEBUG ambient_ci::qemu] set run file to /srv/ambient-state/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5/run.log
[2025-09-15T15:14:58Z DEBUG ambient_ci::util] create file /srv/ambient-state/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5/run.log
[2025-09-15T15:14:58Z DEBUG ambient_ci::qemu] run QEMU: QemuArgs {
        args: [
            "-m",
            "7629",
            "-smp",
            "cpus=4",
            "-cpu",
            "kvm64",
            "-machine",
            "type=q35,accel=kvm,usb=off",
            "-uuid",
            "a85c9de7-edc0-4e54-bead-112e5733582c",
            "-boot",
            "strict=on",
            "-name",
            "ambient-ci-vm",
            "-rtc",
            "base=utc,driftfix=slew",
            "-display",
            "none",
            "-device",
            "virtio-rng-pci",
            "-serial",
            "file:/srv/tmp/.tmpwGXLkv/.tmpzahuLb/console.log",
            "-serial",
            "file:/srv/ambient-state/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5/run.log",
            "-drive",
            "if=pflash,format=raw,unit=0,file=/usr/share/ovmf/OVMF.fd,readonly=on",
            "-drive",
            "if=pflash,format=raw,unit=1,file=/srv/tmp/.tmpwGXLkv/.tmpzahuLb/vars.fd",
            "-drive",
            "format=qcow2,if=virtio,file=/srv/tmp/.tmpwGXLkv/.tmpzahuLb/vm.qcow2",
            "-drive",
            "format=raw,if=virtio,file=/srv/tmp/.tmpsJk4jr/executor.tar,readonly=on",
            "-cdrom",
            "/srv/tmp/.tmpwGXLkv/.tmpzahuLb/cloud_init.iso",
            "-drive",
            "format=raw,if=virtio,file=/srv/tmp/.tmpsJk4jr/src.tar,readonly=on",
            "-drive",
            "format=raw,if=virtio,file=/srv/tmp/.tmpsJk4jr/artifacts.tar",
            "-drive",
            "format=raw,if=virtio,file=/srv/tmp/.tmpsJk4jr/cache.tar",
            "-drive",
            "format=raw,if=virtio,file=/srv/tmp/.tmpsJk4jr/deps.tar,readonly=on",
            "-nodefaults",
            "-no-user-config",
        ],
    }
[2025-09-15T15:19:55Z DEBUG ambient_ci::qemu] QEMU finished OK
[2025-09-15T15:19:55Z DEBUG ambient_ci::qemu] run log:
    --------------------==========
    [2025-09-15T15:15:05Z TRACE ambient_execute_plan] ambient-execute-plan starts
    [2025-09-15T15:15:05Z DEBUG ambient_execute_plan] ambient-execute-plan starts
    [2025-09-15T15:15:05Z INFO  ambient_execute_plan] ambient-execute-plan starts
    [2025-09-15T15:15:05Z WARN  ambient_execute_plan] ambient-execute-plan starts
    [2025-09-15T15:15:05Z ERROR ambient_execute_plan] ambient-execute-plan starts
    RunnablePlan::from_file: filename=plan.yaml
    steps:
    - action: mkdir
      pathname: /workspace
    - action: mkdir
      pathname: /workspace/artifacts
    - action: tar_extract
      archive: /dev/vdc
      directory: /workspace/src
    - action: tar_extract
      archive: /dev/vdf
      directory: /workspace/deps
    - action: tar_extract
      archive: /dev/vde
      directory: /workspace/cache
    - action: spawn
      argv:
      - find
      - /workspace
      - '-maxdepth'
      - '2'
      - '-ls'
    - action: cargo_fmt
    - action: cargo_clippy
    - action: cargo_build
    - action: cargo_test
    - action: shell
      shell: |
        # Because of a (temporary) limitation in Ambient, we need to set
        # these variables manually. Once Ambient manages environment
        # variables better, these can be deleted.
        export CARGO_TARGET_DIR=/workspace/cache
        export CARGO_HOME=/workspace/deps
        export HOME=/root
        export PATH="/root/.cargo/bin:$PATH"
        export RUSTDOCFLAGS='-D warnings'
    
        cargo doc --workspace --no-deps
    - action: shell
      shell: |
        # Because of a (temporary) limitation in Ambient, we need to set
        # these variables manually. Once Ambient manages environment
        # variables better, these can be deleted.
        export CARGO_TARGET_DIR=/workspace/cache
        export CARGO_HOME=/workspace/deps
        export HOME=/root
        export PATH="/root/.cargo/bin:$PATH"
    
        # These are based on debian/control.
        export DEBEMAIL=liw@liw.fi
        export DEBFULLNAME="Lars Wirzenius"
    
        # Clean up after tests and documentation building. The Debian
        # package building tools do not want changes outside the
        # `debian` directory, compared to what is committed to Git, from
        # which the "upstream tarball" is created.
        git reset --hard
        git clean -fdx
        git status --ignored
    
        # Update debian/changelog with a new version so that every run
        # creates a newer version. This avoids us having to update the
        # file manually for every CI run.
        V="$(dpkg-parsechangelog -SVersion | sed 's/-[^-]*$//')"
        T="$(date -u "+%Y%m%dT%H%M%S")"
        version="$V.ci$T-1"
        dch -v "$version" "CI build under Ambient."
        dch -r ''
    - action: deb
    - action: tar_create
      archive: /dev/vde
      directory: /workspace/cache
    - action: tar_create
      archive: /dev/vdd
      directory: /workspace/artifacts
    executor_drive: /dev/vdb
    source_drive: /dev/vdc
    artifact_drive: /dev/vdd
    cache_drive: /dev/vde
    deps_drive: /dev/vdf
    workspace_dir: /workspace
    source_dir: /workspace/src
    deps_dir: /workspace/deps
    cache_dir: /workspace/cache
    artifacts_dir: /workspace/artifacts
    
    
    RUN: Action Mkdir {
        pathname: "/workspace",
    }
    [2025-09-15T15:15:05Z DEBUG ambient_ci::action] Plan::execute: Mkdir {
            pathname: "/workspace",
        }
    RUN: Action finished OK
    RUN: Action Mkdir {
        pathname: "/workspace/artifacts",
    }
    [2025-09-15T15:15:05Z DEBUG ambient_ci::action] Plan::execute: Mkdir {
            pathname: "/workspace/artifacts",
        }
    RUN: Action finished OK
    RUN: Action TarExtract {
        archive: "/dev/vdc",
        directory: "/workspace/src",
    }
    [2025-09-15T15:15:05Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
            archive: "/dev/vdc",
            directory: "/workspace/src",
        }
    [2025-09-15T15:15:05Z TRACE ambient_ci::vdrive] extracting /dev/vdc to /workspace/src
    [2025-09-15T15:15:05Z TRACE ambient_ci::vdrive] extraction OK
    RUN: Action finished OK
    RUN: Action TarExtract {
        archive: "/dev/vdf",
        directory: "/workspace/deps",
    }
    [2025-09-15T15:15:05Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
            archive: "/dev/vdf",
            directory: "/workspace/deps",
        }
    [2025-09-15T15:15:05Z TRACE ambient_ci::vdrive] extracting /dev/vdf to /workspace/deps
    [2025-09-15T15:15:07Z TRACE ambient_ci::vdrive] extraction OK
    RUN: Action finished OK
    RUN: Action TarExtract {
        archive: "/dev/vde",
        directory: "/workspace/cache",
    }
    [2025-09-15T15:15:07Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
            archive: "/dev/vde",
            directory: "/workspace/cache",
        }
    [2025-09-15T15:15:07Z TRACE ambient_ci::vdrive] extracting /dev/vde to /workspace/cache
    [2025-09-15T15:15:07Z TRACE ambient_ci::vdrive] extraction OK
    RUN: Action finished OK
    RUN: Action Spawn {
        argv: [
            "find",
            "/workspace",
            "-maxdepth",
            "2",
            "-ls",
        ],
    }
    [2025-09-15T15:15:07Z DEBUG ambient_ci::action] Plan::execute: Spawn {
            argv: [
                "find",
                "/workspace",
                "-maxdepth",
                "2",
                "-ls",
            ],
        }
    SPAWN: argv=["find", "/workspace", "-maxdepth", "2", "-ls"]
           cwd=/workspace/src (exists? true)
           extra_env=[]
      2621441      4 drwxr-xr-x   6 root     root         4096 Sep 15 15:15 /workspace
      2622225      4 drwxr-xr-x   3 root     root         4096 Sep 15 15:14 /workspace/deps
      2622226      0 -rw-r--r--   1 root     root            0 Sep 15 14:35 /workspace/deps/.package-cache-mutate
      2622229      4 drwxr-xr-x   5 root     root         4096 Sep 15 14:35 /workspace/deps/registry
      2622227    120 -rw-r--r--   1 root     root       122880 Sep 15 15:14 /workspace/deps/.global-cache
      2622228      0 -rw-r--r--   1 root     root            0 Sep 15 14:35 /workspace/deps/.package-cache
      2621443      4 drwxr-xr-x  12 root     root         4096 Sep 15 15:14 /workspace/src
      2621499      4 -rw-r--r--   1 root     root         2653 Sep 15 15:14 /workspace/src/Cargo.toml
      2622221     12 -rw-r--r--   1 root     root         9636 Sep 15 15:14 /workspace/src/CONTRIBUTING.md
      2621500      4 drwxr-xr-x   2 root     root         4096 Sep 15 15:14 /workspace/src/.config
      2621496      4 -rw-r--r--   1 root     root         1623 Sep 15 15:14 /workspace/src/build.rs
      2621502      4 -rw-r--r--   1 root     root          426 Sep 15 15:14 /workspace/src/radicle-node.1.adoc
      2621504      4 drwxr-xr-x   8 root     root         4096 Sep 15 15:14 /workspace/src/.git
      2622218      8 -rw-r--r--   1 root     root         7144 Sep 15 15:14 /workspace/src/rad-id.1.adoc
      2621460      4 -rw-r--r--   1 root     root         2163 Sep 15 15:14 /workspace/src/VERSIONING.md
      2621495      4 -rw-r--r--   1 root     root         3133 Sep 15 15:14 /workspace/src/README.md
      2621641     12 -rw-r--r--   1 root     root        10770 Sep 15 15:14 /workspace/src/rad-patch.1.adoc
      2622222      4 -rw-r--r--   1 root     root           79 Sep 15 15:14 /workspace/src/ARCHITECTURE.md
      2621649      4 drwxr-xr-x  17 root     root         4096 Sep 15 15:14 /workspace/src/crates
      2621448      4 drwxr-xr-x   2 root     root         4096 Sep 15 15:14 /workspace/src/scripts
      2621444      4 drwxr-xr-x   2 root     root         4096 Sep 15 15:14 /workspace/src/.radicle
      2621467      8 -rw-r--r--   1 root     root         7900 Sep 15 15:14 /workspace/src/CHANGELOG.md
      2621482      4 drwxr-xr-x   3 root     root         4096 Sep 15 15:14 /workspace/src/debian
      2621465      4 -rw-r--r--   1 root     root           42 Sep 15 15:14 /workspace/src/.envrc
      2622219      4 -rw-r--r--   1 root     root         1203 Sep 15 15:14 /workspace/src/DCO
      2622214      4 drwxr-xr-x   3 root     root         4096 Sep 15 15:14 /workspace/src/.github
      2622224    116 -rw-r--r--   1 root     root       117616 Sep 15 15:14 /workspace/src/Cargo.lock
      2621642      4 drwxr-xr-x   5 root     root         4096 Sep 15 15:14 /workspace/src/systemd
      2621640     12 -rw-r--r--   1 root     root         9723 Sep 15 15:14 /workspace/src/LICENSE-APACHE
      2621498      4 -rw-r--r--   1 root     root          101 Sep 15 15:14 /workspace/src/.gitignore
      2622220      8 -rw-r--r--   1 root     root         5102 Sep 15 15:14 /workspace/src/flake.lock
      2621464      4 -rw-r--r--   1 root     root           77 Sep 15 15:14 /workspace/src/rust-toolchain.toml
      2621497     12 -rw-r--r--   1 root     root        10500 Sep 15 15:14 /workspace/src/flake.nix
      2621468      4 -rw-r--r--   1 root     root          571 Sep 15 15:14 /workspace/src/git-remote-rad.1.adoc
      2621466      4 -rw-r--r--   1 root     root           61 Sep 15 15:14 /workspace/src/.env.seed
      2621503      8 -rw-r--r--   1 root     root         5432 Sep 15 15:14 /workspace/src/deny.toml
      2621458      8 -rw-r--r--   1 root     root         7645 Sep 15 15:14 /workspace/src/HACKING.md
      2621447      4 -rw-r--r--   1 root     root         1079 Sep 15 15:14 /workspace/src/LICENSE-MIT
      2621463      8 -rw-r--r--   1 root     root         8023 Sep 15 15:14 /workspace/src/rad.1.adoc
      2621469      4 drwxr-xr-x   2 root     root         4096 Sep 15 15:14 /workspace/src/build
      2622223      4 -rw-r--r--   1 root     root         1083 Sep 15 15:14 /workspace/src/.gitsigners
      2621459      4 -rw-r--r--   1 root     root           30 Sep 15 15:14 /workspace/src/.dockerignore
      2621461      4 drwxr-xr-x   2 root     root         4096 Sep 15 15:14 /workspace/src/.cargo
      2621442      4 drwxr-xr-x   2 root     root         4096 Sep 15 15:15 /workspace/artifacts
      2648954      4 drwxr-xr-x   2 root     root         4096 Sep 15 14:35 /workspace/cache
    RUN: Action finished OK
    RUN: Action CargoFmt
    [2025-09-15T15:15:07Z DEBUG ambient_ci::action] Plan::execute: CargoFmt
    SPAWN: argv=["cargo", "fmt", "--check"]
           cwd=/workspace/src (exists? true)
           extra_env=[("CARGO_TARGET_DIR", "/workspace/cache"), ("CARGO_HOME", "/workspace/deps"), ("PATH", "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin")]
    RUN: Action finished OK
    RUN: Action CargoClippy
    [2025-09-15T15:15:08Z DEBUG ambient_ci::action] Plan::execute: CargoClippy
    SPAWN: argv=["cargo", "clippy", "--offline", "--locked", "--workspace", "--all-targets", "--no-deps", "--", "--deny", "warnings"]
           cwd=/workspace/src (exists? true)
           extra_env=[("CARGO_TARGET_DIR", "/workspace/cache"), ("CARGO_HOME", "/workspace/deps"), ("PATH", "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin")]
       Compiling libc v0.2.174
       Compiling proc-macro2 v1.0.92
       Compiling unicode-ident v1.0.12
        Checking cfg-if v1.0.0
       Compiling shlex v1.3.0
       Compiling version_check v0.9.4
       Compiling serde v1.0.219
        Checking memchr v2.7.2
        Checking log v0.4.27
       Compiling quote v1.0.36
       Compiling autocfg v1.2.0
        Checking getrandom v0.2.15
       Compiling jobserver v0.1.31
       Compiling syn v2.0.89
        Checking smallvec v1.13.2
        Checking aho-corasick v1.1.3
       Compiling cc v1.2.2
        Checking regex-syntax v0.8.5
       Compiling typenum v1.17.0
       Compiling generic-array v0.14.7
        Checking regex-automata v0.4.9
        Checking rand_core v0.6.4
        Checking fastrand v2.1.0
        Checking crypto-common v0.1.6
        Checking bitflags v2.9.1
       Compiling lock_api v0.4.11
       Compiling parking_lot_core v0.9.9
        Checking scopeguard v1.2.0
        Checking once_cell v1.21.3
        Checking subtle v2.5.0
        Checking stable_deref_trait v1.2.0
        Checking parking_lot v0.12.3
       Compiling syn v1.0.109
        Checking tinyvec_macros v0.1.1
        Checking tinyvec v1.6.0
       Compiling thiserror v2.0.12
        Checking bstr v1.9.1
       Compiling synstructure v0.13.1
        Checking zeroize v1.7.0
        Checking unicode-normalization v0.1.23
        Checking cpufeatures v0.2.12
       Compiling crc32fast v1.4.0
       Compiling icu_locid_transform_data v1.5.1
        Checking writeable v0.5.5
        Checking litemap v0.7.5
        Checking block-padding v0.3.3
       Compiling icu_properties_data v1.5.1
        Checking inout v0.1.3
        Checking block-buffer v0.10.4
       Compiling pkg-config v0.3.30
        Checking hashbrown v0.14.3
       Compiling serde_derive v1.0.219
       Compiling zerofrom-derive v0.1.6
       Compiling yoke-derive v0.7.5
       Compiling zerovec-derive v0.10.3
        Checking zerofrom v0.1.6
        Checking yoke v0.7.5
       Compiling displaydoc v0.2.5
       Compiling thiserror-impl v2.0.12
       Compiling icu_provider_macros v1.5.0
        Checking zerovec v0.10.4
        Checking itoa v1.0.11
       Compiling icu_normalizer_data v1.5.1
        Checking digest v0.10.7
        Checking tinystr v0.7.6
        Checking icu_locid v1.5.0
        Checking icu_collections v1.5.0
        Checking cipher v0.4.4
        Checking utf8_iter v1.0.4
        Checking adler2 v2.0.0
        Checking utf16_iter v1.0.5
        Checking write16 v1.0.0
        Checking icu_provider v1.5.0
       Compiling thiserror v1.0.69
        Checking miniz_oxide v0.8.8
        Checking icu_locid_transform v1.5.0
       Compiling thiserror-impl v1.0.69
        Checking percent-encoding v2.3.1
       Compiling rustix v0.38.34
        Checking linux-raw-sys v0.4.13
        Checking icu_properties v1.5.1
        Checking sha2 v0.10.8
        Checking gix-trace v0.1.12
        Checking form_urlencoded v1.2.1
        Checking universal-hash v0.5.1
       Compiling vcpkg v0.2.15
        Checking opaque-debug v0.3.1
        Checking faster-hex v0.9.0
       Compiling amplify_syn v2.0.1
       Compiling libz-sys v1.1.16
       Compiling data-encoding v2.5.0
        Checking tempfile v3.10.1
        Checking icu_normalizer v1.5.0
       Compiling amplify_derive v4.0.0
        Checking idna_adapter v1.2.0
       Compiling data-encoding-macro-internal v0.1.12
        Checking idna v1.0.3
        Checking url v2.5.4
        Checking gix-utils v0.1.14
        Checking ascii v1.1.0
        Checking signature v1.6.4
        Checking amplify_num v0.5.2
        Checking data-encoding-macro v0.1.14
        Checking ed25519 v1.5.3
        Checking gix-hash v0.15.1
       Compiling libgit2-sys v0.17.0+1.8.1
        Checking aead v0.5.2
       Compiling num-traits v0.2.19
        Checking amplify v4.6.0
       Compiling proc-macro-error-attr v1.0.4
        Checking ct-codecs v1.1.1
        Checking base-x v0.2.11
        Checking byteorder v1.5.0
        Checking same-file v1.0.6
        Checking multibase v0.9.1
        Checking walkdir v2.5.0
        Checking ec25519 v0.1.0
        Checking flate2 v1.1.1
        Checking poly1305 v0.8.0
        Checking chacha20 v0.9.1
        Checking prodash v29.0.2
       Compiling proc-macro-error v1.0.4
        Checking sha1_smol v1.0.0
        Checking cyphergraphy v0.3.0
        Checking gix-features v0.39.1
        Checking keccak v0.1.5
       Compiling crossbeam-utils v0.8.19
        Checking sha3 v0.10.8
       Compiling git-ref-format-core v0.3.1
        Checking polyval v0.6.2
        Checking hmac v0.12.1
       Compiling sqlite3-src v0.5.1
        Checking equivalent v1.0.1
        Checking base32 v0.4.0
        Checking ppv-lite86 v0.2.17
        Checking base64ct v1.6.0
        Checking home v0.5.9
       Compiling serde_json v1.0.140
        Checking pem-rfc7468 v0.7.0
        Checking rand_chacha v0.3.1
        Checking gix-path v0.10.15
       Compiling git-ref-format-macro v0.3.1
        Checking cypheraddr v0.4.0
        Checking indexmap v2.2.6
        Checking pbkdf2 v0.12.2
        Checking ghash v0.5.1
        Checking chacha20poly1305 v0.10.1
        Checking aes v0.8.4
        Checking ctr v0.9.2
        Checking ryu v1.0.17
        Checking aes-gcm v0.10.3
        Checking git-ref-format v0.3.1
        Checking crossbeam-channel v0.5.15
        Checking noise-framework v0.4.0
        Checking socks5-client v0.4.1
        Checking rand v0.8.5
        Checking ssh-encoding v0.2.0
        Checking blowfish v0.9.1
        Checking cbc v0.1.2
       Compiling ref-cast v1.0.24
        Checking radicle-std-ext v0.1.0
        Checking ssh-cipher v0.2.0
        Checking bcrypt-pbkdf v0.10.0
        Checking cyphernet v0.5.2
       Compiling ref-cast-impl v1.0.24
        Checking signature v2.2.0
        Checking ssh-key v0.6.6
        Checking qcheck v1.0.0
        Checking radicle-ssh v0.10.0 (/workspace/src/crates/radicle-ssh)
       Compiling typeid v1.0.3
        Checking dyn-clone v1.0.17
        Checking lazy_static v1.5.0
        Checking siphasher v1.0.1
        Checking jiff v0.2.1
        Checking nonempty v0.9.0
       Compiling serde_derive_internals v0.29.1
        Checking radicle-dag v0.10.0 (/workspace/src/crates/radicle-dag)
        Checking winnow v0.6.26
       Compiling schemars_derive v1.0.4
        Checking gix-date v0.9.4
        Checking gix-actor v0.33.2
        Checking erased-serde v0.4.6
        Checking gix-hashtable v0.6.0
        Checking gix-validate v0.9.4
        Checking iana-time-zone v0.1.60
        Checking chrono v0.4.38
        Checking schemars v1.0.4
        Checking gix-object v0.46.1
        Checking serde-untagged v0.1.7
        Checking colored v2.1.0
        Checking bytesize v2.0.1
        Checking localtime v1.3.1
        Checking memmap2 v0.9.4
        Checking tree-sitter-language v0.1.2
        Checking base64 v0.21.7
        Checking fast-glob v0.3.3
        Checking dunce v1.0.5
        Checking anstyle-query v1.0.2
        Checking gix-chunk v0.4.11
        Checking utf8parse v0.2.1
        Checking anstyle-parse v0.2.3
        Checking gix-commitgraph v0.25.1
        Checking colorchoice v1.0.0
        Checking anstyle v1.0.6
       Compiling rustix v1.0.7
        Checking anstream v0.6.13
        Checking gix-revwalk v0.17.0
        Checking gix-fs v0.12.1
        Checking linux-raw-sys v0.9.4
        Checking gix-tempfile v15.0.0
        Checking errno v0.3.13
        Checking sem_safe v0.2.0
        Checking shell-words v1.1.0
        Checking either v1.11.0
        Checking gix-command v0.4.1
        Checking signals_receipts v0.2.0
       Compiling signal-hook v0.3.18
        Checking gix-lock v15.0.1
        Checking gix-url v0.28.2
        Checking gix-config-value v0.14.12
        Checking gix-quote v0.4.15
        Checking gix-sec v0.10.12
        Checking signal-hook-registry v1.4.5
       Compiling getrandom v0.3.3
        Checking gix-prompt v0.9.1
        Checking radicle-signals v0.11.0 (/workspace/src/crates/radicle-signals)
        Checking gix-traverse v0.43.1
        Checking gix-revision v0.31.1
        Checking gix-diff v0.49.0
        Checking gix-packetline v0.18.4
       Compiling tree-sitter v0.24.4
        Checking mio v1.0.4
        Checking mio v0.8.11
       Compiling unicode-segmentation v1.11.0
       Compiling anyhow v1.0.82
       Compiling convert_case v0.7.1
        Checking signal-hook-mio v0.2.4
        Checking sqlite3-sys v0.15.2
        Checking sqlite v0.32.0
        Checking gix-transport v0.44.0
        Checking gix-pack v0.56.0
        Checking gix-refspec v0.27.0
        Checking gix-credentials v0.26.0
        Checking gix-shallow v0.1.0
        Checking gix-ref v0.49.1
        Checking gix-negotiate v0.17.0
       Compiling maybe-async v0.2.10
        Checking regex v1.11.1
        Checking arc-swap v1.7.1
       Compiling portable-atomic v1.11.0
        Checking gix-odb v0.66.0
        Checking gix-protocol v0.47.0
        Checking uuid v1.16.0
       Compiling xattr v1.3.1
       Compiling derive_more-impl v2.0.1
       Compiling filetime v0.2.23
        Checking lexopt v0.3.0
        Checking bitflags v1.3.2
        Checking unicode-width v0.2.1
       Compiling object v0.36.7
       Compiling litrs v0.4.1
        Checking console v0.16.0
        Checking crossterm v0.25.0
        Checking derive_more v2.0.1
       Compiling document-features v0.2.11
       Compiling tar v0.4.40
        Checking newline-converter v0.3.0
        Checking snapbox-macros v0.3.8
        Checking fxhash v0.2.1
        Checking salsa20 v0.10.2
        Checking siphasher v0.3.11
        Checking unicode-width v0.1.11
        Checking normalize-line-endings v0.3.0
        Checking similar v2.5.0
        Checking gimli v0.31.1
        Checking unit-prefix v0.5.1
        Checking streaming-iterator v0.1.9
        Checking snapbox v0.4.17
        Checking indicatif v0.18.0
       Compiling radicle-surf v0.22.0
        Checking bloomy v1.2.0
        Checking inquire v0.7.5
        Checking scrypt v0.11.0
        Checking crossterm v0.29.0
        Checking unicode-display-width v0.3.0
        Checking systemd-journal-logger v2.2.2
        Checking addr2line v0.24.2
        Checking serde_spanned v1.0.0
        Checking toml_datetime v0.7.0
       Compiling tree-sitter-md v0.3.2
       Compiling tree-sitter-ruby v0.23.1
       Compiling tree-sitter-json v0.24.8
       Compiling tree-sitter-typescript v0.23.2
       Compiling tree-sitter-html v0.23.2
       Compiling tree-sitter-c v0.23.2
       Compiling tree-sitter-css v0.23.1
       Compiling tree-sitter-python v0.23.4
       Compiling tree-sitter-rust v0.23.2
       Compiling tree-sitter-go v0.23.4
       Compiling tree-sitter-bash v0.23.3
       Compiling tree-sitter-toml-ng v0.6.0
        Checking popol v3.0.0
        Checking bytes v1.10.1
        Checking rustc-demangle v0.1.26
        Checking toml_writer v1.0.2
        Checking toml v0.9.5
        Checking io-reactor v0.5.2
        Checking backtrace v0.3.75
        Checking os_info v3.12.0
        Checking socket2 v0.5.7
        Checking nonempty v0.5.0
       Compiling radicle-node v0.15.0 (/workspace/src/crates/radicle-node)
        Checking base64 v0.13.1
        Checking yansi v0.5.1
        Checking diff v0.1.13
       Compiling radicle-cli v0.16.0 (/workspace/src/crates/radicle-cli)
        Checking pretty_assertions v1.4.0
        Checking netservices v0.8.0
        Checking human-panic v2.0.3
        Checking radicle-systemd v0.10.0 (/workspace/src/crates/radicle-systemd)
        Checking tree-sitter-highlight v0.24.4
        Checking itertools v0.14.0
        Checking num-integer v0.1.46
        Checking timeago v0.4.2
       Compiling escargot v0.5.10
       Compiling qcheck-macros v1.0.0
        Checking num-bigint v0.4.6
       Compiling ahash v0.8.11
        Checking num-iter v0.1.45
        Checking num-complex v0.4.6
        Checking env_filter v0.1.3
        Checking bit-vec v0.8.0
        Checking borrow-or-share v0.2.2
        Checking zerocopy v0.7.35
        Checking fluent-uri v0.3.2
        Checking num-rational v0.4.2
        Checking num v0.4.3
        Checking bit-set v0.8.0
        Checking env_logger v0.11.8
        Checking phf_shared v0.11.3
       Compiling test-log-macros v0.2.18
       Compiling paste v1.0.15
        Checking outref v0.5.2
       Compiling radicle-remote-helper v0.13.0 (/workspace/src/crates/radicle-remote-helper)
        Checking vsimd v0.8.0
        Checking phf v0.11.3
        Checking test-log v0.2.18
        Checking fancy-regex v0.14.0
        Checking referencing v0.30.0
        Checking uuid-simd v0.8.0
        Checking fraction v0.15.3
        Checking email_address v0.2.9
        Checking num-cmp v0.1.0
        Checking bytecount v0.6.8
        Checking base64 v0.22.1
        Checking emojis v0.6.4
        Checking jsonschema v0.30.0
        Checking git2 v0.19.0
        Checking radicle-git-ext v0.8.1
        Checking radicle-term v0.15.0 (/workspace/src/crates/radicle-term)
        Checking radicle-crypto v0.13.0 (/workspace/src/crates/radicle-crypto)
        Checking radicle-cob v0.16.0 (/workspace/src/crates/radicle-cob)
        Checking radicle v0.19.0 (/workspace/src/crates/radicle)
        Checking radicle-fetch v0.15.0 (/workspace/src/crates/radicle-fetch)
        Checking radicle-cli-test v0.13.0 (/workspace/src/crates/radicle-cli-test)
        Checking radicle-schemars v0.5.0 (/workspace/src/crates/radicle-schemars)
        Checking radicle-protocol v0.3.0 (/workspace/src/crates/radicle-protocol)
        Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 01s
    RUN: Action finished OK
    RUN: Action CargoBuild
    [2025-09-15T15:16:10Z DEBUG ambient_ci::action] Plan::execute: CargoBuild
    SPAWN: argv=["cargo", "build", "--offline", "--locked", "--workspace", "--all-targets"]
           cwd=/workspace/src (exists? true)
           extra_env=[("CARGO_TARGET_DIR", "/workspace/cache"), ("CARGO_HOME", "/workspace/deps"), ("PATH", "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin")]
       Compiling cfg-if v1.0.0
       Compiling libc v0.2.174
       Compiling shlex v1.3.0
       Compiling serde v1.0.219
       Compiling memchr v2.7.2
       Compiling jobserver v0.1.31
       Compiling log v0.4.27
       Compiling cc v1.2.2
       Compiling getrandom v0.2.15
       Compiling smallvec v1.13.2
       Compiling aho-corasick v1.1.3
       Compiling regex-syntax v0.8.5
       Compiling typenum v1.17.0
       Compiling rand_core v0.6.4
       Compiling generic-array v0.14.7
       Compiling bitflags v2.9.1
       Compiling fastrand v2.1.0
       Compiling regex-automata v0.4.9
       Compiling crypto-common v0.1.6
       Compiling scopeguard v1.2.0
       Compiling once_cell v1.21.3
       Compiling lock_api v0.4.11
       Compiling zerofrom v0.1.6
       Compiling parking_lot_core v0.9.9
       Compiling subtle v2.5.0
       Compiling stable_deref_trait v1.2.0
       Compiling yoke v0.7.5
       Compiling parking_lot v0.12.3
       Compiling tinyvec_macros v0.1.1
       Compiling tinyvec v1.6.0
       Compiling zerovec v0.10.4
       Compiling zeroize v1.7.0
       Compiling cpufeatures v0.2.12
       Compiling thiserror v2.0.12
       Compiling adler2 v2.0.0
       Compiling litemap v0.7.5
       Compiling unicode-normalization v0.1.23
       Compiling writeable v0.5.5
       Compiling miniz_oxide v0.8.8
       Compiling tinystr v0.7.6
       Compiling block-padding v0.3.3
       Compiling icu_locid v1.5.0
       Compiling inout v0.1.3
       Compiling icu_locid_transform_data v1.5.1
       Compiling block-buffer v0.10.4
       Compiling hashbrown v0.14.3
       Compiling bstr v1.9.1
       Compiling icu_provider v1.5.0
       Compiling itoa v1.0.11
       Compiling digest v0.10.7
       Compiling icu_locid_transform v1.5.0
       Compiling cipher v0.4.4
       Compiling crc32fast v1.4.0
       Compiling icu_properties_data v1.5.1
       Compiling icu_collections v1.5.0
       Compiling icu_normalizer_data v1.5.1
       Compiling utf8_iter v1.0.4
       Compiling write16 v1.0.0
       Compiling utf16_iter v1.0.5
       Compiling percent-encoding v2.3.1
       Compiling icu_properties v1.5.1
       Compiling linux-raw-sys v0.4.13
       Compiling rustix v0.38.34
       Compiling thiserror v1.0.69
       Compiling sha2 v0.10.8
       Compiling gix-trace v0.1.12
       Compiling form_urlencoded v1.2.1
       Compiling universal-hash v0.5.1
       Compiling opaque-debug v0.3.1
       Compiling libz-sys v1.1.16
       Compiling faster-hex v0.9.0
       Compiling gix-utils v0.1.14
       Compiling icu_normalizer v1.5.0
       Compiling idna_adapter v1.2.0
       Compiling idna v1.0.3
       Compiling tempfile v3.10.1
       Compiling url v2.5.4
       Compiling signature v1.6.4
       Compiling data-encoding v2.5.0
       Compiling amplify_num v0.5.2
       Compiling ascii v1.1.0
       Compiling data-encoding-macro v0.1.14
       Compiling ed25519 v1.5.3
       Compiling gix-hash v0.15.1
       Compiling libgit2-sys v0.17.0+1.8.1
       Compiling aead v0.5.2
       Compiling byteorder v1.5.0
       Compiling same-file v1.0.6
       Compiling ct-codecs v1.1.1
       Compiling base-x v0.2.11
       Compiling ec25519 v0.1.0
       Compiling multibase v0.9.1
       Compiling walkdir v2.5.0
       Compiling amplify v4.6.0
       Compiling poly1305 v0.8.0
       Compiling chacha20 v0.9.1
       Compiling flate2 v1.1.1
       Compiling prodash v29.0.2
       Compiling sha1_smol v1.0.0
       Compiling cyphergraphy v0.3.0
       Compiling gix-features v0.39.1
       Compiling num-traits v0.2.19
       Compiling keccak v0.1.5
       Compiling polyval v0.6.2
       Compiling sha3 v0.10.8
       Compiling git-ref-format-core v0.3.1
       Compiling hmac v0.12.1
       Compiling sqlite3-src v0.5.1
       Compiling base64ct v1.6.0
       Compiling base32 v0.4.0
       Compiling ppv-lite86 v0.2.17
       Compiling equivalent v1.0.1
       Compiling home v0.5.9
       Compiling gix-path v0.10.15
       Compiling pem-rfc7468 v0.7.0
       Compiling rand_chacha v0.3.1
       Compiling indexmap v2.2.6
       Compiling cypheraddr v0.4.0
       Compiling git-ref-format-macro v0.3.1
       Compiling pbkdf2 v0.12.2
       Compiling ghash v0.5.1
       Compiling crossbeam-utils v0.8.19
       Compiling chacha20poly1305 v0.10.1
       Compiling ctr v0.9.2
       Compiling aes v0.8.4
       Compiling ryu v1.0.17
       Compiling serde_json v1.0.140
       Compiling aes-gcm v0.10.3
       Compiling git-ref-format v0.3.1
       Compiling noise-framework v0.4.0
       Compiling crossbeam-channel v0.5.15
       Compiling socks5-client v0.4.1
       Compiling rand v0.8.5
       Compiling ssh-encoding v0.2.0
       Compiling blowfish v0.9.1
       Compiling cbc v0.1.2
       Compiling radicle-std-ext v0.1.0
       Compiling ssh-cipher v0.2.0
       Compiling bcrypt-pbkdf v0.10.0
       Compiling cyphernet v0.5.2
       Compiling signature v2.2.0
       Compiling ssh-key v0.6.6
       Compiling ref-cast v1.0.24
       Compiling qcheck v1.0.0
       Compiling radicle-ssh v0.10.0 (/workspace/src/crates/radicle-ssh)
       Compiling lazy_static v1.5.0
       Compiling dyn-clone v1.0.17
       Compiling siphasher v1.0.1
       Compiling jiff v0.2.1
       Compiling typeid v1.0.3
       Compiling radicle-dag v0.10.0 (/workspace/src/crates/radicle-dag)
       Compiling nonempty v0.9.0
       Compiling winnow v0.6.26
       Compiling erased-serde v0.4.6
       Compiling gix-hashtable v0.6.0
       Compiling gix-validate v0.9.4
       Compiling iana-time-zone v0.1.60
       Compiling chrono v0.4.38
       Compiling gix-date v0.9.4
       Compiling gix-actor v0.33.2
       Compiling gix-object v0.46.1
       Compiling serde-untagged v0.1.7
       Compiling schemars v1.0.4
       Compiling colored v2.1.0
       Compiling bytesize v2.0.1
       Compiling localtime v1.3.1
       Compiling memmap2 v0.9.4
       Compiling tree-sitter-language v0.1.2
       Compiling fast-glob v0.3.3
       Compiling anstyle-query v1.0.2
       Compiling dunce v1.0.5
       Compiling base64 v0.21.7
       Compiling gix-chunk v0.4.11
       Compiling utf8parse v0.2.1
       Compiling anstyle-parse v0.2.3
       Compiling gix-commitgraph v0.25.1
       Compiling anstyle v1.0.6
       Compiling colorchoice v1.0.0
       Compiling gix-revwalk v0.17.0
       Compiling anstream v0.6.13
       Compiling gix-fs v0.12.1
       Compiling linux-raw-sys v0.9.4
       Compiling gix-tempfile v15.0.0
       Compiling errno v0.3.13
       Compiling sem_safe v0.2.0
       Compiling shell-words v1.1.0
       Compiling unicode-segmentation v1.11.0
       Compiling sqlite3-sys v0.15.2
       Compiling rustix v1.0.7
       Compiling sqlite v0.32.0
       Compiling either v1.11.0
       Compiling gix-command v0.4.1
       Compiling signals_receipts v0.2.0
       Compiling gix-lock v15.0.1
       Compiling gix-url v0.28.2
       Compiling gix-config-value v0.14.12
       Compiling gix-quote v0.4.15
       Compiling gix-sec v0.10.12
       Compiling signal-hook-registry v1.4.5
       Compiling signal-hook v0.3.18
       Compiling gix-prompt v0.9.1
       Compiling radicle-signals v0.11.0 (/workspace/src/crates/radicle-signals)
       Compiling gix-traverse v0.43.1
       Compiling gix-revision v0.31.1
       Compiling gix-diff v0.49.0
       Compiling gix-packetline v0.18.4
       Compiling tree-sitter v0.24.4
       Compiling mio v1.0.4
       Compiling mio v0.8.11
       Compiling signal-hook-mio v0.2.4
       Compiling gix-transport v0.44.0
       Compiling gix-pack v0.56.0
       Compiling gix-refspec v0.27.0
       Compiling gix-credentials v0.26.0
       Compiling getrandom v0.3.3
       Compiling gix-shallow v0.1.0
       Compiling gix-ref v0.49.1
       Compiling convert_case v0.7.1
       Compiling gix-negotiate v0.17.0
       Compiling regex v1.11.1
       Compiling arc-swap v1.7.1
       Compiling gix-odb v0.66.0
       Compiling gix-protocol v0.47.0
       Compiling derive_more-impl v2.0.1
       Compiling uuid v1.16.0
       Compiling xattr v1.3.1
       Compiling filetime v0.2.23
       Compiling lexopt v0.3.0
       Compiling unicode-width v0.2.1
       Compiling bitflags v1.3.2
       Compiling console v0.16.0
       Compiling tar v0.4.40
       Compiling crossterm v0.25.0
       Compiling derive_more v2.0.1
       Compiling anyhow v1.0.82
       Compiling portable-atomic v1.11.0
       Compiling newline-converter v0.3.0
       Compiling snapbox-macros v0.3.8
       Compiling fxhash v0.2.1
       Compiling salsa20 v0.10.2
       Compiling unicode-width v0.1.11
       Compiling siphasher v0.3.11
       Compiling streaming-iterator v0.1.9
       Compiling similar v2.5.0
       Compiling normalize-line-endings v0.3.0
       Compiling unit-prefix v0.5.1
       Compiling gimli v0.31.1
       Compiling indicatif v0.18.0
       Compiling snapbox v0.4.17
       Compiling radicle-surf v0.22.0
       Compiling addr2line v0.24.2
       Compiling bloomy v1.2.0
       Compiling inquire v0.7.5
       Compiling scrypt v0.11.0
       Compiling crossterm v0.29.0
       Compiling object v0.36.7
       Compiling systemd-journal-logger v2.2.2
       Compiling unicode-display-width v0.3.0
       Compiling tree-sitter-go v0.23.4
       Compiling tree-sitter-css v0.23.1
       Compiling tree-sitter-c v0.23.2
       Compiling tree-sitter-typescript v0.23.2
       Compiling tree-sitter-json v0.24.8
       Compiling tree-sitter-ruby v0.23.1
       Compiling tree-sitter-html v0.23.2
       Compiling tree-sitter-python v0.23.4
       Compiling tree-sitter-bash v0.23.3
       Compiling tree-sitter-toml-ng v0.6.0
       Compiling tree-sitter-rust v0.23.2
       Compiling tree-sitter-md v0.3.2
       Compiling toml_datetime v0.7.0
       Compiling serde_spanned v1.0.0
       Compiling popol v3.0.0
       Compiling toml_writer v1.0.2
       Compiling bytes v1.10.1
       Compiling rustc-demangle v0.1.26
       Compiling backtrace v0.3.75
       Compiling toml v0.9.5
       Compiling io-reactor v0.5.2
       Compiling os_info v3.12.0
       Compiling socket2 v0.5.7
       Compiling base64 v0.13.1
       Compiling nonempty v0.5.0
       Compiling yansi v0.5.1
       Compiling radicle-node v0.15.0 (/workspace/src/crates/radicle-node)
       Compiling radicle-cli v0.16.0 (/workspace/src/crates/radicle-cli)
       Compiling diff v0.1.13
       Compiling human-panic v2.0.3
       Compiling pretty_assertions v1.4.0
       Compiling netservices v0.8.0
       Compiling radicle-systemd v0.10.0 (/workspace/src/crates/radicle-systemd)
       Compiling tree-sitter-highlight v0.24.4
       Compiling itertools v0.14.0
       Compiling num-integer v0.1.46
       Compiling timeago v0.4.2
       Compiling escargot v0.5.10
       Compiling num-bigint v0.4.6
       Compiling num-iter v0.1.45
       Compiling num-complex v0.4.6
       Compiling num-rational v0.4.2
       Compiling env_filter v0.1.3
       Compiling borrow-or-share v0.2.2
       Compiling bit-vec v0.8.0
       Compiling zerocopy v0.7.35
       Compiling bit-set v0.8.0
       Compiling num v0.4.3
       Compiling fluent-uri v0.3.2
       Compiling env_logger v0.11.8
       Compiling ahash v0.8.11
       Compiling phf_shared v0.11.3
       Compiling radicle-remote-helper v0.13.0 (/workspace/src/crates/radicle-remote-helper)
       Compiling vsimd v0.8.0
       Compiling outref v0.5.2
       Compiling referencing v0.30.0
       Compiling phf v0.11.3
       Compiling git2 v0.19.0
       Compiling uuid-simd v0.8.0
       Compiling test-log v0.2.18
       Compiling fraction v0.15.3
       Compiling fancy-regex v0.14.0
       Compiling email_address v0.2.9
       Compiling base64 v0.22.1
       Compiling bytecount v0.6.8
       Compiling num-cmp v0.1.0
       Compiling emojis v0.6.4
       Compiling jsonschema v0.30.0
       Compiling radicle-git-ext v0.8.1
       Compiling radicle-crypto v0.13.0 (/workspace/src/crates/radicle-crypto)
       Compiling radicle-cob v0.16.0 (/workspace/src/crates/radicle-cob)
       Compiling radicle-term v0.15.0 (/workspace/src/crates/radicle-term)
       Compiling radicle v0.19.0 (/workspace/src/crates/radicle)
       Compiling radicle-fetch v0.15.0 (/workspace/src/crates/radicle-fetch)
       Compiling radicle-protocol v0.3.0 (/workspace/src/crates/radicle-protocol)
       Compiling radicle-cli-test v0.13.0 (/workspace/src/crates/radicle-cli-test)
       Compiling radicle-schemars v0.5.0 (/workspace/src/crates/radicle-schemars)
        Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 38s
    RUN: Action finished OK
    RUN: Action CargoTest
    [2025-09-15T15:17:48Z DEBUG ambient_ci::action] Plan::execute: CargoTest
    SPAWN: argv=["cargo", "test", "--offline", "--locked", "--workspace"]
           cwd=/workspace/src (exists? true)
           extra_env=[("CARGO_TARGET_DIR", "/workspace/cache"), ("CARGO_HOME", "/workspace/deps"), ("PATH", "/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin")]
        Finished `test` profile [unoptimized + debuginfo] target(s) in 0.29s
         Running unittests src/lib.rs (/workspace/cache/debug/deps/radicle-51334f29bf16c6df)
    
    running 237 tests
    test canonical::formatter::test::ascii_control_characters ... ok
    test cob::cache::migrations::_2::tests::test_migration_2 ... ok
    test cob::cache::tests::test_check_version ... ok
    test cob::cache::migrations::_2::tests::test_patch_json_deserialization ... ok
    test cob::common::test::test_color ... ok
    test cob::common::test::test_emojis ... ok
    test canonical::formatter::test::securesystemslib_asserts ... ok
    test canonical::formatter::test::ordered_nested_object ... ok
    test cob::cache::tests::test_migrate_to ... ok
    test cob::identity::test::prop_json_eq_str ... ok
    test cob::identity::test::test_identity_redact_revision ... ok
    test cob::identity::test::test_identity_remove_delegate_concurrent ... ok
    test cob::identity::test::test_identity_reject_concurrent ... ok
    test cob::identity::test::test_identity_updates ... ok
    test cob::identity::test::test_identity_update_rejected ... ok
    test cob::issue::cache::tests::test_counts ... ok
    test cob::issue::cache::tests::test_get ... ok
    test cob::issue::cache::tests::test_is_empty ... ok
    test cob::issue::cache::tests::test_list ... ok
    test cob::issue::cache::tests::test_list_by_status ... ok
    test cob::issue::cache::tests::test_remove ... ok
    test cob::identity::test::test_valid_identity ... ok
    test cob::identity::test::test_identity_updates_concurrent ... ok
    test cob::issue::test::test_embeds ... ok
    test cob::issue::test::test_embeds_edit ... ok
    test cob::identity::test::test_identity_updates_concurrent_outdated ... ok
    test cob::issue::test::test_invalid_actions ... ok
    test cob::issue::test::test_invalid_tx ... ok
    test cob::issue::test::test_concurrency ... ok
    test cob::issue::test::test_invalid_tx_reference ... ok
    test cob::issue::test::test_invalid_cob ... ok
    test cob::issue::test::test_issue_all ... ok
    test cob::issue::test::test_issue_comment ... ok
    test cob::issue::test::test_issue_create_and_assign ... ok
    test cob::issue::test::test_issue_comment_redact ... ok
    test cob::issue::test::test_issue_create_and_get ... ok
    test cob::issue::test::test_issue_create_and_change_state ... ok
    test cob::issue::test::test_issue_create_and_unassign ... ok
    test cob::issue::test::test_issue_create_and_reassign ... ok
    test cob::issue::test::test_issue_edit ... ok
    test cob::issue::test::test_issue_edit_description ... ok
    test cob::issue::test::test_issue_multilines ... ok
    test cob::issue::test::test_issue_state_serde ... ok
    test cob::issue::test::test_ordering ... ok
    test cob::patch::actions::test::test_review_edit ... ok
    test cob::issue::test::test_issue_label ... ok
    test cob::patch::cache::tests::test_find_by_revision ... ok
    test cob::issue::test::test_issue_react ... ok
    test cob::patch::cache::tests::test_is_empty ... ok
    test cob::issue::test::test_issue_reply ... ok
    test cob::patch::cache::tests::test_list_by_status ... ok
    test cob::patch::cache::tests::test_get ... ok
    test cob::patch::cache::tests::test_remove ... ok
    test cob::patch::encoding::review::test::test_review_deserialize_summary_migration_with_summary ... ok
    test cob::patch::encoding::review::test::test_review_deserialize_summary_migration_without_summary ... ok
    test cob::patch::encoding::review::test::test_review_deserialize_summary_v2 ... ok
    test cob::patch::encoding::review::test::test_review_summary ... ok
    test cob::patch::test::test_json ... ok
    test cob::patch::test::test_json_serialization ... ok
    test cob::patch::encoding::review::test::test_review_deserialize_summary_migration_null_summary ... ok
    test cob::patch::test::test_patch_create_and_get ... ok
    test cob::patch::test::test_patch_discussion ... ok
    test cob::patch::cache::tests::test_list ... ok
    test cob::patch::test::test_patch_merge ... ok
    test cob::patch::test::test_patch_review ... ok
    test cob::patch::cache::tests::test_counts ... ok
    test cob::patch::test::test_patch_redact ... ok
    test cob::patch::test::test_patch_review_comment ... ok
    test cob::patch::test::test_patch_review_duplicate ... ok
    test cob::patch::test::test_patch_review_edit ... ok
    test cob::patch::test::test_patch_review_remove_summary ... ok
    test cob::patch::test::test_reactions_json_serialization ... ok
    test cob::patch::test::test_revision_edit_redact ... ok
    test cob::patch::test::test_revision_reaction ... ok
    test cob::patch::test::test_revision_review_merge_redacted ... ok
    test cob::patch::test::test_patch_review_edit_comment ... ok
    test cob::stream::tests::test_all_from ... ok
    test cob::stream::tests::test_all_from_until ... ok
    test cob::stream::tests::test_all_until ... ok
    test cob::patch::test::test_patch_review_revision_redact ... ok
    test cob::stream::tests::test_regression_from_until ... ok
    test cob::thread::tests::test_comment_edit_missing ... ok
    test cob::thread::tests::test_comment_edit_redacted ... ok
    test cob::thread::tests::test_comment_redact_missing ... ok
    test cob::thread::tests::test_duplicate_comments ... ok
    test cob::thread::tests::test_edit_comment ... ok
    test cob::thread::tests::test_redact_comment ... ok
    test cob::stream::tests::test_from_until ... ok
    test git::canonical::quorum::test::merge_base_commutative ... ok
    test cob::thread::tests::test_timeline ... ok
    test git::canonical::quorum::test::test_merge_bases ... ok
    test git::canonical::rules::tests::test_deserialization ... ok
    test git::canonical::rules::tests::test_deserialize_extensions ... ok
    test git::canonical::rules::tests::test_order ... ok
    test git::canonical::rules::tests::test_roundtrip ... ok
    test git::canonical::rules::tests::test_canonical ... ok
    test git::canonical::rules::tests::test_rule_validate_success ... ok
    test git::canonical::rules::tests::test_special_branches ... ok
    test git::canonical::tests::test_commit_quorum_fork_of_a_fork ... ok
    test git::canonical::tests::test_commit_quorum_forked_merge_commits ... ok
    test git::canonical::tests::test_commit_quorum_groups ... ok
    test git::canonical::tests::test_commit_quorum_linear ... ok
    test git::canonical::tests::test_commit_quorum_merges ... ok
    test git::canonical::tests::test_commit_quorum_single ... ok
    test git::canonical::tests::test_commit_quorum_three_way_fork ... ok
    test git::canonical::tests::test_commit_quorum_two_way_fork ... ok
    test git::canonical::tests::test_quorum_different_types ... ok
    test cob::patch::test::test_patch_update ... ok
    test git::canonical::tests::test_tag_quorum ... ok
    test git::test::test_version_from_str ... ok
    test git::test::test_version_ord ... ok
    test identity::did::test::test_did_encode_decode ... ok
    test identity::did::test::test_did_vectors ... ok
    test identity::doc::id::test::prop_from_str ... ok
    test git::canonical::rules::tests::test_rule_validate_failures ... ok
    test identity::doc::test::test_canonical_doc ... ok
    test identity::doc::test::test_canonical_example ... ok
    test identity::doc::test::test_duplicate_dids ... ok
    test identity::doc::test::test_future_version_error ... ok
    test identity::doc::test::test_is_valid_version ... ok
    test identity::doc::test::test_max_delegates ... ok
    test identity::doc::test::test_not_found ... ok
    test identity::doc::test::test_parse_version ... ok
    test identity::doc::test::test_visibility_json ... ok
    test identity::doc::update::test::test_can_update_crefs ... ok
    test identity::doc::update::test::test_cannot_include_default_branch_rule ... ok
    test identity::doc::update::test::test_default_branch_rule_exists_after_verification ... ok
    test identity::project::test::test_project_name ... ok
    test node::address::store::test::test_alias ... ok
    test node::address::store::test::test_disconnected ... ok
    test node::address::store::test::test_disconnected_ban ... ok
    test git::canonical::tests::test_quorum_properties ... ok
    test node::address::store::test::test_entries ... ok
    test node::address::store::test::test_empty ... ok
    test node::address::store::test::test_get_none ... ok
    test node::address::store::test::test_insert_and_get ... ok
    test node::address::store::test::test_insert_and_remove ... ok
    test node::address::store::test::test_insert_duplicate ... ok
    test node::address::store::test::test_insert_and_update ... ok
    test node::address::store::test::test_node_aliases ... ok
    test node::config::test::partial ... ok
    test node::db::test::test_version ... ok
    test node::features::test::test_operations ... ok
    test node::notifications::store::test::test_branch_notifications ... ok
    test node::notifications::store::test::test_clear ... ok
    test node::notifications::store::test::test_cob_notifications ... ok
    test node::notifications::store::test::test_counts_by_repo ... ok
    test node::notifications::store::test::test_duplicate_notifications ... ok
    test node::notifications::store::test::test_notification_status ... ok
    test node::policy::store::test::test_follow_and_unfollow_node ... ok
    test node::address::store::test::test_remove_nothing ... ok
    test node::policy::store::test::test_node_aliases ... ok
    test node::policy::store::test::test_node_policy ... ok
    test node::policy::store::test::test_repo_policies ... ok
    test node::policy::store::test::test_repo_policy ... ok
    test node::policy::store::test::test_seed_and_unseed_repo ... ok
    test node::policy::store::test::test_update_alias ... ok
    test node::policy::store::test::test_update_scope ... ok
    test node::refs::store::test::test_count ... ok
    test node::refs::store::test::test_set_and_delete ... ok
    test node::refs::store::test::test_set_and_get ... ok
    test node::policy::store::test::test_node_policies ... ok
    test node::routing::test::test_count ... ok
    test node::routing::test::test_entries ... ok
    test node::routing::test::test_insert_and_get ... ok
    test node::routing::test::test_insert_and_get_resources ... ok
    test node::routing::test::test_insert_and_remove ... ok
    test node::routing::test::test_insert_existing_updated_time ... ok
    test node::routing::test::test_len ... ok
    test node::routing::test::test_insert_duplicate ... ok
    test node::routing::test::test_remove_many ... ok
    test node::routing::test::test_remove_redundant ... ok
    test node::routing::test::test_update_existing_multi ... ok
    test node::sync::announce::test::all_synced_nodes_are_preferred_seeds ... ok
    test node::routing::test::test_prune ... ok
    test node::sync::announce::test::announcer_adapts_target_to_reach ... ok
    test node::sync::announce::test::announcer_preferred_seeds_or_replica_factor ... ok
    test node::sync::announce::test::announcer_reached_max_replication_target ... ok
    test node::sync::announce::test::announcer_reached_min_replication_target ... ok
    test node::sync::announce::test::announcer_synced_with_unknown_node ... ok
    test node::sync::announce::test::announcer_reached_preferred_seeds ... ok
    test node::sync::announce::test::announcer_timed_out ... ok
    test node::sync::announce::test::announcer_with_replication_factor_zero_and_preferred_seeds ... ok
    test node::sync::announce::test::cannot_construct_announcer ... ok
    test node::sync::announce::test::construct_only_preferred_seeds_provided ... ok
    test node::sync::announce::test::construct_node_appears_in_multiple_input_sets ... ok
    test node::sync::announce::test::invariant_progress_should_match_state ... ok
    test node::sync::announce::test::local_node_in_preferred_seeds ... ok
    test node::sync::announce::test::local_node_in_synced_set ... ok
    test node::sync::announce::test::local_node_in_multiple_sets ... ok
    test node::sync::announce::test::local_node_in_unsynced_set ... ok
    test node::sync::announce::test::local_node_only_in_all_sets_results_in_no_seeds_error ... ok
    test node::sync::announce::test::preferred_seeds_already_synced ... ok
    test node::sync::announce::test::synced_with_same_node_multiple_times ... ok
    test node::sync::announce::test::synced_with_local_node_is_ignored ... ok
    test node::sync::announce::test::timed_out_after_reaching_success ... ok
    test cob::thread::tests::prop_ordering ... ok
    test node::sync::fetch::test::all_nodes_are_fetchable ... ok
    test node::sync::fetch::test::ignores_duplicates_and_local_node ... ok
    test node::sync::fetch::test::preferred_seeds_target_returned_over_replicas ... ok
    test node::sync::fetch::test::could_not_reach_target ... ok
    test node::sync::fetch::test::reaches_target_of_max_replicas ... ok
    test node::sync::fetch::test::all_nodes_are_candidates ... ok
    test node::sync::fetch::test::reaches_target_of_preferred_seeds ... ok
    test node::sync::test::ensure_replicas_construction ... ok
    test node::sync::fetch::test::reaches_target_of_replicas ... ok
    test node::sync::test::replicas_constrain_to ... ok
    test node::test::test_alias ... ok
    test node::test::test_command_result ... ok
    test node::test::test_user_agent ... ok
    test node::timestamp::tests::test_timestamp_max ... ok
    test profile::test::canonicalize_home ... ok
    test profile::test::test_config ... ok
    test rad::tests::test_checkout ... ok
    test rad::tests::test_fork ... ok
    test serde_ext::test::test_localtime ... ok
    test serde_ext::test::test_localtime_ext ... ok
    test rad::tests::test_init ... ok
    test storage::git::tests::test_references_of ... ok
    test storage::git::tests::test_sign_refs ... ok
    test storage::git::transport::local::url::test::test_url_parse ... ok
    test storage::git::transport::local::url::test::test_url_to_string ... ok
    test storage::git::transport::remote::url::test::test_url_parse ... ok
    test storage::refs::tests::prop_canonical_roundtrip ... ok
    test storage::git::tests::test_remote_refs ... ok
    test storage::tests::test_storage ... ok
    test test::assert::test::assert_with_message ... ok
    test test::assert::test::test_assert_no_move ... ok
    test test::assert::test::test_assert_panic_0 - should panic ... ok
    test test::assert::test::test_assert_panic_1 - should panic ... ok
    test test::assert::test::test_assert_panic_2 - should panic ... ok
    test test::assert::test::test_assert_succeed ... ok
    test test::assert::test::test_panic_message ... ok
    test version::test::test_version ... ok
    test storage::refs::tests::test_rid_verification ... ok
    test profile::config::test::schema ... ok
    test identity::doc::test::prop_encode_decode ... ok
    
    test result: ok. 237 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.87s
    
         Running unittests src/lib.rs (/workspace/cache/debug/deps/radicle_cli-621b4b410a8c352b)
    
    running 14 tests
    test commands::patch::review::builder::tests::test_review_comments_before ... ok
    test commands::patch::review::builder::tests::test_review_comments_basic ... ok
    test commands::patch::review::builder::tests::test_review_comments_split_hunk ... ok
    test commands::inspect::test::test_tree ... ok
    test commands::patch::review::builder::tests::test_review_comments_multiline ... ok
    test git::ddiff::tests::diff_encode_decode_ddiff_hunk ... ok
    test git::pretty_diff::test::test_pretty ... ignored
    test git::unified_diff::test::test_diff_content_encode_decode_content ... ok
    test git::unified_diff::test::test_diff_encode_decode_diff ... ok
    test terminal::format::test::test_bytes ... ok
    test terminal::format::test::test_strip_comments ... ok
    test terminal::patch::test::test_edit_display_message ... ok
    test terminal::patch::test::test_update_display_message ... ok
    test terminal::patch::test::test_create_display_message ... ok
    
    test result: ok. 13 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.02s
    
         Running unittests src/main.rs (/workspace/cache/debug/deps/rad-90c5a176eb08002b)
    
    running 0 tests
    
    test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
    
         Running tests/commands.rs (/workspace/cache/debug/deps/commands-c121b642be9ff500)
    
    running 104 tests
    test framework_home ... ok
    test git_push_and_fetch ... ok
    test git_push_amend ... ok
    test git_push_canonical_annotated_tags ... ok
    test git_push_canonical_lightweight_tags ... ok
    test git_push_diverge ... ok
    test rad_auth ... ok
    test rad_auth_errors ... ok
    test rad_block ... ok
    test git_push_rollback ... ok
    test git_tag ... ok
    test rad_checkout ... ok
    test git_push_converge ... ok
    test rad_clone ... ok
    test rad_clone_bare ... ok
    test rad_clean ... ok
    test rad_clone_all ... ok
    test rad_clone_unknown ... ok
    test rad_clone_directory ... ok
    test rad_clone_connect ... ok
    test rad_cob_log ... ok
    test rad_cob_migrate ... ok
    test rad_cob_multiset ... ok
    test rad_clone_partial_fail ... ok
    test rad_cob_operations ... ok
    test rad_cob_show ... ok
    test rad_cob_update ... ok
    test rad_cob_update_identity ... ok
    test rad_diff ... ok
    test rad_config ... ok
    test rad_id_collaboration ... ignored, slow
    test rad_id ... ok
    test rad_id_conflict ... ok
    test rad_id_private ... ok
    test rad_fetch ... ok
    test rad_fork ... ok
    test rad_id_multi_delegate ... ok
    test rad_id_unknown_field ... ok
    test rad_id_update_delete_field ... ok
    test rad_init ... ignored, part of many other tests
    test rad_id_threshold ... ok
    test rad_id_threshold_soft_fork ... ok
    test rad_init_bare ... ok
    test rad_init_detached_head ... ok
    test rad_init_existing ... ok
    test rad_init_no_git ... ok
    test rad_init_existing_bare ... ok
    test rad_init_no_seed ... ok
    test rad_init_private ... ok
    test rad_init_private_no_seed ... ok
    test rad_init_private_clone ... ok
    test rad_inbox ... ok
    test rad_init_private_clone_seed ... ok
    test rad_init_private_seed ... ok
    test rad_init_sync_not_connected ... ok
    test rad_init_with_existing_remote ... ok
    test rad_init_sync_preferred ... ok
    test rad_inspect ... ok
    test rad_issue ... ok
    test rad_merge_after_update ... ok
    test rad_merge_no_ff ... ok
    test rad_merge_via_push ... ok
    test rad_node_connect ... ok
    test rad_node ... ok
    test rad_init_sync_and_clone ... ok
    test rad_node_connect_without_address ... ok
    test rad_init_sync_timeout ... ok
    test rad_patch_ahead_behind ... ok
    test rad_patch_change_base ... ok
    test rad_patch_checkout ... ok
    test rad_patch ... ok
    test rad_patch_detached_head ... ok
    test rad_patch_checkout_revision ... ok
    test rad_patch_diff ... ok
    test rad_patch_draft ... ok
    test rad_patch_checkout_force ... ok
    test rad_patch_edit ... ok
    test rad_patch_fetch_2 ... FAILED
    test rad_patch_merge_draft ... ok
    test rad_patch_fetch_1 ... ok
    test rad_patch_revert_merge ... ok
    test rad_patch_delete ... ok
    test rad_patch_update ... ok
    test rad_patch_open_explore ... ok
    test rad_patch_via_push ... FAILED
    test rad_publish ... ok
    test rad_review_by_hunk ... ok
    test rad_seed_and_follow ... ok
    test rad_remote ... ok
    test rad_seed_many ... ok
    test rad_self ... ok
    test rad_push_and_pull_patches ... ok
    test rad_patch_pull_update ... ok
    test rad_unseed ... ok
    test rad_sync_without_node ... ok
    test rad_warn_old_nodes ... ok
    test rad_unseed_many ... ok
    test test_clone_without_seeds ... ok
    test rad_watch ... ok
    test rad_sync ... ok
    test test_cob_deletion ... ok
    test test_cob_replication ... ok
    test rad_workflow ... ok
    test test_replication_via_seed ... ok
    
    failures:
    
    ---- rad_patch_fetch_2 stdout ----
    1757949572 test: Using PATH ["/workspace/cache/debug", "/workspace/deps/bin", "/root/.cargo/bin", "/usr/local/sbin", "/usr/local/bin", "/usr/sbin", "/usr/bin", "/sbin", "/bin", "/tmp/radicle-41ukSg/work/alice"]
    1757949572 test: rad-init.md: Running `/workspace/cache/debug/rad` with ["init", "--name", "heartwood", "--description", "Radicle Heartwood Protocol & Stack", "--no-confirm", "--public", "-v"] in `/tmp/radicle-41ukSg/work/alice`..
    1757949572 test: rad-init.md: Running `/workspace/cache/debug/rad` with ["init"] in `/tmp/radicle-41ukSg/work/alice`..
    1757949572 test: rad-init.md: Running `/workspace/cache/debug/rad` with ["ls"] in `/tmp/radicle-41ukSg/work/alice`..
    1757949572 test: rad-init.md: Running `/workspace/cache/debug/rad` with ["node", "inventory"] in `/tmp/radicle-41ukSg/work/alice`..
    1757949572 test: Using PATH ["/workspace/cache/debug", "/workspace/deps/bin", "/root/.cargo/bin", "/usr/local/sbin", "/usr/local/bin", "/usr/sbin", "/usr/bin", "/sbin", "/bin", "/tmp/radicle-41ukSg/work/alice"]
    1757949572 test: rad-patch-fetch-2.md: Running `git` with ["checkout", "-b", "alice/1", "-q"] in `/tmp/radicle-41ukSg/work/alice`..
    1757949572 test: rad-patch-fetch-2.md: Running `git` with ["commit", "--allow-empty", "-m", "Changes #1", "-q"] in `/tmp/radicle-41ukSg/work/alice`..
    1757949572 test: rad-patch-fetch-2.md: Running `git` with ["push", "rad", "-o", "patch.message=Changes", "HEAD:refs/patches"] in `/tmp/radicle-41ukSg/work/alice`..
    1757949572 test: rad-patch-fetch-2.md: Running `git` with ["checkout", "master", "-q"] in `/tmp/radicle-41ukSg/work/alice`..
    1757949572 test: rad-patch-fetch-2.md: Running `git` with ["branch", "-D", "alice/1", "-q"] in `/tmp/radicle-41ukSg/work/alice`..
    1757949572 test: rad-patch-fetch-2.md: Running `git` with ["update-ref", "-d", "refs/remotes/rad/alice/1"] in `/tmp/radicle-41ukSg/work/alice`..
    1757949572 test: rad-patch-fetch-2.md: Running `git` with ["update-ref", "-d", "refs/remotes/rad/patches/5e2dedcc5d515fcbc1cca483d3376609fe889bfb"] in `/tmp/radicle-41ukSg/work/alice`..
    1757949572 test: rad-patch-fetch-2.md: Running `git` with ["gc", "--prune=now"] in `/tmp/radicle-41ukSg/work/alice`..
    1757949572 test: rad-patch-fetch-2.md: Running `git` with ["branch", "-r"] in `/tmp/radicle-41ukSg/work/alice`..
    1757949572 test: rad-patch-fetch-2.md: Running `git` with ["pull"] in `/tmp/radicle-41ukSg/work/alice`..
    1757949572 test: rad-patch-fetch-2.md: Running `git` with ["branch", "-r"] in `/tmp/radicle-41ukSg/work/alice`..
    
    thread 'rad_patch_fetch_2' panicked at crates/radicle-cli-test/src/lib.rs:491:36:
    
    --- Expected
    ++++ actual:   stdout
       1      -   rad/HEAD -> rad/master
       2    1 |   rad/master
       3    2 |   rad/patches/5e2dedcc5d515fcbc1cca483d3376609fe889bfb
    
    Exit status: 0
    
    note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
    
    ---- rad_patch_via_push stdout ----
    1757949576 test: Using PATH ["/workspace/cache/debug", "/workspace/deps/bin", "/root/.cargo/bin", "/usr/local/sbin", "/usr/local/bin", "/usr/sbin", "/usr/bin", "/sbin", "/bin", "/tmp/radicle-SmCdTE/work/alice"]
    1757949576 test: rad-init.md: Running `/workspace/cache/debug/rad` with ["init", "--name", "heartwood", "--description", "Radicle Heartwood Protocol & Stack", "--no-confirm", "--public", "-v"] in `/tmp/radicle-SmCdTE/work/alice`..
    1757949576 test: rad-init.md: Running `/workspace/cache/debug/rad` with ["init"] in `/tmp/radicle-SmCdTE/work/alice`..
    1757949576 test: rad-init.md: Running `/workspace/cache/debug/rad` with ["ls"] in `/tmp/radicle-SmCdTE/work/alice`..
    1757949576 test: rad-init.md: Running `/workspace/cache/debug/rad` with ["node", "inventory"] in `/tmp/radicle-SmCdTE/work/alice`..
    1757949576 test: Using PATH ["/workspace/cache/debug", "/workspace/deps/bin", "/root/.cargo/bin", "/usr/local/sbin", "/usr/local/bin", "/usr/sbin", "/usr/bin", "/sbin", "/bin", "/tmp/radicle-SmCdTE/work/alice"]
    1757949576 test: rad-patch-via-push.md: Running `git` with ["checkout", "-b", "feature/1"] in `/tmp/radicle-SmCdTE/work/alice`..
    1757949576 test: rad-patch-via-push.md: Running `git` with ["commit", "-a", "-m", "Add things", "-q", "--allow-empty"] in `/tmp/radicle-SmCdTE/work/alice`..
    1757949576 test: rad-patch-via-push.md: Running `git` with ["push", "-o", "patch.message=Add things #1", "-o", "patch.message=See commits for details.", "rad", "HEAD:refs/patches"] in `/tmp/radicle-SmCdTE/work/alice`..
    1757949576 test: rad-patch-via-push.md: Running `/workspace/cache/debug/rad` with ["patch", "show", "6035d2f582afbe01ff23ea87528ae523d76875b6"] in `/tmp/radicle-SmCdTE/work/alice`..
    1757949576 test: rad-patch-via-push.md: Running `git` with ["branch", "-vv"] in `/tmp/radicle-SmCdTE/work/alice`..
    1757949576 test: rad-patch-via-push.md: Running `git` with ["status", "--short", "--branch"] in `/tmp/radicle-SmCdTE/work/alice`..
    1757949576 test: rad-patch-via-push.md: Running `git` with ["fetch"] in `/tmp/radicle-SmCdTE/work/alice`..
    1757949576 test: rad-patch-via-push.md: Running `git` with ["push"] in `/tmp/radicle-SmCdTE/work/alice`..
    1757949576 test: rad-patch-via-push.md: Running `git` with ["show-ref"] in `/tmp/radicle-SmCdTE/work/alice`..
    
    thread 'rad_patch_via_push' panicked at crates/radicle-cli-test/src/lib.rs:491:36:
    
    --- Expected
    ++++ actual:   stdout
       1    1 | 42d894a83c9c356552a57af09ccdbd5587a99045 refs/heads/feature/1
       2    2 | f2de534b5e81d7c6e2dcaf58c3dd91573c0a0354 refs/heads/master
       3      - f2de534b5e81d7c6e2dcaf58c3dd91573c0a0354 refs/remotes/rad/HEAD
       4    3 | f2de534b5e81d7c6e2dcaf58c3dd91573c0a0354 refs/remotes/rad/master
       5    4 | 42d894a83c9c356552a57af09ccdbd5587a99045 refs/remotes/rad/patches/6035d2f582afbe01ff23ea87528ae523d76875b6
    
    Exit status: 0
    
    
    
    failures:
        rad_patch_fetch_2
        rad_patch_via_push
    
    test result: FAILED. 100 passed; 2 failed; 2 ignored; 0 measured; 0 filtered out; finished in 121.31s
    
    error: test failed, to rerun pass `-p radicle-cli --test commands`
    ERROR: Action failed: command failed: ["cargo", "test", "--offline", "--locked", "--workspace"]
    ERROR: command failed: ["cargo", "test", "--offline", "--locked", "--workspace"]
    EXIT CODE: 1
    
    ====================
[2025-09-15T15:19:56Z DEBUG ambient_ci::qemu] QEMU exit code 1
ERROR: failed to run actions in QEMU

Ambient stderr

<empty log>