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": 1775031011,
"nanos_since_epoch": 538939618
},
"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": "cargo_fmt"
},
{
"action": "cargo_clippy"
},
{
"action": "cargo_build"
},
{
"action": "cargo_test"
},
{
"action": "shell",
"shell": "make doc\ncp ./*.html doc/*.html /ci/artifacts\ngit reset --hard\ngit clean -fdx\n"
},
{
"action": "custom",
"name": "dch",
"args": {
"debemail": "liw@liw.fi",
"debfullname": "Lars Wirzenius"
}
},
{
"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": {},
"timestamp": {
"secs_since_epoch": 1775031011,
"nanos_since_epoch": 539303052
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "mkdir",
"pathname": "/ci",
"timestamp": {
"secs_since_epoch": 1775031011,
"nanos_since_epoch": 539523254
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "mkdir",
"pathname": "/ci",
"timestamp": {
"secs_since_epoch": 1775031011,
"nanos_since_epoch": 539767949
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "mkdir",
"pathname": "/ci/artifacts",
"timestamp": {
"secs_since_epoch": 1775031011,
"nanos_since_epoch": 539922813
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "mkdir",
"pathname": "/ci/artifacts",
"timestamp": {
"secs_since_epoch": 1775031011,
"nanos_since_epoch": 539948389
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "tar_extract",
"archive": "/dev/vdc",
"directory": "/ci/src",
"timestamp": {
"secs_since_epoch": 1775031011,
"nanos_since_epoch": 540128335
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "tar_extract",
"archive": "/dev/vdc",
"directory": "/ci/src",
"timestamp": {
"secs_since_epoch": 1775031011,
"nanos_since_epoch": 575339172
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "tar_extract",
"archive": "/dev/vdf",
"directory": "/ci/deps",
"timestamp": {
"secs_since_epoch": 1775031011,
"nanos_since_epoch": 575369368
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "tar_extract",
"archive": "/dev/vdf",
"directory": "/ci/deps",
"timestamp": {
"secs_since_epoch": 1775031012,
"nanos_since_epoch": 870337727
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "tar_extract",
"archive": "/dev/vde",
"directory": "/ci/cache",
"timestamp": {
"secs_since_epoch": 1775031012,
"nanos_since_epoch": 870373491
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "tar_extract",
"archive": "/dev/vde",
"directory": "/ci/cache",
"timestamp": {
"secs_since_epoch": 1775031012,
"nanos_since_epoch": 876700523
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "shell",
"shell": "ln -sf /ci /workspace",
"timestamp": {
"secs_since_epoch": 1775031012,
"nanos_since_epoch": 876722127
},
"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": 1775031012,
"nanos_since_epoch": 876733231
},
"log_source": "Plan"
}{
"type": "program_succeeded",
"exit_code": 0,
"stdout": "",
"stderr": "+ ln -sf /ci /workspace\n",
"timestamp": {
"secs_since_epoch": 1775031012,
"nanos_since_epoch": 887988484
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "shell",
"shell": "ln -sf /ci /workspace",
"timestamp": {
"secs_since_epoch": 1775031012,
"nanos_since_epoch": 890570408
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "shell",
"shell": "git config --global user.name 'Ambient CI'",
"timestamp": {
"secs_since_epoch": 1775031012,
"nanos_since_epoch": 892888761
},
"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": 1775031012,
"nanos_since_epoch": 895463739
},
"log_source": "Plan"
}{
"type": "program_succeeded",
"exit_code": 0,
"stdout": "",
"stderr": "+ git config --global user.name 'Ambient CI'\n",
"timestamp": {
"secs_since_epoch": 1775031012,
"nanos_since_epoch": 905825893
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "shell",
"shell": "git config --global user.name 'Ambient CI'",
"timestamp": {
"secs_since_epoch": 1775031012,
"nanos_since_epoch": 908616722
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "shell",
"shell": "git config --global user.email ambient@example.com",
"timestamp": {
"secs_since_epoch": 1775031012,
"nanos_since_epoch": 911189583
},
"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": 1775031012,
"nanos_since_epoch": 913855877
},
"log_source": "Plan"
}{
"type": "program_succeeded",
"exit_code": 0,
"stdout": "",
"stderr": "+ git config --global user.email ambient@example.com\n",
"timestamp": {
"secs_since_epoch": 1775031012,
"nanos_since_epoch": 921759802
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "shell",
"shell": "git config --global user.email ambient@example.com",
"timestamp": {
"secs_since_epoch": 1775031012,
"nanos_since_epoch": 924664630
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "cargo_fmt",
"timestamp": {
"secs_since_epoch": 1775031012,
"nanos_since_epoch": 927405090
},
"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": 1775031012,
"nanos_since_epoch": 929358991
},
"log_source": "Plan"
}{
"type": "program_succeeded",
"exit_code": 0,
"stdout": "cargo 1.94.0 (85eff7c80 2026-01-15)\n",
"stderr": "",
"timestamp": {
"secs_since_epoch": 1775031012,
"nanos_since_epoch": 991141174
},
"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": 1775031012,
"nanos_since_epoch": 993853712
},
"log_source": "Plan"
}{
"type": "program_succeeded",
"exit_code": 0,
"stdout": "clippy 0.1.94 (4a4ef493e3 2026-03-02)\n",
"stderr": "",
"timestamp": {
"secs_since_epoch": 1775031013,
"nanos_since_epoch": 99551794
},
"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": 1775031013,
"nanos_since_epoch": 99590905
},
"log_source": "Plan"
}{
"type": "program_succeeded",
"exit_code": 0,
"stdout": "rustc 1.94.0 (4a4ef493e 2026-03-02)\n",
"stderr": "",
"timestamp": {
"secs_since_epoch": 1775031013,
"nanos_since_epoch": 147048934
},
"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": 1775031013,
"nanos_since_epoch": 147092056
},
"log_source": "Plan"
}{
"type": "program_failed",
"exit_code": 1,
"stdout": "Diff in /ci/src/src/action_impl/gomod.rs:57:\n // the dependencies directory.\n context.set_env(\"GOMODCACHE\", &gomod_dir_str);\n \n- super::spawn_in(context, &[\"go\", \"mod\", \"download\"], tmp.path().to_path_buf())?;\n+ super::spawn_in(\n+ context,\n+ &[\"go\", \"mod\", \"download\"],\n+ tmp.path().to_path_buf(),\n+ )?;\n \n // Set environment variables so the VM plan finds the cached\n // modules without needing network access.\nDiff in /ci/src/src/action_impl/pip.rs:51:\n }\n \n fn requirements_file(&self) -> &str {\n- self.requirements\n- .as_deref()\n- .unwrap_or(DEFAULT_REQUIREMENTS)\n+ self.requirements.as_deref().unwrap_or(DEFAULT_REQUIREMENTS)\n }\n \n fn allow_sdist(&self) -> bool {\n",
"stderr": "",
"timestamp": {
"secs_since_epoch": 1775031013,
"nanos_since_epoch": 374579613
},
"log_source": "Plan"
}{
"type": "action_failed",
"action": "cargo_fmt",
"timestamp": {
"secs_since_epoch": 1775031013,
"nanos_since_epoch": 374616788
},
"log_source": "Plan"
}{
"type": "executor_ends_in_failure",
"exit_code": 1,
"timestamp": {
"secs_since_epoch": 1775031013,
"nanos_since_epoch": 374655513
},
"log_source": "Plan"
}{
"request": "trigger",
"version": 1,
"event_type": "patch",
"repository": {
"id": "rad:zwPaQSTBX8hktn22F6tHAZSFH2Fh",
"name": "ambient-ci",
"description": "Ambient command line tool to run CI projects locally",
"private": false,
"default_branch": "main",
"delegates": [
"did:key:z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV"
]
},
"action": "Created",
"patch": {
"id": "bec667fce1e4ab86cc5a3f2e0f880a6bbb560bb2",
"author": {
"id": "did:key:z6MkvsiybCuk1WDZhh2aXDx7NTiZejKgWZygMNsUuXDMNvVQ",
"alias": "e"
},
"title": "feat: add pip_download and go_mod_download pre-plan actions",
"state": {
"status": "open",
"conflicts": []
},
"before": "c37ec710c1ada18241d70f20e3a8a1e8285da6aa",
"after": "599a08d2f6494cb7221587d619ed6be9c3952253",
"commits": [
"599a08d2f6494cb7221587d619ed6be9c3952253"
],
"target": "c37ec710c1ada18241d70f20e3a8a1e8285da6aa",
"labels": [],
"assignees": [],
"revisions": [
{
"id": "bec667fce1e4ab86cc5a3f2e0f880a6bbb560bb2",
"author": {
"id": "did:key:z6MkvsiybCuk1WDZhh2aXDx7NTiZejKgWZygMNsUuXDMNvVQ",
"alias": "e"
},
"description": "Add two new pre-plan actions for downloading dependencies, following\nthe same pattern as cargo_fetch, npm_get, and deb_get:\n\n- pip_download: copies only the requirements file from the source tree,\n then runs `pip download` to fetch packages into deps/pip/. By default\n only pre-built wheels are downloaded (--only-binary=:all:) to avoid\n executing setup.py. Sets PIP_FIND_LINKS and PIP_NO_INDEX plan env\n vars so the VM installs from local packages offline.\n\n- go_mod_download: copies only go.mod and go.sum from the source tree,\n then runs `go mod download` with GOMODCACHE pointing at deps/gomod/.\n Sets GOMODCACHE and GONOSUMCHECK plan env vars for the VM.\n\nBoth actions follow the security principle of never exposing the full\nsource tree to the package manager during pre-plan, and never executing\nuntrusted project code.\n\nExample .radicle/ambient.yaml for a Python project:\n\n pre_plan:\n - action: pip_download\n plan:\n - action: shell\n shell: |\n pip install --no-index --find-links /ci/deps/pip -r requirements.txt\n python -m pytest\n\nExample for a Go project:\n\n pre_plan:\n - action: go_mod_download\n plan:\n - action: shell\n shell: |\n go build ./...\n go test ./...\n\nCo-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>",
"base": "c37ec710c1ada18241d70f20e3a8a1e8285da6aa",
"oid": "599a08d2f6494cb7221587d619ed6be9c3952253",
"timestamp": 1775030992
}
]
}
}executor from config: /usr/bin/ambient-execute-plan executor from PATH: /usr/bin/ambient-execute-plan run CI for rad:zwPaQSTBX8hktn22F6tHAZSFH2Fh ERROR: CI run failed inside QEMU
<empty log>