CI run for radicle-job

Radicle repository id rad:z2UcCU1LgMshWvXj6hXSDDrwB8q8M

Table of Contents

Run log

[2025-08-09T04:05:27Z 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   870K  1 disk 
vdd    254:48   0   9.3G  0 disk 
vde    254:64   0  46.6G  0 disk 
vdf    254:80   0 204.5M  1 disk 
INFO: Extracting tar archive from /dev/vdb
drwxr-xr-x _rad/_rad         0 2025-08-09 04:01 ./
-rw-r--r-- _rad/_rad       859 2025-08-09 04:01 ./plan.yaml
-rwxr-xr-x _rad/_rad   2998936 2025-08-09 04:01 ./run-ci
INFO: Extracted files:
  1477881      4 drwxr-xr-x   2 1001     1001         4096 Aug  9 04:01 .
  1477809      4 -rw-r--r--   1 1001     1001          859 Aug  9 04:01 ./plan.yaml
  1477810   2932 -rwxr-xr-x   1 1001     1001      2998936 Aug  9 04:01 ./run-ci
INFO: Running run-ci from /dev/vdb
================================ BEGIN ================================
[2025-08-09T04:02:49Z TRACE ambient_execute_plan] ambient-execute-plan starts
[2025-08-09T04:02:49Z DEBUG ambient_execute_plan] ambient-execute-plan starts
[2025-08-09T04:02:49Z INFO  ambient_execute_plan] ambient-execute-plan starts
[2025-08-09T04:02:49Z WARN  ambient_execute_plan] ambient-execute-plan starts
[2025-08-09T04:02:49Z 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_test
- 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-08-09T04:02:49Z DEBUG ambient_ci::action] Plan::execute: Mkdir {
        pathname: "/workspace",
    }
RUN: Action finished OK
RUN: Action Mkdir {
    pathname: "/workspace/artifacts",
}
[2025-08-09T04:02:49Z DEBUG ambient_ci::action] Plan::execute: Mkdir {
        pathname: "/workspace/artifacts",
    }
RUN: Action finished OK
RUN: Action TarExtract {
    archive: "/dev/vdc",
    directory: "/workspace/src",
}
[2025-08-09T04:02:49Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
        archive: "/dev/vdc",
        directory: "/workspace/src",
    }
[2025-08-09T04:02:49Z TRACE ambient_ci::vdrive] extracting /dev/vdc to /workspace/src
[2025-08-09T04:02:50Z TRACE ambient_ci::vdrive] extraction OK
RUN: Action finished OK
RUN: Action TarExtract {
    archive: "/dev/vdf",
    directory: "/workspace/deps",
}
[2025-08-09T04:02:50Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
        archive: "/dev/vdf",
        directory: "/workspace/deps",
    }
[2025-08-09T04:02:50Z TRACE ambient_ci::vdrive] extracting /dev/vdf to /workspace/deps
[2025-08-09T04:03:05Z TRACE ambient_ci::vdrive] extraction OK
RUN: Action finished OK
RUN: Action TarExtract {
    archive: "/dev/vde",
    directory: "/workspace/cache",
}
[2025-08-09T04:03:05Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
        archive: "/dev/vde",
        directory: "/workspace/cache",
    }
[2025-08-09T04:03:05Z TRACE ambient_ci::vdrive] extracting /dev/vde to /workspace/cache
[2025-08-09T04:04:39Z TRACE ambient_ci::vdrive] extraction OK
RUN: Action finished OK
RUN: Action Spawn {
    argv: [
        "find",
        "/workspace",
        "-maxdepth",
        "2",
        "-ls",
    ],
}
[2025-08-09T04:04:39Z 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=[]
  3932161      4 drwxr-xr-x   6 root     root         4096 Aug  9 04:03 /workspace
  3932162      4 drwxr-xr-x   2 root     root         4096 Aug  9 04:02 /workspace/artifacts
  3932605      4 drwxr-xr-x   4 root     root         4096 Aug  9 04:01 /workspace/deps
  3932633     92 -rw-r--r--   1 root     root        94208 Aug  9 04:01 /workspace/deps/.global-cache
  3932607      4 drwxr-xr-x   4 root     root         4096 Jun  7 11:03 /workspace/deps/git
  3932606      0 -rw-r--r--   1 root     root            0 Jun 28 04:02 /workspace/deps/.package-cache-mutate
  3932634      0 -rw-r--r--   1 root     root            0 Jun  7 11:03 /workspace/deps/.package-cache
  3932635      4 drwxr-xr-x   5 root     root         4096 Jun  7 11:03 /workspace/deps/registry
  3932163      4 drwxr-xr-x   5 root     root         4096 Aug  9 04:01 /workspace/src
  3932164      4 drwxr-xr-x   2 root     root         4096 Aug  9 04:01 /workspace/src/.radicle
  3932604     56 -rw-r--r--   1 root     root        53696 Aug  9 04:01 /workspace/src/Cargo.lock
  3932176      4 -rw-r--r--   1 root     root          957 Aug  9 04:01 /workspace/src/Cargo.toml
  3932174      4 -rw-r--r--   1 root     root         3086 Aug  9 04:01 /workspace/src/flake.nix
  3932603      4 -rw-r--r--   1 root     root         2465 Aug  9 04:01 /workspace/src/flake.lock
  3932175      4 -rw-r--r--   1 root     root            8 Aug  9 04:01 /workspace/src/.gitignore
  3932177      4 drwxr-xr-x   8 root     root         4096 Aug  9 04:01 /workspace/src/.git
  3932172      4 -rw-r--r--   1 root     root           10 Aug  9 04:01 /workspace/src/.envrc
  3932173      8 -rw-r--r--   1 root     root         5059 Aug  9 04:01 /workspace/src/README.md
  3932166      4 drwxr-xr-x   3 root     root         4096 Aug  9 04:01 /workspace/src/src
  3944119      4 drwxr-xr-x   3 root     root         4096 Jun  7 11:04 /workspace/cache
  3944120      4 drwxr-xr-x   7 root     root         4096 Jun  7 11:04 /workspace/cache/debug
  3953008      4 -rw-r--r--   1 root     root         1034 Aug  5 12:58 /workspace/cache/.rustc_info.json
RUN: Action finished OK
RUN: Action CargoFmt
[2025-08-09T04:04:39Z 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-08-09T04:04:41Z 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 proc-macro2 v1.0.95
   Compiling unicode-ident v1.0.18
   Compiling version_check v0.9.5
   Compiling libc v0.2.172
   Compiling typenum v1.18.0
   Compiling generic-array v0.14.7
    Checking cfg-if v1.0.0
    Checking subtle v2.6.1
   Compiling quote v1.0.40
    Checking stable_deref_trait v1.2.0
   Compiling syn v2.0.101
   Compiling serde v1.0.219
   Compiling jobserver v0.1.33
   Compiling shlex v1.3.0
   Compiling cc v1.2.22
    Checking crypto-common v0.1.6
   Compiling syn v1.0.109
   Compiling pkg-config v0.3.32
    Checking block-padding v0.3.3
    Checking block-buffer v0.10.4
    Checking cpufeatures v0.2.17
    Checking digest v0.10.7
    Checking inout v0.1.4
    Checking cipher v0.4.4
    Checking getrandom v0.2.16
    Checking writeable v0.6.1
    Checking litemap v0.8.0
   Compiling thiserror v1.0.69
   Compiling icu_properties_data v2.0.0
   Compiling icu_normalizer_data v2.0.0
   Compiling vcpkg v0.2.15
    Checking bitflags v2.9.0
   Compiling amplify_syn v2.0.1
    Checking universal-hash v0.5.1
   Compiling libz-sys v1.1.22
   Compiling proc-macro-error-attr v1.0.4
    Checking signature v1.6.4
    Checking opaque-debug v0.3.1
    Checking smallvec v1.15.0
   Compiling amplify_derive v4.0.1
    Checking ed25519 v1.5.3
   Compiling proc-macro-error v1.0.4
   Compiling synstructure v0.13.2
    Checking ascii v1.1.0
    Checking ct-codecs v1.1.5
    Checking amplify_num v0.5.3
   Compiling zerofrom-derive v0.1.6
   Compiling yoke-derive v0.8.0
   Compiling serde_derive v1.0.219
   Compiling zerovec-derive v0.11.1
   Compiling displaydoc v0.2.5
    Checking zerofrom v0.1.6
    Checking yoke v0.8.0
   Compiling thiserror-impl v1.0.69
    Checking zerotrie v0.2.2
    Checking zerovec v0.11.2
    Checking amplify v4.8.1
    Checking ec25519 v0.1.0
    Checking tinystr v0.8.1
    Checking potential_utf v0.1.2
    Checking icu_collections v2.0.0
    Checking icu_locale_core v2.0.0
    Checking polyval v0.6.2
   Compiling sqlite3-src v0.5.1
   Compiling libgit2-sys v0.17.0+1.8.1
    Checking icu_provider v2.0.0
    Checking sha2 v0.10.9
    Checking icu_properties v2.0.0
    Checking icu_normalizer v2.0.0
    Checking base64ct v1.7.3
    Checking byteorder v1.5.0
   Compiling rustix v1.0.7
    Checking utf8_iter v1.0.4
    Checking keccak v0.1.5
    Checking percent-encoding v2.3.1
    Checking sha3 v0.10.8
    Checking form_urlencoded v1.2.1
    Checking pem-rfc7468 v0.7.0
    Checking idna_adapter v1.2.1
    Checking idna v1.0.3
    Checking ghash v0.5.1
   Compiling git-ref-format-core v0.3.1
    Checking cyphergraphy v0.3.0
    Checking rand_core v0.6.4
    Checking aes v0.8.4
    Checking ctr v0.9.2
    Checking aead v0.5.2
   Compiling data-encoding v2.9.0
    Checking base32 v0.4.0
    Checking linux-raw-sys v0.9.4
    Checking log v0.4.27
   Compiling data-encoding-macro-internal v0.1.16
    Checking cypheraddr v0.4.0
    Checking aes-gcm v0.10.3
   Compiling git-ref-format-macro v0.3.1
    Checking url v2.5.4
    Checking ssh-encoding v0.2.0
    Checking blowfish v0.9.1
    Checking poly1305 v0.8.0
    Checking cbc v0.1.2
    Checking chacha20 v0.9.1
    Checking pbkdf2 v0.12.2
    Checking zeroize v1.8.1
   Compiling typeid v1.0.3
    Checking fastrand v2.3.0
   Compiling getrandom v0.3.3
    Checking data-encoding-macro v0.1.18
    Checking ssh-cipher v0.2.0
    Checking bcrypt-pbkdf v0.10.0
    Checking git-ref-format v0.3.1
    Checking socks5-client v0.4.1
    Checking rand v0.8.5
    Checking hashbrown v0.15.3
   Compiling crossbeam-utils v0.8.21
    Checking signature v2.2.0
    Checking equivalent v1.0.2
    Checking utf8parse v0.2.2
    Checking radicle-std-ext v0.1.1
   Compiling serde_json v1.0.140
    Checking base-x v0.2.11
    Checking multibase v0.9.1
    Checking anstyle-parse v0.2.7
    Checking indexmap v2.9.0
    Checking ssh-key v0.6.7
    Checking qcheck v1.0.0
    Checking cyphernet v0.5.2
    Checking radicle-ssh v0.9.0
    Checking colorchoice v1.0.4
    Checking ryu v1.0.20
    Checking tinyvec_macros v0.1.1
    Checking once_cell v1.21.3
    Checking is_terminal_polyfill v1.70.1
    Checking itoa v1.0.15
    Checking memchr v2.7.4
    Checking anstyle v1.0.11
    Checking anstyle-query v1.1.3
    Checking anstream v0.6.19
    Checking tinyvec v1.9.0
    Checking erased-serde v0.4.6
    Checking radicle-dag v0.10.0
    Checking terminal_size v0.4.2
    Checking nonempty v0.9.0
    Checking clap_lex v0.7.5
   Compiling heck v0.5.0
    Checking strsim v0.11.1
   Compiling thiserror v2.0.12
   Compiling clap_derive v4.5.41
    Checking clap_builder v4.5.41
    Checking serde-untagged v0.1.7
    Checking crossbeam-channel v0.5.15
    Checking unicode-normalization v0.1.24
    Checking tempfile v3.20.0
    Checking localtime v1.3.1
    Checking bytesize v2.0.1
   Compiling thiserror-impl v2.0.12
    Checking base64 v0.21.7
    Checking siphasher v1.0.1
    Checking clap v4.5.41
    Checking uuid v1.16.0
    Checking nonempty v0.11.0
    Checking sqlite3-sys v0.15.2
    Checking sqlite v0.32.0
    Checking git2 v0.19.0
    Checking radicle-git-ext v0.8.1
    Checking radicle-crypto v0.12.0
    Checking radicle-cob v0.14.0
    Checking radicle v0.16.1
    Checking radicle-job v0.1.0 (/workspace/src)
error: hiding a lifetime that's elided elsewhere is confusing
  --> src/bin/rad-job.rs:91:15
   |
91 | fn jobs(repo: &Repository) -> Result<Jobs<Repository>, error::Jobs> {
   |               ^^^^^^^^^^^            ---------------- the same lifetime is hidden here
   |               |
   |               the lifetime is elided here
   |
   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
   = note: `-D mismatched-lifetime-syntaxes` implied by `-D warnings`
   = help: to override `-D warnings` add `#[allow(mismatched_lifetime_syntaxes)]`
help: use `'_` for type paths
   |
91 | fn jobs(repo: &Repository) -> Result<Jobs<'_, Repository>, error::Jobs> {
   |                                           +++

error: could not compile `radicle-job` (bin "rad-job" test) due to 1 previous error
warning: build failed, waiting for other jobs to finish...
error: could not compile `radicle-job` (bin "rad-job") due to 1 previous error
ERROR: Action failed: command failed: ["cargo", "clippy", "--offline", "--locked", "--workspace", "--all-targets", "--no-deps", "--", "--deny", "warnings"]
ERROR: command failed: ["cargo", "clippy", "--offline", "--locked", "--workspace", "--all-targets", "--no-deps", "--", "--deny", "warnings"]
EXIT CODE: 1
[2025-08-09T04:05:27Z INFO  ambient] ambient ends successfully

Trigger message

{
  "request": "trigger",
  "version": 1,
  "event_type": "push",
  "repository": {
    "id": "rad:z2UcCU1LgMshWvXj6hXSDDrwB8q8M",
    "name": "radicle-job",
    "description": "Radicle Job Collaborative Object",
    "private": false,
    "default_branch": "main",
    "delegates": [
      "did:key:z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM"
    ]
  },
  "pusher": {
    "id": "did:key:z6MkkYez6QAFWvmdudjrfMXySu1NTpSrraJotCJFwGgkmgx8",
    "alias": "ci0"
  },
  "before": "b9d8df7d33df0db25f05a6696935eb0e6f82ae57",
  "after": "b9d8df7d33df0db25f05a6696935eb0e6f82ae57",
  "branch": "main",
  "commits": [
    "b9d8df7d33df0db25f05a6696935eb0e6f82ae57"
  ]
}

Ambient stdout

[2025-08-09T04:01:32Z INFO  ambient] ambient starts
[2025-08-09T04:01:32Z DEBUG ambient] load default configuration file /home/_rad/.config/ambient/config.yaml if it exists
[2025-08-09T04:01:32Z DEBUG ambient] load files named with --config: /tmp/.tmps00f0w/ambient_extra_values.yaml
[2025-08-09T04:01:32Z 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: Some(
            "ci@http.liw.fi:/srv/http",
        ),
        rsync_target_map: None,
        dput_target: Some(
            "apt.liw.fi",
        ),
        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-08-09T04:01:32Z 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: Some(
            "ci@http.liw.fi:/srv/http",
        ),
        rsync_target_map: None,
        dput_target: Some(
            "apt.liw.fi",
        ),
        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-08-09T04:01:32Z DEBUG ambient_ci::project] load project state from /srv/ambient-state/radicle-job/meta.yaml
[2025-08-09T04:01:32Z DEBUG ambient_ci::run] latest commit: "b9d8df7d33df0db25f05a6696935eb0e6f82ae57"
[2025-08-09T04:01:32Z DEBUG ambient_ci::run] is a git repository
[2025-08-09T04:01:32Z DEBUG ambient_ci::run] git repository is clean
[2025-08-09T04:01:32Z DEBUG ambient_ci::run] current (HEAD) commit: b9d8df7d33df0db25f05a6696935eb0e6f82ae57
[2025-08-09T04:01:32Z DEBUG ambient_ci::run] no dry run requested
[2025-08-09T04:01:32Z DEBUG ambient_ci::run] forced run requested
[2025-08-09T04:01:32Z DEBUG ambient_ci::run] run? true
[2025-08-09T04:01:32Z INFO  ambient_ci::run] project radicle-job: running CI
[2025-08-09T04:01:32Z DEBUG ambient_ci::run] Executing pre-plan steps
[2025-08-09T04:01:32Z DEBUG ambient_ci::action] Plan::execute: CargoFetch {
        sourcedir: "/tmp/.tmpwo6kkI/src",
        dependenciesdir: "/srv/ambient-state/radicle-job/dependencies",
    }
SPAWN: argv=["env", "CARGO_HOME=/srv/ambient-state/radicle-job/dependencies", "cargo", "fetch", "--locked"]
       cwd=/tmp/.tmpwo6kkI/src (exists? true)
       extra_env=[]
[2025-08-09T04:01:33Z DEBUG ambient_ci::run] create virtual drive /srv/tmp/.tmpahwTat/src.tar
[2025-08-09T04:01:33Z DEBUG ambient_ci::run] create virtual drive /srv/tmp/.tmpahwTat/deps.tar
[2025-08-09T04:01:44Z DEBUG ambient_ci::run] create_executor_vdrive: executor="/usr/bin/ambient-execute-plan"
[2025-08-09T04:01:44Z 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,
            CargoTest,
            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-08-09T04:01:44Z DEBUG ambient_ci::run] executor bin /usr/bin/ambient-execute-plan
[2025-08-09T04:01:44Z DEBUG ambient_ci::run] copying /usr/bin/ambient-execute-plan to /srv/tmp/.tmpahwTat/ambient-execute-plan/run-ci
[2025-08-09T04:01:44Z DEBUG ambient_ci::run] copy OK: true
[2025-08-09T04:01:44Z DEBUG ambient_ci::run] create virtual drive /srv/tmp/.tmpahwTat/executor.tar
[2025-08-09T04:02:25Z DEBUG ambient_ci::project] removing run log file /srv/ambient-state/radicle-job/run.log
[2025-08-09T04:02:25Z DEBUG ambient_ci::project] statedir is /srv/ambient-state/radicle-job, exists? true
[2025-08-09T04:02:25Z DEBUG ambient_ci::project] creating run log file /srv/ambient-state/radicle-job/run.log
[2025-08-09T04:02:25Z DEBUG ambient_ci::project] created run log file /srv/ambient-state/radicle-job/run.log OK
[2025-08-09T04:02:25Z DEBUG ambient_ci::cloud_init] with_hostname called: "ambient"
[2025-08-09T04:02:25Z DEBUG ambient_ci::cloud_init] with_runcmd called: "echo xyzzy > /dev/ttyS1"
[2025-08-09T04:02:25Z 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-08-09T04:02:25Z DEBUG ambient_ci::cloud_init] with_runcmd called: "poweroff"
[2025-08-09T04:02:25Z 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-08-09T04:02:25Z DEBUG ambient_ci::qemu] run QEMU
[2025-08-09T04:02:25Z DEBUG ambient_ci::qemu] create copy-on-write image and UEFI vars file
[2025-08-09T04:02:25Z DEBUG ambient_ci::qemu_utils] qemu-img create /srv/tmp/.tmpLW4hcj/.tmpGwJKqZ/vm.qcow2 backing on /home/_rad/ambient.qcow2
[2025-08-09T04:02:25Z DEBUG ambient_ci::qemu] create cloud-init ISO file
[2025-08-09T04:02:25Z 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-08-09T04:02:25Z DEBUG ambient_ci::cloud_init] write /tmp/.tmpnHhPeK/meta-data
[2025-08-09T04:02:25Z DEBUG ambient_ci::cloud_init] write /tmp/.tmpnHhPeK/user-data
[2025-08-09T04:02:25Z DEBUG ambient_ci::qemu] set console log file to /srv/tmp/.tmpLW4hcj/.tmpGwJKqZ/console.log
[2025-08-09T04:02:25Z DEBUG ambient_ci::util] create file /srv/tmp/.tmpLW4hcj/.tmpGwJKqZ/console.log
[2025-08-09T04:02:25Z DEBUG ambient_ci::qemu] set run file to /srv/ambient-state/radicle-job/run.log
[2025-08-09T04:02:25Z DEBUG ambient_ci::util] create file /srv/ambient-state/radicle-job/run.log
[2025-08-09T04:02:25Z 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/.tmpLW4hcj/.tmpGwJKqZ/console.log",
            "-serial",
            "file:/srv/ambient-state/radicle-job/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/.tmpLW4hcj/.tmpGwJKqZ/vars.fd",
            "-drive",
            "format=qcow2,if=virtio,file=/srv/tmp/.tmpLW4hcj/.tmpGwJKqZ/vm.qcow2",
            "-drive",
            "format=raw,if=virtio,file=/srv/tmp/.tmpahwTat/executor.tar,readonly=on",
            "-cdrom",
            "/srv/tmp/.tmpLW4hcj/.tmpGwJKqZ/cloud_init.iso",
            "-drive",
            "format=raw,if=virtio,file=/srv/tmp/.tmpahwTat/src.tar,readonly=on",
            "-drive",
            "format=raw,if=virtio,file=/srv/tmp/.tmpahwTat/artifacts.tar",
            "-drive",
            "format=raw,if=virtio,file=/srv/tmp/.tmpahwTat/cache.tar",
            "-drive",
            "format=raw,if=virtio,file=/srv/tmp/.tmpahwTat/deps.tar,readonly=on",
            "-nodefaults",
            "-no-user-config",
        ],
    }
[2025-08-09T04:05:27Z DEBUG ambient_ci::qemu] QEMU finished OK
[2025-08-09T04:05:27Z DEBUG ambient_ci::qemu] run log:
    --------------------==========
    [2025-08-09T04:02:49Z TRACE ambient_execute_plan] ambient-execute-plan starts
    [2025-08-09T04:02:49Z DEBUG ambient_execute_plan] ambient-execute-plan starts
    [2025-08-09T04:02:49Z INFO  ambient_execute_plan] ambient-execute-plan starts
    [2025-08-09T04:02:49Z WARN  ambient_execute_plan] ambient-execute-plan starts
    [2025-08-09T04:02:49Z 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_test
    - 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-08-09T04:02:49Z DEBUG ambient_ci::action] Plan::execute: Mkdir {
            pathname: "/workspace",
        }
    RUN: Action finished OK
    RUN: Action Mkdir {
        pathname: "/workspace/artifacts",
    }
    [2025-08-09T04:02:49Z DEBUG ambient_ci::action] Plan::execute: Mkdir {
            pathname: "/workspace/artifacts",
        }
    RUN: Action finished OK
    RUN: Action TarExtract {
        archive: "/dev/vdc",
        directory: "/workspace/src",
    }
    [2025-08-09T04:02:49Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
            archive: "/dev/vdc",
            directory: "/workspace/src",
        }
    [2025-08-09T04:02:49Z TRACE ambient_ci::vdrive] extracting /dev/vdc to /workspace/src
    [2025-08-09T04:02:50Z TRACE ambient_ci::vdrive] extraction OK
    RUN: Action finished OK
    RUN: Action TarExtract {
        archive: "/dev/vdf",
        directory: "/workspace/deps",
    }
    [2025-08-09T04:02:50Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
            archive: "/dev/vdf",
            directory: "/workspace/deps",
        }
    [2025-08-09T04:02:50Z TRACE ambient_ci::vdrive] extracting /dev/vdf to /workspace/deps
    [2025-08-09T04:03:05Z TRACE ambient_ci::vdrive] extraction OK
    RUN: Action finished OK
    RUN: Action TarExtract {
        archive: "/dev/vde",
        directory: "/workspace/cache",
    }
    [2025-08-09T04:03:05Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
            archive: "/dev/vde",
            directory: "/workspace/cache",
        }
    [2025-08-09T04:03:05Z TRACE ambient_ci::vdrive] extracting /dev/vde to /workspace/cache
    [2025-08-09T04:04:39Z TRACE ambient_ci::vdrive] extraction OK
    RUN: Action finished OK
    RUN: Action Spawn {
        argv: [
            "find",
            "/workspace",
            "-maxdepth",
            "2",
            "-ls",
        ],
    }
    [2025-08-09T04:04:39Z 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=[]
      3932161      4 drwxr-xr-x   6 root     root         4096 Aug  9 04:03 /workspace
      3932162      4 drwxr-xr-x   2 root     root         4096 Aug  9 04:02 /workspace/artifacts
      3932605      4 drwxr-xr-x   4 root     root         4096 Aug  9 04:01 /workspace/deps
      3932633     92 -rw-r--r--   1 root     root        94208 Aug  9 04:01 /workspace/deps/.global-cache
      3932607      4 drwxr-xr-x   4 root     root         4096 Jun  7 11:03 /workspace/deps/git
      3932606      0 -rw-r--r--   1 root     root            0 Jun 28 04:02 /workspace/deps/.package-cache-mutate
      3932634      0 -rw-r--r--   1 root     root            0 Jun  7 11:03 /workspace/deps/.package-cache
      3932635      4 drwxr-xr-x   5 root     root         4096 Jun  7 11:03 /workspace/deps/registry
      3932163      4 drwxr-xr-x   5 root     root         4096 Aug  9 04:01 /workspace/src
      3932164      4 drwxr-xr-x   2 root     root         4096 Aug  9 04:01 /workspace/src/.radicle
      3932604     56 -rw-r--r--   1 root     root        53696 Aug  9 04:01 /workspace/src/Cargo.lock
      3932176      4 -rw-r--r--   1 root     root          957 Aug  9 04:01 /workspace/src/Cargo.toml
      3932174      4 -rw-r--r--   1 root     root         3086 Aug  9 04:01 /workspace/src/flake.nix
      3932603      4 -rw-r--r--   1 root     root         2465 Aug  9 04:01 /workspace/src/flake.lock
      3932175      4 -rw-r--r--   1 root     root            8 Aug  9 04:01 /workspace/src/.gitignore
      3932177      4 drwxr-xr-x   8 root     root         4096 Aug  9 04:01 /workspace/src/.git
      3932172      4 -rw-r--r--   1 root     root           10 Aug  9 04:01 /workspace/src/.envrc
      3932173      8 -rw-r--r--   1 root     root         5059 Aug  9 04:01 /workspace/src/README.md
      3932166      4 drwxr-xr-x   3 root     root         4096 Aug  9 04:01 /workspace/src/src
      3944119      4 drwxr-xr-x   3 root     root         4096 Jun  7 11:04 /workspace/cache
      3944120      4 drwxr-xr-x   7 root     root         4096 Jun  7 11:04 /workspace/cache/debug
      3953008      4 -rw-r--r--   1 root     root         1034 Aug  5 12:58 /workspace/cache/.rustc_info.json
    RUN: Action finished OK
    RUN: Action CargoFmt
    [2025-08-09T04:04:39Z 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-08-09T04:04:41Z 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 proc-macro2 v1.0.95
       Compiling unicode-ident v1.0.18
       Compiling version_check v0.9.5
       Compiling libc v0.2.172
       Compiling typenum v1.18.0
       Compiling generic-array v0.14.7
        Checking cfg-if v1.0.0
        Checking subtle v2.6.1
       Compiling quote v1.0.40
        Checking stable_deref_trait v1.2.0
       Compiling syn v2.0.101
       Compiling serde v1.0.219
       Compiling jobserver v0.1.33
       Compiling shlex v1.3.0
       Compiling cc v1.2.22
        Checking crypto-common v0.1.6
       Compiling syn v1.0.109
       Compiling pkg-config v0.3.32
        Checking block-padding v0.3.3
        Checking block-buffer v0.10.4
        Checking cpufeatures v0.2.17
        Checking digest v0.10.7
        Checking inout v0.1.4
        Checking cipher v0.4.4
        Checking getrandom v0.2.16
        Checking writeable v0.6.1
        Checking litemap v0.8.0
       Compiling thiserror v1.0.69
       Compiling icu_properties_data v2.0.0
       Compiling icu_normalizer_data v2.0.0
       Compiling vcpkg v0.2.15
        Checking bitflags v2.9.0
       Compiling amplify_syn v2.0.1
        Checking universal-hash v0.5.1
       Compiling libz-sys v1.1.22
       Compiling proc-macro-error-attr v1.0.4
        Checking signature v1.6.4
        Checking opaque-debug v0.3.1
        Checking smallvec v1.15.0
       Compiling amplify_derive v4.0.1
        Checking ed25519 v1.5.3
       Compiling proc-macro-error v1.0.4
       Compiling synstructure v0.13.2
        Checking ascii v1.1.0
        Checking ct-codecs v1.1.5
        Checking amplify_num v0.5.3
       Compiling zerofrom-derive v0.1.6
       Compiling yoke-derive v0.8.0
       Compiling serde_derive v1.0.219
       Compiling zerovec-derive v0.11.1
       Compiling displaydoc v0.2.5
        Checking zerofrom v0.1.6
        Checking yoke v0.8.0
       Compiling thiserror-impl v1.0.69
        Checking zerotrie v0.2.2
        Checking zerovec v0.11.2
        Checking amplify v4.8.1
        Checking ec25519 v0.1.0
        Checking tinystr v0.8.1
        Checking potential_utf v0.1.2
        Checking icu_collections v2.0.0
        Checking icu_locale_core v2.0.0
        Checking polyval v0.6.2
       Compiling sqlite3-src v0.5.1
       Compiling libgit2-sys v0.17.0+1.8.1
        Checking icu_provider v2.0.0
        Checking sha2 v0.10.9
        Checking icu_properties v2.0.0
        Checking icu_normalizer v2.0.0
        Checking base64ct v1.7.3
        Checking byteorder v1.5.0
       Compiling rustix v1.0.7
        Checking utf8_iter v1.0.4
        Checking keccak v0.1.5
        Checking percent-encoding v2.3.1
        Checking sha3 v0.10.8
        Checking form_urlencoded v1.2.1
        Checking pem-rfc7468 v0.7.0
        Checking idna_adapter v1.2.1
        Checking idna v1.0.3
        Checking ghash v0.5.1
       Compiling git-ref-format-core v0.3.1
        Checking cyphergraphy v0.3.0
        Checking rand_core v0.6.4
        Checking aes v0.8.4
        Checking ctr v0.9.2
        Checking aead v0.5.2
       Compiling data-encoding v2.9.0
        Checking base32 v0.4.0
        Checking linux-raw-sys v0.9.4
        Checking log v0.4.27
       Compiling data-encoding-macro-internal v0.1.16
        Checking cypheraddr v0.4.0
        Checking aes-gcm v0.10.3
       Compiling git-ref-format-macro v0.3.1
        Checking url v2.5.4
        Checking ssh-encoding v0.2.0
        Checking blowfish v0.9.1
        Checking poly1305 v0.8.0
        Checking cbc v0.1.2
        Checking chacha20 v0.9.1
        Checking pbkdf2 v0.12.2
        Checking zeroize v1.8.1
       Compiling typeid v1.0.3
        Checking fastrand v2.3.0
       Compiling getrandom v0.3.3
        Checking data-encoding-macro v0.1.18
        Checking ssh-cipher v0.2.0
        Checking bcrypt-pbkdf v0.10.0
        Checking git-ref-format v0.3.1
        Checking socks5-client v0.4.1
        Checking rand v0.8.5
        Checking hashbrown v0.15.3
       Compiling crossbeam-utils v0.8.21
        Checking signature v2.2.0
        Checking equivalent v1.0.2
        Checking utf8parse v0.2.2
        Checking radicle-std-ext v0.1.1
       Compiling serde_json v1.0.140
        Checking base-x v0.2.11
        Checking multibase v0.9.1
        Checking anstyle-parse v0.2.7
        Checking indexmap v2.9.0
        Checking ssh-key v0.6.7
        Checking qcheck v1.0.0
        Checking cyphernet v0.5.2
        Checking radicle-ssh v0.9.0
        Checking colorchoice v1.0.4
        Checking ryu v1.0.20
        Checking tinyvec_macros v0.1.1
        Checking once_cell v1.21.3
        Checking is_terminal_polyfill v1.70.1
        Checking itoa v1.0.15
        Checking memchr v2.7.4
        Checking anstyle v1.0.11
        Checking anstyle-query v1.1.3
        Checking anstream v0.6.19
        Checking tinyvec v1.9.0
        Checking erased-serde v0.4.6
        Checking radicle-dag v0.10.0
        Checking terminal_size v0.4.2
        Checking nonempty v0.9.0
        Checking clap_lex v0.7.5
       Compiling heck v0.5.0
        Checking strsim v0.11.1
       Compiling thiserror v2.0.12
       Compiling clap_derive v4.5.41
        Checking clap_builder v4.5.41
        Checking serde-untagged v0.1.7
        Checking crossbeam-channel v0.5.15
        Checking unicode-normalization v0.1.24
        Checking tempfile v3.20.0
        Checking localtime v1.3.1
        Checking bytesize v2.0.1
       Compiling thiserror-impl v2.0.12
        Checking base64 v0.21.7
        Checking siphasher v1.0.1
        Checking clap v4.5.41
        Checking uuid v1.16.0
        Checking nonempty v0.11.0
        Checking sqlite3-sys v0.15.2
        Checking sqlite v0.32.0
        Checking git2 v0.19.0
        Checking radicle-git-ext v0.8.1
        Checking radicle-crypto v0.12.0
        Checking radicle-cob v0.14.0
        Checking radicle v0.16.1
        Checking radicle-job v0.1.0 (/workspace/src)
    error: hiding a lifetime that's elided elsewhere is confusing
      --> src/bin/rad-job.rs:91:15
       |
    91 | fn jobs(repo: &Repository) -> Result<Jobs<Repository>, error::Jobs> {
       |               ^^^^^^^^^^^            ---------------- the same lifetime is hidden here
       |               |
       |               the lifetime is elided here
       |
       = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
       = note: `-D mismatched-lifetime-syntaxes` implied by `-D warnings`
       = help: to override `-D warnings` add `#[allow(mismatched_lifetime_syntaxes)]`
    help: use `'_` for type paths
       |
    91 | fn jobs(repo: &Repository) -> Result<Jobs<'_, Repository>, error::Jobs> {
       |                                           +++
    
    error: could not compile `radicle-job` (bin "rad-job" test) due to 1 previous error
    warning: build failed, waiting for other jobs to finish...
    error: could not compile `radicle-job` (bin "rad-job") due to 1 previous error
    ERROR: Action failed: command failed: ["cargo", "clippy", "--offline", "--locked", "--workspace", "--all-targets", "--no-deps", "--", "--deny", "warnings"]
    ERROR: command failed: ["cargo", "clippy", "--offline", "--locked", "--workspace", "--all-targets", "--no-deps", "--", "--deny", "warnings"]
    EXIT CODE: 1
    
    ====================
[2025-08-09T04:05:27Z DEBUG ambient_ci::qemu] QEMU exit code 1
ERROR: failed to run actions in QEMU

Ambient stderr

<empty log>