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": 1777039006,
"nanos_since_epoch": 840899600
},
"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_test"
},
{
"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": 1777039006,
"nanos_since_epoch": 841219612
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "mkdir",
"pathname": "/ci",
"timestamp": {
"secs_since_epoch": 1777039006,
"nanos_since_epoch": 841278276
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "mkdir",
"pathname": "/ci",
"timestamp": {
"secs_since_epoch": 1777039006,
"nanos_since_epoch": 841734071
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "mkdir",
"pathname": "/ci/artifacts",
"timestamp": {
"secs_since_epoch": 1777039006,
"nanos_since_epoch": 841740011
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "mkdir",
"pathname": "/ci/artifacts",
"timestamp": {
"secs_since_epoch": 1777039006,
"nanos_since_epoch": 841970381
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "tar_extract",
"archive": "/dev/vdc",
"directory": "/ci/src",
"timestamp": {
"secs_since_epoch": 1777039006,
"nanos_since_epoch": 842154996
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "tar_extract",
"archive": "/dev/vdc",
"directory": "/ci/src",
"timestamp": {
"secs_since_epoch": 1777039006,
"nanos_since_epoch": 869975896
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "tar_extract",
"archive": "/dev/vdf",
"directory": "/ci/deps",
"timestamp": {
"secs_since_epoch": 1777039006,
"nanos_since_epoch": 870001099
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "tar_extract",
"archive": "/dev/vdf",
"directory": "/ci/deps",
"timestamp": {
"secs_since_epoch": 1777039009,
"nanos_since_epoch": 536520775
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "tar_extract",
"archive": "/dev/vde",
"directory": "/ci/cache",
"timestamp": {
"secs_since_epoch": 1777039009,
"nanos_since_epoch": 539169445
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "tar_extract",
"archive": "/dev/vde",
"directory": "/ci/cache",
"timestamp": {
"secs_since_epoch": 1777039009,
"nanos_since_epoch": 543342465
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "shell",
"shell": "ln -sf /ci /workspace",
"timestamp": {
"secs_since_epoch": 1777039009,
"nanos_since_epoch": 543370967
},
"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": 1777039009,
"nanos_since_epoch": 543381931
},
"log_source": "Plan"
}{
"type": "program_succeeded",
"exit_code": 0,
"stdout": "",
"stderr": "+ ln -sf /ci /workspace\n",
"timestamp": {
"secs_since_epoch": 1777039009,
"nanos_since_epoch": 556847422
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "shell",
"shell": "ln -sf /ci /workspace",
"timestamp": {
"secs_since_epoch": 1777039009,
"nanos_since_epoch": 556893510
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "shell",
"shell": "git config --global user.name 'Ambient CI'",
"timestamp": {
"secs_since_epoch": 1777039009,
"nanos_since_epoch": 556899798
},
"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": 1777039009,
"nanos_since_epoch": 556909505
},
"log_source": "Plan"
}{
"type": "program_succeeded",
"exit_code": 0,
"stdout": "",
"stderr": "+ git config --global user.name 'Ambient CI'\n",
"timestamp": {
"secs_since_epoch": 1777039009,
"nanos_since_epoch": 597871000
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "shell",
"shell": "git config --global user.name 'Ambient CI'",
"timestamp": {
"secs_since_epoch": 1777039009,
"nanos_since_epoch": 597985108
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "shell",
"shell": "git config --global user.email ambient@example.com",
"timestamp": {
"secs_since_epoch": 1777039009,
"nanos_since_epoch": 598325763
},
"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": 1777039009,
"nanos_since_epoch": 598337869
},
"log_source": "Plan"
}{
"type": "program_succeeded",
"exit_code": 0,
"stdout": "",
"stderr": "+ git config --global user.email ambient@example.com\n",
"timestamp": {
"secs_since_epoch": 1777039009,
"nanos_since_epoch": 601393779
},
"log_source": "Plan"
}{
"type": "action_succeeded",
"action": "shell",
"shell": "git config --global user.email ambient@example.com",
"timestamp": {
"secs_since_epoch": 1777039009,
"nanos_since_epoch": 601427911
},
"log_source": "Plan"
}{
"type": "execute_action",
"action": "cargo_fmt",
"timestamp": {
"secs_since_epoch": 1777039009,
"nanos_since_epoch": 601432405
},
"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": 1777039009,
"nanos_since_epoch": 601692323
},
"log_source": "Plan"
}{
"type": "program_succeeded",
"exit_code": 0,
"stdout": "cargo 1.94.0 (85eff7c80 2026-01-15)\n",
"stderr": "",
"timestamp": {
"secs_since_epoch": 1777039009,
"nanos_since_epoch": 662996215
},
"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": 1777039009,
"nanos_since_epoch": 665816104
},
"log_source": "Plan"
}{
"type": "program_succeeded",
"exit_code": 0,
"stdout": "clippy 0.1.94 (4a4ef493e3 2026-03-02)\n",
"stderr": "",
"timestamp": {
"secs_since_epoch": 1777039009,
"nanos_since_epoch": 773920039
},
"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": 1777039009,
"nanos_since_epoch": 776770416
},
"log_source": "Plan"
}{
"type": "program_succeeded",
"exit_code": 0,
"stdout": "rustc 1.94.0 (4a4ef493e 2026-03-02)\n",
"stderr": "",
"timestamp": {
"secs_since_epoch": 1777039009,
"nanos_since_epoch": 822124528
},
"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": 1777039009,
"nanos_since_epoch": 822167943
},
"log_source": "Plan"
}{
"type": "program_failed",
"exit_code": 1,
"stdout": "Diff in /ci/src/src/bin/rad-artifact.rs:474:\n redacted,\n all_authors,\n };\n- let show =\n- radicle_artifact::display::Release::new(id, &release, aliases, filters, title);\n+ let show = radicle_artifact::display::Release::new(id, &release, aliases, filters, title);\n if use_pretty(pretty, json) {\n println!(\"{}\", show.pretty(verbose));\n } else {\nDiff in /ci/src/src/display.rs:207:\n // Redaction filter: hide artifacts redacted by a trusted\n // party (the author itself or any repository delegate).\n if !filters.redacted {\n- let hidden = artifact.redactions().keys().any(|did| {\n- *did == *artifact.author() || filters.delegates.contains(did)\n- });\n+ let hidden = artifact\n+ .redactions()\n+ .keys()\n+ .any(|did| *did == *artifact.author() || filters.delegates.contains(did));\n if hidden {\n return false;\n }\nDiff in /ci/src/src/display.rs:312:\n artifact.cid.clone()\n } else {\n // Truncate CID to first 6 and last 6 visible chars for column width.\n- format!(\"{}…{}\", &artifact.cid[..6], &artifact.cid[artifact.cid.len() - 6..])\n+ format!(\n+ \"{}…{}\",\n+ &artifact.cid[..6],\n+ &artifact.cid[artifact.cid.len() - 6..]\n+ )\n };\n let author = format_did(&artifact.author, &artifact.author_alias, verbose);\n // BTreeMap keeps the summary in a stable, scheme-sorted order.\nDiff in /ci/src/src/display.rs:326:\n .map(|(scheme, count)| format!(\"{scheme}: {count}\"))\n .collect::<Vec<_>>()\n .join(\", \");\n- rows.push(vec![cid_cell, author, artifact.name.clone(), locations_cell]);\n+ rows.push(vec![\n+ cid_cell,\n+ author,\n+ artifact.name.clone(),\n+ locations_cell,\n+ ]);\n \n if !artifact.attestations.is_empty() {\n let nodes: Vec<_> = artifact\nDiff in /ci/src/src/lib.rs:545:\n /// users concurrently created the release before syncing. Retrieval should\n /// union locations across all of them, so callers building a fetch plan\n /// should aggregate across the returned releases.\n- pub fn find_by_cid(\n- &self,\n- cid: &Cid,\n- ) -> Result<Vec<(ReleaseId, Release)>, cob::store::Error> {\n+ pub fn find_by_cid(&self, cid: &Cid) -> Result<Vec<(ReleaseId, Release)>, cob::store::Error> {\n let mut out = Vec::new();\n for result in self.all()? {\n let (id, release) = result?;\nDiff in /ci/src/src/lib.rs:1894:\n let cid = test_cid(1);\n {\n let mut r = releases.create(oid, &alice.signer).unwrap();\n- r.add_artifact(cid, \"alice-built\".into(), &alice.signer).unwrap();\n+ r.add_artifact(cid, \"alice-built\".into(), &alice.signer)\n+ .unwrap();\n }\n {\n let mut r = releases.create(oid, &bob.signer).unwrap();\nDiff in /ci/src/src/lib.rs:1901:\n- r.add_artifact(cid, \"bob-built\".into(), &bob.signer).unwrap();\n+ r.add_artifact(cid, \"bob-built\".into(), &bob.signer)\n+ .unwrap();\n }\n \n let found = releases.find_by_cid(&cid).unwrap();\nDiff in /ci/src/src/share/endpoint.rs:76:\n \n #[test]\n fn default_is_radworks() {\n- assert!(matches!(EndpointPreset::default(), EndpointPreset::Radworks));\n+ assert!(matches!(\n+ EndpointPreset::default(),\n+ EndpointPreset::Radworks\n+ ));\n }\n }\n \nDiff in /ci/src/src/share/mod.rs:32:\n // Re-export key types for convenience.\n pub use cid_utils::{\n artifact_kind, blake3_hash_to_cid, canonical_walk, cid_to_blake3_hash, compute_blob_cid,\n- compute_content_id,\n- verify_cid, verify_cid_file, ArtifactKind, BLAKE3_HASHSEQ_CODEC, HASH_CODE_BLAKE3, RAW_CODEC,\n+ compute_content_id, verify_cid, verify_cid_file, ArtifactKind, BLAKE3_HASHSEQ_CODEC,\n+ HASH_CODE_BLAKE3, RAW_CODEC,\n };\n pub use endpoint::EndpointPreset;\n pub use fetch::{download, download_collection, Location};\n",
"stderr": "",
"timestamp": {
"secs_since_epoch": 1777039010,
"nanos_since_epoch": 20873443
},
"log_source": "Plan"
}{
"type": "action_failed",
"action": "cargo_fmt",
"timestamp": {
"secs_since_epoch": 1777039010,
"nanos_since_epoch": 71011834
},
"log_source": "Plan"
}{
"type": "executor_ends_in_failure",
"exit_code": 1,
"timestamp": {
"secs_since_epoch": 1777039010,
"nanos_since_epoch": 71642917
},
"log_source": "Plan"
}{
"request": "trigger",
"version": 1,
"event_type": "patch",
"repository": {
"id": "rad:z4VYyJ9KuwMNkXGQnmKuGPGKw3inv",
"name": "radicle-artifact",
"description": "A Radicle Collaborative Object (COB) for content-addressed release artifacts and their discovery locations",
"private": false,
"default_branch": "main",
"delegates": [
"did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm"
]
},
"action": "Updated",
"patch": {
"id": "946e92f12a73f0c70413dc02a91fa52d54a5be48",
"author": {
"id": "did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm",
"alias": "2color"
},
"title": "add toy CI plan for Ambient to see if this can work at all",
"state": {
"status": "open",
"conflicts": []
},
"before": "e307711348c34582f8bc88eacd2170f537490959",
"after": "0cfc62c32168f7c44a47df93f97c1511bac625fd",
"commits": [
"0cfc62c32168f7c44a47df93f97c1511bac625fd",
"15f1c1bc41ef269888703c431297858056397687",
"f7237fa074bb4b836cf66c6d23295e16bc8c316d",
"7f6ddfa8cf9f7ee6d6c09895045b633e8a300e0c"
],
"target": "e307711348c34582f8bc88eacd2170f537490959",
"labels": [],
"assignees": [],
"revisions": [
{
"id": "946e92f12a73f0c70413dc02a91fa52d54a5be48",
"author": {
"id": "did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm",
"alias": "2color"
},
"description": "",
"base": "f7a4921ae7da4a033284005220f349b33fe240c8",
"oid": "6b150041ef94ad09482cd2eb44ec54966bcb548f",
"timestamp": 1776962384
},
{
"id": "bbb91de69adf46436ddc984e5681663c7c984321",
"author": {
"id": "did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm",
"alias": "2color"
},
"description": "ci: add cargo fmt and test to ambient",
"base": "f7a4921ae7da4a033284005220f349b33fe240c8",
"oid": "4718d58bb47a77579af049f81cc30eb1b6c0d3dd",
"timestamp": 1777038847
},
{
"id": "746da10fe48b602a0a33339c98b894b3edd35b27",
"author": {
"id": "did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm",
"alias": "2color"
},
"description": "rebase on main",
"base": "e307711348c34582f8bc88eacd2170f537490959",
"oid": "0cfc62c32168f7c44a47df93f97c1511bac625fd",
"timestamp": 1777038998
}
]
}
}executor from config: /usr/bin/ambient-execute-plan executor from PATH: /usr/bin/ambient-execute-plan run CI for rad:z4VYyJ9KuwMNkXGQnmKuGPGKw3inv ERROR: CI run failed inside QEMU
<empty log>