These raw log messages are meant to help Ambient developers figure out problems. You can ignore them.
{
"type": "executor_starts",
"name": "ambient-execute-plan",
"version": "0.14.0@c37ec71",
"timestamp": {
"secs_since_epoch": 1781904867,
"nanos_since_epoch": 820495190
},
"log_source": "Plan"
}{
"type": "runnable_plan",
"steps": [
{
"action": "mkdir",
"pathname": "/ci"
},
{
"action": "mkdir",
"pathname": "/ci/artifacts"
},
{
"action": "tar_extract",
"archive": "/dev/vdc",
"directory": "/ci/src"
},
{
"action": "tar_extract",
"archive": "/dev/vdf",
"directory": "/ci/deps"
},
{
"action": "tar_extract",
"archive": "/dev/vde",
"directory": "/ci/cache"
},
{
"action": "shell",
"shell": "ln -sf /ci /workspace"
},
{
"action": "shell",
"shell": "git config --global user.name 'Ambient CI'"
},
{
"action": "shell",
"shell": "git config --global user.email ambient@example.com"
},
{
"action": "shell",
"shell": "sed -i /components/d rust-toolchain.toml\n\n# Commit this to git so that the Debian package building doesn't\n# see changes outside the debian directory.\ngit config set user.name \"Ambient CI\"\ngit config set user.email \"ambient@example.com\"\ngit commit -m \"remove components from toolchain file\" rust-toolchain.toml\n"
},
{
"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\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 --all-features\n"
},
{
"action": "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"
},
{
"action": "deb",
"packages": "."
},
{
"action": "tar_create",
"archive": "/dev/vde",
"directory": "/ci/cache"
},
{
"action": "tar_create",
"archive": "/dev/vdd",
"directory": "/ci/artifacts"
}
],
"executor_drive": "/dev/vdb",
"source_drive": "/dev/vdc",
"artifact_drive": "/dev/vdd",
"cache_drive": "/dev/vde",
"deps_drive": "/dev/vdf",
"workspace_dir": "/ci",
"source_dir": "/ci/src",
"deps_dir": "/ci/deps",
"cache_dir": "/ci/cache",
"artifacts_dir": "/ci/artifacts",
"envs": {
"RUSTUP_HOME": [
47,
99,
105,
47,
100,
101,
112,
115,
47,
114,
117,
115,
116,
117,
112
]
},
"timestamp": {
"secs_since_epoch": 1781904867,
"nanos_since_epoch": 820890700
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "mkdir",
"pathname": "/ci",
"timestamp": {
"secs_since_epoch": 1781904867,
"nanos_since_epoch": 821080531
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "mkdir",
"pathname": "/ci",
"timestamp": {
"secs_since_epoch": 1781904867,
"nanos_since_epoch": 821646494
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "mkdir",
"pathname": "/ci/artifacts",
"timestamp": {
"secs_since_epoch": 1781904867,
"nanos_since_epoch": 821729054
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "mkdir",
"pathname": "/ci/artifacts",
"timestamp": {
"secs_since_epoch": 1781904867,
"nanos_since_epoch": 821760716
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "tar_extract",
"archive": "/dev/vdc",
"directory": "/ci/src",
"timestamp": {
"secs_since_epoch": 1781904867,
"nanos_since_epoch": 821936230
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "tar_extract",
"archive": "/dev/vdc",
"directory": "/ci/src",
"timestamp": {
"secs_since_epoch": 1781904868,
"nanos_since_epoch": 22734108
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "tar_extract",
"archive": "/dev/vdf",
"directory": "/ci/deps",
"timestamp": {
"secs_since_epoch": 1781904868,
"nanos_since_epoch": 25362962
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "tar_extract",
"archive": "/dev/vdf",
"directory": "/ci/deps",
"timestamp": {
"secs_since_epoch": 1781904876,
"nanos_since_epoch": 861057380
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "tar_extract",
"archive": "/dev/vde",
"directory": "/ci/cache",
"timestamp": {
"secs_since_epoch": 1781904876,
"nanos_since_epoch": 861109590
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "tar_extract",
"archive": "/dev/vde",
"directory": "/ci/cache",
"timestamp": {
"secs_since_epoch": 1781904892,
"nanos_since_epoch": 699770675
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "shell",
"shell": "ln -sf /ci /workspace",
"timestamp": {
"secs_since_epoch": 1781904892,
"nanos_since_epoch": 699833101
},
"log_source": "Plan"
}{
"type": "start_program",
"argv": [
{
"Unix": [
98,
97,
115,
104
]
},
{
"Unix": [
45,
99
]
},
{
"Unix": [
115,
101,
116,
32,
45,
120,
101,
117,
111,
32,
112,
105,
112,
101,
102,
97,
105,
108,
10,
108,
110,
32,
45,
115,
102,
32,
47,
99,
105,
32,
47,
119,
111,
114,
107,
115,
112,
97,
99,
101,
10
]
}
],
"timestamp": {
"secs_since_epoch": 1781904892,
"nanos_since_epoch": 699845465
},
"log_source": "Plan"
}{
"type": "program_succeeded",
"exit_code": 0,
"stdout": "",
"stderr": "+ ln -sf /ci /workspace\n",
"timestamp": {
"secs_since_epoch": 1781904892,
"nanos_since_epoch": 713840293
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "shell",
"shell": "ln -sf /ci /workspace",
"timestamp": {
"secs_since_epoch": 1781904892,
"nanos_since_epoch": 716582889
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "shell",
"shell": "git config --global user.name 'Ambient CI'",
"timestamp": {
"secs_since_epoch": 1781904892,
"nanos_since_epoch": 719134672
},
"log_source": "Plan"
}{
"type": "start_program",
"argv": [
{
"Unix": [
98,
97,
115,
104
]
},
{
"Unix": [
45,
99
]
},
{
"Unix": [
115,
101,
116,
32,
45,
120,
101,
117,
111,
32,
112,
105,
112,
101,
102,
97,
105,
108,
10,
103,
105,
116,
32,
99,
111,
110,
102,
105,
103,
32,
45,
45,
103,
108,
111,
98,
97,
108,
32,
117,
115,
101,
114,
46,
110,
97,
109,
101,
32,
39,
65,
109,
98,
105,
101,
110,
116,
32,
67,
73,
39,
10
]
}
],
"timestamp": {
"secs_since_epoch": 1781904892,
"nanos_since_epoch": 721929108
},
"log_source": "Plan"
}{
"type": "program_succeeded",
"exit_code": 0,
"stdout": "",
"stderr": "+ git config --global user.name 'Ambient CI'\n",
"timestamp": {
"secs_since_epoch": 1781904892,
"nanos_since_epoch": 733453379
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "shell",
"shell": "git config --global user.name 'Ambient CI'",
"timestamp": {
"secs_since_epoch": 1781904892,
"nanos_since_epoch": 736510595
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "shell",
"shell": "git config --global user.email ambient@example.com",
"timestamp": {
"secs_since_epoch": 1781904892,
"nanos_since_epoch": 739278586
},
"log_source": "Plan"
}{
"type": "start_program",
"argv": [
{
"Unix": [
98,
97,
115,
104
]
},
{
"Unix": [
45,
99
]
},
{
"Unix": [
115,
101,
116,
32,
45,
120,
101,
117,
111,
32,
112,
105,
112,
101,
102,
97,
105,
108,
10,
103,
105,
116,
32,
99,
111,
110,
102,
105,
103,
32,
45,
45,
103,
108,
111,
98,
97,
108,
32,
117,
115,
101,
114,
46,
101,
109,
97,
105,
108,
32,
97,
109,
98,
105,
101,
110,
116,
64,
101,
120,
97,
109,
112,
108,
101,
46,
99,
111,
109,
10
]
}
],
"timestamp": {
"secs_since_epoch": 1781904892,
"nanos_since_epoch": 741961487
},
"log_source": "Plan"
}{
"type": "program_succeeded",
"exit_code": 0,
"stdout": "",
"stderr": "+ git config --global user.email ambient@example.com\n",
"timestamp": {
"secs_since_epoch": 1781904892,
"nanos_since_epoch": 749883201
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "shell",
"shell": "git config --global user.email ambient@example.com",
"timestamp": {
"secs_since_epoch": 1781904892,
"nanos_since_epoch": 752772634
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "shell",
"shell": "sed -i /components/d rust-toolchain.toml\n\n# Commit this to git so that the Debian package building doesn't\n# see changes outside the debian directory.\ngit config set user.name \"Ambient CI\"\ngit config set user.email \"ambient@example.com\"\ngit commit -m \"remove components from toolchain file\" rust-toolchain.toml\n",
"timestamp": {
"secs_since_epoch": 1781904892,
"nanos_since_epoch": 755495722
},
"log_source": "Plan"
}{
"type": "start_program",
"argv": [
{
"Unix": [
98,
97,
115,
104
]
},
{
"Unix": [
45,
99
]
},
{
"Unix": [
115,
101,
116,
32,
45,
120,
101,
117,
111,
32,
112,
105,
112,
101,
102,
97,
105,
108,
10,
115,
101,
100,
32,
45,
105,
32,
47,
99,
111,
109,
112,
111,
110,
101,
110,
116,
115,
47,
100,
32,
114,
117,
115,
116,
45,
116,
111,
111,
108,
99,
104,
97,
105,
110,
46,
116,
111,
109,
108,
10,
10,
35,
32,
67,
111,
109,
109,
105,
116,
32,
116,
104,
105,
115,
32,
116,
111,
32,
103,
105,
116,
32,
115,
111,
32,
116,
104,
97,
116,
32,
116,
104,
101,
32,
68,
101,
98,
105,
97,
110,
32,
112,
97,
99,
107,
97,
103,
101,
32,
98,
117,
105,
108,
100,
105,
110,
103,
32,
100,
111,
101,
115,
110,
39,
116,
10,
35,
32,
115,
101,
101,
32,
99,
104,
97,
110,
103,
101,
115,
32,
111,
117,
116,
115,
105,
100,
101,
32,
116,
104,
101,
32,
100,
101,
98,
105,
97,
110,
32,
100,
105,
114,
101,
99,
116,
111,
114,
121,
46,
10,
103,
105,
116,
32,
99,
111,
110,
102,
105,
103,
32,
115,
101,
116,
32,
117,
115,
101,
114,
46,
110,
97,
109,
101,
32,
34,
65,
109,
98,
105,
101,
110,
116,
32,
67,
73,
34,
10,
103,
105,
116,
32,
99,
111,
110,
102,
105,
103,
32,
115,
101,
116,
32,
117,
115,
101,
114,
46,
101,
109,
97,
105,
108,
32,
34,
97,
109,
98,
105,
101,
110,
116,
64,
101,
120,
97,
109,
112,
108,
101,
46,
99,
111,
109,
34,
10,
103,
105,
116,
32,
99,
111,
109,
109,
105,
116,
32,
45,
109,
32,
34,
114,
101,
109,
111,
118,
101,
32,
99,
111,
109,
112,
111,
110,
101,
110,
116,
115,
32,
102,
114,
111,
109,
32,
116,
111,
111,
108,
99,
104,
97,
105,
110,
32,
102,
105,
108,
101,
34,
32,
114,
117,
115,
116,
45,
116,
111,
111,
108,
99,
104,
97,
105,
110,
46,
116,
111,
109,
108,
10,
10
]
}
],
"timestamp": {
"secs_since_epoch": 1781904892,
"nanos_since_epoch": 761698847
},
"log_source": "Plan"
}{
"type": "program_succeeded",
"exit_code": 0,
"stdout": "[detached HEAD d71d92b1b] remove components from toolchain file\n 1 file changed, 1 deletion(-)\n",
"stderr": "+ sed -i /components/d rust-toolchain.toml\n+ git config set user.name 'Ambient CI'\n+ git config set user.email ambient@example.com\n+ git commit -m 'remove components from toolchain file' rust-toolchain.toml\n",
"timestamp": {
"secs_since_epoch": 1781904892,
"nanos_since_epoch": 880176832
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "shell",
"shell": "sed -i /components/d rust-toolchain.toml\n\n# Commit this to git so that the Debian package building doesn't\n# see changes outside the debian directory.\ngit config set user.name \"Ambient CI\"\ngit config set user.email \"ambient@example.com\"\ngit commit -m \"remove components from toolchain file\" rust-toolchain.toml\n",
"timestamp": {
"secs_since_epoch": 1781904892,
"nanos_since_epoch": 886465169
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "cargo_fmt",
"timestamp": {
"secs_since_epoch": 1781904892,
"nanos_since_epoch": 893227466
},
"log_source": "Plan"
}{
"type": "start_program",
"argv": [
{
"Unix": [
99,
97,
114,
103,
111
]
},
{
"Unix": [
45,
45,
118,
101,
114,
115,
105,
111,
110
]
}
],
"timestamp": {
"secs_since_epoch": 1781904892,
"nanos_since_epoch": 895632825
},
"log_source": "Plan"
}{
"type": "program_succeeded",
"exit_code": 0,
"stdout": "cargo 1.95.0 (f2d3ce0bd 2026-03-21)\n",
"stderr": "",
"timestamp": {
"secs_since_epoch": 1781904892,
"nanos_since_epoch": 965831014
},
"log_source": "Plan"
}{
"type": "start_program",
"argv": [
{
"Unix": [
99,
97,
114,
103,
111
]
},
{
"Unix": [
99,
108,
105,
112,
112,
121
]
},
{
"Unix": [
45,
45,
118,
101,
114,
115,
105,
111,
110
]
}
],
"timestamp": {
"secs_since_epoch": 1781904892,
"nanos_since_epoch": 969264124
},
"log_source": "Plan"
}{
"type": "program_succeeded",
"exit_code": 0,
"stdout": "clippy 0.1.95 (59807616e1 2026-04-14)\n",
"stderr": "",
"timestamp": {
"secs_since_epoch": 1781904893,
"nanos_since_epoch": 23947251
},
"log_source": "Plan"
}{
"type": "start_program",
"argv": [
{
"Unix": [
114,
117,
115,
116,
99
]
},
{
"Unix": [
45,
45,
118,
101,
114,
115,
105,
111,
110
]
}
],
"timestamp": {
"secs_since_epoch": 1781904893,
"nanos_since_epoch": 27390313
},
"log_source": "Plan"
}{
"type": "program_succeeded",
"exit_code": 0,
"stdout": "rustc 1.95.0 (59807616e 2026-04-14)\n",
"stderr": "",
"timestamp": {
"secs_since_epoch": 1781904893,
"nanos_since_epoch": 46880547
},
"log_source": "Plan"
}{
"type": "start_program",
"argv": [
{
"Unix": [
99,
97,
114,
103,
111
]
},
{
"Unix": [
102,
109,
116
]
},
{
"Unix": [
45,
45,
99,
104,
101,
99,
107
]
}
],
"timestamp": {
"secs_since_epoch": 1781904893,
"nanos_since_epoch": 49670025
},
"log_source": "Plan"
}{
"type": "program_failed",
"exit_code": 1,
"stdout": "Diff in /ci/src/crates/radicle-protocol/src/fetcher/state.rs:215:\n // and the repo was re-fetched from elsewhere. Clearing the entry on a mismatch would\n // drop the wrong (newer) fetch, so we leave it and report `NotFound`.\n match self.active.get(&rid) {\n- Some(ActiveFetch { from: active_from, .. }) if *active_from == from => {\n- match self.active.remove(&rid) {\n- Some(ActiveFetch { from, refs }) => {\n- event::Fetched::Completed { from, rid, refs }\n- }\n- None => event::Fetched::NotFound { from, rid },\n- }\n- }\n+ Some(ActiveFetch {\n+ from: active_from, ..\n+ }) if *active_from == from => match self.active.remove(&rid) {\n+ Some(ActiveFetch { from, refs }) => event::Fetched::Completed { from, rid, refs },\n+ None => event::Fetched::NotFound { from, rid },\n+ },\n _ => event::Fetched::NotFound { from, rid },\n }\n }\n",
"stderr": "",
"timestamp": {
"secs_since_epoch": 1781904893,
"nanos_since_epoch": 858843642
},
"log_source": "Plan"
}{
"type": "action_failed",
"action": "cargo_fmt",
"timestamp": {
"secs_since_epoch": 1781904893,
"nanos_since_epoch": 875112805
},
"log_source": "Plan"
}{
"type": "executor_ends_in_failure",
"exit_code": 1,
"timestamp": {
"secs_since_epoch": 1781904893,
"nanos_since_epoch": 878700141
},
"log_source": "Plan"
}{
"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": "9e557d1ad972dab998c920a82122de8e8b921c73",
"author": {
"id": "did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm",
"alias": "2color"
},
"title": "node/wire: Always report fetch results to the service",
"state": {
"status": "open",
"conflicts": []
},
"before": "07f748475beacd41463ee5ebc0d7a93539ab8f55",
"after": "d513158566da0f4d942206ea6503c0e317f23612",
"commits": [
"d513158566da0f4d942206ea6503c0e317f23612",
"2ad6cc40f14f79b3769dc00b8e8840ce2de1a264",
"1083e2f0dd02a08e644d6779878b9a887aff38fe",
"ff9f9f6bee3caca9b514255e32b25ea1440ad372",
"e86272264ff5aa728b411a4bdb2ae5a277077b23",
"2ad59beb7306ee77ba82952171dffa0323d04563"
],
"target": "07f748475beacd41463ee5ebc0d7a93539ab8f55",
"labels": [],
"assignees": [],
"revisions": [
{
"id": "9e557d1ad972dab998c920a82122de8e8b921c73",
"author": {
"id": "did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm",
"alias": "2color"
},
"description": "A fetch result was discarded whenever the peer was no longer `Connected`\nby the time the worker reported, and queued fetches were dropped silently\nwhen the peer disconnected before the `Io::Fetch` was processed. In both\ncases the fetcher's `active` entry for the repo was never cleared. Since\nthat entry is keyed by repo, it blocked the repository from being fetched\nfrom any node until the process restarted.\n\n- Report the result in `worker_result` even when the peer is no longer\n connected, instead of returning early\n- Report a failed fetch when an `Io::Fetch` is dropped for a disconnected\n peer, so the active entry is cleared",
"base": "07f748475beacd41463ee5ebc0d7a93539ab8f55",
"oid": "2ad6cc40f14f79b3769dc00b8e8840ce2de1a264",
"timestamp": 1781902413
},
{
"id": "b3845fd2dcbbe292ae5ec764521c225414f37676",
"author": {
"id": "did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm",
"alias": "2color"
},
"description": "fetcher: Guard fetched against stale node results\n\n- Clear active[rid] only when the result's node matches the node that\n started the fetch; mismatched results now report NotFound\n- Prevent a late completion from a disconnected peer clearing a newer\n fetch for the same repo started by a different node\n- Add test covering the stale-from mismatch path",
"base": "07f748475beacd41463ee5ebc0d7a93539ab8f55",
"oid": "44e7cbded222bc0bd45ba246eff793ba2188d152",
"timestamp": 1781904439
},
{
"id": "4baa4f9815c32935c5f08cae1c4737da8783947c",
"author": {
"id": "did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm",
"alias": "2color"
},
"description": "",
"base": "07f748475beacd41463ee5ebc0d7a93539ab8f55",
"oid": "d513158566da0f4d942206ea6503c0e317f23612",
"timestamp": 1781904594
}
]
}
}executor from config: /usr/bin/ambient-execute-plan executor from PATH: /usr/bin/ambient-execute-plan run CI for rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5 ERROR: CI run failed inside QEMU
<empty log>