CI run for rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5

Radicle repository id rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5

Table of Contents

Run log

[2025-09-20T11:58:45Z INFO  ambient] ambient starts
deprecated: the `cpus` field is replaced by `qemu.cpus`
deprecated: the `memory` field is replaced by `qemu.memory`
[=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
sr0     11:0    1   370K  0 rom  
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  29.3M  1 disk 
vdd    254:48   0 953.7M  0 disk 
vde    254:64   0  27.9G  0 disk 
vdf    254:80   0   1.3G  1 disk 
INFO: Extracting tar archive from /dev/vdb
drwxr-xr-x _rad/_rad         0 2025-09-20 11:57 ./
-rw-r--r-- _rad/_rad      2416 2025-09-20 11:57 ./plan.yaml
-rwxr-xr-x _rad/_rad   2994840 2025-09-20 11:57 ./run-ci
INFO: Extracted files:
  6291466      4 drwxr-xr-x   2 1000     1000         4096 Sep 20 11:57 .
  6291468   2928 -rwxr-xr-x   1 1000     1000      2994840 Sep 20 11:57 ./run-ci
  6291467      4 -rw-r--r--   1 1000     1000         2416 Sep 20 11:57 ./plan.yaml
INFO: Running run-ci from /dev/vdb
================================ BEGIN ================================
[2025-09-20T11:57:47Z TRACE ambient_execute_plan] ambient-execute-plan starts
[2025-09-20T11:57:47Z DEBUG ambient_execute_plan] ambient-execute-plan starts
[2025-09-20T11:57:47Z INFO  ambient_execute_plan] ambient-execute-plan starts
[2025-09-20T11:57:47Z WARN  ambient_execute_plan] ambient-execute-plan starts
[2025-09-20T11:57:47Z 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"

    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-20T11:57:47Z DEBUG ambient_ci::action] Plan::execute: Mkdir {
        pathname: "/workspace",
    }
RUN: Action finished OK
RUN: Action Mkdir {
    pathname: "/workspace/artifacts",
}
[2025-09-20T11:57:47Z 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-20T11:57:47Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
        archive: "/dev/vdc",
        directory: "/workspace/src",
    }
[2025-09-20T11:57:47Z TRACE ambient_ci::vdrive] extracting /dev/vdc to /workspace/src
[2025-09-20T11:57:47Z TRACE ambient_ci::vdrive] extraction OK
RUN: Action finished OK
RUN: Action TarExtract {
    archive: "/dev/vdf",
    directory: "/workspace/deps",
}
[2025-09-20T11:57:47Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
        archive: "/dev/vdf",
        directory: "/workspace/deps",
    }
[2025-09-20T11:57:47Z TRACE ambient_ci::vdrive] extracting /dev/vdf to /workspace/deps
[2025-09-20T11:57:51Z TRACE ambient_ci::vdrive] extraction OK
RUN: Action finished OK
RUN: Action TarExtract {
    archive: "/dev/vde",
    directory: "/workspace/cache",
}
[2025-09-20T11:57:51Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
        archive: "/dev/vde",
        directory: "/workspace/cache",
    }
[2025-09-20T11:57:51Z TRACE ambient_ci::vdrive] extracting /dev/vde to /workspace/cache
[2025-09-20T11:58:36Z TRACE ambient_ci::vdrive] extraction OK
RUN: Action finished OK
RUN: Action Spawn {
    argv: [
        "find",
        "/workspace",
        "-maxdepth",
        "2",
        "-ls",
    ],
}
[2025-09-20T11:58:36Z 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 20 11:57 /workspace
  2621442      4 drwxr-xr-x   2 root     root         4096 Sep 20 11:57 /workspace/artifacts
  2754120      4 drwxr-xr-x   6 root     root         4096 Sep 19 13:49 /workspace/cache
  2764422      4 drwxr-xr-x  30 root     root         4096 Sep 20 09:48 /workspace/cache/doc
  2769620      4 drwxr-xr-x   7 root     root         4096 Sep 20 09:44 /workspace/cache/debug
  2754121      4 -rw-r--r--   1 root     root         1032 Sep 20 09:44 /workspace/cache/.rustc_info.json
  2754122      4 drwxr-xr-x   7 root     root         4096 Sep 20 09:51 /workspace/cache/release
  2769618      4 drwxr-xr-x   2 root     root         4096 Sep 19 13:39 /workspace/cache/tmp
  2769619      4 -rw-r--r--   1 root     root          218 Sep 20 09:03 /workspace/cache/.rustdoc_fingerprint.json
  2623354      4 drwxr-xr-x   3 root     root         4096 Sep 20 11:57 /workspace/deps
  2669920      0 -rw-r--r--   1 root     root            0 Sep 10 13:40 /workspace/deps/.package-cache
  2623355      4 drwxr-xr-x   5 root     root         4096 Sep 10 13:40 /workspace/deps/registry
  2669918    180 -rw-r--r--   1 root     root       184320 Sep 20 11:57 /workspace/deps/.global-cache
  2669919      0 -rw-r--r--   1 root     root            0 Sep 10 13:40 /workspace/deps/.package-cache-mutate
  2621443      4 drwxr-xr-x  12 root     root         4096 Sep 20 11:57 /workspace/src
  2622072     12 -rw-r--r--   1 root     root         9723 Sep 20 11:57 /workspace/src/LICENSE-APACHE
  2621471      8 -rw-r--r--   1 root     root         7144 Sep 20 11:57 /workspace/src/rad-id.1.adoc
  2621469      4 -rw-r--r--   1 root     root           77 Sep 20 11:57 /workspace/src/rust-toolchain.toml
  2621473      8 -rw-r--r--   1 root     root         5102 Sep 20 11:57 /workspace/src/flake.lock
  2621451      4 drwxr-xr-x   5 root     root         4096 Sep 20 11:57 /workspace/src/systemd
  2622079      4 -rw-r--r--   1 root     root         1083 Sep 20 11:57 /workspace/src/.gitsigners
  2622081      4 drwxr-xr-x   2 root     root         4096 Sep 20 11:57 /workspace/src/.github
  2622076      4 drwxr-xr-x   2 root     root         4096 Sep 20 11:57 /workspace/src/.radicle
  2622074      4 -rw-r--r--   1 root     root         1203 Sep 20 11:57 /workspace/src/DCO
  2621447      4 -rw-r--r--   1 root     root         2647 Sep 20 11:57 /workspace/src/Cargo.toml
  2621444      8 -rw-r--r--   1 root     root         8022 Sep 20 11:57 /workspace/src/rad.1.adoc
  2621474      8 -rw-r--r--   1 root     root         5432 Sep 20 11:57 /workspace/src/deny.toml
  2621449     12 -rw-r--r--   1 root     root         8740 Sep 20 11:57 /workspace/src/CONTRIBUTING.md
  2622070      4 -rw-r--r--   1 root     root         3133 Sep 20 11:57 /workspace/src/README.md
  2622084      4 -rw-r--r--   1 root     root           61 Sep 20 11:57 /workspace/src/.env.seed
  2621472      4 -rw-r--r--   1 root     root          571 Sep 20 11:57 /workspace/src/git-remote-rad.1.adoc
  2621445     12 -rw-r--r--   1 root     root        10770 Sep 20 11:57 /workspace/src/rad-patch.1.adoc
  2622083      4 -rw-r--r--   1 root     root           42 Sep 20 11:57 /workspace/src/.envrc
  2622080      4 -rw-r--r--   1 root     root          101 Sep 20 11:57 /workspace/src/.gitignore
  2621446     12 -rw-r--r--   1 root     root         9211 Sep 20 11:57 /workspace/src/flake.nix
  2622068      4 -rw-r--r--   1 root     root         1623 Sep 20 11:57 /workspace/src/build.rs
  2622069      4 -rw-r--r--   1 root     root         2163 Sep 20 11:57 /workspace/src/VERSIONING.md
  2622075      4 -rw-r--r--   1 root     root           79 Sep 20 11:57 /workspace/src/ARCHITECTURE.md
  2621450      8 -rw-r--r--   1 root     root         7475 Sep 20 11:57 /workspace/src/CHANGELOG.md
  2622086      4 drwxr-xr-x   2 root     root         4096 Sep 20 11:57 /workspace/src/.config
  2621448    116 -rw-r--r--   1 root     root       115462 Sep 20 11:57 /workspace/src/Cargo.lock
  2621475      4 drwxr-xr-x   3 root     root         4096 Sep 20 11:57 /workspace/src/debian
  2622090      4 drwxr-xr-x   8 root     root         4096 Sep 20 11:57 /workspace/src/.git
  2622073      8 -rw-r--r--   1 root     root         7645 Sep 20 11:57 /workspace/src/HACKING.md
  2622071      4 -rw-r--r--   1 root     root         1079 Sep 20 11:57 /workspace/src/LICENSE-MIT
  2621470      4 -rw-r--r--   1 root     root          426 Sep 20 11:57 /workspace/src/radicle-node.1.adoc
  2622055      4 drwxr-xr-x   2 root     root         4096 Sep 20 11:57 /workspace/src/build
  2621458      4 drwxr-xr-x   2 root     root         4096 Sep 20 11:57 /workspace/src/scripts
  2622088      4 drwxr-xr-x   2 root     root         4096 Sep 20 11:57 /workspace/src/.cargo
  2621488      4 drwxr-xr-x  17 root     root         4096 Sep 20 11:57 /workspace/src/crates
  2622085      4 -rw-r--r--   1 root     root           30 Sep 20 11:57 /workspace/src/.dockerignore
RUN: Action finished OK
RUN: Action CargoFmt
[2025-09-20T11:58:36Z 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")]
error: expected one of `.`, `;`, `?`, `}`, or an operator, found `,`
   --> /workspace/src/crates/radicle-cli/src/commands/patch.rs:455:29
    |
455 |             unimplemented!(),
    |                             ^ expected one of `.`, `;`, `?`, `}`, or an operator

Error writing files: failed to resolve mod `rad_patch`: cannot parse /workspace/src/crates/radicle-cli/src/commands/patch.rs
ERROR: Action failed: command failed: ["cargo", "fmt", "--check"]
ERROR: command failed: ["cargo", "fmt", "--check"]
EXIT CODE: 1
[2025-09-20T11:58:45Z 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": "Created",
  "patch": {
    "id": "0866819acc9414f83f2c57ff65917bc8b79bbfd2",
    "author": {
      "id": "did:key:z6MkwcURkqsfxaqUvxME953L1CDRae1KDyPxvr7zsRDWq1kL",
      "alias": "matthiasbeyer"
    },
    "title": "Add clap for parsing cli args",
    "state": {
      "status": "draft",
      "conflicts": []
    },
    "before": "55cdd880bfee08124d5b6a38cc05036402c7ab6e",
    "after": "cb34d688533c6e42d0df840f86e823d5b9b3b03b",
    "commits": [
      "cb34d688533c6e42d0df840f86e823d5b9b3b03b",
      "3e53b8f78a0d1070b665138c065b43d3d9263c85",
      "916668ea770b3375224f6f4c698ef7c1e5b45f37",
      "b6a28e2b7b50674deefb75a83edccb63930570e9",
      "24ed52fc8131e4776782f63956fad8b6589eca14",
      "e2b000f7d23fa3e4359a61cfcb0ad776757cc0ad"
    ],
    "target": "e70850cb36c5f08d2d8714017d5404dde34deefa",
    "labels": [],
    "assignees": [],
    "revisions": [
      {
        "id": "0866819acc9414f83f2c57ff65917bc8b79bbfd2",
        "author": {
          "id": "did:key:z6MkwcURkqsfxaqUvxME953L1CDRae1KDyPxvr7zsRDWq1kL",
          "alias": "matthiasbeyer"
        },
        "description": "Refactored the issue command using clap\n\n\nSet clap help_template\n\n\ncli: issue command shouldn't ask for passphrase on read-only operations\n\n\ncli: remove cli.rs and set default value for issue list --assigned\n\n\ncli: Add completion stubs for bash/zsh/fish\n\n\nPoint clap fork dep to github.com/icetan instead of local path\n\n\nBump nixpkgs to support latest version of clap",
        "base": "54aacc96197a48b79fcc260f94312d824f5e0a34",
        "oid": "195bae992f9ac5adc8f5e0554443f0bda2489a48",
        "timestamp": 1710518037
      },
      {
        "id": "31f6309a5f0f387bbd3e565371e729ab150b0b2f",
        "author": {
          "id": "did:key:z6MkwcURkqsfxaqUvxME953L1CDRae1KDyPxvr7zsRDWq1kL",
          "alias": "matthiasbeyer"
        },
        "description": "Changes:\n- Pin Nix back to release\n- WIP adding zsh completion to flake.nix\n- Some clean up",
        "base": "064ece32ac0a0bd0efe4f459dcb0462bafc236e6",
        "oid": "89de84f7491dab3b0066dccc62a730597e55e295",
        "timestamp": 1716315598
      },
      {
        "id": "391d2721520c45a93ad692e9c03dda505ce8efa7",
        "author": {
          "id": "did:key:z6MkwcURkqsfxaqUvxME953L1CDRae1KDyPxvr7zsRDWq1kL",
          "alias": "matthiasbeyer"
        },
        "description": "Changes:\n- reorganise args and commands into a module",
        "base": "064ece32ac0a0bd0efe4f459dcb0462bafc236e6",
        "oid": "8c8a2036b8aab7cc353f50b66b5fc6591ebe6477",
        "timestamp": 1716453594
      },
      {
        "id": "80b01629088d0dc2b1d0b7a226940d08345d3d88",
        "author": {
          "id": "did:key:z6MkwcURkqsfxaqUvxME953L1CDRae1KDyPxvr7zsRDWq1kL",
          "alias": "matthiasbeyer"
        },
        "description": "Changes:\n- Clean up on state transition argument\n- Show off the power of forcing documentation to ensure all fields are\n  documented for the help output",
        "base": "064ece32ac0a0bd0efe4f459dcb0462bafc236e6",
        "oid": "15c4e1774946669877a781efd467db2f1e4b19b3",
        "timestamp": 1716469647
      },
      {
        "id": "6aef9c73473ca73f56f23bbd863b75ee732c23c0",
        "author": {
          "id": "did:key:z6MkwcURkqsfxaqUvxME953L1CDRae1KDyPxvr7zsRDWq1kL",
          "alias": "matthiasbeyer"
        },
        "description": "Rebase. Does not require icetan's fork anymore.",
        "base": "01bed73a60ab429c3f90a90bdc31a138ed54c78e",
        "oid": "62e4ff4e9ca9e0fa1641f72914bf50f59afcc628",
        "timestamp": 1755447227
      },
      {
        "id": "b58ccaba25524e4febd24f4bab5de5cbc5a6723f",
        "author": {
          "id": "did:key:z6MkwcURkqsfxaqUvxME953L1CDRae1KDyPxvr7zsRDWq1kL",
          "alias": "matthiasbeyer"
        },
        "description": "Here are some changes to the clap proposal.\n\nI used `git commit --fixup` for the smaller stuff and properly committed bigger changes.\n\nThe fixup commits are:\n\n* I rewrote a comment to be more accurate\n* I renamed the `Commands` enum to `Command`, because that's only ever one, not multiple\n\nFeel free to squash them away or, if you want them to be individual commits (be\nmy guest!) rewrite their commit message (or order me to do it)!",
        "base": "01bed73a60ab429c3f90a90bdc31a138ed54c78e",
        "oid": "3c581d9df5e24b183e0478f43e3e20f8928d5b14",
        "timestamp": 1755452435
      },
      {
        "id": "c0dcf6b4e19632014e147b7a59e8d2e735865886",
        "author": {
          "id": "did:key:z6MkwcURkqsfxaqUvxME953L1CDRae1KDyPxvr7zsRDWq1kL",
          "alias": "matthiasbeyer"
        },
        "description": "Squash in Matthias' improvements. Thanks!",
        "base": "01bed73a60ab429c3f90a90bdc31a138ed54c78e",
        "oid": "88b6728e8127044855311997334b337d7bdc7c77",
        "timestamp": 1755454563
      },
      {
        "id": "48e2bcf08c6a06053d9c0d8e693c5b54f699441d",
        "author": {
          "id": "did:key:z6MkwcURkqsfxaqUvxME953L1CDRae1KDyPxvr7zsRDWq1kL",
          "alias": "matthiasbeyer"
        },
        "description": "Rebase",
        "base": "55cdd880bfee08124d5b6a38cc05036402c7ab6e",
        "oid": "8f5f7b596f22c68e6bebfd180beafb10eaa63a15",
        "timestamp": 1756585509
      },
      {
        "id": "6a1599d3cc78a825cce22b5893743bc0aff74ad0",
        "author": {
          "id": "did:key:z6MkwcURkqsfxaqUvxME953L1CDRae1KDyPxvr7zsRDWq1kL",
          "alias": "matthiasbeyer"
        },
        "description": "Some changes for converting the `rad patch` command to clap\n\nRight now this is in-flight. It does not even compile. But I am out of\nbrain-power now, so this will not be continued right now.\n\nI am publishing this in the state it is, though, so that it is visible that I\nam working on it, so we do not duplicate work here.",
        "base": "55cdd880bfee08124d5b6a38cc05036402c7ab6e",
        "oid": "cb34d688533c6e42d0df840f86e823d5b9b3b03b",
        "timestamp": 1757082445
      },
      {
        "id": "377bce2a8474071107464235b1c0f6408e8b7b77",
        "author": {
          "id": "did:key:z6MkwcURkqsfxaqUvxME953L1CDRae1KDyPxvr7zsRDWq1kL",
          "alias": "matthiasbeyer"
        },
        "description": "Rebase",
        "base": "646d4360e7d905f0a9ec87d32c6768c5390eabf3",
        "oid": "0cb40e011d720424b86c882fdd739c8590ab9622",
        "timestamp": 1757575566
      }
    ]
  }
}

Ambient stdout

[2025-09-20T11:57:22Z INFO  ambient] ambient starts
[2025-09-20T11:57:22Z DEBUG ambient] load default configuration file /home/_rad/.config/ambient/config.yaml if it exists
deprecated: the `cpus` field is replaced by `qemu.cpus`
deprecated: the `memory` field is replaced by `qemu.memory`
[2025-09-20T11:57:22Z DEBUG ambient] complete configuration: Config {
        tmpdir: "/home/_rad/tmp",
        image_store: "/home/_rad/ambient-images",
        projects: "/dev/null",
        state: "/home/_rad/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(
            1000000000,
        ),
        cache_max_size: Byte(
            30000000000,
        ),
        qemu: QemuConfig {
            cpus: 2,
            memory: Byte(
                12000000000,
            ),
            kvm_binary: "/usr/bin/kvm",
            ovmf_vars_file: "/usr/share/ovmf/OVMF.fd",
            ovmf_code_file: "/usr/share/ovmf/OVMF.fd",
        },
    }
[2025-09-20T11:57:22Z DEBUG ambient] configuration: Config {
        tmpdir: "/home/_rad/tmp",
        image_store: "/home/_rad/ambient-images",
        projects: "/dev/null",
        state: "/home/_rad/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(
            1000000000,
        ),
        cache_max_size: Byte(
            30000000000,
        ),
        qemu: QemuConfig {
            cpus: 2,
            memory: Byte(
                12000000000,
            ),
            kvm_binary: "/usr/bin/kvm",
            ovmf_vars_file: "/usr/share/ovmf/OVMF.fd",
            ovmf_code_file: "/usr/share/ovmf/OVMF.fd",
        },
    }
[2025-09-20T11:57:22Z DEBUG ambient_ci::project] load project state from /home/_rad/ambient-state/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5/meta.yaml
[2025-09-20T11:57:22Z DEBUG ambient_ci::run] latest commit: "6a1147f0555e7c3c751eeeb472a9d4caedf7afc9"
[2025-09-20T11:57:22Z DEBUG ambient_ci::run] is a git repository
[2025-09-20T11:57:22Z DEBUG ambient_ci::run] git repository is clean
[2025-09-20T11:57:22Z DEBUG ambient_ci::run] current (HEAD) commit: cb34d688533c6e42d0df840f86e823d5b9b3b03b
[2025-09-20T11:57:22Z DEBUG ambient_ci::run] no dry run requested
[2025-09-20T11:57:22Z DEBUG ambient_ci::run] forced run requested
[2025-09-20T11:57:22Z DEBUG ambient_ci::run] run? true
[2025-09-20T11:57:22Z INFO  ambient_ci::run] project rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5: running CI
[2025-09-20T11:57:22Z DEBUG ambient_ci::run] Executing pre-plan steps
[2025-09-20T11:57:22Z DEBUG ambient_ci::action] Plan::execute: CargoFetch {
        sourcedir: "/tmp/.tmphkYpxx/src",
        dependenciesdir: "/home/_rad/ambient-state/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5/dependencies",
    }
SPAWN: argv=["env", "CARGO_HOME=/home/_rad/ambient-state/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5/dependencies", "cargo", "fetch", "--locked"]
       cwd=/tmp/.tmphkYpxx/src (exists? true)
       extra_env=[]
[2025-09-20T11:57:23Z DEBUG ambient_ci::run] create virtual drive /home/_rad/tmp/.tmpdHankY/src.tar
[2025-09-20T11:57:23Z DEBUG ambient_ci::run] create virtual drive /home/_rad/tmp/.tmpdHankY/deps.tar
[2025-09-20T11:57:24Z DEBUG ambient_ci::run] create_executor_vdrive: executor="/usr/bin/ambient-execute-plan"
[2025-09-20T11:57:24Z 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\"\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-20T11:57:24Z DEBUG ambient_ci::run] executor bin /usr/bin/ambient-execute-plan
[2025-09-20T11:57:24Z DEBUG ambient_ci::run] copying /usr/bin/ambient-execute-plan to /home/_rad/tmp/.tmpdHankY/ambient-execute-plan/run-ci
[2025-09-20T11:57:24Z DEBUG ambient_ci::run] copy OK: true
[2025-09-20T11:57:24Z DEBUG ambient_ci::run] create virtual drive /home/_rad/tmp/.tmpdHankY/executor.tar
[2025-09-20T11:57:44Z DEBUG ambient_ci::project] removing run log file /home/_rad/ambient-state/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5/run.log
[2025-09-20T11:57:44Z DEBUG ambient_ci::project] statedir is /home/_rad/ambient-state/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5, exists? true
[2025-09-20T11:57:44Z DEBUG ambient_ci::project] creating run log file /home/_rad/ambient-state/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5/run.log
[2025-09-20T11:57:44Z DEBUG ambient_ci::project] created run log file /home/_rad/ambient-state/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5/run.log OK
[2025-09-20T11:57:44Z DEBUG ambient_ci::cloud_init] with_hostname called: "ambient"
[2025-09-20T11:57:44Z DEBUG ambient_ci::cloud_init] with_runcmd called: "echo xyzzy > /dev/ttyS1"
[2025-09-20T11:57:44Z 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-20T11:57:44Z DEBUG ambient_ci::cloud_init] with_runcmd called: "poweroff"
[2025-09-20T11:57:44Z 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-20T11:57:44Z DEBUG ambient_ci::qemu] run QEMU
[2025-09-20T11:57:44Z DEBUG ambient_ci::qemu] create copy-on-write image and UEFI vars file
[2025-09-20T11:57:44Z DEBUG ambient_ci::qemu_utils] qemu-img create /home/_rad/tmp/.tmpdCJqMs/.tmpPAJkbg/vm.qcow2 backing on /home/_rad/ambient.qcow2
[2025-09-20T11:57:44Z DEBUG ambient_ci::qemu] create cloud-init ISO file
[2025-09-20T11:57:44Z 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-20T11:57:44Z DEBUG ambient_ci::cloud_init] write /tmp/.tmpjmi7Js/meta-data
[2025-09-20T11:57:44Z DEBUG ambient_ci::cloud_init] write /tmp/.tmpjmi7Js/user-data
[2025-09-20T11:57:44Z DEBUG ambient_ci::qemu] set console log file to /home/_rad/tmp/.tmpdCJqMs/.tmpPAJkbg/console.log
[2025-09-20T11:57:44Z DEBUG ambient_ci::util] create file /home/_rad/tmp/.tmpdCJqMs/.tmpPAJkbg/console.log
[2025-09-20T11:57:44Z DEBUG ambient_ci::qemu] set run file to /home/_rad/ambient-state/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5/run.log
[2025-09-20T11:57:44Z DEBUG ambient_ci::util] create file /home/_rad/ambient-state/rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5/run.log
[2025-09-20T11:57:44Z DEBUG ambient_ci::qemu] run QEMU: QemuArgs {
        args: [
            "-m",
            "11444",
            "-smp",
            "cpus=2",
            "-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:/home/_rad/tmp/.tmpdCJqMs/.tmpPAJkbg/console.log",
            "-serial",
            "file:/home/_rad/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=/home/_rad/tmp/.tmpdCJqMs/.tmpPAJkbg/vars.fd",
            "-drive",
            "format=qcow2,if=virtio,file=/home/_rad/tmp/.tmpdCJqMs/.tmpPAJkbg/vm.qcow2",
            "-drive",
            "format=raw,if=virtio,file=/home/_rad/tmp/.tmpdHankY/executor.tar,readonly=on",
            "-cdrom",
            "/home/_rad/tmp/.tmpdCJqMs/.tmpPAJkbg/cloud_init.iso",
            "-drive",
            "format=raw,if=virtio,file=/home/_rad/tmp/.tmpdHankY/src.tar,readonly=on",
            "-drive",
            "format=raw,if=virtio,file=/home/_rad/tmp/.tmpdHankY/artifacts.tar",
            "-drive",
            "format=raw,if=virtio,file=/home/_rad/tmp/.tmpdHankY/cache.tar",
            "-drive",
            "format=raw,if=virtio,file=/home/_rad/tmp/.tmpdHankY/deps.tar,readonly=on",
            "-nodefaults",
            "-no-user-config",
        ],
    }
[2025-09-20T11:58:39Z DEBUG ambient_ci::qemu] QEMU finished OK
[2025-09-20T11:58:39Z DEBUG ambient_ci::qemu] run log:
    --------------------==========
    [2025-09-20T11:57:47Z TRACE ambient_execute_plan] ambient-execute-plan starts
    [2025-09-20T11:57:47Z DEBUG ambient_execute_plan] ambient-execute-plan starts
    [2025-09-20T11:57:47Z INFO  ambient_execute_plan] ambient-execute-plan starts
    [2025-09-20T11:57:47Z WARN  ambient_execute_plan] ambient-execute-plan starts
    [2025-09-20T11:57:47Z 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"
    
        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-20T11:57:47Z DEBUG ambient_ci::action] Plan::execute: Mkdir {
            pathname: "/workspace",
        }
    RUN: Action finished OK
    RUN: Action Mkdir {
        pathname: "/workspace/artifacts",
    }
    [2025-09-20T11:57:47Z 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-20T11:57:47Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
            archive: "/dev/vdc",
            directory: "/workspace/src",
        }
    [2025-09-20T11:57:47Z TRACE ambient_ci::vdrive] extracting /dev/vdc to /workspace/src
    [2025-09-20T11:57:47Z TRACE ambient_ci::vdrive] extraction OK
    RUN: Action finished OK
    RUN: Action TarExtract {
        archive: "/dev/vdf",
        directory: "/workspace/deps",
    }
    [2025-09-20T11:57:47Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
            archive: "/dev/vdf",
            directory: "/workspace/deps",
        }
    [2025-09-20T11:57:47Z TRACE ambient_ci::vdrive] extracting /dev/vdf to /workspace/deps
    [2025-09-20T11:57:51Z TRACE ambient_ci::vdrive] extraction OK
    RUN: Action finished OK
    RUN: Action TarExtract {
        archive: "/dev/vde",
        directory: "/workspace/cache",
    }
    [2025-09-20T11:57:51Z DEBUG ambient_ci::action] Plan::execute: TarExtract {
            archive: "/dev/vde",
            directory: "/workspace/cache",
        }
    [2025-09-20T11:57:51Z TRACE ambient_ci::vdrive] extracting /dev/vde to /workspace/cache
    [2025-09-20T11:58:36Z TRACE ambient_ci::vdrive] extraction OK
    RUN: Action finished OK
    RUN: Action Spawn {
        argv: [
            "find",
            "/workspace",
            "-maxdepth",
            "2",
            "-ls",
        ],
    }
    [2025-09-20T11:58:36Z 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 20 11:57 /workspace
      2621442      4 drwxr-xr-x   2 root     root         4096 Sep 20 11:57 /workspace/artifacts
      2754120      4 drwxr-xr-x   6 root     root         4096 Sep 19 13:49 /workspace/cache
      2764422      4 drwxr-xr-x  30 root     root         4096 Sep 20 09:48 /workspace/cache/doc
      2769620      4 drwxr-xr-x   7 root     root         4096 Sep 20 09:44 /workspace/cache/debug
      2754121      4 -rw-r--r--   1 root     root         1032 Sep 20 09:44 /workspace/cache/.rustc_info.json
      2754122      4 drwxr-xr-x   7 root     root         4096 Sep 20 09:51 /workspace/cache/release
      2769618      4 drwxr-xr-x   2 root     root         4096 Sep 19 13:39 /workspace/cache/tmp
      2769619      4 -rw-r--r--   1 root     root          218 Sep 20 09:03 /workspace/cache/.rustdoc_fingerprint.json
      2623354      4 drwxr-xr-x   3 root     root         4096 Sep 20 11:57 /workspace/deps
      2669920      0 -rw-r--r--   1 root     root            0 Sep 10 13:40 /workspace/deps/.package-cache
      2623355      4 drwxr-xr-x   5 root     root         4096 Sep 10 13:40 /workspace/deps/registry
      2669918    180 -rw-r--r--   1 root     root       184320 Sep 20 11:57 /workspace/deps/.global-cache
      2669919      0 -rw-r--r--   1 root     root            0 Sep 10 13:40 /workspace/deps/.package-cache-mutate
      2621443      4 drwxr-xr-x  12 root     root         4096 Sep 20 11:57 /workspace/src
      2622072     12 -rw-r--r--   1 root     root         9723 Sep 20 11:57 /workspace/src/LICENSE-APACHE
      2621471      8 -rw-r--r--   1 root     root         7144 Sep 20 11:57 /workspace/src/rad-id.1.adoc
      2621469      4 -rw-r--r--   1 root     root           77 Sep 20 11:57 /workspace/src/rust-toolchain.toml
      2621473      8 -rw-r--r--   1 root     root         5102 Sep 20 11:57 /workspace/src/flake.lock
      2621451      4 drwxr-xr-x   5 root     root         4096 Sep 20 11:57 /workspace/src/systemd
      2622079      4 -rw-r--r--   1 root     root         1083 Sep 20 11:57 /workspace/src/.gitsigners
      2622081      4 drwxr-xr-x   2 root     root         4096 Sep 20 11:57 /workspace/src/.github
      2622076      4 drwxr-xr-x   2 root     root         4096 Sep 20 11:57 /workspace/src/.radicle
      2622074      4 -rw-r--r--   1 root     root         1203 Sep 20 11:57 /workspace/src/DCO
      2621447      4 -rw-r--r--   1 root     root         2647 Sep 20 11:57 /workspace/src/Cargo.toml
      2621444      8 -rw-r--r--   1 root     root         8022 Sep 20 11:57 /workspace/src/rad.1.adoc
      2621474      8 -rw-r--r--   1 root     root         5432 Sep 20 11:57 /workspace/src/deny.toml
      2621449     12 -rw-r--r--   1 root     root         8740 Sep 20 11:57 /workspace/src/CONTRIBUTING.md
      2622070      4 -rw-r--r--   1 root     root         3133 Sep 20 11:57 /workspace/src/README.md
      2622084      4 -rw-r--r--   1 root     root           61 Sep 20 11:57 /workspace/src/.env.seed
      2621472      4 -rw-r--r--   1 root     root          571 Sep 20 11:57 /workspace/src/git-remote-rad.1.adoc
      2621445     12 -rw-r--r--   1 root     root        10770 Sep 20 11:57 /workspace/src/rad-patch.1.adoc
      2622083      4 -rw-r--r--   1 root     root           42 Sep 20 11:57 /workspace/src/.envrc
      2622080      4 -rw-r--r--   1 root     root          101 Sep 20 11:57 /workspace/src/.gitignore
      2621446     12 -rw-r--r--   1 root     root         9211 Sep 20 11:57 /workspace/src/flake.nix
      2622068      4 -rw-r--r--   1 root     root         1623 Sep 20 11:57 /workspace/src/build.rs
      2622069      4 -rw-r--r--   1 root     root         2163 Sep 20 11:57 /workspace/src/VERSIONING.md
      2622075      4 -rw-r--r--   1 root     root           79 Sep 20 11:57 /workspace/src/ARCHITECTURE.md
      2621450      8 -rw-r--r--   1 root     root         7475 Sep 20 11:57 /workspace/src/CHANGELOG.md
      2622086      4 drwxr-xr-x   2 root     root         4096 Sep 20 11:57 /workspace/src/.config
      2621448    116 -rw-r--r--   1 root     root       115462 Sep 20 11:57 /workspace/src/Cargo.lock
      2621475      4 drwxr-xr-x   3 root     root         4096 Sep 20 11:57 /workspace/src/debian
      2622090      4 drwxr-xr-x   8 root     root         4096 Sep 20 11:57 /workspace/src/.git
      2622073      8 -rw-r--r--   1 root     root         7645 Sep 20 11:57 /workspace/src/HACKING.md
      2622071      4 -rw-r--r--   1 root     root         1079 Sep 20 11:57 /workspace/src/LICENSE-MIT
      2621470      4 -rw-r--r--   1 root     root          426 Sep 20 11:57 /workspace/src/radicle-node.1.adoc
      2622055      4 drwxr-xr-x   2 root     root         4096 Sep 20 11:57 /workspace/src/build
      2621458      4 drwxr-xr-x   2 root     root         4096 Sep 20 11:57 /workspace/src/scripts
      2622088      4 drwxr-xr-x   2 root     root         4096 Sep 20 11:57 /workspace/src/.cargo
      2621488      4 drwxr-xr-x  17 root     root         4096 Sep 20 11:57 /workspace/src/crates
      2622085      4 -rw-r--r--   1 root     root           30 Sep 20 11:57 /workspace/src/.dockerignore
    RUN: Action finished OK
    RUN: Action CargoFmt
    [2025-09-20T11:58:36Z 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")]
    error: expected one of `.`, `;`, `?`, `}`, or an operator, found `,`
       --> /workspace/src/crates/radicle-cli/src/commands/patch.rs:455:29
        |
    455 |             unimplemented!(),
        |                             ^ expected one of `.`, `;`, `?`, `}`, or an operator
    
    Error writing files: failed to resolve mod `rad_patch`: cannot parse /workspace/src/crates/radicle-cli/src/commands/patch.rs
    ERROR: Action failed: command failed: ["cargo", "fmt", "--check"]
    ERROR: command failed: ["cargo", "fmt", "--check"]
    EXIT CODE: 1
    
    ====================
[2025-09-20T11:58:42Z DEBUG ambient_ci::qemu] QEMU exit code 1
ERROR: failed to run actions in QEMU

Ambient stderr

<empty log>