{
"request": "trigger",
"version": 1,
"event_type": "patch",
"repository": {
"id": "rad:zwTxygwuz5LDGBq255RA2CbNGrz8",
"name": "radicle-ci-broker",
"description": "Radicle CI broker",
"private": false,
"default_branch": "main",
"delegates": [
"did:key:z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV",
"did:key:z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT"
]
},
"action": "Created",
"patch": {
"id": "a2c5c6fd74c8915ae431ed00df35bedc6ae0a993",
"author": {
"id": "did:key:z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV",
"alias": "liw"
},
"title": "chore: git ignore the inst directory",
"state": {
"status": "open",
"conflicts": []
},
"before": "884dda7794a7fba46da56ac16d9f862980749459",
"after": "f80dbd95eb119771643554de4cfd00b2cf2d29e2",
"commits": [
"f80dbd95eb119771643554de4cfd00b2cf2d29e2",
"8632bed993330ca02fa88635ef28b3469bf60734"
],
"target": "884dda7794a7fba46da56ac16d9f862980749459",
"labels": [],
"assignees": [],
"revisions": [
{
"id": "a2c5c6fd74c8915ae431ed00df35bedc6ae0a993",
"author": {
"id": "did:key:z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV",
"alias": "liw"
},
"description": "test: install binaries in the inst directory, run from there\n\nThis avoids having to determine the rigth path in the Cargo target\ndirectory, which is tricky when --target is used.",
"base": "884dda7794a7fba46da56ac16d9f862980749459",
"oid": "f80dbd95eb119771643554de4cfd00b2cf2d29e2",
"timestamp": 1787584211
}
]
}
}Project {
source: TildePathBuf {
path: "src",
},
expanded_source: "/tmp/.tmp2ZiHrZ/src",
image: TildePathBuf {
path: "/home/_rad/ambient.qcow2",
},
expanded_image: "/home/_rad/ambient.qcow2",
pre_plan: Some(
[
CargoFetch,
],
),
plan: Some(
[
CargoClippy,
Shell {
shell: "export CARGO_TARGET_DIR=/ci/cache\nexport CARGO_HOME=/ci/deps\nexport HOME=/root\nexport PATH=\"/root/.cargo/bin:/root/.radicle/bin:$PATH\"\n\n# Check that `rad` is there.\nrad --help >/dev/null || (echo rad is not there; exit 1)\n\ncargo doc --workspace --no-deps\n\n# FIXME: We can't run upgrade tests from older versions because\n# Ambient only fetches dependencies for the current version.\n# Thus, we can't build the old versions. This is an Ambient\n# problem that we can't fix here. So we skip the upgrade tests.\nexport RAD_PASSPHRAE=secret\nrad auth --alias ambient\nenv\ncargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2\n\nsubplot docgen ci-broker.subplot -o doc/ci-broker.html\nsubplot docgen doc/userguide.subplot -o doc/userguide.html\nmake -C doc\ncp doc/*.html /ci/artifacts/rsync/.\n",
},
Custom(
Custom {
name: "dch",
args: {
"debfullname": String("Lars Wirzenius"),
"debemail": String("liw@liw.fi"),
},
},
),
Deb2,
],
),
post_plan: Some(
[],
),
artifact_max_size: None,
cache_max_size: None,
dependencies_max_size: None,
}
run CI for rad:zwTxygwuz5LDGBq255RA2CbNGrz8
ERROR: CI run failed inside QEMU
<empty log>
ambient-execute-plan0.18.0@5360d3fsteps:
- action: mkdir
pathname: /ci
- action: mkdir
pathname: /ci/artifacts
- action: mkdir
pathname: /ci/artifacts/debian
- action: mkdir
pathname: /ci/artifacts/rsync
- action: mkdir
pathname: /ci/secrets
- action: mkdir
pathname: /ci/deps
- 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: tar_extract
archive: /dev/vdd
directory: /ci/artifacts
- action: tar_extract
archive: /dev/vdg
directory: /ci/secrets
- action: shell
shell: ln -sf /ci /workspace
- action: create_file
filename: /root/.ssh/config
content: "Host *\nStrictHostKeyChecking accept-new\nIdentityFile /ci/secrets/ssh_key\n "
overwrite: true
- action: wait_online
- action: network_diagnostics
- action: cargo_fetch
- action: tar_create
archive: /dev/vde
directory: /ci/cache
- action: tar_create
archive: /dev/vdd
directory: /ci/artifacts
- action: tar_create
archive: /dev/vdf
directory: /ci/deps
executor_drive: /dev/vdb
source_drive: /dev/vdc
artifact_drive: /dev/vdd
cache_drive: /dev/vde
deps_drive: /dev/vdf
secrets_drive: null
workspace_dir: /ci
source_dir: /ci/src
deps_dir: /ci/deps
cache_dir: /ci/cache
artifacts_dir: /ci/artifacts
secrets_dir: null
envs: {}
- action: mkdir pathname: /ci
- action: mkdir pathname: /ci/artifacts
- action: mkdir pathname: /ci/artifacts/debian
- action: mkdir pathname: /ci/artifacts/rsync
- action: mkdir pathname: /ci/secrets
- action: mkdir pathname: /ci/deps
- 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: tar_extract archive: /dev/vdd directory: /ci/artifacts
- action: tar_extract archive: /dev/vdg directory: /ci/secrets
+ ln -sf /ci /workspace
- action: shell shell: ln -sf /ci /workspace
- action: create_file filename: /root/.ssh/config content: "Host *\nStrictHostKeyChecking accept-new\nIdentityFile /ci/secrets/ssh_key\n " overwrite: true
● systemd-networkd-wait-online.service - Wait for Network to be Configured
Loaded: loaded (/usr/lib/systemd/system/systemd-networkd-wait-online.service; enabled; preset: enabled)
Active: active (exited) since Mon 2026-08-24 15:10:35 UTC; 20ms ago
Invocation: 05262b9796b1440fa6dd5a0767dda8d2
Docs: man:systemd-networkd-wait-online.service(8)
Process: 429 ExecStart=/usr/lib/systemd/systemd-networkd-wait-online (code=exited, status=0/SUCCESS)
Main PID: 429 (code=exited, status=0/SUCCESS)
Mem peak: 1.8M
CPU: 7ms
Aug 24 15:10:35 ambient-dev systemd[1]: Starting systemd-networkd-wait-online.service - Wait for Network to be Configured...
Aug 24 15:10:35 ambient-dev systemd[1]: Finished systemd-networkd-wait-online.service - Wait for Network to be Configured.
● systemd-networkd.service - Network Configuration
Loaded: loaded (/usr/lib/systemd/system/systemd-networkd.service; enabled; preset: enabled)
Active: active (running) since Mon 2026-08-24 15:10:27 UTC; 8s ago
Invocation: 63fc0c9726244ad8b22dbf85d611ca76
TriggeredBy: ● systemd-networkd.socket
Docs: man:systemd-networkd.service(8)
man:org.freedesktop.network1(5)
Main PID: 323 (systemd-network)
Status: "Processing requests..."
Tasks: 1 (limit: 13288)
FD Store: 0 (limit: 512)
Memory: 3.8M (peak: 13.3M)
CPU: 81ms
CGroup: /system.slice/systemd-networkd.service
└─323 /usr/lib/systemd/systemd-networkd
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: lo: Link UP
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: lo: Gained carrier
Aug 24 15:10:27 ambient-dev systemd[1]: Started systemd-networkd.service - Network Configuration.
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Found matching .network file, based on potentially unpredictable interface name: /etc/systemd/network/external.network
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Configuring with /etc/systemd/network/external.network.
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Link UP
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Gained carrier
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Found matching .network file, based on potentially unpredictable interface name: /etc/systemd/network/external.network
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: DHCPv4 address 10.0.2.15/24, gateway 10.0.2.2 acquired from 10.0.2.2
Aug 24 15:10:28 ambient-dev systemd-networkd[323]: eth0: Gained IPv6LL
● systemd-networkd-wait-online.service - Wait for Network to be Configured
Loaded: loaded (/usr/lib/systemd/system/systemd-networkd-wait-online.service; enabled; preset: enabled)
Active: active (exited) since Mon 2026-08-24 15:10:35 UTC; 89ms ago
Invocation: 05262b9796b1440fa6dd5a0767dda8d2
Docs: man:systemd-networkd-wait-online.service(8)
Process: 429 ExecStart=/usr/lib/systemd/systemd-networkd-wait-online (code=exited, status=0/SUCCESS)
Main PID: 429 (code=exited, status=0/SUCCESS)
Mem peak: 1.8M
CPU: 7ms
Aug 24 15:10:35 ambient-dev systemd[1]: Starting systemd-networkd-wait-online.service - Wait for Network to be Configured...
Aug 24 15:10:35 ambient-dev systemd[1]: Finished systemd-networkd-wait-online.service - Wait for Network to be Configured.
Type=oneshot
ExitType=main
Restart=no
RestartMode=normal
NotifyAccess=none
RestartUSec=100ms
RestartSteps=0
RestartMaxDelayUSec=infinity
RestartUSecNext=100ms
TimeoutStartUSec=infinity
TimeoutStopUSec=1min 30s
TimeoutAbortUSec=1min 30s
TimeoutStartFailureMode=terminate
TimeoutStopFailureMode=terminate
RuntimeMaxUSec=infinity
RuntimeRandomizedExtraUSec=0
WatchdogUSec=0
WatchdogTimestampMonotonic=0
RootDirectoryStartOnly=no
RemainAfterExit=yes
GuessMainPID=yes
MainPID=0
ControlPID=0
FileDescriptorStoreMax=0
NFileDescriptorStore=0
FileDescriptorStorePreserve=restart
StatusErrno=0
Result=success
ReloadResult=success
CleanResult=success
LiveMountResult=success
UID=[not set]
GID=[not set]
NRestarts=0
OOMPolicy=stop
ReloadSignal=1
ExecMainStartTimestamp=Mon 2026-08-24 15:10:35 UTC
ExecMainStartTimestampMonotonic=16149149
ExecMainExitTimestamp=Mon 2026-08-24 15:10:35 UTC
ExecMainExitTimestampMonotonic=16172300
ExecMainHandoffTimestamp=Mon 2026-08-24 15:10:35 UTC
ExecMainHandoffTimestampMonotonic=16168360
ExecMainPID=429
ExecMainCode=1
ExecMainStatus=0
ExecStart={ path=/usr/lib/systemd/systemd-networkd-wait-online ; argv[]=/usr/lib/systemd/systemd-networkd-wait-online ; ignore_errors=no ; start_time=[Mon 2026-08-24 15:10:35 UTC] ; stop_time=[Mon 2026-08-24 15:10:35 UTC] ; pid=429 ; code=exited ; status=0 }
ExecStartEx={ path=/usr/lib/systemd/systemd-networkd-wait-online ; argv[]=/usr/lib/systemd/systemd-networkd-wait-online ; flags= ; start_time=[Mon 2026-08-24 15:10:35 UTC] ; stop_time=[Mon 2026-08-24 15:10:35 UTC] ; pid=429 ; code=exited ; status=0 }
Slice=system.slice
ControlGroupId=2153
MemoryCurrent=[not set]
MemoryPeak=1929216
MemorySwapCurrent=[not set]
MemorySwapPeak=0
MemoryZSwapCurrent=[not set]
MemoryAvailable=11120476160
EffectiveMemoryMax=11670540288
EffectiveMemoryHigh=11670540288
CPUUsageNSec=7536000
TasksCurrent=[not set]
EffectiveTasksMax=13288
IPIngressBytes=[no data]
IPIngressPackets=[no data]
IPEgressBytes=[no data]
IPEgressPackets=[no data]
IOReadBytes=[not set]
IOReadOperations=[not set]
IOWriteBytes=[not set]
IOWriteOperations=[not set]
Delegate=no
CPUAccounting=yes
CPUWeight=[not set]
StartupCPUWeight=[not set]
CPUShares=[not set]
StartupCPUShares=[not set]
CPUQuotaPerSecUSec=infinity
CPUQuotaPeriodUSec=infinity
IOAccounting=no
IOWeight=[not set]
StartupIOWeight=[not set]
BlockIOAccounting=no
BlockIOWeight=[not set]
StartupBlockIOWeight=[not set]
MemoryAccounting=yes
DefaultMemoryLow=0
DefaultStartupMemoryLow=0
DefaultMemoryMin=0
MemoryMin=0
MemoryLow=0
StartupMemoryLow=0
MemoryHigh=infinity
StartupMemoryHigh=infinity
MemoryMax=infinity
StartupMemoryMax=infinity
MemorySwapMax=infinity
StartupMemorySwapMax=infinity
MemoryZSwapMax=infinity
StartupMemoryZSwapMax=infinity
MemoryZSwapWriteback=yes
MemoryLimit=infinity
DevicePolicy=auto
TasksAccounting=yes
TasksMax=13288
IPAccounting=no
ManagedOOMSwap=auto
ManagedOOMMemoryPressure=auto
ManagedOOMMemoryPressureLimit=0
ManagedOOMMemoryPressureDurationUSec=[not set]
ManagedOOMPreference=none
MemoryPressureWatch=auto
MemoryPressureThresholdUSec=200ms
CoredumpReceive=no
UMask=0022
LimitCPU=infinity
LimitCPUSoft=infinity
LimitFSIZE=infinity
LimitFSIZESoft=infinity
LimitDATA=infinity
LimitDATASoft=infinity
LimitSTACK=infinity
LimitSTACKSoft=8388608
LimitCORE=infinity
LimitCORESoft=0
LimitRSS=infinity
LimitRSSSoft=infinity
LimitNOFILE=524288
LimitNOFILESoft=1024
LimitAS=infinity
LimitASSoft=infinity
LimitNPROC=44294
LimitNPROCSoft=44294
LimitMEMLOCK=8388608
LimitMEMLOCKSoft=8388608
LimitLOCKS=infinity
LimitLOCKSSoft=infinity
LimitSIGPENDING=44294
LimitSIGPENDINGSoft=44294
LimitMSGQUEUE=819200
LimitMSGQUEUESoft=819200
LimitNICE=0
LimitNICESoft=0
LimitRTPRIO=0
LimitRTPRIOSoft=0
LimitRTTIME=infinity
LimitRTTIMESoft=infinity
RootEphemeral=no
OOMScoreAdjust=0
CoredumpFilter=0x33
Nice=0
IOSchedulingClass=2
IOSchedulingPriority=4
CPUSchedulingPolicy=0
CPUSchedulingPriority=0
CPUAffinityFromNUMA=no
NUMAPolicy=n/a
TimerSlackNSec=50000
CPUSchedulingResetOnFork=no
NonBlocking=no
StandardInput=null
StandardOutput=journal
StandardError=inherit
TTYReset=no
TTYVHangup=no
TTYVTDisallocate=no
SyslogPriority=30
SyslogLevelPrefix=yes
SyslogLevel=6
SyslogFacility=3
LogLevelMax=-1
LogRateLimitIntervalUSec=0
LogRateLimitBurst=0
SecureBits=0
CapabilityBoundingSet=cap_chown cap_dac_override cap_dac_read_search cap_fowner cap_fsetid cap_kill cap_setgid cap_setuid cap_setpcap cap_linux_immutable cap_net_bind_service cap_net_broadcast cap_net_admin cap_net_raw cap_ipc_lock cap_ipc_owner cap_sys_module cap_sys_rawio cap_sys_chroot cap_sys_ptrace cap_sys_pacct cap_sys_admin cap_sys_boot cap_sys_nice cap_sys_resource cap_sys_time cap_sys_tty_config cap_mknod cap_lease cap_audit_write cap_audit_control cap_setfcap cap_mac_override cap_mac_admin cap_syslog cap_wake_alarm cap_block_suspend cap_audit_read cap_perfmon cap_bpf cap_checkpoint_restore
DynamicUser=no
SetLoginEnvironment=no
RemoveIPC=no
PrivateTmp=no
PrivateTmpEx=no
PrivateDevices=no
ProtectClock=no
ProtectKernelTunables=no
ProtectKernelModules=no
ProtectKernelLogs=no
ProtectControlGroups=no
ProtectControlGroupsEx=no
PrivateNetwork=no
PrivateUsers=no
PrivateUsersEx=no
PrivateMounts=no
PrivateIPC=no
PrivatePIDs=no
ProtectHome=no
ProtectSystem=no
SameProcessGroup=no
UtmpMode=init
IgnoreSIGPIPE=yes
NoNewPrivileges=no
SystemCallErrorNumber=2147483646
LockPersonality=no
RuntimeDirectoryPreserve=no
RuntimeDirectoryMode=0755
StateDirectoryMode=0755
CacheDirectoryMode=0755
LogsDirectoryMode=0755
ConfigurationDirectoryMode=0755
TimeoutCleanUSec=infinity
MemoryDenyWriteExecute=no
RestrictRealtime=no
RestrictSUIDSGID=no
RestrictNamespaces=no
MountAPIVFS=no
BindLogSockets=no
KeyringMode=private
ProtectProc=default
ProcSubset=all
ProtectHostname=no
MemoryKSM=no
RootImagePolicy=root=verity+signed+encrypted+unprotected+absent:usr=verity+signed+encrypted+unprotected+absent:home=encrypted+unprotected+absent:srv=encrypted+unprotected+absent:tmp=encrypted+unprotected+absent:var=encrypted+unprotected+absent
MountImagePolicy=root=verity+signed+encrypted+unprotected+absent:usr=verity+signed+encrypted+unprotected+absent:home=encrypted+unprotected+absent:srv=encrypted+unprotected+absent:tmp=encrypted+unprotected+absent:var=encrypted+unprotected+absent
ExtensionImagePolicy=root=verity+signed+encrypted+unprotected+absent:usr=verity+signed+encrypted+unprotected+absent:home=encrypted+unprotected+absent:srv=encrypted+unprotected+absent:tmp=encrypted+unprotected+absent:var=encrypted+unprotected+absent
KillMode=control-group
KillSignal=15
RestartKillSignal=15
FinalKillSignal=9
SendSIGKILL=yes
SendSIGHUP=no
WatchdogSignal=6
Id=systemd-networkd-wait-online.service
Names=systemd-networkd-wait-online.service
Requires=system.slice
BindsTo=systemd-networkd.service
WantedBy=network-online.target
Conflicts=shutdown.target
Before=shutdown.target network-online.target
After=systemd-journald.socket system.slice systemd-networkd.service
Documentation="man:systemd-networkd-wait-online.service(8)"
Description=Wait for Network to be Configured
LoadState=loaded
ActiveState=active
FreezerState=running
SubState=exited
FragmentPath=/usr/lib/systemd/system/systemd-networkd-wait-online.service
UnitFileState=enabled
UnitFilePreset=enabled
StateChangeTimestamp=Mon 2026-08-24 15:10:35 UTC
StateChangeTimestampMonotonic=16172427
InactiveExitTimestamp=Mon 2026-08-24 15:10:35 UTC
InactiveExitTimestampMonotonic=16149624
ActiveEnterTimestamp=Mon 2026-08-24 15:10:35 UTC
ActiveEnterTimestampMonotonic=16172427
ActiveExitTimestampMonotonic=0
InactiveEnterTimestampMonotonic=0
CanStart=yes
CanStop=yes
CanReload=no
CanIsolate=no
CanFreeze=yes
CanLiveMount=no
StopWhenUnneeded=no
RefuseManualStart=no
RefuseManualStop=no
AllowIsolate=no
DefaultDependencies=no
SurviveFinalKillSignal=no
OnSuccessJobMode=fail
OnFailureJobMode=replace
IgnoreOnIsolate=no
NeedDaemonReload=no
JobTimeoutUSec=infinity
JobRunningTimeoutUSec=infinity
JobTimeoutAction=none
ConditionResult=yes
AssertResult=yes
ConditionTimestamp=Mon 2026-08-24 15:10:35 UTC
ConditionTimestampMonotonic=16148584
AssertTimestamp=Mon 2026-08-24 15:10:35 UTC
AssertTimestampMonotonic=16148665
Transient=no
Perpetual=no
StartLimitIntervalUSec=10s
StartLimitBurst=5
StartLimitAction=none
FailureAction=none
SuccessAction=none
InvocationID=05262b9796b1440fa6dd5a0767dda8d2
CollectMode=inactive
DebugInvocation=no
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host noprefixroute
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 52:54:00:12:34:56 brd ff:ff:ff:ff:ff:ff
altname enp0s1
altname enx525400123456
inet 10.0.2.15/24 metric 1024 brd 10.0.2.255 scope global dynamic eth0
valid_lft 86392sec preferred_lft 86392sec
inet6 fec0::5054:ff:fe12:3456/64 scope site dynamic mngtmpaddr noprefixroute
valid_lft 86395sec preferred_lft 14395sec
inet6 fe80::5054:ff:fe12:3456/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
IDX LINK TYPE OPERATIONAL SETUP 1 lo loopback carrier unmanaged 2 eth0 ether routable configured 2 links listed.
● Interfaces: 1, 2
State: routable
Online state: online
Address: 10.0.2.15 on eth0
fec0::5054:ff:fe12:3456 on eth0
fe80::5054:ff:fe12:3456 on eth0
Gateway: 10.0.2.2 on eth0
fe80::2 on eth0
DNS: 10.0.2.3
fec0::3
Aug 24 15:10:27 ambient-dev systemd[1]: Started systemd-networkd.service - Network Configuration.
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Found matching .network file, based on potentially unpredictable interface name: /etc/systemd/network/external.network
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Configuring with /etc/systemd/network/external.network.
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Link UP
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Gained carrier
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Found matching .network file, based on potentially unpredictable interface name: /etc/systemd/network/external.network
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: DHCPv4 address 10.0.2.15/24, gateway 10.0.2.2 acquired from 10.0.2.2
Aug 24 15:10:28 ambient-dev systemd-networkd[323]: eth0: Gained IPv6LL
Aug 24 15:10:35 ambient-dev systemd[1]: Starting systemd-networkd-wait-online.service - Wait for Network to be Configured...
Aug 24 15:10:35 ambient-dev systemd[1]: Finished systemd-networkd-wait-online.service - Wait for Network to be Configured.
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data. 64 bytes from 8.8.8.8: icmp_seq=1 ttl=255 time=1.31 ms --- 8.8.8.8 ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 1.312/1.312/1.312/0.000 ms
PING www.google.com (142.251.156.119) 56(84) bytes of data. 64 bytes from 142.251.156.119: icmp_seq=1 ttl=255 time=1.35 ms --- www.google.com ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 1.348/1.348/1.348/0.000 ms
- action: wait_online
● systemd-networkd.service - Network Configuration
Loaded: loaded (/usr/lib/systemd/system/systemd-networkd.service; enabled; preset: enabled)
Active: active (running) since Mon 2026-08-24 15:10:27 UTC; 8s ago
Invocation: 63fc0c9726244ad8b22dbf85d611ca76
TriggeredBy: ● systemd-networkd.socket
Docs: man:systemd-networkd.service(8)
man:org.freedesktop.network1(5)
Main PID: 323 (systemd-network)
Status: "Processing requests..."
Tasks: 1 (limit: 13288)
FD Store: 0 (limit: 512)
Memory: 3.8M (peak: 13.3M)
CPU: 82ms
CGroup: /system.slice/systemd-networkd.service
└─323 /usr/lib/systemd/systemd-networkd
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: lo: Link UP
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: lo: Gained carrier
Aug 24 15:10:27 ambient-dev systemd[1]: Started systemd-networkd.service - Network Configuration.
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Found matching .network file, based on potentially unpredictable interface name: /etc/systemd/network/external.network
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Configuring with /etc/systemd/network/external.network.
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Link UP
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Gained carrier
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Found matching .network file, based on potentially unpredictable interface name: /etc/systemd/network/external.network
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: DHCPv4 address 10.0.2.15/24, gateway 10.0.2.2 acquired from 10.0.2.2
Aug 24 15:10:28 ambient-dev systemd-networkd[323]: eth0: Gained IPv6LL
● systemd-networkd-wait-online.service - Wait for Network to be Configured
Loaded: loaded (/usr/lib/systemd/system/systemd-networkd-wait-online.service; enabled; preset: enabled)
Active: active (exited) since Mon 2026-08-24 15:10:35 UTC; 395ms ago
Invocation: 05262b9796b1440fa6dd5a0767dda8d2
Docs: man:systemd-networkd-wait-online.service(8)
Process: 429 ExecStart=/usr/lib/systemd/systemd-networkd-wait-online (code=exited, status=0/SUCCESS)
Main PID: 429 (code=exited, status=0/SUCCESS)
Mem peak: 1.8M
CPU: 7ms
Aug 24 15:10:35 ambient-dev systemd[1]: Starting systemd-networkd-wait-online.service - Wait for Network to be Configured...
Aug 24 15:10:35 ambient-dev systemd[1]: Finished systemd-networkd-wait-online.service - Wait for Network to be Configured.
Type=oneshot
ExitType=main
Restart=no
RestartMode=normal
NotifyAccess=none
RestartUSec=100ms
RestartSteps=0
RestartMaxDelayUSec=infinity
RestartUSecNext=100ms
TimeoutStartUSec=infinity
TimeoutStopUSec=1min 30s
TimeoutAbortUSec=1min 30s
TimeoutStartFailureMode=terminate
TimeoutStopFailureMode=terminate
RuntimeMaxUSec=infinity
RuntimeRandomizedExtraUSec=0
WatchdogUSec=0
WatchdogTimestampMonotonic=0
RootDirectoryStartOnly=no
RemainAfterExit=yes
GuessMainPID=yes
MainPID=0
ControlPID=0
FileDescriptorStoreMax=0
NFileDescriptorStore=0
FileDescriptorStorePreserve=restart
StatusErrno=0
Result=success
ReloadResult=success
CleanResult=success
LiveMountResult=success
UID=[not set]
GID=[not set]
NRestarts=0
OOMPolicy=stop
ReloadSignal=1
ExecMainStartTimestamp=Mon 2026-08-24 15:10:35 UTC
ExecMainStartTimestampMonotonic=16149149
ExecMainExitTimestamp=Mon 2026-08-24 15:10:35 UTC
ExecMainExitTimestampMonotonic=16172300
ExecMainHandoffTimestamp=Mon 2026-08-24 15:10:35 UTC
ExecMainHandoffTimestampMonotonic=16168360
ExecMainPID=429
ExecMainCode=1
ExecMainStatus=0
ExecStart={ path=/usr/lib/systemd/systemd-networkd-wait-online ; argv[]=/usr/lib/systemd/systemd-networkd-wait-online ; ignore_errors=no ; start_time=[Mon 2026-08-24 15:10:35 UTC] ; stop_time=[Mon 2026-08-24 15:10:35 UTC] ; pid=429 ; code=exited ; status=0 }
ExecStartEx={ path=/usr/lib/systemd/systemd-networkd-wait-online ; argv[]=/usr/lib/systemd/systemd-networkd-wait-online ; flags= ; start_time=[Mon 2026-08-24 15:10:35 UTC] ; stop_time=[Mon 2026-08-24 15:10:35 UTC] ; pid=429 ; code=exited ; status=0 }
Slice=system.slice
ControlGroupId=2153
MemoryCurrent=[not set]
MemoryPeak=1929216
MemorySwapCurrent=[not set]
MemorySwapPeak=0
MemoryZSwapCurrent=[not set]
MemoryAvailable=11121692672
EffectiveMemoryMax=11670540288
EffectiveMemoryHigh=11670540288
CPUUsageNSec=7536000
TasksCurrent=[not set]
EffectiveTasksMax=13288
IPIngressBytes=[no data]
IPIngressPackets=[no data]
IPEgressBytes=[no data]
IPEgressPackets=[no data]
IOReadBytes=[not set]
IOReadOperations=[not set]
IOWriteBytes=[not set]
IOWriteOperations=[not set]
Delegate=no
CPUAccounting=yes
CPUWeight=[not set]
StartupCPUWeight=[not set]
CPUShares=[not set]
StartupCPUShares=[not set]
CPUQuotaPerSecUSec=infinity
CPUQuotaPeriodUSec=infinity
IOAccounting=no
IOWeight=[not set]
StartupIOWeight=[not set]
BlockIOAccounting=no
BlockIOWeight=[not set]
StartupBlockIOWeight=[not set]
MemoryAccounting=yes
DefaultMemoryLow=0
DefaultStartupMemoryLow=0
DefaultMemoryMin=0
MemoryMin=0
MemoryLow=0
StartupMemoryLow=0
MemoryHigh=infinity
StartupMemoryHigh=infinity
MemoryMax=infinity
StartupMemoryMax=infinity
MemorySwapMax=infinity
StartupMemorySwapMax=infinity
MemoryZSwapMax=infinity
StartupMemoryZSwapMax=infinity
MemoryZSwapWriteback=yes
MemoryLimit=infinity
DevicePolicy=auto
TasksAccounting=yes
TasksMax=13288
IPAccounting=no
ManagedOOMSwap=auto
ManagedOOMMemoryPressure=auto
ManagedOOMMemoryPressureLimit=0
ManagedOOMMemoryPressureDurationUSec=[not set]
ManagedOOMPreference=none
MemoryPressureWatch=auto
MemoryPressureThresholdUSec=200ms
CoredumpReceive=no
UMask=0022
LimitCPU=infinity
LimitCPUSoft=infinity
LimitFSIZE=infinity
LimitFSIZESoft=infinity
LimitDATA=infinity
LimitDATASoft=infinity
LimitSTACK=infinity
LimitSTACKSoft=8388608
LimitCORE=infinity
LimitCORESoft=0
LimitRSS=infinity
LimitRSSSoft=infinity
LimitNOFILE=524288
LimitNOFILESoft=1024
LimitAS=infinity
LimitASSoft=infinity
LimitNPROC=44294
LimitNPROCSoft=44294
LimitMEMLOCK=8388608
LimitMEMLOCKSoft=8388608
LimitLOCKS=infinity
LimitLOCKSSoft=infinity
LimitSIGPENDING=44294
LimitSIGPENDINGSoft=44294
LimitMSGQUEUE=819200
LimitMSGQUEUESoft=819200
LimitNICE=0
LimitNICESoft=0
LimitRTPRIO=0
LimitRTPRIOSoft=0
LimitRTTIME=infinity
LimitRTTIMESoft=infinity
RootEphemeral=no
OOMScoreAdjust=0
CoredumpFilter=0x33
Nice=0
IOSchedulingClass=2
IOSchedulingPriority=4
CPUSchedulingPolicy=0
CPUSchedulingPriority=0
CPUAffinityFromNUMA=no
NUMAPolicy=n/a
TimerSlackNSec=50000
CPUSchedulingResetOnFork=no
NonBlocking=no
StandardInput=null
StandardOutput=journal
StandardError=inherit
TTYReset=no
TTYVHangup=no
TTYVTDisallocate=no
SyslogPriority=30
SyslogLevelPrefix=yes
SyslogLevel=6
SyslogFacility=3
LogLevelMax=-1
LogRateLimitIntervalUSec=0
LogRateLimitBurst=0
SecureBits=0
CapabilityBoundingSet=cap_chown cap_dac_override cap_dac_read_search cap_fowner cap_fsetid cap_kill cap_setgid cap_setuid cap_setpcap cap_linux_immutable cap_net_bind_service cap_net_broadcast cap_net_admin cap_net_raw cap_ipc_lock cap_ipc_owner cap_sys_module cap_sys_rawio cap_sys_chroot cap_sys_ptrace cap_sys_pacct cap_sys_admin cap_sys_boot cap_sys_nice cap_sys_resource cap_sys_time cap_sys_tty_config cap_mknod cap_lease cap_audit_write cap_audit_control cap_setfcap cap_mac_override cap_mac_admin cap_syslog cap_wake_alarm cap_block_suspend cap_audit_read cap_perfmon cap_bpf cap_checkpoint_restore
DynamicUser=no
SetLoginEnvironment=no
RemoveIPC=no
PrivateTmp=no
PrivateTmpEx=no
PrivateDevices=no
ProtectClock=no
ProtectKernelTunables=no
ProtectKernelModules=no
ProtectKernelLogs=no
ProtectControlGroups=no
ProtectControlGroupsEx=no
PrivateNetwork=no
PrivateUsers=no
PrivateUsersEx=no
PrivateMounts=no
PrivateIPC=no
PrivatePIDs=no
ProtectHome=no
ProtectSystem=no
SameProcessGroup=no
UtmpMode=init
IgnoreSIGPIPE=yes
NoNewPrivileges=no
SystemCallErrorNumber=2147483646
LockPersonality=no
RuntimeDirectoryPreserve=no
RuntimeDirectoryMode=0755
StateDirectoryMode=0755
CacheDirectoryMode=0755
LogsDirectoryMode=0755
ConfigurationDirectoryMode=0755
TimeoutCleanUSec=infinity
MemoryDenyWriteExecute=no
RestrictRealtime=no
RestrictSUIDSGID=no
RestrictNamespaces=no
MountAPIVFS=no
BindLogSockets=no
KeyringMode=private
ProtectProc=default
ProcSubset=all
ProtectHostname=no
MemoryKSM=no
RootImagePolicy=root=verity+signed+encrypted+unprotected+absent:usr=verity+signed+encrypted+unprotected+absent:home=encrypted+unprotected+absent:srv=encrypted+unprotected+absent:tmp=encrypted+unprotected+absent:var=encrypted+unprotected+absent
MountImagePolicy=root=verity+signed+encrypted+unprotected+absent:usr=verity+signed+encrypted+unprotected+absent:home=encrypted+unprotected+absent:srv=encrypted+unprotected+absent:tmp=encrypted+unprotected+absent:var=encrypted+unprotected+absent
ExtensionImagePolicy=root=verity+signed+encrypted+unprotected+absent:usr=verity+signed+encrypted+unprotected+absent:home=encrypted+unprotected+absent:srv=encrypted+unprotected+absent:tmp=encrypted+unprotected+absent:var=encrypted+unprotected+absent
KillMode=control-group
KillSignal=15
RestartKillSignal=15
FinalKillSignal=9
SendSIGKILL=yes
SendSIGHUP=no
WatchdogSignal=6
Id=systemd-networkd-wait-online.service
Names=systemd-networkd-wait-online.service
Requires=system.slice
BindsTo=systemd-networkd.service
WantedBy=network-online.target
Conflicts=shutdown.target
Before=shutdown.target network-online.target
After=systemd-journald.socket system.slice systemd-networkd.service
Documentation="man:systemd-networkd-wait-online.service(8)"
Description=Wait for Network to be Configured
LoadState=loaded
ActiveState=active
FreezerState=running
SubState=exited
FragmentPath=/usr/lib/systemd/system/systemd-networkd-wait-online.service
UnitFileState=enabled
UnitFilePreset=enabled
StateChangeTimestamp=Mon 2026-08-24 15:10:35 UTC
StateChangeTimestampMonotonic=16172427
InactiveExitTimestamp=Mon 2026-08-24 15:10:35 UTC
InactiveExitTimestampMonotonic=16149624
ActiveEnterTimestamp=Mon 2026-08-24 15:10:35 UTC
ActiveEnterTimestampMonotonic=16172427
ActiveExitTimestampMonotonic=0
InactiveEnterTimestampMonotonic=0
CanStart=yes
CanStop=yes
CanReload=no
CanIsolate=no
CanFreeze=yes
CanLiveMount=no
StopWhenUnneeded=no
RefuseManualStart=no
RefuseManualStop=no
AllowIsolate=no
DefaultDependencies=no
SurviveFinalKillSignal=no
OnSuccessJobMode=fail
OnFailureJobMode=replace
IgnoreOnIsolate=no
NeedDaemonReload=no
JobTimeoutUSec=infinity
JobRunningTimeoutUSec=infinity
JobTimeoutAction=none
ConditionResult=yes
AssertResult=yes
ConditionTimestamp=Mon 2026-08-24 15:10:35 UTC
ConditionTimestampMonotonic=16148584
AssertTimestamp=Mon 2026-08-24 15:10:35 UTC
AssertTimestampMonotonic=16148665
Transient=no
Perpetual=no
StartLimitIntervalUSec=10s
StartLimitBurst=5
StartLimitAction=none
FailureAction=none
SuccessAction=none
InvocationID=05262b9796b1440fa6dd5a0767dda8d2
CollectMode=inactive
DebugInvocation=no
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host noprefixroute
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 52:54:00:12:34:56 brd ff:ff:ff:ff:ff:ff
altname enp0s1
altname enx525400123456
inet 10.0.2.15/24 metric 1024 brd 10.0.2.255 scope global dynamic eth0
valid_lft 86392sec preferred_lft 86392sec
inet6 fec0::5054:ff:fe12:3456/64 scope site dynamic mngtmpaddr noprefixroute
valid_lft 86395sec preferred_lft 14395sec
inet6 fe80::5054:ff:fe12:3456/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
IDX LINK TYPE OPERATIONAL SETUP 1 lo loopback carrier unmanaged 2 eth0 ether routable configured 2 links listed.
● Interfaces: 1, 2
State: routable
Online state: online
Address: 10.0.2.15 on eth0
fec0::5054:ff:fe12:3456 on eth0
fe80::5054:ff:fe12:3456 on eth0
Gateway: 10.0.2.2 on eth0
fe80::2 on eth0
DNS: 10.0.2.3
fec0::3
Aug 24 15:10:27 ambient-dev systemd[1]: Started systemd-networkd.service - Network Configuration.
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Found matching .network file, based on potentially unpredictable interface name: /etc/systemd/network/external.network
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Configuring with /etc/systemd/network/external.network.
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Link UP
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Gained carrier
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Found matching .network file, based on potentially unpredictable interface name: /etc/systemd/network/external.network
Aug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: DHCPv4 address 10.0.2.15/24, gateway 10.0.2.2 acquired from 10.0.2.2
Aug 24 15:10:28 ambient-dev systemd-networkd[323]: eth0: Gained IPv6LL
Aug 24 15:10:35 ambient-dev systemd[1]: Starting systemd-networkd-wait-online.service - Wait for Network to be Configured...
Aug 24 15:10:35 ambient-dev systemd[1]: Finished systemd-networkd-wait-online.service - Wait for Network to be Configured.
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data. 64 bytes from 8.8.8.8: icmp_seq=1 ttl=255 time=1.23 ms --- 8.8.8.8 ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 1.231/1.231/1.231/0.000 ms
PING www.google.com (142.251.155.119) 56(84) bytes of data. 64 bytes from 142.251.155.119: icmp_seq=1 ttl=255 time=1.08 ms --- www.google.com ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 1.083/1.083/1.083/0.000 ms
- action: network_diagnostics
cargo 1.98.0 (797e8a9bc 2026-08-05)
clippy 0.1.98 (88d9e12ae1 2026-08-18)
rustc 1.98.0 (88d9e12ae 2026-08-18)
Updating crates.io index Downloading crates ... Downloaded version_check v0.9.5 Downloaded serde_path_to_error v0.1.20 Downloaded uuid v1.23.4 Downloaded arraydeque v0.5.1 Downloaded culpa-macros v1.0.2 Downloaded scoped-tls v1.0.1 Downloaded find-msvc-tools v0.1.9 Downloaded foldhash v0.1.5 Downloaded html-escape v0.2.14 Downloaded descape v3.0.0 Downloaded windows-targets v0.48.5 Downloaded aligned v0.4.3 Downloaded pkg-config v0.3.33 Downloaded radicle-std-ext v0.2.0 Downloaded doc-comment v0.3.4 Downloaded anyhow v1.0.103 Downloaded unicase v2.9.0 Downloaded pulldown-cmark-escape v0.11.0 Downloaded getopts v0.2.24 Downloaded pikchr v0.1.4 Downloaded cc v1.2.66 Downloaded shlex v2.0.1 Downloaded marked-yaml v0.8.0 Downloaded yaml-rust2 v0.10.4 Downloaded hashlink v0.10.0 Downloaded line-col v0.2.1 Downloaded base64 v0.22.1 Downloaded culpa v1.0.2 Downloaded state v0.6.0 Downloaded loom v0.5.6 Downloaded generator v0.7.5 Downloaded windows-targets v0.52.6 Downloaded fs_at v0.2.1 Downloaded cfg_aliases v0.2.1 Downloaded as-slice v0.2.1 Downloaded fs2 v0.4.3 Downloaded sqlite v0.37.0 Downloaded sqlite3-sys v0.18.0 Downloaded derive_builder_core v0.20.2 Downloaded fnv v1.0.7 Downloaded diligent-date-parser v0.1.5 Downloaded radicle-surf v0.28.0 Downloaded pulldown-cmark v0.13.4 Downloaded shell-words v1.1.1 Downloaded normpath v1.5.1 Downloaded cvt v0.1.2 Downloaded unsafe-libyaml-norway v0.2.15 Downloaded derive_builder_macro v0.20.2 Downloaded darling_macro v0.20.11 Downloaded ident_case v1.0.1 Downloaded thiserror-impl v1.0.69 Downloaded radicle-git-ext v0.13.0 Downloaded data-encoding-macro v0.1.20 Downloaded jobserver v0.1.35 Downloaded remove_dir_all v1.0.0 Downloaded filetime v0.2.29 Downloaded serde_norway v0.9.42 Downloaded ryu v1.0.23 Downloaded rss v2.1.0 Downloaded derive_builder v0.20.2 Downloaded darling v0.20.11 Downloaded darling_core v0.20.11 Downloaded strsim v0.11.1 Downloaded autocfg v1.5.1 Downloaded thiserror v1.0.69 Downloaded xattr v1.6.1 Downloaded git-ref-format v0.7.0 Downloaded base256emoji v1.0.2 Downloaded base-x v0.2.11 Downloaded ec25519 v0.1.0 Downloaded amplify v4.9.0 Downloaded ref-cast v1.0.25 Downloaded hashbrown v0.15.5 Downloaded atom_syndication v0.12.9 Downloaded num-traits v0.2.19 Downloaded tar v0.4.46 Downloaded proc-macro-error-attr3 v3.0.2 Downloaded git-ref-format-core v0.6.0 Downloaded nonempty v0.9.0 Downloaded adler2 v2.0.1 Downloaded ghash v0.5.1 Downloaded pkcs1 v0.7.5 Downloaded getrandom v0.3.4 Downloaded ref-cast-impl v1.0.25 Downloaded dyn-clone v1.0.20 Downloaded git-ref-format-macro v0.7.0 Downloaded proc-macro-error3 v3.0.2 Downloaded miniz_oxide v0.8.9 Downloaded simd-adler32 v0.3.9 Downloaded base64ct v1.8.3 Downloaded ssh-cipher v0.2.0 Downloaded poly1305 v0.8.0 Downloaded universal-hash v0.5.1 Downloaded opaque-debug v0.3.1 Downloaded ctr v0.9.2 Downloaded cipher v0.4.4 Downloaded inout v0.1.4 Downloaded block-padding v0.3.3 Downloaded chacha20 v0.9.1 Downloaded cbc v0.1.2 Downloaded polyval v0.6.2 Downloaded aead v0.5.2 Downloaded signature v2.2.0 Downloaded sec1 v0.7.3 Downloaded base16ct v0.2.0 Downloaded num-integer v0.1.46 Downloaded num-iter v0.1.46 Downloaded schemars_derive v1.2.1 Downloaded num-conv v0.2.2 Downloaded powerfmt v0.2.0 Downloaded flate2 v1.1.9 Downloaded pkcs8 v0.10.2 Downloaded spki v0.7.3 Downloaded serde_derive_internals v0.29.1 Downloaded radicle-dag v0.10.0 Downloaded wasm-bindgen-macro v0.2.126 Downloaded futures-core v0.3.32 Downloaded globwalk v0.9.1 Downloaded globset v0.4.18 Downloaded crossbeam-deque v0.8.7 Downloaded crossbeam-epoch v0.9.20 Downloaded roadmap v0.7.0 Downloaded quick-xml v0.41.0 Downloaded vcpkg v0.2.15 Downloaded tinyvec_macros v0.1.1 Downloaded memoffset v0.9.1 Downloaded siphasher v1.0.3 Downloaded typeid v1.0.3 Downloaded radicle-oid v0.2.0 Downloaded der v0.7.10 Downloaded rsa v0.9.10 Downloaded pbkdf2 v0.12.2 Downloaded secrecy v0.10.3 Downloaded amplify_syn v2.0.1 Downloaded radicle-core v0.3.0 Downloaded is_terminal_polyfill v1.70.2 Downloaded once_cell_polyfill v1.70.2 Downloaded qcheck-macros v1.0.0 Downloaded ignore v0.4.27 Downloaded crossbeam-utils v0.8.22 Downloaded chrono v0.4.45 Downloaded git2 v0.21.0 Downloaded crc32fast v1.5.0 Downloaded radicle-job v0.6.0 Downloaded tinyvec v1.11.0 Downloaded uds_windows v1.2.1 Downloaded serde-untagged v0.1.9 Downloaded erased-serde v0.4.10 Downloaded aes-gcm v0.10.3 Downloaded aes v0.8.4 Downloaded num-bigint-dig v0.8.6 Downloaded p521 v0.13.3 Downloaded blowfish v0.9.1 Downloaded byteorder v1.5.0 Downloaded ssh-agent-lib v0.5.2 Downloaded multibase v0.9.3 Downloaded data-encoding-macro-internal v0.1.18 Downloaded data-encoding v2.11.0 Downloaded base45 v3.2.0 Downloaded match-lookup v0.1.2 Downloaded ed25519 v1.5.3 Downloaded ct-codecs v1.1.7 Downloaded dunce v1.0.5 Downloaded clap_lex v1.1.0 Downloaded anstyle-wincon v3.0.11 Downloaded html-page v0.5.0 Downloaded wasm-bindgen-shared v0.2.126 Downloaded idna_adapter v1.2.2 Downloaded zerofrom v0.1.8 Downloaded stable_deref_trait v1.2.1 Downloaded form_urlencoded v1.2.2 Downloaded valuable-serde v0.1.1 Downloaded windows_x86_64_gnullvm v0.48.5 Downloaded nix v0.29.0 Downloaded base64 v0.21.7 Downloaded qcheck v1.0.0 Downloaded radicle-localtime v0.1.0 Downloaded const-str v0.4.3 Downloaded signature v1.6.4 Downloaded fast-glob v0.3.3 Downloaded utf8_iter v1.0.4 Downloaded pest_generator v2.8.7 Downloaded humansize v2.1.3 Downloaded libm v0.2.16 Downloaded unicode-linebreak v0.1.5 Downloaded windows_x86_64_gnullvm v0.52.6 Downloaded windows_aarch64_gnullvm v0.52.6 Downloaded unicode-normalization v0.1.25 Downloaded pest_derive v2.8.7 Downloaded pest_meta v2.8.7 Downloaded ucd-trie v0.1.7 Downloaded textwrap v0.16.2 Downloaded smawk v0.3.3 Downloaded marked-yaml v0.7.2 Downloaded hashlink v0.9.1 Downloaded ahash v0.8.12 Downloaded windows_aarch64_gnullvm v0.48.5 Downloaded windows-strings v0.1.0 Downloaded windows-result v0.2.0 Downloaded windows-interface v0.58.0 Downloaded windows-implement v0.58.0 Downloaded primeorder v0.13.6 Downloaded wasip2 v1.0.4+wasi-0.2.12 Downloaded nonempty v0.12.0 Downloaded zerofrom-derive v0.1.7 Downloaded tracing-serde v0.2.0 Downloaded zerocopy-derive v0.8.54 Downloaded windows_i686_gnullvm v0.52.6 Downloaded windows-core v0.58.0 Downloaded elliptic-curve v0.13.8 Downloaded heck v0.5.0 Downloaded futures-task v0.3.32 Downloaded pest v2.8.7 Downloaded bstr v1.12.3 Downloaded yaml-rust2 v0.9.0 Downloaded hashbrown v0.14.5 Downloaded radicle v0.24.0 Downloaded git2 v0.20.4 Downloaded radicle-git-metadata v0.2.0 Downloaded winpipe v0.1.1 Downloaded defer-heavy v0.1.0 Downloaded ssh-encoding v0.2.0 Downloaded sha2 v0.10.9 Downloaded anstyle-query v1.1.5 Downloaded percent-encoding v2.3.2 Downloaded radicle-crypto v0.17.0 Downloaded zeroize v1.9.0 Downloaded subtle v2.6.1 Downloaded digest v0.10.7 Downloaded crypto-common v0.1.7 Downloaded group v0.13.0 Downloaded ff v0.13.1 Downloaded socks5-client v0.4.3 Downloaded cypheraddr v0.4.1 Downloaded cfg-if v1.0.4 Downloaded potential_utf v0.1.5 Downloaded unicode-width v0.2.2 Downloaded windows_x86_64_msvc v0.48.5 Downloaded ssh-key v0.6.7 Downloaded windows_x86_64_gnu v0.48.5 Downloaded windows_i686_msvc v0.48.5 Downloaded generic-array v0.14.7 Downloaded const-oid v0.9.6 Downloaded block-buffer v0.10.4 Downloaded cpufeatures v0.2.17 Downloaded rfc6979 v0.4.0 Downloaded nonempty v0.11.0 Downloaded utf8parse v0.2.2 Downloaded colorchoice v1.0.5 Downloaded equivalent v1.0.2 Downloaded windows_aarch64_msvc v0.48.5 Downloaded pem-rfc7468 v0.7.0 Downloaded ecdsa v0.16.9 Downloaded hmac v0.12.1 Downloaded ed25519 v2.2.3 Downloaded cyphergraphy v0.3.1 Downloaded amplify_num v0.5.4 Downloaded encoding_rs v0.8.35 Downloaded windows_i686_gnu v0.48.5 Downloaded windows_x86_64_msvc v0.52.6 Downloaded windows_aarch64_msvc v0.52.6 Downloaded typenum v1.20.1 Downloaded crypto-bigint v0.5.5 Downloaded p256 v0.13.2 Downloaded ed25519-dalek v2.2.0 Downloaded rustc_version v0.4.1 Downloaded wit-bindgen v0.57.1 Downloaded r-efi v5.3.0 Downloaded ascii v1.1.0 Downloaded amplify_derive v4.0.1 Downloaded anstyle v1.0.14 Downloaded slab v0.4.12 Downloaded windows_x86_64_gnu v0.52.6 Downloaded libz-sys v1.1.29 Downloaded radicle-git-ref-format v0.1.0 Downloaded semver v1.0.28 Downloaded curve25519-dalek-derive v0.1.1 Downloaded tempfile v3.27.0 Downloaded bcrypt-pbkdf v0.10.0 Downloaded subplotlib-derive v0.14.0 Downloaded windows_i686_msvc v0.52.6 Downloaded windows_i686_gnu v0.52.6 Downloaded sync-ptr v0.1.4 Downloaded p384 v0.13.1 Downloaded aho-corasick v1.1.4 Downloaded fastrand v2.4.1 Downloaded subplotlib v0.14.0 Downloaded walkdir v2.5.0 Downloaded itoa v1.0.18 Downloaded bitflags v2.13.0 Downloaded winapi-util v0.1.11 Downloaded same-file v1.0.6 Downloaded subplot v0.14.0 Downloaded slug v0.1.6 Downloaded wasi v0.11.1+wasi-snapshot-preview1 Downloaded rand_chacha v0.3.1 Downloaded windows-link v0.2.1 Downloaded rand_core v0.6.4 Downloaded getrandom v0.2.17 Downloaded ppv-lite86 v0.2.21 Downloaded rand v0.8.6 Downloaded matchers v0.2.0 Downloaded terminal_size v0.4.4 Downloaded regex-syntax v0.8.11 Downloaded tera v1.20.1 Downloaded unicode-segmentation v1.13.3 Downloaded curve25519-dalek v4.1.3 Downloaded anstream v1.0.0 Downloaded displaydoc v0.2.6 Downloaded rustversion v1.0.23 Downloaded yoke-derive v0.8.2 Downloaded winapi v0.3.9 Downloaded zerovec-derive v0.11.3 Downloaded deunicode v1.6.2 Downloaded regex v1.13.1 Downloaded duration-str v0.21.0 Downloaded valuable v0.1.1 Downloaded rustix v1.1.4 Downloaded quote v1.0.46 Downloaded tinystr v0.8.3 Downloaded zerocopy v0.8.54 Downloaded fiat-crypto v0.2.9 Downloaded regex-automata v0.4.18 Downloaded bytesize v2.4.2 Downloaded tracing-log v0.2.0 Downloaded libgit2-sys v0.18.5+1.9.4 Downloaded pin-project-lite v0.2.17 Downloaded anstyle-parse v1.0.0 Downloaded smallvec v1.15.2 Downloaded thread_local v1.1.9 Downloaded lazy_static v1.5.0 Downloaded windows-sys v0.59.0 Downloaded time-core v0.1.9 Downloaded zmij v1.0.21 Downloaded deranged v0.5.8 Downloaded nu-ansi-term v0.50.3 Downloaded errno v0.3.14 Downloaded windows-sys v0.52.0 Downloaded thiserror v2.0.18 Downloaded thiserror-impl v2.0.18 Downloaded radicle-cob v0.20.0 Downloaded clap_derive v4.6.4 Downloaded once_cell v1.21.4 Downloaded sqlite3-src v0.7.0 Downloaded winapi-x86_64-pc-windows-gnu v0.4.0 Downloaded winapi-i686-pc-windows-gnu v0.4.0 Downloaded synstructure v0.13.2 Downloaded litemap v0.8.2 Downloaded writeable v0.6.3 Downloaded arrayvec v0.7.8 Downloaded yoke v0.8.3 Downloaded tracing-core v0.1.36 Downloaded tracing-attributes v0.1.31 Downloaded spin v0.9.9 Downloaded time-macros v0.2.31 Downloaded unicode-ident v1.0.24 Downloaded getrandom v0.4.3 Downloaded icu_properties v2.2.0 Downloaded icu_provider v2.2.0 Downloaded log v0.4.33 Downloaded clap v4.6.6 Downloaded serde_derive v1.0.228 Downloaded sharded-slab v0.1.7 Downloaded wasm-bindgen v0.2.126 Downloaded icu_locale_core v2.2.0 Downloaded serde_core v1.0.228 Downloaded icu_normalizer_data v2.2.0 Downloaded r-efi v6.0.0 Downloaded icu_normalizer v2.2.0 Downloaded schemars v1.2.1 Downloaded crossbeam-channel v0.5.16 Downloaded windows v0.58.0 Downloaded wasm-bindgen-macro-support v0.2.126 Downloaded url v2.5.8 Downloaded windows v0.48.0 Downloaded serde v1.0.228 Downloaded proc-macro2 v1.0.106 Downloaded icu_collections v2.2.0 Downloaded zerotrie v0.2.4 Downloaded bumpalo v3.20.3 Downloaded memchr v2.8.3 Downloaded indexmap v2.14.0 Downloaded js-sys v0.3.103 Downloaded zerovec v0.11.6 Downloaded idna v1.1.0 Downloaded cyphernet v0.5.4 Downloaded rust_decimal v1.42.1 Downloaded hashbrown v0.17.1 Downloaded clap_builder v4.6.6 Downloaded futures-util v0.3.32 Downloaded icu_properties_data v2.2.0 Downloaded winnow v0.7.15 Downloaded serde_json v1.0.150 Downloaded tracing-subscriber v0.3.23 Downloaded syn v1.0.109 Downloaded time v0.3.53 Downloaded syn v3.0.3 Downloaded syn v2.0.118 Downloaded tracing v0.1.44 Downloaded libc v0.2.189 Downloaded windows-sys v0.61.2 Downloaded linux-raw-sys v0.12.1
- action: cargo_fetch
- action: tar_create archive: /dev/vde directory: /ci/cache
- action: tar_create archive: /dev/vdd directory: /ci/artifacts
- action: tar_create archive: /dev/vdf directory: /ci/deps
BdsDxe: 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(0x3,0x0)
BdsDxe: starting Boot0002 "UEFI Misc Device" from PciRoot(0x0)/Pci(0x3,0x0)
Booting `Debian GNU/Linux'
Loading Linux 6.12.86+deb13-amd64 ...
Loading initial ramdisk ...
EFI stub: Loaded initrd from LINUX_EFI_INITRD_MEDIA_GUID device path
Loading, please wait...
Starting systemd-udevd version 257.13-1~deb13u1
Begin: Loading essential drivers ... done.
Begin: Running /scripts/init-premount ... done.
Begin: Mounting root file system ... Begin: Running /scripts/local-top ... done.
Begin: Running /scripts/local-premount ... done.
Begin: Will now check root file system ... fsck from util-linux 2.41
fsck: error 2 (No such file or directory) while executing fsck.ext4 for /dev/vda2
fsck exited with status code 8
done.
Warning: File system check failed but did not detect errors
done.
Begin: Running /scripts/local-bottom ... done.
Begin: Running /scripts/init-bottom ... done.
Welcome to Debian GNU/Linux 13 (trixie)!
[ OK ] Created slice system-getty.slice - Slice /system/getty.
[ OK ] Created slice system-modprobe.slice - Slice /system/modprobe.
[ OK ] Created slice system-serial\x2dget…slice - Slice /system/serial-getty.
[ OK ] Created slice user.slice - User and Session Slice.
[ OK ] Started systemd-ask-password-conso…equests to Console Directory Watch.
[ OK ] Started systemd-ask-password-wall.…d Requests to Wall Directory Watch.
[ OK ] Set up automount proc-sys-fs-binfm…ormats File System Automount Point.
Expecting device dev-ttyS0.device - /dev/ttyS0...
[ OK ] Reached target paths.target - Path Units.
[ OK ] Reached target remote-fs.target - Remote File Systems.
[ OK ] Reached target slices.target - Slice Units.
[ OK ] Reached target swap.target - Swaps.
[ OK ] Listening on systemd-creds.socket - Credential Encryption/Decryption.
[ OK ] Listening on systemd-initctl.socke…- initctl Compatibility Named Pipe.
[ OK ] Listening on systemd-journald-dev-…socket - Journal Socket (/dev/log).
[ OK ] Listening on systemd-journald.socket - Journal Sockets.
[ OK ] Listening on systemd-networkd.socket - Network Service Netlink Socket.
[ OK ] Listening on systemd-udevd-control.socket - udev Control Socket.
[ OK ] Listening on systemd-udevd-kernel.socket - udev Kernel Socket.
Mounting dev-hugepages.mount - Huge Pages File System...
Mounting dev-mqueue.mount - POSIX Message Queue File System...
Mounting run-lock.mount - Legacy Locks Directory /run/lock...
Mounting sys-kernel-debug.mount - Kernel Debug File System...
Mounting sys-kernel-tracing.mount - Kernel Trace File System...
Mounting tmp.mount - Temporary Directory /tmp...
Starting kmod-static-nodes.service…eate List of Static Device Nodes...
Starting modprobe@configfs.service - Load Kernel Module configfs...
Starting modprobe@drm.service - Load Kernel Module drm...
Starting modprobe@efi_pstore.servi… - Load Kernel Module efi_pstore...
Starting modprobe@fuse.service - Load Kernel Module fuse...
Starting systemd-journald.service - Journal Service...
Starting systemd-modules-load.service - Load Kernel Modules...
Starting systemd-network-generator…k Units from Kernel Command Line...
Starting systemd-remount-fs.servic…unt Root and Kernel File Systems...
Starting systemd-udev-load-credent…Load udev Rules from Credentials...
Starting systemd-udev-trigger.service - Coldplug All udev Devices...
[ OK ] Mounted dev-hugepages.mount - Huge Pages File System.
[ OK ] Started systemd-journald.service - Journal Service.
[ OK ] Mounted dev-mqueue.mount - POSIX Message Queue File System.
[ OK ] Mounted run-lock.mount - Legacy Locks Directory /run/lock.
[ OK ] Mounted sys-kernel-debug.mount - Kernel Debug File System.
[ OK ] Mounted sys-kernel-tracing.mount - Kernel Trace File System.
[ OK ] Mounted tmp.mount - Temporary Directory /tmp.
[ OK ] Finished kmod-static-nodes.service…Create List of Static Device Nodes.
[ OK ] Finished modprobe@configfs.service - Load Kernel Module configfs.
[ OK ] Finished modprobe@drm.service - Load Kernel Module drm.
[ OK ] Finished modprobe@efi_pstore.service - Load Kernel Module efi_pstore.
[ OK ] Finished modprobe@fuse.service - Load Kernel Module fuse.
[ OK ] Finished systemd-modules-load.service - Load Kernel Modules.
[ OK ] Finished systemd-network-generator…ork Units from Kernel Command Line.
[ OK ] Finished systemd-remount-fs.servic…mount Root and Kernel File Systems.
[ OK ] Finished systemd-udev-load-credent…- Load udev Rules from Credentials.
[ OK ] Reached target network-pre.target - Preparation for Network.
Mounting sys-fs-fuse-connections.mount - FUSE Control File System...
Mounting sys-kernel-config.mount - Kernel Configuration File System...
Starting systemd-journal-flush.ser…sh Journal to Persistent Storage...
Starting systemd-random-seed.service - Load/Save OS Random Seed...
Starting systemd-sysctl.service - Apply Kernel Variables...
Starting systemd-tmpfiles-setup-de… Device Nodes in /dev gracefully...
[ OK ] Mounted sys-fs-fuse-connections.mount - FUSE Control File System.
[ OK ] Mounted sys-kernel-config.mount - Kernel Configuration File System.
[ OK ] Finished systemd-udev-trigger.service - Coldplug All udev Devices.
[ OK ] Finished systemd-sysctl.service - Apply Kernel Variables.
[ OK ] Finished systemd-tmpfiles-setup-de…ic Device Nodes in /dev gracefully.
Starting systemd-sysusers.service - Create System Users...
[ OK ] Finished systemd-random-seed.service - Load/Save OS Random Seed.
[ OK ] Finished systemd-sysusers.service - Create System Users.
Starting systemd-resolved.service - Network Name Resolution...
Starting systemd-tmpfiles-setup-de…eate Static Device Nodes in /dev...
[ OK ] Finished systemd-journal-flush.ser…lush Journal to Persistent Storage.
[ OK ] Finished systemd-tmpfiles-setup-de…Create Static Device Nodes in /dev.
[ OK ] Reached target local-fs-pre.target…Preparation for Local File Systems.
[ OK ] Set up automount efi.automount - EFI System Partition Automount.
[ OK ] Reached target local-fs.target - Local File Systems.
[ OK ] Listening on systemd-sysext.socket… System Extension Image Management.
Starting systemd-binfmt.service - Set Up Additional Binary Formats...
Starting systemd-tmpfiles-setup.se…ate System Files and Directories...
Starting systemd-udevd.service - R…ager for Device Events and Files...
[ OK ] Started systemd-resolved.service - Network Name Resolution.
[ OK ] Reached target nss-lookup.target - Host and Network Name Lookups.
[ OK ] Finished systemd-tmpfiles-setup.se…reate System Files and Directories.
Starting ldconfig.service - Rebuild Dynamic Linker Cache...
Starting systemd-journal-catalog-u…ervice - Rebuild Journal Catalog...
[ OK ] Started systemd-udevd.service - Ru…anager for Device Events and Files.
Starting systemd-networkd.service - Network Configuration...
[ OK ] Finished systemd-journal-catalog-u….service - Rebuild Journal Catalog.
[ OK ] Found device dev-ttyS0.device - /dev/ttyS0.
[ OK ] Finished ldconfig.service - Rebuild Dynamic Linker Cache.
Starting systemd-update-done.service - Update is Completed...
[ OK ] Finished systemd-update-done.service - Update is Completed.
Mounting proc-sys-fs-binfmt_misc.m…cutable File Formats File System...
[ OK ] Mounted proc-sys-fs-binfmt_misc.mo…xecutable File Formats File System.
[ OK ] Finished systemd-binfmt.service - Set Up Additional Binary Formats.
[ OK ] Reached target sysinit.target - System Initialization.
[ OK ] Started apt-daily.timer - Daily apt download activities.
[ OK ] Started apt-daily-upgrade.timer - …y apt upgrade and clean activities.
[ OK ] Started dpkg-db-backup.timer - Daily dpkg database backup timer.
[ OK ] Started fstrim.timer - Discard unused filesystem blocks once a week.
[ OK ] Started man-db.timer - Daily man-db regeneration.
[ OK ] Started systemd-tmpfiles-clean.tim…y Cleanup of Temporary Directories.
[ OK ] Reached target timers.target - Timer Units.
[ OK ] Listening on dbus.socket - D-Bus System Message Bus Socket.
[ OK ] Listening on sshd-unix-local.socke…temd-ssh-generator, AF_UNIX Local).
[ OK ] Listening on systemd-hostnamed.socket - Hostname Service Socket.
[ OK ] Reached target sockets.target - Socket Units.
[ OK ] Reached target basic.target - Basic System.
Starting ambient.service - Run build job for Ambient CI...
Starting dbus.service - D-Bus System Message Bus...
Starting grub-common.service - Record successful boot for GRUB...
Starting systemd-logind.service - User Login Management...
[ OK ] Started dbus.service - D-Bus System Message Bus.
[ OK ] Listening on systemd-rfkill.socket…ll Switch Status /dev/rfkill Watch.
[ OK ] Started systemd-logind.service - User Login Management.
[ OK ] Finished grub-common.service - Record successful boot for GRUB.
[ OK ] Started systemd-networkd.service - Network Configuration.
[ OK ] Reached target network.target - Network.
Starting ssh.service - OpenBSD Secure Shell server...
Starting systemd-networkd-persiste…tent Storage in systemd-networkd...
Starting systemd-user-sessions.service - Permit User Sessions...
[ OK ] Finished systemd-user-sessions.service - Permit User Sessions.
[ OK ] Started getty@tty1.service - Getty on tty1.
[ OK ] Started serial-getty@ttyS0.service - Serial Getty on ttyS0.
[ OK ] Reached target getty.target - Login Prompts.
[ OK ] Finished systemd-networkd-persiste…istent Storage in systemd-networkd.
[ OK ] Started ssh.service - OpenBSD Secure Shell server.
Debian GNU/Linux 13 ambient-dev ttyS0
ambient-dev login: [ OK ] Removed slice system-modprobe.slice - Slice /system/modprobe.
[ OK ] Stopped target getty.target - Login Prompts.
[ OK ] Stopped target nss-lookup.target - Host and Network Name Lookups.
[ OK ] Stopped target timers.target - Timer Units.
[ OK ] Stopped apt-daily-upgrade.timer - …y apt upgrade and clean activities.
[ OK ] Stopped apt-daily.timer - Daily apt download activities.
[ OK ] Stopped dpkg-db-backup.timer - Daily dpkg database backup timer.
[ OK ] Stopped fstrim.timer - Discard unused filesystem blocks once a week.
[ OK ] Stopped man-db.timer - Daily man-db regeneration.
[ OK ] Stopped systemd-tmpfiles-clean.tim…y Cleanup of Temporary Directories.
[ OK ] Closed systemd-rfkill.socket - Loa…ll Switch Status /dev/rfkill Watch.
Stopping dbus.service - D-Bus System Message Bus...
Stopping getty@tty1.service - Getty on tty1...
Stopping serial-getty@ttyS0.service - Serial Getty on ttyS0...
Stopping ssh.service - OpenBSD Secure Shell server...
Stopping systemd-logind.service - User Login Management...
Stopping systemd-networkd-persiste…tent Storage in systemd-networkd...
[ OK ] Stopped systemd-networkd-wait-onli… Wait for Network to be Configured.
Stopping systemd-random-seed.service - Load/Save OS Random Seed...
[ OK ] Stopped systemd-udev-load-credenti…- Load udev Rules from Credentials.
[ OK ] Stopped dbus.service - D-Bus System Message Bus.
[ OK ] Stopped getty@tty1.service - Getty on tty1.
[ OK ] Stopped serial-getty@ttyS0.service - Serial Getty on ttyS0.
[ OK ] Stopped ssh.service - OpenBSD Secure Shell server.
[ OK ] Stopped ambient.service - Run build job for Ambient CI.
[ OK ] Stopped systemd-networkd-persisten…istent Storage in systemd-networkd.
[ OK ] Stopped systemd-random-seed.service - Load/Save OS Random Seed.
[ OK ] Stopped systemd-logind.service - User Login Management.
[ OK ] Removed slice system-getty.slice - Slice /system/getty.
[ OK ] Removed slice system-serial\x2dget…slice - Slice /system/serial-getty.
Stopping systemd-user-sessions.service - Permit User Sessions...
[ OK ] Stopped systemd-user-sessions.service - Permit User Sessions.
[ OK ] Stopped target basic.target - Basic System.
[ OK ] Stopped target network.target - Network.
[ OK ] Stopped target paths.target - Path Units.
[ OK ] Stopped systemd-ask-password-conso…equests to Console Directory Watch.
[ OK ] Stopped systemd-ask-password-wall.…d Requests to Wall Directory Watch.
[ OK ] Stopped target remote-fs.target - Remote File Systems.
[ OK ] Stopped target slices.target - Slice Units.
[ OK ] Removed slice user.slice - User and Session Slice.
[ OK ] Stopped target sockets.target - Socket Units.
[ OK ] Closed dbus.socket - D-Bus System Message Bus Socket.
[ OK ] Closed sshd-unix-local.socket - Op…temd-ssh-generator, AF_UNIX Local).
[ OK ] Closed systemd-hostnamed.socket - Hostname Service Socket.
[ OK ] Stopped target sysinit.target - System Initialization.
Stopping systemd-binfmt.service - Set Up Additional Binary Formats...
Stopping systemd-networkd.service - Network Configuration...
Stopping systemd-resolved.service - Network Name Resolution...
[ OK ] Stopped systemd-update-done.service - Update is Completed.
[ OK ] Stopped ldconfig.service - Rebuild Dynamic Linker Cache.
[ OK ] Stopped systemd-journal-catalog-up….service - Rebuild Journal Catalog.
[ OK ] Stopped systemd-tmpfiles-setup.ser…reate System Files and Directories.
[ OK ] Stopped systemd-binfmt.service - Set Up Additional Binary Formats.
[ OK ] Unset automount proc-sys-fs-binfmt…ormats File System Automount Point.
[ OK ] Stopped target local-fs.target - Local File Systems.
[ OK ] Unset automount efi.automount - EFI System Partition Automount.
[ OK ] Stopped target local-fs-pre.target…Preparation for Local File Systems.
Unmounting run-lock.mount - Legacy Locks Directory /run/lock...
Unmounting tmp.mount - Temporary Directory /tmp...
[ OK ] Stopped systemd-tmpfiles-setup-dev…Create Static Device Nodes in /dev.
[ OK ] Stopped systemd-resolved.service - Network Name Resolution.
[ OK ] Stopped systemd-networkd.service - Network Configuration.
[ OK ] Unmounted run-lock.mount - Legacy Locks Directory /run/lock.
[ OK ] Unmounted tmp.mount - Temporary Directory /tmp.
[ OK ] Stopped target network-pre.target - Preparation for Network.
[ OK ] Stopped target swap.target - Swaps.
[ OK ] Reached target umount.target - Unmount All Filesystems.
[ OK ] Closed systemd-networkd.socket - Network Service Netlink Socket.
[ OK ] Stopped systemd-network-generator.…ork Units from Kernel Command Line.
[ OK ] Stopped systemd-sysctl.service - Apply Kernel Variables.
[ OK ] Stopped systemd-modules-load.service - Load Kernel Modules.
[ OK ] Stopped systemd-sysusers.service - Create System Users.
[ OK ] Stopped systemd-remount-fs.service…mount Root and Kernel File Systems.
[ OK ] Stopped systemd-tmpfiles-setup-dev…ic Device Nodes in /dev gracefully.
[ OK ] Reached target shutdown.target - System Shutdown.
[ OK ] Reached target final.target - Late Shutdown Services.
[ OK ] Finished systemd-poweroff.service - System Power Off.
[ OK ] Reached target poweroff.target - System Power Off.
[ 37.922618] reboot: Power down
BdsDxe: 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(0x3,0x0)
BdsDxe: starting Boot0002 "UEFI Misc Device" from PciRoot(0x0)/Pci(0x3,0x0)
EFI stub: Loaded initrd from LINUX_EFI_INITRD_MEDIA_GUID device path
INFO: Block devices
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sr0 11:0 1 372K 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 5.2M 1 disk
vdc 254:32 0 11.9M 1 disk
vdd 254:48 0 953.7M 0 disk
vde 254:64 0 27.9G 0 disk
vdf 254:80 0 100G 0 disk
vdg 254:96 0 10K 1 disk
INFO: Extracting tar archive from /dev/vdb
drwxr-xr-x _rad/_rad 0 2026-08-24 15:10 ./
-rw-r--r-- _rad/_rad 1346 2026-08-24 15:10 ./plan.yaml
-rwxr-xr-x _rad/_rad 5460288 2026-08-24 15:10 ./run-ci
INFO: Extracted files:
8 0 drwxr-xr-x 2 1000 1000 80 Aug 24 15:10 .
10 5336 -rwxr-xr-x 1 1000 1000 5460288 Aug 24 15:10 ./run-ci
9 4 -rw-r--r-- 1 1000 1000 1346 Aug 24 15:10 ./plan.yaml
INFO: Running run-ci from /dev/vdb
================================ BEGIN ================================
{"type":"executor_starts","name":"ambient-execute-plan","version":"0.18.0@5360d3f","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":8375807}}
{"type":"trace","title":"Set environment variable \"HOME\"","msg":"\"HOME\"=\"/root\"","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":8414636}}
{"type":"runnable_plan","steps":[{"action":"mkdir","pathname":"/ci"},{"action":"mkdir","pathname":"/ci/artifacts"},{"action":"mkdir","pathname":"/ci/artifacts/debian"},{"action":"mkdir","pathname":"/ci/artifacts/rsync"},{"action":"mkdir","pathname":"/ci/secrets"},{"action":"mkdir","pathname":"/ci/deps"},{"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":"tar_extract","archive":"/dev/vdd","directory":"/ci/artifacts"},{"action":"tar_extract","archive":"/dev/vdg","directory":"/ci/secrets"},{"action":"shell","shell":"ln -sf /ci /workspace"},{"action":"create_file","filename":"/root/.ssh/config","content":"Host *\nStrictHostKeyChecking accept-new\nIdentityFile /ci/secrets/ssh_key\n ","overwrite":true},{"action":"wait_online"},{"action":"network_diagnostics"},{"action":"cargo_fetch"},{"action":"tar_create","archive":"/dev/vde","directory":"/ci/cache"},{"action":"tar_create","archive":"/dev/vdd","directory":"/ci/artifacts"},{"action":"tar_create","archive":"/dev/vdf","directory":"/ci/deps"}],"executor_drive":"/dev/vdb","source_drive":"/dev/vdc","artifact_drive":"/dev/vdd","cache_drive":"/dev/vde","deps_drive":"/dev/vdf","secrets_drive":null,"workspace_dir":"/ci","source_dir":"/ci/src","deps_dir":"/ci/deps","cache_dir":"/ci/cache","artifacts_dir":"/ci/artifacts","secrets_dir":null,"envs":{},"timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":8853967}}
{"type":"trace","title":"Set environment variable \"CARGO_TARGET_DIR\"","msg":"\"CARGO_TARGET_DIR\"=\"/ci/cache/cargo-target\"","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":9044568}}
{"type":"trace","title":"Set environment variable \"CARGO_HOME\"","msg":"\"CARGO_HOME\"=\"/ci/deps\"","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":9243111}}
{"type":"trace","title":"Set environment variable \"PATH\"","msg":"\"PATH\"=\"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\"","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":9249115}}
{"type":"trace","title":"Set environment variable \"CARGO_TARGET_DIR\"","msg":"\"CARGO_TARGET_DIR\"=\"/ci/cache/cargo-target\"","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":9449747}}
{"type":"trace","title":"Set environment variable \"CARGO_HOME\"","msg":"\"CARGO_HOME\"=\"/ci/deps\"","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":9454086}}
{"type":"trace","title":"Set environment variable \"PATH\"","msg":"\"PATH\"=\"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\"","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":9656336}}
{"type":"trace","title":"Execute action","msg":"Mkdir(\n Mkdir {\n pathname: \"/ci\",\n },\n)","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":9662710}}
{"type":"action_succeeded","action":"mkdir","pathname":"/ci","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":10331635}}
{"type":"trace","title":"Execute action","msg":"Mkdir(\n Mkdir {\n pathname: \"/ci/artifacts\",\n },\n)","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":10483993}}
{"type":"action_succeeded","action":"mkdir","pathname":"/ci/artifacts","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":10511632}}
{"type":"trace","title":"Execute action","msg":"Mkdir(\n Mkdir {\n pathname: \"/ci/artifacts/debian\",\n },\n)","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":10689748}}
{"type":"action_succeeded","action":"mkdir","pathname":"/ci/artifacts/debian","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":10716653}}
{"type":"trace","title":"Execute action","msg":"Mkdir(\n Mkdir {\n pathname: \"/ci/artifacts/rsync\",\n },\n)","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":10911500}}
{"type":"action_succeeded","action":"mkdir","pathname":"/ci/artifacts/rsync","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":11194957}}
{"type":"trace","title":"Execute action","msg":"Mkdir(\n Mkdir {\n pathname: \"/ci/secrets\",\n },\n)","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":65037350}}
{"type":"action_succeeded","action":"mkdir","pathname":"/ci/secrets","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":65275766}}
{"type":"trace","title":"Execute action","msg":"Mkdir(\n Mkdir {\n pathname: \"/ci/deps\",\n },\n)","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":65448567}}
{"type":"action_succeeded","action":"mkdir","pathname":"/ci/deps","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":65474836}}
{"type":"trace","title":"Execute action","msg":"TarExtract(\n TarExtract {\n archive: \"/dev/vdc\",\n directory: \"/ci/src\",\n },\n)","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":65655834}}
{"type":"action_succeeded","action":"tar_extract","archive":"/dev/vdc","directory":"/ci/src","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":120138313}}
{"type":"trace","title":"Execute action","msg":"TarExtract(\n TarExtract {\n archive: \"/dev/vdf\",\n directory: \"/ci/deps\",\n },\n)","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":120212536}}
{"type":"action_succeeded","action":"tar_extract","archive":"/dev/vdf","directory":"/ci/deps","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":125738810}}
{"type":"trace","title":"Execute action","msg":"TarExtract(\n TarExtract {\n archive: \"/dev/vde\",\n directory: \"/ci/cache\",\n },\n)","timestamp":{"secs_since_epoch":1787584227,"nanos_since_epoch":125783669}}
{"type":"action_succeeded","action":"tar_extract","archive":"/dev/vde","directory":"/ci/cache","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":77911595}}
{"type":"trace","title":"Execute action","msg":"TarExtract(\n TarExtract {\n archive: \"/dev/vdd\",\n directory: \"/ci/artifacts\",\n },\n)","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":77951481}}
{"type":"action_succeeded","action":"tar_extract","archive":"/dev/vdd","directory":"/ci/artifacts","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":85543537}}
{"type":"trace","title":"Execute action","msg":"TarExtract(\n TarExtract {\n archive: \"/dev/vdg\",\n directory: \"/ci/secrets\",\n },\n)","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":85568243}}
{"type":"action_succeeded","action":"tar_extract","archive":"/dev/vdg","directory":"/ci/secrets","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":91155873}}
{"type":"trace","title":"Execute action","msg":"Shell(\n Shell {\n shell: \"ln -sf /ci /workspace\",\n },\n)","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":93526215}}
{"type":"trace","title":"Start program bash","msg":"Command {\n program: \"bash\",\n args: [\n \"bash\",\n \"-c\",\n \"set -xeuo pipefail\\nln -sf /ci /workspace\\n\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":96252160}}
{"type":"program_succeeded","program_name":"bash","exit_code":0,"stdout":"","stderr":"+ ln -sf /ci /workspace\n","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":109908539}}
{"type":"action_succeeded","action":"shell","shell":"ln -sf /ci /workspace","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":112482428}}
{"type":"trace","title":"Execute action","msg":"CreateFile(\n CreateFile {\n filename: \"/root/.ssh/config\",\n content: \"Host *\\nStrictHostKeyChecking accept-new\\nIdentityFile /ci/secrets/ssh_key\\n \",\n overwrite: true,\n },\n)","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":114577917}}
{"type":"action_succeeded","action":"create_file","filename":"/root/.ssh/config","content":"Host *\nStrictHostKeyChecking accept-new\nIdentityFile /ci/secrets/ssh_key\n ","overwrite":true,"timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":119664117}}
{"type":"trace","title":"Execute action","msg":"WaitOnline(\n WaitOnline,\n)","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":123410563}}
{"type":"trace","title":"Start program systemctl","msg":"Command {\n program: \"systemctl\",\n args: [\n \"systemctl\",\n \"start\",\n \"systemd-networkd-wait-online\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":125562883}}
{"type":"program_succeeded","program_name":"systemctl","exit_code":0,"stdout":"","stderr":"","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":166978128}}
{"type":"trace","title":"Start program systemctl","msg":"Command {\n program: \"systemctl\",\n args: [\n \"systemctl\",\n \"status\",\n \"systemd-networkd-wait-online\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":167033336}}
{"type":"program_succeeded","program_name":"systemctl","exit_code":0,"stdout":"● systemd-networkd-wait-online.service - Wait for Network to be Configured\n Loaded: loaded (/usr/lib/systemd/system/systemd-networkd-wait-online.service; enabled; preset: enabled)\n Active: active (exited) since Mon 2026-08-24 15:10:35 UTC; 20ms ago\n Invocation: 05262b9796b1440fa6dd5a0767dda8d2\n Docs: man:systemd-networkd-wait-online.service(8)\n Process: 429 ExecStart=/usr/lib/systemd/systemd-networkd-wait-online (code=exited, status=0/SUCCESS)\n Main PID: 429 (code=exited, status=0/SUCCESS)\n Mem peak: 1.8M\n CPU: 7ms\n\nAug 24 15:10:35 ambient-dev systemd[1]: Starting systemd-networkd-wait-online.service - Wait for Network to be Configured...\nAug 24 15:10:35 ambient-dev systemd[1]: Finished systemd-networkd-wait-online.service - Wait for Network to be Configured.\n","stderr":"","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":187211290}}
{"type":"trace","title":"Start program systemctl","msg":"Command {\n program: \"systemctl\",\n args: [\n \"systemctl\",\n \"status\",\n \"systemd-networkd\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":187278256}}
{"type":"program_succeeded","program_name":"systemctl","exit_code":0,"stdout":"● systemd-networkd.service - Network Configuration\n Loaded: loaded (/usr/lib/systemd/system/systemd-networkd.service; enabled; preset: enabled)\n Active: active (running) since Mon 2026-08-24 15:10:27 UTC; 8s ago\n Invocation: 63fc0c9726244ad8b22dbf85d611ca76\nTriggeredBy: ● systemd-networkd.socket\n Docs: man:systemd-networkd.service(8)\n man:org.freedesktop.network1(5)\n Main PID: 323 (systemd-network)\n Status: \"Processing requests...\"\n Tasks: 1 (limit: 13288)\n FD Store: 0 (limit: 512)\n Memory: 3.8M (peak: 13.3M)\n CPU: 81ms\n CGroup: /system.slice/systemd-networkd.service\n └─323 /usr/lib/systemd/systemd-networkd\n\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: lo: Link UP\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: lo: Gained carrier\nAug 24 15:10:27 ambient-dev systemd[1]: Started systemd-networkd.service - Network Configuration.\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Found matching .network file, based on potentially unpredictable interface name: /etc/systemd/network/external.network\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Configuring with /etc/systemd/network/external.network.\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Link UP\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Gained carrier\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Found matching .network file, based on potentially unpredictable interface name: /etc/systemd/network/external.network\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: DHCPv4 address 10.0.2.15/24, gateway 10.0.2.2 acquired from 10.0.2.2\nAug 24 15:10:28 ambient-dev systemd-networkd[323]: eth0: Gained IPv6LL\n","stderr":"","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":216538645}}
{"type":"trace","title":"Start program systemctl","msg":"Command {\n program: \"systemctl\",\n args: [\n \"systemctl\",\n \"status\",\n \"systemd-networkd-wait-online\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":216601858}}
{"type":"program_succeeded","program_name":"systemctl","exit_code":0,"stdout":"● systemd-networkd-wait-online.service - Wait for Network to be Configured\n Loaded: loaded (/usr/lib/systemd/system/systemd-networkd-wait-online.service; enabled; preset: enabled)\n Active: active (exited) since Mon 2026-08-24 15:10:35 UTC; 89ms ago\n Invocation: 05262b9796b1440fa6dd5a0767dda8d2\n Docs: man:systemd-networkd-wait-online.service(8)\n Process: 429 ExecStart=/usr/lib/systemd/systemd-networkd-wait-online (code=exited, status=0/SUCCESS)\n Main PID: 429 (code=exited, status=0/SUCCESS)\n Mem peak: 1.8M\n CPU: 7ms\n\nAug 24 15:10:35 ambient-dev systemd[1]: Starting systemd-networkd-wait-online.service - Wait for Network to be Configured...\nAug 24 15:10:35 ambient-dev systemd[1]: Finished systemd-networkd-wait-online.service - Wait for Network to be Configured.\n","stderr":"","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":256507949}}
{"type":"trace","title":"Start program systemctl","msg":"Command {\n program: \"systemctl\",\n args: [\n \"systemctl\",\n \"show\",\n \"systemd-networkd-wait-online\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":256550668}}
{"type":"program_succeeded","program_name":"systemctl","exit_code":0,"stdout":"Type=oneshot\nExitType=main\nRestart=no\nRestartMode=normal\nNotifyAccess=none\nRestartUSec=100ms\nRestartSteps=0\nRestartMaxDelayUSec=infinity\nRestartUSecNext=100ms\nTimeoutStartUSec=infinity\nTimeoutStopUSec=1min 30s\nTimeoutAbortUSec=1min 30s\nTimeoutStartFailureMode=terminate\nTimeoutStopFailureMode=terminate\nRuntimeMaxUSec=infinity\nRuntimeRandomizedExtraUSec=0\nWatchdogUSec=0\nWatchdogTimestampMonotonic=0\nRootDirectoryStartOnly=no\nRemainAfterExit=yes\nGuessMainPID=yes\nMainPID=0\nControlPID=0\nFileDescriptorStoreMax=0\nNFileDescriptorStore=0\nFileDescriptorStorePreserve=restart\nStatusErrno=0\nResult=success\nReloadResult=success\nCleanResult=success\nLiveMountResult=success\nUID=[not set]\nGID=[not set]\nNRestarts=0\nOOMPolicy=stop\nReloadSignal=1\nExecMainStartTimestamp=Mon 2026-08-24 15:10:35 UTC\nExecMainStartTimestampMonotonic=16149149\nExecMainExitTimestamp=Mon 2026-08-24 15:10:35 UTC\nExecMainExitTimestampMonotonic=16172300\nExecMainHandoffTimestamp=Mon 2026-08-24 15:10:35 UTC\nExecMainHandoffTimestampMonotonic=16168360\nExecMainPID=429\nExecMainCode=1\nExecMainStatus=0\nExecStart={ path=/usr/lib/systemd/systemd-networkd-wait-online ; argv[]=/usr/lib/systemd/systemd-networkd-wait-online ; ignore_errors=no ; start_time=[Mon 2026-08-24 15:10:35 UTC] ; stop_time=[Mon 2026-08-24 15:10:35 UTC] ; pid=429 ; code=exited ; status=0 }\nExecStartEx={ path=/usr/lib/systemd/systemd-networkd-wait-online ; argv[]=/usr/lib/systemd/systemd-networkd-wait-online ; flags= ; start_time=[Mon 2026-08-24 15:10:35 UTC] ; stop_time=[Mon 2026-08-24 15:10:35 UTC] ; pid=429 ; code=exited ; status=0 }\nSlice=system.slice\nControlGroupId=2153\nMemoryCurrent=[not set]\nMemoryPeak=1929216\nMemorySwapCurrent=[not set]\nMemorySwapPeak=0\nMemoryZSwapCurrent=[not set]\nMemoryAvailable=11120476160\nEffectiveMemoryMax=11670540288\nEffectiveMemoryHigh=11670540288\nCPUUsageNSec=7536000\nTasksCurrent=[not set]\nEffectiveTasksMax=13288\nIPIngressBytes=[no data]\nIPIngressPackets=[no data]\nIPEgressBytes=[no data]\nIPEgressPackets=[no data]\nIOReadBytes=[not set]\nIOReadOperations=[not set]\nIOWriteBytes=[not set]\nIOWriteOperations=[not set]\nDelegate=no\nCPUAccounting=yes\nCPUWeight=[not set]\nStartupCPUWeight=[not set]\nCPUShares=[not set]\nStartupCPUShares=[not set]\nCPUQuotaPerSecUSec=infinity\nCPUQuotaPeriodUSec=infinity\nIOAccounting=no\nIOWeight=[not set]\nStartupIOWeight=[not set]\nBlockIOAccounting=no\nBlockIOWeight=[not set]\nStartupBlockIOWeight=[not set]\nMemoryAccounting=yes\nDefaultMemoryLow=0\nDefaultStartupMemoryLow=0\nDefaultMemoryMin=0\nMemoryMin=0\nMemoryLow=0\nStartupMemoryLow=0\nMemoryHigh=infinity\nStartupMemoryHigh=infinity\nMemoryMax=infinity\nStartupMemoryMax=infinity\nMemorySwapMax=infinity\nStartupMemorySwapMax=infinity\nMemoryZSwapMax=infinity\nStartupMemoryZSwapMax=infinity\nMemoryZSwapWriteback=yes\nMemoryLimit=infinity\nDevicePolicy=auto\nTasksAccounting=yes\nTasksMax=13288\nIPAccounting=no\nManagedOOMSwap=auto\nManagedOOMMemoryPressure=auto\nManagedOOMMemoryPressureLimit=0\nManagedOOMMemoryPressureDurationUSec=[not set]\nManagedOOMPreference=none\nMemoryPressureWatch=auto\nMemoryPressureThresholdUSec=200ms\nCoredumpReceive=no\nUMask=0022\nLimitCPU=infinity\nLimitCPUSoft=infinity\nLimitFSIZE=infinity\nLimitFSIZESoft=infinity\nLimitDATA=infinity\nLimitDATASoft=infinity\nLimitSTACK=infinity\nLimitSTACKSoft=8388608\nLimitCORE=infinity\nLimitCORESoft=0\nLimitRSS=infinity\nLimitRSSSoft=infinity\nLimitNOFILE=524288\nLimitNOFILESoft=1024\nLimitAS=infinity\nLimitASSoft=infinity\nLimitNPROC=44294\nLimitNPROCSoft=44294\nLimitMEMLOCK=8388608\nLimitMEMLOCKSoft=8388608\nLimitLOCKS=infinity\nLimitLOCKSSoft=infinity\nLimitSIGPENDING=44294\nLimitSIGPENDINGSoft=44294\nLimitMSGQUEUE=819200\nLimitMSGQUEUESoft=819200\nLimitNICE=0\nLimitNICESoft=0\nLimitRTPRIO=0\nLimitRTPRIOSoft=0\nLimitRTTIME=infinity\nLimitRTTIMESoft=infinity\nRootEphemeral=no\nOOMScoreAdjust=0\nCoredumpFilter=0x33\nNice=0\nIOSchedulingClass=2\nIOSchedulingPriority=4\nCPUSchedulingPolicy=0\nCPUSchedulingPriority=0\nCPUAffinityFromNUMA=no\nNUMAPolicy=n/a\nTimerSlackNSec=50000\nCPUSchedulingResetOnFork=no\nNonBlocking=no\nStandardInput=null\nStandardOutput=journal\nStandardError=inherit\nTTYReset=no\nTTYVHangup=no\nTTYVTDisallocate=no\nSyslogPriority=30\nSyslogLevelPrefix=yes\nSyslogLevel=6\nSyslogFacility=3\nLogLevelMax=-1\nLogRateLimitIntervalUSec=0\nLogRateLimitBurst=0\nSecureBits=0\nCapabilityBoundingSet=cap_chown cap_dac_override cap_dac_read_search cap_fowner cap_fsetid cap_kill cap_setgid cap_setuid cap_setpcap cap_linux_immutable cap_net_bind_service cap_net_broadcast cap_net_admin cap_net_raw cap_ipc_lock cap_ipc_owner cap_sys_module cap_sys_rawio cap_sys_chroot cap_sys_ptrace cap_sys_pacct cap_sys_admin cap_sys_boot cap_sys_nice cap_sys_resource cap_sys_time cap_sys_tty_config cap_mknod cap_lease cap_audit_write cap_audit_control cap_setfcap cap_mac_override cap_mac_admin cap_syslog cap_wake_alarm cap_block_suspend cap_audit_read cap_perfmon cap_bpf cap_checkpoint_restore\nDynamicUser=no\nSetLoginEnvironment=no\nRemoveIPC=no\nPrivateTmp=no\nPrivateTmpEx=no\nPrivateDevices=no\nProtectClock=no\nProtectKernelTunables=no\nProtectKernelModules=no\nProtectKernelLogs=no\nProtectControlGroups=no\nProtectControlGroupsEx=no\nPrivateNetwork=no\nPrivateUsers=no\nPrivateUsersEx=no\nPrivateMounts=no\nPrivateIPC=no\nPrivatePIDs=no\nProtectHome=no\nProtectSystem=no\nSameProcessGroup=no\nUtmpMode=init\nIgnoreSIGPIPE=yes\nNoNewPrivileges=no\nSystemCallErrorNumber=2147483646\nLockPersonality=no\nRuntimeDirectoryPreserve=no\nRuntimeDirectoryMode=0755\nStateDirectoryMode=0755\nCacheDirectoryMode=0755\nLogsDirectoryMode=0755\nConfigurationDirectoryMode=0755\nTimeoutCleanUSec=infinity\nMemoryDenyWriteExecute=no\nRestrictRealtime=no\nRestrictSUIDSGID=no\nRestrictNamespaces=no\nMountAPIVFS=no\nBindLogSockets=no\nKeyringMode=private\nProtectProc=default\nProcSubset=all\nProtectHostname=no\nMemoryKSM=no\nRootImagePolicy=root=verity+signed+encrypted+unprotected+absent:usr=verity+signed+encrypted+unprotected+absent:home=encrypted+unprotected+absent:srv=encrypted+unprotected+absent:tmp=encrypted+unprotected+absent:var=encrypted+unprotected+absent\nMountImagePolicy=root=verity+signed+encrypted+unprotected+absent:usr=verity+signed+encrypted+unprotected+absent:home=encrypted+unprotected+absent:srv=encrypted+unprotected+absent:tmp=encrypted+unprotected+absent:var=encrypted+unprotected+absent\nExtensionImagePolicy=root=verity+signed+encrypted+unprotected+absent:usr=verity+signed+encrypted+unprotected+absent:home=encrypted+unprotected+absent:srv=encrypted+unprotected+absent:tmp=encrypted+unprotected+absent:var=encrypted+unprotected+absent\nKillMode=control-group\nKillSignal=15\nRestartKillSignal=15\nFinalKillSignal=9\nSendSIGKILL=yes\nSendSIGHUP=no\nWatchdogSignal=6\nId=systemd-networkd-wait-online.service\nNames=systemd-networkd-wait-online.service\nRequires=system.slice\nBindsTo=systemd-networkd.service\nWantedBy=network-online.target\nConflicts=shutdown.target\nBefore=shutdown.target network-online.target\nAfter=systemd-journald.socket system.slice systemd-networkd.service\nDocumentation=\"man:systemd-networkd-wait-online.service(8)\"\nDescription=Wait for Network to be Configured\nLoadState=loaded\nActiveState=active\nFreezerState=running\nSubState=exited\nFragmentPath=/usr/lib/systemd/system/systemd-networkd-wait-online.service\nUnitFileState=enabled\nUnitFilePreset=enabled\nStateChangeTimestamp=Mon 2026-08-24 15:10:35 UTC\nStateChangeTimestampMonotonic=16172427\nInactiveExitTimestamp=Mon 2026-08-24 15:10:35 UTC\nInactiveExitTimestampMonotonic=16149624\nActiveEnterTimestamp=Mon 2026-08-24 15:10:35 UTC\nActiveEnterTimestampMonotonic=16172427\nActiveExitTimestampMonotonic=0\nInactiveEnterTimestampMonotonic=0\nCanStart=yes\nCanStop=yes\nCanReload=no\nCanIsolate=no\nCanFreeze=yes\nCanLiveMount=no\nStopWhenUnneeded=no\nRefuseManualStart=no\nRefuseManualStop=no\nAllowIsolate=no\nDefaultDependencies=no\nSurviveFinalKillSignal=no\nOnSuccessJobMode=fail\nOnFailureJobMode=replace\nIgnoreOnIsolate=no\nNeedDaemonReload=no\nJobTimeoutUSec=infinity\nJobRunningTimeoutUSec=infinity\nJobTimeoutAction=none\nConditionResult=yes\nAssertResult=yes\nConditionTimestamp=Mon 2026-08-24 15:10:35 UTC\nConditionTimestampMonotonic=16148584\nAssertTimestamp=Mon 2026-08-24 15:10:35 UTC\nAssertTimestampMonotonic=16148665\nTransient=no\nPerpetual=no\nStartLimitIntervalUSec=10s\nStartLimitBurst=5\nStartLimitAction=none\nFailureAction=none\nSuccessAction=none\nInvocationID=05262b9796b1440fa6dd5a0767dda8d2\nCollectMode=inactive\nDebugInvocation=no\n","stderr":"","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":284483990}}
{"type":"trace","title":"Start program ip","msg":"Command {\n program: \"ip\",\n args: [\n \"ip\",\n \"address\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":385347696}}
{"type":"program_succeeded","program_name":"ip","exit_code":0,"stdout":"1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000\n link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00\n inet 127.0.0.1/8 scope host lo\n valid_lft forever preferred_lft forever\n inet6 ::1/128 scope host noprefixroute \n valid_lft forever preferred_lft forever\n2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000\n link/ether 52:54:00:12:34:56 brd ff:ff:ff:ff:ff:ff\n altname enp0s1\n altname enx525400123456\n inet 10.0.2.15/24 metric 1024 brd 10.0.2.255 scope global dynamic eth0\n valid_lft 86392sec preferred_lft 86392sec\n inet6 fec0::5054:ff:fe12:3456/64 scope site dynamic mngtmpaddr noprefixroute \n valid_lft 86395sec preferred_lft 14395sec\n inet6 fe80::5054:ff:fe12:3456/64 scope link proto kernel_ll \n valid_lft forever preferred_lft forever\n","stderr":"","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":388184195}}
{"type":"trace","title":"Start program networkctl","msg":"Command {\n program: \"networkctl\",\n args: [\n \"networkctl\",\n \"list\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":388299200}}
{"type":"program_succeeded","program_name":"networkctl","exit_code":0,"stdout":"IDX LINK TYPE OPERATIONAL SETUP\n 1 lo loopback carrier unmanaged\n 2 eth0 ether routable configured\n\n2 links listed.\n","stderr":"","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":392191543}}
{"type":"trace","title":"Start program networkctl","msg":"Command {\n program: \"networkctl\",\n args: [\n \"networkctl\",\n \"status\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":392295187}}
{"type":"program_succeeded","program_name":"networkctl","exit_code":0,"stdout":"● Interfaces: 1, 2\n State: routable\nOnline state: online\n Address: 10.0.2.15 on eth0\n fec0::5054:ff:fe12:3456 on eth0\n fe80::5054:ff:fe12:3456 on eth0\n Gateway: 10.0.2.2 on eth0\n fe80::2 on eth0\n DNS: 10.0.2.3\n fec0::3\n\nAug 24 15:10:27 ambient-dev systemd[1]: Started systemd-networkd.service - Network Configuration.\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Found matching .network file, based on potentially unpredictable interface name: /etc/systemd/network/external.network\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Configuring with /etc/systemd/network/external.network.\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Link UP\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Gained carrier\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Found matching .network file, based on potentially unpredictable interface name: /etc/systemd/network/external.network\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: DHCPv4 address 10.0.2.15/24, gateway 10.0.2.2 acquired from 10.0.2.2\nAug 24 15:10:28 ambient-dev systemd-networkd[323]: eth0: Gained IPv6LL\nAug 24 15:10:35 ambient-dev systemd[1]: Starting systemd-networkd-wait-online.service - Wait for Network to be Configured...\nAug 24 15:10:35 ambient-dev systemd[1]: Finished systemd-networkd-wait-online.service - Wait for Network to be Configured.\n","stderr":"","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":447379364}}
{"type":"trace","title":"Start program ping","msg":"Command {\n program: \"ping\",\n args: [\n \"ping\",\n \"-c1\",\n \"8.8.8.8\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":447575987}}
{"type":"program_succeeded","program_name":"ping","exit_code":0,"stdout":"PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.\n64 bytes from 8.8.8.8: icmp_seq=1 ttl=255 time=1.31 ms\n\n--- 8.8.8.8 ping statistics ---\n1 packets transmitted, 1 received, 0% packet loss, time 0ms\nrtt min/avg/max/mdev = 1.312/1.312/1.312/0.000 ms\n","stderr":"","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":450759392}}
{"type":"trace","title":"Start program ping","msg":"Command {\n program: \"ping\",\n args: [\n \"ping\",\n \"-c1\",\n \"www.google.com\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":450878038}}
{"type":"program_succeeded","program_name":"ping","exit_code":0,"stdout":"PING www.google.com (142.251.156.119) 56(84) bytes of data.\n64 bytes from 142.251.156.119: icmp_seq=1 ttl=255 time=1.35 ms\n\n--- www.google.com ping statistics ---\n1 packets transmitted, 1 received, 0% packet loss, time 0ms\nrtt min/avg/max/mdev = 1.348/1.348/1.348/0.000 ms\n","stderr":"","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":494227001}}
{"type":"action_succeeded","action":"wait_online","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":494371460}}
{"type":"trace","title":"Execute action","msg":"NetworkDiagnostics(\n NetworkdDiagnostics,\n)","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":494377380}}
{"type":"trace","title":"Start program systemctl","msg":"Command {\n program: \"systemctl\",\n args: [\n \"systemctl\",\n \"status\",\n \"systemd-networkd\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":494593252}}
{"type":"program_succeeded","program_name":"systemctl","exit_code":0,"stdout":"● systemd-networkd.service - Network Configuration\n Loaded: loaded (/usr/lib/systemd/system/systemd-networkd.service; enabled; preset: enabled)\n Active: active (running) since Mon 2026-08-24 15:10:27 UTC; 8s ago\n Invocation: 63fc0c9726244ad8b22dbf85d611ca76\nTriggeredBy: ● systemd-networkd.socket\n Docs: man:systemd-networkd.service(8)\n man:org.freedesktop.network1(5)\n Main PID: 323 (systemd-network)\n Status: \"Processing requests...\"\n Tasks: 1 (limit: 13288)\n FD Store: 0 (limit: 512)\n Memory: 3.8M (peak: 13.3M)\n CPU: 82ms\n CGroup: /system.slice/systemd-networkd.service\n └─323 /usr/lib/systemd/systemd-networkd\n\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: lo: Link UP\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: lo: Gained carrier\nAug 24 15:10:27 ambient-dev systemd[1]: Started systemd-networkd.service - Network Configuration.\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Found matching .network file, based on potentially unpredictable interface name: /etc/systemd/network/external.network\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Configuring with /etc/systemd/network/external.network.\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Link UP\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Gained carrier\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Found matching .network file, based on potentially unpredictable interface name: /etc/systemd/network/external.network\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: DHCPv4 address 10.0.2.15/24, gateway 10.0.2.2 acquired from 10.0.2.2\nAug 24 15:10:28 ambient-dev systemd-networkd[323]: eth0: Gained IPv6LL\n","stderr":"","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":522098703}}
{"type":"trace","title":"Start program systemctl","msg":"Command {\n program: \"systemctl\",\n args: [\n \"systemctl\",\n \"status\",\n \"systemd-networkd-wait-online\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":522161794}}
{"type":"program_succeeded","program_name":"systemctl","exit_code":0,"stdout":"● systemd-networkd-wait-online.service - Wait for Network to be Configured\n Loaded: loaded (/usr/lib/systemd/system/systemd-networkd-wait-online.service; enabled; preset: enabled)\n Active: active (exited) since Mon 2026-08-24 15:10:35 UTC; 395ms ago\n Invocation: 05262b9796b1440fa6dd5a0767dda8d2\n Docs: man:systemd-networkd-wait-online.service(8)\n Process: 429 ExecStart=/usr/lib/systemd/systemd-networkd-wait-online (code=exited, status=0/SUCCESS)\n Main PID: 429 (code=exited, status=0/SUCCESS)\n Mem peak: 1.8M\n CPU: 7ms\n\nAug 24 15:10:35 ambient-dev systemd[1]: Starting systemd-networkd-wait-online.service - Wait for Network to be Configured...\nAug 24 15:10:35 ambient-dev systemd[1]: Finished systemd-networkd-wait-online.service - Wait for Network to be Configured.\n","stderr":"","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":562342918}}
{"type":"trace","title":"Start program systemctl","msg":"Command {\n program: \"systemctl\",\n args: [\n \"systemctl\",\n \"show\",\n \"systemd-networkd-wait-online\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":562386338}}
{"type":"program_succeeded","program_name":"systemctl","exit_code":0,"stdout":"Type=oneshot\nExitType=main\nRestart=no\nRestartMode=normal\nNotifyAccess=none\nRestartUSec=100ms\nRestartSteps=0\nRestartMaxDelayUSec=infinity\nRestartUSecNext=100ms\nTimeoutStartUSec=infinity\nTimeoutStopUSec=1min 30s\nTimeoutAbortUSec=1min 30s\nTimeoutStartFailureMode=terminate\nTimeoutStopFailureMode=terminate\nRuntimeMaxUSec=infinity\nRuntimeRandomizedExtraUSec=0\nWatchdogUSec=0\nWatchdogTimestampMonotonic=0\nRootDirectoryStartOnly=no\nRemainAfterExit=yes\nGuessMainPID=yes\nMainPID=0\nControlPID=0\nFileDescriptorStoreMax=0\nNFileDescriptorStore=0\nFileDescriptorStorePreserve=restart\nStatusErrno=0\nResult=success\nReloadResult=success\nCleanResult=success\nLiveMountResult=success\nUID=[not set]\nGID=[not set]\nNRestarts=0\nOOMPolicy=stop\nReloadSignal=1\nExecMainStartTimestamp=Mon 2026-08-24 15:10:35 UTC\nExecMainStartTimestampMonotonic=16149149\nExecMainExitTimestamp=Mon 2026-08-24 15:10:35 UTC\nExecMainExitTimestampMonotonic=16172300\nExecMainHandoffTimestamp=Mon 2026-08-24 15:10:35 UTC\nExecMainHandoffTimestampMonotonic=16168360\nExecMainPID=429\nExecMainCode=1\nExecMainStatus=0\nExecStart={ path=/usr/lib/systemd/systemd-networkd-wait-online ; argv[]=/usr/lib/systemd/systemd-networkd-wait-online ; ignore_errors=no ; start_time=[Mon 2026-08-24 15:10:35 UTC] ; stop_time=[Mon 2026-08-24 15:10:35 UTC] ; pid=429 ; code=exited ; status=0 }\nExecStartEx={ path=/usr/lib/systemd/systemd-networkd-wait-online ; argv[]=/usr/lib/systemd/systemd-networkd-wait-online ; flags= ; start_time=[Mon 2026-08-24 15:10:35 UTC] ; stop_time=[Mon 2026-08-24 15:10:35 UTC] ; pid=429 ; code=exited ; status=0 }\nSlice=system.slice\nControlGroupId=2153\nMemoryCurrent=[not set]\nMemoryPeak=1929216\nMemorySwapCurrent=[not set]\nMemorySwapPeak=0\nMemoryZSwapCurrent=[not set]\nMemoryAvailable=11121692672\nEffectiveMemoryMax=11670540288\nEffectiveMemoryHigh=11670540288\nCPUUsageNSec=7536000\nTasksCurrent=[not set]\nEffectiveTasksMax=13288\nIPIngressBytes=[no data]\nIPIngressPackets=[no data]\nIPEgressBytes=[no data]\nIPEgressPackets=[no data]\nIOReadBytes=[not set]\nIOReadOperations=[not set]\nIOWriteBytes=[not set]\nIOWriteOperations=[not set]\nDelegate=no\nCPUAccounting=yes\nCPUWeight=[not set]\nStartupCPUWeight=[not set]\nCPUShares=[not set]\nStartupCPUShares=[not set]\nCPUQuotaPerSecUSec=infinity\nCPUQuotaPeriodUSec=infinity\nIOAccounting=no\nIOWeight=[not set]\nStartupIOWeight=[not set]\nBlockIOAccounting=no\nBlockIOWeight=[not set]\nStartupBlockIOWeight=[not set]\nMemoryAccounting=yes\nDefaultMemoryLow=0\nDefaultStartupMemoryLow=0\nDefaultMemoryMin=0\nMemoryMin=0\nMemoryLow=0\nStartupMemoryLow=0\nMemoryHigh=infinity\nStartupMemoryHigh=infinity\nMemoryMax=infinity\nStartupMemoryMax=infinity\nMemorySwapMax=infinity\nStartupMemorySwapMax=infinity\nMemoryZSwapMax=infinity\nStartupMemoryZSwapMax=infinity\nMemoryZSwapWriteback=yes\nMemoryLimit=infinity\nDevicePolicy=auto\nTasksAccounting=yes\nTasksMax=13288\nIPAccounting=no\nManagedOOMSwap=auto\nManagedOOMMemoryPressure=auto\nManagedOOMMemoryPressureLimit=0\nManagedOOMMemoryPressureDurationUSec=[not set]\nManagedOOMPreference=none\nMemoryPressureWatch=auto\nMemoryPressureThresholdUSec=200ms\nCoredumpReceive=no\nUMask=0022\nLimitCPU=infinity\nLimitCPUSoft=infinity\nLimitFSIZE=infinity\nLimitFSIZESoft=infinity\nLimitDATA=infinity\nLimitDATASoft=infinity\nLimitSTACK=infinity\nLimitSTACKSoft=8388608\nLimitCORE=infinity\nLimitCORESoft=0\nLimitRSS=infinity\nLimitRSSSoft=infinity\nLimitNOFILE=524288\nLimitNOFILESoft=1024\nLimitAS=infinity\nLimitASSoft=infinity\nLimitNPROC=44294\nLimitNPROCSoft=44294\nLimitMEMLOCK=8388608\nLimitMEMLOCKSoft=8388608\nLimitLOCKS=infinity\nLimitLOCKSSoft=infinity\nLimitSIGPENDING=44294\nLimitSIGPENDINGSoft=44294\nLimitMSGQUEUE=819200\nLimitMSGQUEUESoft=819200\nLimitNICE=0\nLimitNICESoft=0\nLimitRTPRIO=0\nLimitRTPRIOSoft=0\nLimitRTTIME=infinity\nLimitRTTIMESoft=infinity\nRootEphemeral=no\nOOMScoreAdjust=0\nCoredumpFilter=0x33\nNice=0\nIOSchedulingClass=2\nIOSchedulingPriority=4\nCPUSchedulingPolicy=0\nCPUSchedulingPriority=0\nCPUAffinityFromNUMA=no\nNUMAPolicy=n/a\nTimerSlackNSec=50000\nCPUSchedulingResetOnFork=no\nNonBlocking=no\nStandardInput=null\nStandardOutput=journal\nStandardError=inherit\nTTYReset=no\nTTYVHangup=no\nTTYVTDisallocate=no\nSyslogPriority=30\nSyslogLevelPrefix=yes\nSyslogLevel=6\nSyslogFacility=3\nLogLevelMax=-1\nLogRateLimitIntervalUSec=0\nLogRateLimitBurst=0\nSecureBits=0\nCapabilityBoundingSet=cap_chown cap_dac_override cap_dac_read_search cap_fowner cap_fsetid cap_kill cap_setgid cap_setuid cap_setpcap cap_linux_immutable cap_net_bind_service cap_net_broadcast cap_net_admin cap_net_raw cap_ipc_lock cap_ipc_owner cap_sys_module cap_sys_rawio cap_sys_chroot cap_sys_ptrace cap_sys_pacct cap_sys_admin cap_sys_boot cap_sys_nice cap_sys_resource cap_sys_time cap_sys_tty_config cap_mknod cap_lease cap_audit_write cap_audit_control cap_setfcap cap_mac_override cap_mac_admin cap_syslog cap_wake_alarm cap_block_suspend cap_audit_read cap_perfmon cap_bpf cap_checkpoint_restore\nDynamicUser=no\nSetLoginEnvironment=no\nRemoveIPC=no\nPrivateTmp=no\nPrivateTmpEx=no\nPrivateDevices=no\nProtectClock=no\nProtectKernelTunables=no\nProtectKernelModules=no\nProtectKernelLogs=no\nProtectControlGroups=no\nProtectControlGroupsEx=no\nPrivateNetwork=no\nPrivateUsers=no\nPrivateUsersEx=no\nPrivateMounts=no\nPrivateIPC=no\nPrivatePIDs=no\nProtectHome=no\nProtectSystem=no\nSameProcessGroup=no\nUtmpMode=init\nIgnoreSIGPIPE=yes\nNoNewPrivileges=no\nSystemCallErrorNumber=2147483646\nLockPersonality=no\nRuntimeDirectoryPreserve=no\nRuntimeDirectoryMode=0755\nStateDirectoryMode=0755\nCacheDirectoryMode=0755\nLogsDirectoryMode=0755\nConfigurationDirectoryMode=0755\nTimeoutCleanUSec=infinity\nMemoryDenyWriteExecute=no\nRestrictRealtime=no\nRestrictSUIDSGID=no\nRestrictNamespaces=no\nMountAPIVFS=no\nBindLogSockets=no\nKeyringMode=private\nProtectProc=default\nProcSubset=all\nProtectHostname=no\nMemoryKSM=no\nRootImagePolicy=root=verity+signed+encrypted+unprotected+absent:usr=verity+signed+encrypted+unprotected+absent:home=encrypted+unprotected+absent:srv=encrypted+unprotected+absent:tmp=encrypted+unprotected+absent:var=encrypted+unprotected+absent\nMountImagePolicy=root=verity+signed+encrypted+unprotected+absent:usr=verity+signed+encrypted+unprotected+absent:home=encrypted+unprotected+absent:srv=encrypted+unprotected+absent:tmp=encrypted+unprotected+absent:var=encrypted+unprotected+absent\nExtensionImagePolicy=root=verity+signed+encrypted+unprotected+absent:usr=verity+signed+encrypted+unprotected+absent:home=encrypted+unprotected+absent:srv=encrypted+unprotected+absent:tmp=encrypted+unprotected+absent:var=encrypted+unprotected+absent\nKillMode=control-group\nKillSignal=15\nRestartKillSignal=15\nFinalKillSignal=9\nSendSIGKILL=yes\nSendSIGHUP=no\nWatchdogSignal=6\nId=systemd-networkd-wait-online.service\nNames=systemd-networkd-wait-online.service\nRequires=system.slice\nBindsTo=systemd-networkd.service\nWantedBy=network-online.target\nConflicts=shutdown.target\nBefore=shutdown.target network-online.target\nAfter=systemd-journald.socket system.slice systemd-networkd.service\nDocumentation=\"man:systemd-networkd-wait-online.service(8)\"\nDescription=Wait for Network to be Configured\nLoadState=loaded\nActiveState=active\nFreezerState=running\nSubState=exited\nFragmentPath=/usr/lib/systemd/system/systemd-networkd-wait-online.service\nUnitFileState=enabled\nUnitFilePreset=enabled\nStateChangeTimestamp=Mon 2026-08-24 15:10:35 UTC\nStateChangeTimestampMonotonic=16172427\nInactiveExitTimestamp=Mon 2026-08-24 15:10:35 UTC\nInactiveExitTimestampMonotonic=16149624\nActiveEnterTimestamp=Mon 2026-08-24 15:10:35 UTC\nActiveEnterTimestampMonotonic=16172427\nActiveExitTimestampMonotonic=0\nInactiveEnterTimestampMonotonic=0\nCanStart=yes\nCanStop=yes\nCanReload=no\nCanIsolate=no\nCanFreeze=yes\nCanLiveMount=no\nStopWhenUnneeded=no\nRefuseManualStart=no\nRefuseManualStop=no\nAllowIsolate=no\nDefaultDependencies=no\nSurviveFinalKillSignal=no\nOnSuccessJobMode=fail\nOnFailureJobMode=replace\nIgnoreOnIsolate=no\nNeedDaemonReload=no\nJobTimeoutUSec=infinity\nJobRunningTimeoutUSec=infinity\nJobTimeoutAction=none\nConditionResult=yes\nAssertResult=yes\nConditionTimestamp=Mon 2026-08-24 15:10:35 UTC\nConditionTimestampMonotonic=16148584\nAssertTimestamp=Mon 2026-08-24 15:10:35 UTC\nAssertTimestampMonotonic=16148665\nTransient=no\nPerpetual=no\nStartLimitIntervalUSec=10s\nStartLimitBurst=5\nStartLimitAction=none\nFailureAction=none\nSuccessAction=none\nInvocationID=05262b9796b1440fa6dd5a0767dda8d2\nCollectMode=inactive\nDebugInvocation=no\n","stderr":"","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":590487356}}
{"type":"trace","title":"Start program ip","msg":"Command {\n program: \"ip\",\n args: [\n \"ip\",\n \"address\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":691887571}}
{"type":"program_succeeded","program_name":"ip","exit_code":0,"stdout":"1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000\n link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00\n inet 127.0.0.1/8 scope host lo\n valid_lft forever preferred_lft forever\n inet6 ::1/128 scope host noprefixroute \n valid_lft forever preferred_lft forever\n2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000\n link/ether 52:54:00:12:34:56 brd ff:ff:ff:ff:ff:ff\n altname enp0s1\n altname enx525400123456\n inet 10.0.2.15/24 metric 1024 brd 10.0.2.255 scope global dynamic eth0\n valid_lft 86392sec preferred_lft 86392sec\n inet6 fec0::5054:ff:fe12:3456/64 scope site dynamic mngtmpaddr noprefixroute \n valid_lft 86395sec preferred_lft 14395sec\n inet6 fe80::5054:ff:fe12:3456/64 scope link proto kernel_ll \n valid_lft forever preferred_lft forever\n","stderr":"","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":693448654}}
{"type":"trace","title":"Start program networkctl","msg":"Command {\n program: \"networkctl\",\n args: [\n \"networkctl\",\n \"list\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":693528904}}
{"type":"program_succeeded","program_name":"networkctl","exit_code":0,"stdout":"IDX LINK TYPE OPERATIONAL SETUP\n 1 lo loopback carrier unmanaged\n 2 eth0 ether routable configured\n\n2 links listed.\n","stderr":"","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":697504841}}
{"type":"trace","title":"Start program networkctl","msg":"Command {\n program: \"networkctl\",\n args: [\n \"networkctl\",\n \"status\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":697592874}}
{"type":"program_succeeded","program_name":"networkctl","exit_code":0,"stdout":"● Interfaces: 1, 2\n State: routable\nOnline state: online\n Address: 10.0.2.15 on eth0\n fec0::5054:ff:fe12:3456 on eth0\n fe80::5054:ff:fe12:3456 on eth0\n Gateway: 10.0.2.2 on eth0\n fe80::2 on eth0\n DNS: 10.0.2.3\n fec0::3\n\nAug 24 15:10:27 ambient-dev systemd[1]: Started systemd-networkd.service - Network Configuration.\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Found matching .network file, based on potentially unpredictable interface name: /etc/systemd/network/external.network\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Configuring with /etc/systemd/network/external.network.\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Link UP\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Gained carrier\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: Found matching .network file, based on potentially unpredictable interface name: /etc/systemd/network/external.network\nAug 24 15:10:27 ambient-dev systemd-networkd[323]: eth0: DHCPv4 address 10.0.2.15/24, gateway 10.0.2.2 acquired from 10.0.2.2\nAug 24 15:10:28 ambient-dev systemd-networkd[323]: eth0: Gained IPv6LL\nAug 24 15:10:35 ambient-dev systemd[1]: Starting systemd-networkd-wait-online.service - Wait for Network to be Configured...\nAug 24 15:10:35 ambient-dev systemd[1]: Finished systemd-networkd-wait-online.service - Wait for Network to be Configured.\n","stderr":"","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":754697264}}
{"type":"trace","title":"Start program ping","msg":"Command {\n program: \"ping\",\n args: [\n \"ping\",\n \"-c1\",\n \"8.8.8.8\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":754847244}}
{"type":"program_succeeded","program_name":"ping","exit_code":0,"stdout":"PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.\n64 bytes from 8.8.8.8: icmp_seq=1 ttl=255 time=1.23 ms\n\n--- 8.8.8.8 ping statistics ---\n1 packets transmitted, 1 received, 0% packet loss, time 0ms\nrtt min/avg/max/mdev = 1.231/1.231/1.231/0.000 ms\n","stderr":"","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":757381256}}
{"type":"trace","title":"Start program ping","msg":"Command {\n program: \"ping\",\n args: [\n \"ping\",\n \"-c1\",\n \"www.google.com\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":757416536}}
{"type":"program_succeeded","program_name":"ping","exit_code":0,"stdout":"PING www.google.com (142.251.155.119) 56(84) bytes of data.\n64 bytes from 142.251.155.119: icmp_seq=1 ttl=255 time=1.08 ms\n\n--- www.google.com ping statistics ---\n1 packets transmitted, 1 received, 0% packet loss, time 0ms\nrtt min/avg/max/mdev = 1.083/1.083/1.083/0.000 ms\n","stderr":"","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":812848532}}
{"type":"action_succeeded","action":"network_diagnostics","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":812884522}}
{"type":"trace","title":"Execute action","msg":"CargoFetch(\n CargoFetch,\n)","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":812892311}}
{"type":"trace","title":"Start program cargo","msg":"Command {\n program: \"cargo\",\n args: [\n \"cargo\",\n \"--version\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":812918079}}
{"type":"program_succeeded","program_name":"cargo","exit_code":0,"stdout":"cargo 1.98.0 (797e8a9bc 2026-08-05)\n","stderr":"","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":859293372}}
{"type":"trace","title":"Start program cargo","msg":"Command {\n program: \"cargo\",\n args: [\n \"cargo\",\n \"clippy\",\n \"--version\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":859356206}}
{"type":"program_succeeded","program_name":"cargo","exit_code":0,"stdout":"clippy 0.1.98 (88d9e12ae1 2026-08-18)\n","stderr":"","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":921441463}}
{"type":"trace","title":"Start program rustc","msg":"Command {\n program: \"rustc\",\n args: [\n \"rustc\",\n \"--version\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":924372888}}
{"type":"program_succeeded","program_name":"rustc","exit_code":0,"stdout":"rustc 1.98.0 (88d9e12ae 2026-08-18)\n","stderr":"","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":950709697}}
{"type":"trace","title":"copy cargo files to temporary place to run cargo securely","msg":"copying relevant files to /tmp/.tmppfFQzy","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":950773311}}
{"type":"trace","title":"Start program cargo","msg":"Command {\n program: \"cargo\",\n args: [\n \"cargo\",\n \"fetch\",\n \"--locked\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/tmp/.tmppfFQzy\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584235,"nanos_since_epoch":957625905}}
{"type":"program_succeeded","program_name":"cargo","exit_code":0,"stdout":"","stderr":" Updating crates.io index\n Downloading crates ...\n Downloaded version_check v0.9.5\n Downloaded serde_path_to_error v0.1.20\n Downloaded uuid v1.23.4\n Downloaded arraydeque v0.5.1\n Downloaded culpa-macros v1.0.2\n Downloaded scoped-tls v1.0.1\n Downloaded find-msvc-tools v0.1.9\n Downloaded foldhash v0.1.5\n Downloaded html-escape v0.2.14\n Downloaded descape v3.0.0\n Downloaded windows-targets v0.48.5\n Downloaded aligned v0.4.3\n Downloaded pkg-config v0.3.33\n Downloaded radicle-std-ext v0.2.0\n Downloaded doc-comment v0.3.4\n Downloaded anyhow v1.0.103\n Downloaded unicase v2.9.0\n Downloaded pulldown-cmark-escape v0.11.0\n Downloaded getopts v0.2.24\n Downloaded pikchr v0.1.4\n Downloaded cc v1.2.66\n Downloaded shlex v2.0.1\n Downloaded marked-yaml v0.8.0\n Downloaded yaml-rust2 v0.10.4\n Downloaded hashlink v0.10.0\n Downloaded line-col v0.2.1\n Downloaded base64 v0.22.1\n Downloaded culpa v1.0.2\n Downloaded state v0.6.0\n Downloaded loom v0.5.6\n Downloaded generator v0.7.5\n Downloaded windows-targets v0.52.6\n Downloaded fs_at v0.2.1\n Downloaded cfg_aliases v0.2.1\n Downloaded as-slice v0.2.1\n Downloaded fs2 v0.4.3\n Downloaded sqlite v0.37.0\n Downloaded sqlite3-sys v0.18.0\n Downloaded derive_builder_core v0.20.2\n Downloaded fnv v1.0.7\n Downloaded diligent-date-parser v0.1.5\n Downloaded radicle-surf v0.28.0\n Downloaded pulldown-cmark v0.13.4\n Downloaded shell-words v1.1.1\n Downloaded normpath v1.5.1\n Downloaded cvt v0.1.2\n Downloaded unsafe-libyaml-norway v0.2.15\n Downloaded derive_builder_macro v0.20.2\n Downloaded darling_macro v0.20.11\n Downloaded ident_case v1.0.1\n Downloaded thiserror-impl v1.0.69\n Downloaded radicle-git-ext v0.13.0\n Downloaded data-encoding-macro v0.1.20\n Downloaded jobserver v0.1.35\n Downloaded remove_dir_all v1.0.0\n Downloaded filetime v0.2.29\n Downloaded serde_norway v0.9.42\n Downloaded ryu v1.0.23\n Downloaded rss v2.1.0\n Downloaded derive_builder v0.20.2\n Downloaded darling v0.20.11\n Downloaded darling_core v0.20.11\n Downloaded strsim v0.11.1\n Downloaded autocfg v1.5.1\n Downloaded thiserror v1.0.69\n Downloaded xattr v1.6.1\n Downloaded git-ref-format v0.7.0\n Downloaded base256emoji v1.0.2\n Downloaded base-x v0.2.11\n Downloaded ec25519 v0.1.0\n Downloaded amplify v4.9.0\n Downloaded ref-cast v1.0.25\n Downloaded hashbrown v0.15.5\n Downloaded atom_syndication v0.12.9\n Downloaded num-traits v0.2.19\n Downloaded tar v0.4.46\n Downloaded proc-macro-error-attr3 v3.0.2\n Downloaded git-ref-format-core v0.6.0\n Downloaded nonempty v0.9.0\n Downloaded adler2 v2.0.1\n Downloaded ghash v0.5.1\n Downloaded pkcs1 v0.7.5\n Downloaded getrandom v0.3.4\n Downloaded ref-cast-impl v1.0.25\n Downloaded dyn-clone v1.0.20\n Downloaded git-ref-format-macro v0.7.0\n Downloaded proc-macro-error3 v3.0.2\n Downloaded miniz_oxide v0.8.9\n Downloaded simd-adler32 v0.3.9\n Downloaded base64ct v1.8.3\n Downloaded ssh-cipher v0.2.0\n Downloaded poly1305 v0.8.0\n Downloaded universal-hash v0.5.1\n Downloaded opaque-debug v0.3.1\n Downloaded ctr v0.9.2\n Downloaded cipher v0.4.4\n Downloaded inout v0.1.4\n Downloaded block-padding v0.3.3\n Downloaded chacha20 v0.9.1\n Downloaded cbc v0.1.2\n Downloaded polyval v0.6.2\n Downloaded aead v0.5.2\n Downloaded signature v2.2.0\n Downloaded sec1 v0.7.3\n Downloaded base16ct v0.2.0\n Downloaded num-integer v0.1.46\n Downloaded num-iter v0.1.46\n Downloaded schemars_derive v1.2.1\n Downloaded num-conv v0.2.2\n Downloaded powerfmt v0.2.0\n Downloaded flate2 v1.1.9\n Downloaded pkcs8 v0.10.2\n Downloaded spki v0.7.3\n Downloaded serde_derive_internals v0.29.1\n Downloaded radicle-dag v0.10.0\n Downloaded wasm-bindgen-macro v0.2.126\n Downloaded futures-core v0.3.32\n Downloaded globwalk v0.9.1\n Downloaded globset v0.4.18\n Downloaded crossbeam-deque v0.8.7\n Downloaded crossbeam-epoch v0.9.20\n Downloaded roadmap v0.7.0\n Downloaded quick-xml v0.41.0\n Downloaded vcpkg v0.2.15\n Downloaded tinyvec_macros v0.1.1\n Downloaded memoffset v0.9.1\n Downloaded siphasher v1.0.3\n Downloaded typeid v1.0.3\n Downloaded radicle-oid v0.2.0\n Downloaded der v0.7.10\n Downloaded rsa v0.9.10\n Downloaded pbkdf2 v0.12.2\n Downloaded secrecy v0.10.3\n Downloaded amplify_syn v2.0.1\n Downloaded radicle-core v0.3.0\n Downloaded is_terminal_polyfill v1.70.2\n Downloaded once_cell_polyfill v1.70.2\n Downloaded qcheck-macros v1.0.0\n Downloaded ignore v0.4.27\n Downloaded crossbeam-utils v0.8.22\n Downloaded chrono v0.4.45\n Downloaded git2 v0.21.0\n Downloaded crc32fast v1.5.0\n Downloaded radicle-job v0.6.0\n Downloaded tinyvec v1.11.0\n Downloaded uds_windows v1.2.1\n Downloaded serde-untagged v0.1.9\n Downloaded erased-serde v0.4.10\n Downloaded aes-gcm v0.10.3\n Downloaded aes v0.8.4\n Downloaded num-bigint-dig v0.8.6\n Downloaded p521 v0.13.3\n Downloaded blowfish v0.9.1\n Downloaded byteorder v1.5.0\n Downloaded ssh-agent-lib v0.5.2\n Downloaded multibase v0.9.3\n Downloaded data-encoding-macro-internal v0.1.18\n Downloaded data-encoding v2.11.0\n Downloaded base45 v3.2.0\n Downloaded match-lookup v0.1.2\n Downloaded ed25519 v1.5.3\n Downloaded ct-codecs v1.1.7\n Downloaded dunce v1.0.5\n Downloaded clap_lex v1.1.0\n Downloaded anstyle-wincon v3.0.11\n Downloaded html-page v0.5.0\n Downloaded wasm-bindgen-shared v0.2.126\n Downloaded idna_adapter v1.2.2\n Downloaded zerofrom v0.1.8\n Downloaded stable_deref_trait v1.2.1\n Downloaded form_urlencoded v1.2.2\n Downloaded valuable-serde v0.1.1\n Downloaded windows_x86_64_gnullvm v0.48.5\n Downloaded nix v0.29.0\n Downloaded base64 v0.21.7\n Downloaded qcheck v1.0.0\n Downloaded radicle-localtime v0.1.0\n Downloaded const-str v0.4.3\n Downloaded signature v1.6.4\n Downloaded fast-glob v0.3.3\n Downloaded utf8_iter v1.0.4\n Downloaded pest_generator v2.8.7\n Downloaded humansize v2.1.3\n Downloaded libm v0.2.16\n Downloaded unicode-linebreak v0.1.5\n Downloaded windows_x86_64_gnullvm v0.52.6\n Downloaded windows_aarch64_gnullvm v0.52.6\n Downloaded unicode-normalization v0.1.25\n Downloaded pest_derive v2.8.7\n Downloaded pest_meta v2.8.7\n Downloaded ucd-trie v0.1.7\n Downloaded textwrap v0.16.2\n Downloaded smawk v0.3.3\n Downloaded marked-yaml v0.7.2\n Downloaded hashlink v0.9.1\n Downloaded ahash v0.8.12\n Downloaded windows_aarch64_gnullvm v0.48.5\n Downloaded windows-strings v0.1.0\n Downloaded windows-result v0.2.0\n Downloaded windows-interface v0.58.0\n Downloaded windows-implement v0.58.0\n Downloaded primeorder v0.13.6\n Downloaded wasip2 v1.0.4+wasi-0.2.12\n Downloaded nonempty v0.12.0\n Downloaded zerofrom-derive v0.1.7\n Downloaded tracing-serde v0.2.0\n Downloaded zerocopy-derive v0.8.54\n Downloaded windows_i686_gnullvm v0.52.6\n Downloaded windows-core v0.58.0\n Downloaded elliptic-curve v0.13.8\n Downloaded heck v0.5.0\n Downloaded futures-task v0.3.32\n Downloaded pest v2.8.7\n Downloaded bstr v1.12.3\n Downloaded yaml-rust2 v0.9.0\n Downloaded hashbrown v0.14.5\n Downloaded radicle v0.24.0\n Downloaded git2 v0.20.4\n Downloaded radicle-git-metadata v0.2.0\n Downloaded winpipe v0.1.1\n Downloaded defer-heavy v0.1.0\n Downloaded ssh-encoding v0.2.0\n Downloaded sha2 v0.10.9\n Downloaded anstyle-query v1.1.5\n Downloaded percent-encoding v2.3.2\n Downloaded radicle-crypto v0.17.0\n Downloaded zeroize v1.9.0\n Downloaded subtle v2.6.1\n Downloaded digest v0.10.7\n Downloaded crypto-common v0.1.7\n Downloaded group v0.13.0\n Downloaded ff v0.13.1\n Downloaded socks5-client v0.4.3\n Downloaded cypheraddr v0.4.1\n Downloaded cfg-if v1.0.4\n Downloaded potential_utf v0.1.5\n Downloaded unicode-width v0.2.2\n Downloaded windows_x86_64_msvc v0.48.5\n Downloaded ssh-key v0.6.7\n Downloaded windows_x86_64_gnu v0.48.5\n Downloaded windows_i686_msvc v0.48.5\n Downloaded generic-array v0.14.7\n Downloaded const-oid v0.9.6\n Downloaded block-buffer v0.10.4\n Downloaded cpufeatures v0.2.17\n Downloaded rfc6979 v0.4.0\n Downloaded nonempty v0.11.0\n Downloaded utf8parse v0.2.2\n Downloaded colorchoice v1.0.5\n Downloaded equivalent v1.0.2\n Downloaded windows_aarch64_msvc v0.48.5\n Downloaded pem-rfc7468 v0.7.0\n Downloaded ecdsa v0.16.9\n Downloaded hmac v0.12.1\n Downloaded ed25519 v2.2.3\n Downloaded cyphergraphy v0.3.1\n Downloaded amplify_num v0.5.4\n Downloaded encoding_rs v0.8.35\n Downloaded windows_i686_gnu v0.48.5\n Downloaded windows_x86_64_msvc v0.52.6\n Downloaded windows_aarch64_msvc v0.52.6\n Downloaded typenum v1.20.1\n Downloaded crypto-bigint v0.5.5\n Downloaded p256 v0.13.2\n Downloaded ed25519-dalek v2.2.0\n Downloaded rustc_version v0.4.1\n Downloaded wit-bindgen v0.57.1\n Downloaded r-efi v5.3.0\n Downloaded ascii v1.1.0\n Downloaded amplify_derive v4.0.1\n Downloaded anstyle v1.0.14\n Downloaded slab v0.4.12\n Downloaded windows_x86_64_gnu v0.52.6\n Downloaded libz-sys v1.1.29\n Downloaded radicle-git-ref-format v0.1.0\n Downloaded semver v1.0.28\n Downloaded curve25519-dalek-derive v0.1.1\n Downloaded tempfile v3.27.0\n Downloaded bcrypt-pbkdf v0.10.0\n Downloaded subplotlib-derive v0.14.0\n Downloaded windows_i686_msvc v0.52.6\n Downloaded windows_i686_gnu v0.52.6\n Downloaded sync-ptr v0.1.4\n Downloaded p384 v0.13.1\n Downloaded aho-corasick v1.1.4\n Downloaded fastrand v2.4.1\n Downloaded subplotlib v0.14.0\n Downloaded walkdir v2.5.0\n Downloaded itoa v1.0.18\n Downloaded bitflags v2.13.0\n Downloaded winapi-util v0.1.11\n Downloaded same-file v1.0.6\n Downloaded subplot v0.14.0\n Downloaded slug v0.1.6\n Downloaded wasi v0.11.1+wasi-snapshot-preview1\n Downloaded rand_chacha v0.3.1\n Downloaded windows-link v0.2.1\n Downloaded rand_core v0.6.4\n Downloaded getrandom v0.2.17\n Downloaded ppv-lite86 v0.2.21\n Downloaded rand v0.8.6\n Downloaded matchers v0.2.0\n Downloaded terminal_size v0.4.4\n Downloaded regex-syntax v0.8.11\n Downloaded tera v1.20.1\n Downloaded unicode-segmentation v1.13.3\n Downloaded curve25519-dalek v4.1.3\n Downloaded anstream v1.0.0\n Downloaded displaydoc v0.2.6\n Downloaded rustversion v1.0.23\n Downloaded yoke-derive v0.8.2\n Downloaded winapi v0.3.9\n Downloaded zerovec-derive v0.11.3\n Downloaded deunicode v1.6.2\n Downloaded regex v1.13.1\n Downloaded duration-str v0.21.0\n Downloaded valuable v0.1.1\n Downloaded rustix v1.1.4\n Downloaded quote v1.0.46\n Downloaded tinystr v0.8.3\n Downloaded zerocopy v0.8.54\n Downloaded fiat-crypto v0.2.9\n Downloaded regex-automata v0.4.18\n Downloaded bytesize v2.4.2\n Downloaded tracing-log v0.2.0\n Downloaded libgit2-sys v0.18.5+1.9.4\n Downloaded pin-project-lite v0.2.17\n Downloaded anstyle-parse v1.0.0\n Downloaded smallvec v1.15.2\n Downloaded thread_local v1.1.9\n Downloaded lazy_static v1.5.0\n Downloaded windows-sys v0.59.0\n Downloaded time-core v0.1.9\n Downloaded zmij v1.0.21\n Downloaded deranged v0.5.8\n Downloaded nu-ansi-term v0.50.3\n Downloaded errno v0.3.14\n Downloaded windows-sys v0.52.0\n Downloaded thiserror v2.0.18\n Downloaded thiserror-impl v2.0.18\n Downloaded radicle-cob v0.20.0\n Downloaded clap_derive v4.6.4\n Downloaded once_cell v1.21.4\n Downloaded sqlite3-src v0.7.0\n Downloaded winapi-x86_64-pc-windows-gnu v0.4.0\n Downloaded winapi-i686-pc-windows-gnu v0.4.0\n Downloaded synstructure v0.13.2\n Downloaded litemap v0.8.2\n Downloaded writeable v0.6.3\n Downloaded arrayvec v0.7.8\n Downloaded yoke v0.8.3\n Downloaded tracing-core v0.1.36\n Downloaded tracing-attributes v0.1.31\n Downloaded spin v0.9.9\n Downloaded time-macros v0.2.31\n Downloaded unicode-ident v1.0.24\n Downloaded getrandom v0.4.3\n Downloaded icu_properties v2.2.0\n Downloaded icu_provider v2.2.0\n Downloaded log v0.4.33\n Downloaded clap v4.6.6\n Downloaded serde_derive v1.0.228\n Downloaded sharded-slab v0.1.7\n Downloaded wasm-bindgen v0.2.126\n Downloaded icu_locale_core v2.2.0\n Downloaded serde_core v1.0.228\n Downloaded icu_normalizer_data v2.2.0\n Downloaded r-efi v6.0.0\n Downloaded icu_normalizer v2.2.0\n Downloaded schemars v1.2.1\n Downloaded crossbeam-channel v0.5.16\n Downloaded windows v0.58.0\n Downloaded wasm-bindgen-macro-support v0.2.126\n Downloaded url v2.5.8\n Downloaded windows v0.48.0\n Downloaded serde v1.0.228\n Downloaded proc-macro2 v1.0.106\n Downloaded icu_collections v2.2.0\n Downloaded zerotrie v0.2.4\n Downloaded bumpalo v3.20.3\n Downloaded memchr v2.8.3\n Downloaded indexmap v2.14.0\n Downloaded js-sys v0.3.103\n Downloaded zerovec v0.11.6\n Downloaded idna v1.1.0\n Downloaded cyphernet v0.5.4\n Downloaded rust_decimal v1.42.1\n Downloaded hashbrown v0.17.1\n Downloaded clap_builder v4.6.6\n Downloaded futures-util v0.3.32\n Downloaded icu_properties_data v2.2.0\n Downloaded winnow v0.7.15\n Downloaded serde_json v1.0.150\n Downloaded tracing-subscriber v0.3.23\n Downloaded syn v1.0.109\n Downloaded time v0.3.53\n Downloaded syn v3.0.3\n Downloaded syn v2.0.118\n Downloaded tracing v0.1.44\n Downloaded libc v0.2.189\n Downloaded windows-sys v0.61.2\n Downloaded linux-raw-sys v0.12.1\n","timestamp":{"secs_since_epoch":1787584243,"nanos_since_epoch":578279384}}
{"type":"action_succeeded","action":"cargo_fetch","timestamp":{"secs_since_epoch":1787584243,"nanos_since_epoch":730552143}}
{"type":"trace","title":"Execute action","msg":"TarCreate(\n TarCreate {\n archive: \"/dev/vde\",\n directory: \"/ci/cache\",\n },\n)","timestamp":{"secs_since_epoch":1787584243,"nanos_since_epoch":730610898}}
{"type":"action_succeeded","action":"tar_create","archive":"/dev/vde","directory":"/ci/cache","timestamp":{"secs_since_epoch":1787584251,"nanos_since_epoch":482649508}}
{"type":"trace","title":"Execute action","msg":"TarCreate(\n TarCreate {\n archive: \"/dev/vdd\",\n directory: \"/ci/artifacts\",\n },\n)","timestamp":{"secs_since_epoch":1787584251,"nanos_since_epoch":486919211}}
{"type":"action_succeeded","action":"tar_create","archive":"/dev/vdd","directory":"/ci/artifacts","timestamp":{"secs_since_epoch":1787584251,"nanos_since_epoch":493422149}}
{"type":"trace","title":"Execute action","msg":"TarCreate(\n TarCreate {\n archive: \"/dev/vdf\",\n directory: \"/ci/deps\",\n },\n)","timestamp":{"secs_since_epoch":1787584251,"nanos_since_epoch":497181610}}
{"type":"action_succeeded","action":"tar_create","archive":"/dev/vdf","directory":"/ci/deps","timestamp":{"secs_since_epoch":1787584255,"nanos_since_epoch":924392880}}
{"type":"plan_succeeded","timestamp":{"secs_since_epoch":1787584255,"nanos_since_epoch":927474891}}
{"type":"executor_ends_successfully","timestamp":{"secs_since_epoch":1787584255,"nanos_since_epoch":929589981}}
EXIT CODE: 0
ambient-execute-plan0.18.0@5360d3f"HOME"="/root"
steps:
- action: mkdir
pathname: /ci
- action: mkdir
pathname: /ci/artifacts
- action: mkdir
pathname: /ci/artifacts/debian
- action: mkdir
pathname: /ci/artifacts/rsync
- action: mkdir
pathname: /ci/secrets
- action: mkdir
pathname: /ci/deps
- 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: tar_extract
archive: /dev/vdd
directory: /ci/artifacts
- action: tar_extract
archive: /dev/vdg
directory: /ci/secrets
- action: shell
shell: ln -sf /ci /workspace
- action: create_file
filename: /root/.ssh/config
content: "Host *\nStrictHostKeyChecking accept-new\nIdentityFile /ci/secrets/ssh_key\n "
overwrite: true
- action: cargo_clippy
- action: shell
shell: |
export CARGO_TARGET_DIR=/ci/cache
export CARGO_HOME=/ci/deps
export HOME=/root
export PATH="/root/.cargo/bin:/root/.radicle/bin:$PATH"
# Check that `rad` is there.
rad --help >/dev/null || (echo rad is not there; exit 1)
cargo doc --workspace --no-deps
# FIXME: We can't run upgrade tests from older versions because
# Ambient only fetches dependencies for the current version.
# Thus, we can't build the old versions. This is an Ambient
# problem that we can't fix here. So we skip the upgrade tests.
export RAD_PASSPHRAE=secret
rad auth --alias ambient
env
cargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2
subplot docgen ci-broker.subplot -o doc/ci-broker.html
subplot docgen doc/userguide.subplot -o doc/userguide.html
make -C doc
cp doc/*.html /ci/artifacts/rsync/.
- action: custom
name: dch
args:
debfullname: Lars Wirzenius
debemail: liw@liw.fi
- action: deb
packages: debian
- 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
secrets_drive: null
workspace_dir: /ci
source_dir: /ci/src
deps_dir: /ci/deps
cache_dir: /ci/cache
artifacts_dir: /ci/artifacts
secrets_dir: null
envs: {}
"CARGO_TARGET_DIR"="/ci/cache/cargo-target"
"CARGO_HOME"="/ci/deps"
"PATH"="/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin"
"CARGO_TARGET_DIR"="/ci/cache/cargo-target"
"CARGO_HOME"="/ci/deps"
"PATH"="/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin"
Mkdir(
Mkdir {
pathname: "/ci",
},
)- action: mkdir pathname: /ci
Mkdir(
Mkdir {
pathname: "/ci/artifacts",
},
)- action: mkdir pathname: /ci/artifacts
Mkdir(
Mkdir {
pathname: "/ci/artifacts/debian",
},
)- action: mkdir pathname: /ci/artifacts/debian
Mkdir(
Mkdir {
pathname: "/ci/artifacts/rsync",
},
)- action: mkdir pathname: /ci/artifacts/rsync
Mkdir(
Mkdir {
pathname: "/ci/secrets",
},
)- action: mkdir pathname: /ci/secrets
Mkdir(
Mkdir {
pathname: "/ci/deps",
},
)- action: mkdir pathname: /ci/deps
TarExtract(
TarExtract {
archive: "/dev/vdc",
directory: "/ci/src",
},
)- action: tar_extract archive: /dev/vdc directory: /ci/src
TarExtract(
TarExtract {
archive: "/dev/vdf",
directory: "/ci/deps",
},
)- action: tar_extract archive: /dev/vdf directory: /ci/deps
TarExtract(
TarExtract {
archive: "/dev/vde",
directory: "/ci/cache",
},
)- action: tar_extract archive: /dev/vde directory: /ci/cache
TarExtract(
TarExtract {
archive: "/dev/vdd",
directory: "/ci/artifacts",
},
)- action: tar_extract archive: /dev/vdd directory: /ci/artifacts
TarExtract(
TarExtract {
archive: "/dev/vdg",
directory: "/ci/secrets",
},
)- action: tar_extract archive: /dev/vdg directory: /ci/secrets
Shell(
Shell {
shell: "ln -sf /ci /workspace",
},
)Command {
program: "bash",
args: [
"bash",
"-c",
"set -xeuo pipefail\nln -sf /ci /workspace\n",
],
env: CommandEnv {
clear: false,
vars: {
"CARGO_HOME": Some(
"/ci/deps",
),
"CARGO_TARGET_DIR": Some(
"/ci/cache/cargo-target",
),
"HOME": Some(
"/root",
),
"PATH": Some(
"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin",
),
},
},
cwd: Some(
"/ci/src",
),
create_pidfd: false,
}+ ln -sf /ci /workspace
- action: shell shell: ln -sf /ci /workspace
CreateFile(
CreateFile {
filename: "/root/.ssh/config",
content: "Host *\nStrictHostKeyChecking accept-new\nIdentityFile /ci/secrets/ssh_key\n ",
overwrite: true,
},
)- action: create_file filename: /root/.ssh/config content: "Host *\nStrictHostKeyChecking accept-new\nIdentityFile /ci/secrets/ssh_key\n " overwrite: true
CargoClippy(
CargoClippy,
)Command {
program: "cargo",
args: [
"cargo",
"--version",
],
env: CommandEnv {
clear: false,
vars: {
"CARGO_HOME": Some(
"/ci/deps",
),
"CARGO_TARGET_DIR": Some(
"/ci/cache/cargo-target",
),
"HOME": Some(
"/root",
),
"PATH": Some(
"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin",
),
},
},
cwd: Some(
"/ci/src",
),
create_pidfd: false,
}cargo 1.98.0 (797e8a9bc 2026-08-05)
Command {
program: "cargo",
args: [
"cargo",
"clippy",
"--version",
],
env: CommandEnv {
clear: false,
vars: {
"CARGO_HOME": Some(
"/ci/deps",
),
"CARGO_TARGET_DIR": Some(
"/ci/cache/cargo-target",
),
"HOME": Some(
"/root",
),
"PATH": Some(
"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin",
),
},
},
cwd: Some(
"/ci/src",
),
create_pidfd: false,
}clippy 0.1.98 (88d9e12ae1 2026-08-18)
Command {
program: "rustc",
args: [
"rustc",
"--version",
],
env: CommandEnv {
clear: false,
vars: {
"CARGO_HOME": Some(
"/ci/deps",
),
"CARGO_TARGET_DIR": Some(
"/ci/cache/cargo-target",
),
"HOME": Some(
"/root",
),
"PATH": Some(
"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin",
),
},
},
cwd: Some(
"/ci/src",
),
create_pidfd: false,
}rustc 1.98.0 (88d9e12ae 2026-08-18)
Command {
program: "cargo",
args: [
"cargo",
"clippy",
"--offline",
"--locked",
"--workspace",
"--all-targets",
"--no-deps",
"--",
"--deny",
"warnings",
],
env: CommandEnv {
clear: false,
vars: {
"CARGO_HOME": Some(
"/ci/deps",
),
"CARGO_TARGET_DIR": Some(
"/ci/cache/cargo-target",
),
"HOME": Some(
"/root",
),
"PATH": Some(
"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin",
),
},
},
cwd: Some(
"/ci/src",
),
create_pidfd: false,
} Checking radicle-ci-adapter v0.1.0 (/ci/src/adapterlib)
Compiling radicle-ci-broker v0.31.0 (/ci/src)
Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.99s
- action: cargo_clippy
Shell(
Shell {
shell: "export CARGO_TARGET_DIR=/ci/cache\nexport CARGO_HOME=/ci/deps\nexport HOME=/root\nexport PATH=\"/root/.cargo/bin:/root/.radicle/bin:$PATH\"\n\n# Check that `rad` is there.\nrad --help >/dev/null || (echo rad is not there; exit 1)\n\ncargo doc --workspace --no-deps\n\n# FIXME: We can't run upgrade tests from older versions because\n# Ambient only fetches dependencies for the current version.\n# Thus, we can't build the old versions. This is an Ambient\n# problem that we can't fix here. So we skip the upgrade tests.\nexport RAD_PASSPHRAE=secret\nrad auth --alias ambient\nenv\ncargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2\n\nsubplot docgen ci-broker.subplot -o doc/ci-broker.html\nsubplot docgen doc/userguide.subplot -o doc/userguide.html\nmake -C doc\ncp doc/*.html /ci/artifacts/rsync/.\n",
},
)Command {
program: "bash",
args: [
"bash",
"-c",
"set -xeuo pipefail\nexport CARGO_TARGET_DIR=/ci/cache\nexport CARGO_HOME=/ci/deps\nexport HOME=/root\nexport PATH=\"/root/.cargo/bin:/root/.radicle/bin:$PATH\"\n\n# Check that `rad` is there.\nrad --help >/dev/null || (echo rad is not there; exit 1)\n\ncargo doc --workspace --no-deps\n\n# FIXME: We can\'t run upgrade tests from older versions because\n# Ambient only fetches dependencies for the current version.\n# Thus, we can\'t build the old versions. This is an Ambient\n# problem that we can\'t fix here. So we skip the upgrade tests.\nexport RAD_PASSPHRAE=secret\nrad auth --alias ambient\nenv\ncargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2\n\nsubplot docgen ci-broker.subplot -o doc/ci-broker.html\nsubplot docgen doc/userguide.subplot -o doc/userguide.html\nmake -C doc\ncp doc/*.html /ci/artifacts/rsync/.\n\n",
],
env: CommandEnv {
clear: false,
vars: {
"CARGO_HOME": Some(
"/ci/deps",
),
"CARGO_TARGET_DIR": Some(
"/ci/cache/cargo-target",
),
"HOME": Some(
"/root",
),
"PATH": Some(
"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin",
),
},
},
cwd: Some(
"/ci/src",
),
create_pidfd: false,
}
Initializing your Radicle 👾 identity
✓ Creating your Ed25519 keypair…
✓ Your Radicle DID is did:key:z6Mkgrox8ZR7Nifzbcv9Na15jXx64rkH2HD4Xze6E1sz6v5h. This identifies your device. Run `rad self` to show it at all times.
✓ You're all set.
To create a Radicle repository, run `rad init` from a Git repository with at least one commit.
To clone a repository, run `rad clone <rid>`. For example, `rad clone rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5` clones the Radicle 'heartwood' repository.
To get a list of all commands, run `rad`.
MEMORY_PRESSURE_WRITE=c29tZSAyMDAwMDAgMjAwMDAwMAA=
CARGO_TARGET_DIR=/ci/cache
PWD=/ci/src
SYSTEMD_EXEC_PID=372
HOME=/root
LANG=C.UTF-8
CARGO_HOME=/ci/deps
MEMORY_PRESSURE_WATCH=/sys/fs/cgroup/system.slice/ambient.service/memory.pressure
INVOCATION_ID=dddd8ad7b964411cbe0f53d50e4e0d53
RAD_PASSPHRAE=secret
USER=root
SHLVL=2
JOURNAL_STREAM=9:3293
PATH=/root/.cargo/bin:/root/.radicle/bin:/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
OLDPWD=/
_=/usr/bin/env
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
running 88 tests
test adapter::test::adapter_does_not_exist ... ok
test adapter::test::adapter_ends_ok_before_first_message ... ok
test adapter::test::adapter_ends_ok_before_second_message ... ok
test adapter::test::adapter_exits_nonzero ... ok
test adapter::test::adapter_has_bad_interpreter ... ok
test adapter::test::adapter_first_message_isnt_triggered ... ok
test adapter::test::adapter_is_killed_before_any_messages ... ok
test adapter::test::adapter_is_killed_after_second_message ... ok
test adapter::test::adapter_is_killed_before_first_message ... ok
test adapter::test::adapter_is_not_executable ... ok
test adapter::test::adapter_outputs_too_many_messages ... ok
test adapter::test::adapter_produces_as_bad_message ... ok
test adapter::test::adapter_redacts_sensitive_environment ... ok
test adapter::test::adapter_reports_success ... ok
test adapter::test::adapter_reports_failure ... ok
test broker::test::adapter_fails ... ok
test broker::test::executes_adapter ... ok
test ci_event::test::branch_created ... ok
test ci_event::test::branch_deleted ... ok
test ci_event::test::diff_refs ... ok
test ci_event::test::nothing_updated ... ok
test ci_event::test::branch_updated ... ok
test ci_event::test::patch_created ... ok
test ci_event::test::patch_updated ... ok
test ci_event::test::skipped ... ok
test ci_event::test_parsed_ref::branch ... ok
test ci_event::test_parsed_ref::patch ... ok
test ci_event::test_parsed_ref::tag ... ok
test config::test::parse_config_yaml ... ok
test config::test::parse_config_yaml_without_max_run_time ... ok
test filter::test::allows_all_for_default_repository ... ok
test filter::test::allows_all_for_main_branch ... ok
test filter::test::allows_all_for_right_node ... ok
test filter::test::allows_any_event ... ok
test filter::test::allows_branch_creation ... ok
test filter::test::allows_branch_deletion ... ok
test filter::test::allows_branch_update ... ok
test filter::test::allows_if_all_allow ... ok
test filter::test::allows_if_any_allows ... ok
test filter::test::allows_none_for_wrong_node ... ok
test filter::test::allows_no_event ... ok
test filter::test::allows_patch_creation ... ok
test filter::test::allows_patch_update ... ok
test filter::test::allows_opposite ... ok
test filter::test::allows_shutdown ... ok
test filter::test::allows_specific_patch ... ok
test filter::test::deserialize_yaml_nested_not ... ok
test filter::test::allows_wanted_tag ... ok
test filter::test::doesnt_allow_any_for_other_branch ... ok
test filter::test::doesnt_allow_any_for_other_repository ... ok
test filter::test::doesnt_allow_unexpected_tag ... ok
test filter::test::doesnt_allow_unexpected_tag_even_if_wanted_is_prefix ... ok
test filter::test::doesnt_allows_other_patch ... ok
test filter::test::doesnt_allow_unexpected_tag_even_if_wanted_is_suffix ... ok
test filter::test::only_allows_branch_creation ... ok
test filter::test::only_allows_branch_deletion ... ok
test filter::test::only_allows_patch_creation ... ok
test filter::test::only_allows_branch_update ... ok
test filter::test::only_allows_patch_update ... ok
test filter::test::yaml_roundtrip ... ok
test msg::trigger_from_ci_event_tests::trigger_patch_from_patch_created ... ok
test msg::trigger_from_ci_event_tests::trigger_patch_from_patch_updated ... ok
test msg::trigger_from_ci_event_tests::trigger_push_from_branch_created ... ok
test refs::test::creates_patch_from_str ... ok
test refs::test::extracts_branch_namespaced_branch ... ok
test refs::test::namespaced_branch_from_plain ... ok
test refs::test::plain_branch_name ... ok
test refs::test::qualified_branch_name_from_plain ... ok
test refs::test::ref_string_from_plain_branch_name ... ok
test run::test::serialize_run_state ... ok
test sensitive::test_sensitive::debugged ... ok
test sensitive::test_sensitive::deser ... ok
test sensitive::test_sensitive::displayed ... ok
test sensitive::test_sensitive::ser ... ok
test timeoutcmd::tests::bin_false ... ok
test timeoutcmd::tests::bin_true ... ok
test msg::trigger_from_ci_event_tests::trigger_push_from_branch_updated ... ok
test timeoutcmd::tests::hello_world ... ok
test timeoutcmd::tests::hello_world_to_stderr ... ok
test timeoutcmd::tests::kill ... ok
test timeoutcmd::tests::kill_stderr ... ok
test timeoutcmd::tests::pipe_through_cat ... ok
test timeoutcmd::tests::sleep_1 ... ok
test timeoutcmd::tests::sleep_for_too_long ... ok
test timeoutcmd::tests::yes_to_stderr ... ok
test timeoutcmd::tests::sleep_for_too_long_while_reading_with_realtimelines ... ok
test timeoutcmd::tests::yes_to_stdout ... ok
test timeoutcmd::tests::yes_to_stdout_while_reading_with_realtimelines ... ok
test result: ok. 88 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 7.47s
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
running 73 tests
test adapter_can_provide_url_for_info_on_run ... FAILED
test add_information_about_run_that_s_finished_in_failure_to_database ... FAILED
test add_information_about_run_that_s_finished_successfully_to_database ... FAILED
test add_information_about_run_that_s_running_to_database ... FAILED
test add_information_about_triggered_run_to_database ... FAILED
test allows_setting_minimum_log_level ... FAILED
test adapter_with_url_runs_successfully ... ok
test can_add_a_branch_creation_event_to_queue ... FAILED
test can_add_a_branch_deletion_event_to_queue ... FAILED
test can_add_a_branch_update_event_to_queue ... FAILED
test can_add_a_patch_creation_event_to_queue ... FAILED
test can_add_a_patch_update_event_to_queue ... FAILED
test can_add_shutdown_event_to_queue ... FAILED
test can_output_trigger_message_for_a_ci_run ... FAILED
test can_remove_all_queued_events ... FAILED
test can_shut_down_cleanly ... FAILED
test can_trigger_a_ci_run ... FAILED
test convert_recorded_node_events_into_ci_events ... FAILED
test count_in_concurrent_processes ... FAILED
test count_in_a_single_process ... FAILED
test create_a_repository ... FAILED
test don_t_insert_event_for_non_existent_repository ... FAILED
test event_synthesizer_terminates_after_first_connection ... FAILED
test events_can_be_queued_and_removed_from_queue ... FAILED
test extract_cib_log_from_journald_and_pretty_print ... FAILED
test fails_run_if_building_trigger_fails__but_does_not_crash ... FAILED
test filter_predicate_allow ... FAILED
test filter_predicate_and ... FAILED
test filter_predicate_anydelegate ... FAILED
test filter_predicate_branch ... FAILED
test filter_predicate_branchcreated ... FAILED
test filter_predicate_branchdeleted ... FAILED
test filter_predicate_branchupdated ... FAILED
test filter_predicate_defaultbranch ... FAILED
test filter_predicate_deny ... FAILED
test filter_predicate_hasfile ... FAILED
test filter_predicate_node ... FAILED
test filter_predicate_not ... FAILED
test filter_predicate_or ... FAILED
test filter_predicate_repository ... FAILED
test filter_predicate_tag ... FAILED
test filter_recorded_ci_events ... FAILED
test gives_helpful_error_message_if_it_doesn_t_understand_its_configuration_file ... FAILED
test gives_helpful_error_message_if_node_socket_can_t_be_found ... FAILED
test handles_adapter_failing_on_a_failed_run ... FAILED
test handles_adapter_failing_on_a_successful_run ... FAILED
test insert_events_into_queue ... FAILED
test insert_many_events_into_queue ... FAILED
test logs_adapter_stderr_output ... FAILED
test logs_start_and_successful_end ... FAILED
test logs_termination_due_to_error ... FAILED
test process_queued_events ... FAILED
test processes_empty_event_queue_successfully ... FAILED
test produces_a_json_status_file ... FAILED
test produces_a_report_page_upon_request ... FAILED
test queue_a_node_event_for_processing ... FAILED
test record_node_events ... FAILED
test refuses_config_with_an_unknown_field ... FAILED
test remove_information_about_a_run_from_the_database ... FAILED
test reports_it_version ... FAILED
test runs_adapter_on_each_type_of_event ... FAILED
test runs_adapter_with_configuration ... FAILED
test runs_adapter_without_a_report_directory ... FAILED
test runs_adapters_for_all_matching_triggers ... FAILED
test set_up_a_node ... FAILED
test shows_adapter_specification ... FAILED
test shows_json_config_as_json ... FAILED
test shows_yaml_config_as_json ... FAILED
test smoke_test__runs_adapter ... FAILED
test stops_if_the_node_connection_breaks ... FAILED
test update_and_show_information_about_run_to_running ... FAILED
test we_can_run_rad ... FAILED
test dummy_adapter_runs_successfully ... ok
failures:
---- adapter_can_provide_url_for_info_on_run stdout ----
unknown: scenario: Adapter can provide URL for info on run
/ci/src/ci-broker.md:897:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter adapter-with-url.sh
thread 'adapter_can_provide_url_for_info_on_run' (2583) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
return: Failure
thread 'adapter_can_provide_url_for_info_on_run' (2583) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:897:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter adapter-with-url.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- add_information_about_run_that_s_finished_in_failure_to_database stdout ----
unknown: scenario: Add information about run that's finished in failure to database
/ci/src/ci-broker.md:2325:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'add_information_about_run_that_s_finished_in_failure_to_database' (2585) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'add_information_about_run_that_s_finished_in_failure_to_database' (2585) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2325:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- add_information_about_run_that_s_finished_successfully_to_database stdout ----
unknown: scenario: Add information about run that's finished successfully to database
/ci/src/ci-broker.md:2302:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'add_information_about_run_that_s_finished_successfully_to_database' (2586) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'add_information_about_run_that_s_finished_successfully_to_database' (2586) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2302:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- add_information_about_run_that_s_running_to_database stdout ----
unknown: scenario: Add information about run that's running to database
/ci/src/ci-broker.md:2279:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'add_information_about_run_that_s_running_to_database' (2588) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'add_information_about_run_that_s_running_to_database' (2588) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2279:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- add_information_about_triggered_run_to_database stdout ----
unknown: scenario: Add information about triggered run to database
/ci/src/ci-broker.md:2256:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'add_information_about_triggered_run_to_database' (2589) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'add_information_about_triggered_run_to_database' (2589) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2256:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- allows_setting_minimum_log_level stdout ----
unknown: scenario: Allows setting minimum log level
/ci/src/ci-broker.md:1076:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'allows_setting_minimum_log_level' (2590) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'allows_setting_minimum_log_level' (2590) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1076:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- can_add_a_branch_creation_event_to_queue stdout ----
unknown: scenario: Can add a branch creation event to queue
/ci/src/ci-broker.md:2107:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'can_add_a_branch_creation_event_to_queue' (2592) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'can_add_a_branch_creation_event_to_queue' (2592) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2107:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- can_add_a_branch_deletion_event_to_queue stdout ----
unknown: scenario: Can add a branch deletion event to queue
/ci/src/ci-broker.md:2147:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'can_add_a_branch_deletion_event_to_queue' (2593) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'can_add_a_branch_deletion_event_to_queue' (2593) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2147:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- can_add_a_branch_update_event_to_queue stdout ----
unknown: scenario: Can add a branch update event to queue
/ci/src/ci-broker.md:2127:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'can_add_a_branch_update_event_to_queue' (2594) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'can_add_a_branch_update_event_to_queue' (2594) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2127:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- can_add_a_patch_creation_event_to_queue stdout ----
unknown: scenario: Can add a patch creation event to queue
/ci/src/ci-broker.md:2167:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'can_add_a_patch_creation_event_to_queue' (2595) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'can_add_a_patch_creation_event_to_queue' (2595) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2167:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- can_add_a_patch_update_event_to_queue stdout ----
unknown: scenario: Can add a patch update event to queue
/ci/src/ci-broker.md:2187:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'can_add_a_patch_update_event_to_queue' (2596) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'can_add_a_patch_update_event_to_queue' (2596) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2187:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- can_add_shutdown_event_to_queue stdout ----
unknown: scenario: Can add shutdown event to queue
/ci/src/ci-broker.md:2087:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'can_add_shutdown_event_to_queue' (2597) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'can_add_shutdown_event_to_queue' (2597) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2087:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- can_output_trigger_message_for_a_ci_run stdout ----
unknown: scenario: Can output trigger message for a CI run
/ci/src/ci-broker.md:2231:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'can_output_trigger_message_for_a_ci_run' (2598) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'can_output_trigger_message_for_a_ci_run' (2598) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2231:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- can_remove_all_queued_events stdout ----
unknown: scenario: Can remove all queued events
/ci/src/ci-broker.md:2058:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'can_remove_all_queued_events' (2599) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'can_remove_all_queued_events' (2599) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2058:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- can_shut_down_cleanly stdout ----
unknown: scenario: Can shut down cleanly
/ci/src/ci-broker.md:995:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'can_shut_down_cleanly' (2600) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'can_shut_down_cleanly' (2600) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:995:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- can_trigger_a_ci_run stdout ----
unknown: scenario: Can trigger a CI run
/ci/src/ci-broker.md:2209:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'can_trigger_a_ci_run' (2601) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'can_trigger_a_ci_run' (2601) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2209:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- convert_recorded_node_events_into_ci_events stdout ----
unknown: scenario: Convert recorded node events into CI events
/ci/src/ci-broker.md:2479:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'convert_recorded_node_events_into_ci_events' (2602) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'convert_recorded_node_events_into_ci_events' (2602) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2479:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- count_in_concurrent_processes stdout ----
unknown: scenario: Count in concurrent processes
/ci/src/ci-broker.md:1945:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'count_in_concurrent_processes' (2604) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'count_in_concurrent_processes' (2604) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1945:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- count_in_a_single_process stdout ----
unknown: scenario: Count in a single process
/ci/src/ci-broker.md:1832:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'count_in_a_single_process' (2603) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'count_in_a_single_process' (2603) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1832:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- create_a_repository stdout ----
unknown: scenario: Create a repository
/ci/src/ci-broker.md:348:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'create_a_repository' (2605) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'create_a_repository' (2605) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:348:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- don_t_insert_event_for_non_existent_repository stdout ----
unknown: scenario: Don't insert event for non-existent repository
/ci/src/ci-broker.md:2426:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'don_t_insert_event_for_non_existent_repository' (2606) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'don_t_insert_event_for_non_existent_repository' (2606) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2426:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- event_synthesizer_terminates_after_first_connection stdout ----
unknown: scenario: Event synthesizer terminates after first connection
/ci/src/ci-broker.md:1795:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'event_synthesizer_terminates_after_first_connection' (2608) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'event_synthesizer_terminates_after_first_connection' (2608) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1795:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- events_can_be_queued_and_removed_from_queue stdout ----
unknown: scenario: Events can be queued and removed from queue
/ci/src/ci-broker.md:2029:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'events_can_be_queued_and_removed_from_queue' (2610) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'events_can_be_queued_and_removed_from_queue' (2610) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2029:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- extract_cib_log_from_journald_and_pretty_print stdout ----
unknown: scenario: Extract cib log from journald and pretty print
/ci/src/ci-broker.md:2542:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'extract_cib_log_from_journald_and_pretty_print' (2611) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'extract_cib_log_from_journald_and_pretty_print' (2611) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2542:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- fails_run_if_building_trigger_fails__but_does_not_crash stdout ----
unknown: scenario: Fails run if building trigger fails, but does not crash
/ci/src/ci-broker.md:1113:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'fails_run_if_building_trigger_fails__but_does_not_crash' (2612) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'fails_run_if_building_trigger_fails__but_does_not_crash' (2612) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1113:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- filter_predicate_allow stdout ----
unknown: scenario: Filter predicate Allow
/ci/src/ci-broker.md:1457:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'filter_predicate_allow' (2614) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'filter_predicate_allow' (2614) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1457:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- filter_predicate_and stdout ----
unknown: scenario: Filter predicate And
/ci/src/ci-broker.md:1526:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'filter_predicate_and' (2615) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'filter_predicate_and' (2615) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1526:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- filter_predicate_anydelegate stdout ----
unknown: scenario: Filter predicate AnyDelegate
/ci/src/ci-broker.md:1243:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'filter_predicate_anydelegate' (2616) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'filter_predicate_anydelegate' (2616) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1243:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- filter_predicate_branch stdout ----
unknown: scenario: Filter predicate Branch
/ci/src/ci-broker.md:1319:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'filter_predicate_branch' (2618) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'filter_predicate_branch' (2618) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1319:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- filter_predicate_branchcreated stdout ----
unknown: scenario: Filter predicate BranchCreated
/ci/src/ci-broker.md:1353:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'filter_predicate_branchcreated' (2619) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'filter_predicate_branchcreated' (2619) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1353:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- filter_predicate_branchdeleted stdout ----
unknown: scenario: Filter predicate BranchDeleted
/ci/src/ci-broker.md:1423:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'filter_predicate_branchdeleted' (2620) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'filter_predicate_branchdeleted' (2620) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1423:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- filter_predicate_branchupdated stdout ----
unknown: scenario: Filter predicate BranchUpdated
/ci/src/ci-broker.md:1388:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'filter_predicate_branchupdated' (2622) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'filter_predicate_branchupdated' (2622) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1388:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- filter_predicate_defaultbranch stdout ----
unknown: scenario: Filter predicate DefaultBranch
/ci/src/ci-broker.md:1636:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'filter_predicate_defaultbranch' (2623) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'filter_predicate_defaultbranch' (2623) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1636:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- filter_predicate_deny stdout ----
unknown: scenario: Filter predicate Deny
/ci/src/ci-broker.md:1491:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'filter_predicate_deny' (2624) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'filter_predicate_deny' (2624) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1491:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- filter_predicate_hasfile stdout ----
unknown: scenario: Filter predicate HasFile
/ci/src/ci-broker.md:1672:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'filter_predicate_hasfile' (2625) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'filter_predicate_hasfile' (2625) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1672:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- filter_predicate_node stdout ----
unknown: scenario: Filter predicate Node
/ci/src/ci-broker.md:1194:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'filter_predicate_node' (2626) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'filter_predicate_node' (2626) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1194:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- filter_predicate_not stdout ----
unknown: scenario: Filter predicate Not
/ci/src/ci-broker.md:1599:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'filter_predicate_not' (2627) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'filter_predicate_not' (2627) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1599:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- filter_predicate_or stdout ----
unknown: scenario: Filter predicate Or
/ci/src/ci-broker.md:1563:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'filter_predicate_or' (2628) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'filter_predicate_or' (2628) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1563:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- filter_predicate_repository stdout ----
unknown: scenario: Filter predicate Repository
/ci/src/ci-broker.md:1145:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'filter_predicate_repository' (2629) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'filter_predicate_repository' (2629) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1145:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- filter_predicate_tag stdout ----
unknown: scenario: Filter predicate Tag
/ci/src/ci-broker.md:1280:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'filter_predicate_tag' (2630) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'filter_predicate_tag' (2630) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1280:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- filter_recorded_ci_events stdout ----
unknown: scenario: Filter recorded CI events
/ci/src/ci-broker.md:2500:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'filter_recorded_ci_events' (2631) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'filter_recorded_ci_events' (2631) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2500:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- gives_helpful_error_message_if_it_doesn_t_understand_its_configuration_file stdout ----
unknown: scenario: Gives helpful error message if it doesn't understand its configuration file
/ci/src/ci-broker.md:948:1: step 1: given a Radicle node, with CI configured with not-yaml.yaml and adapter dummy.sh
thread 'gives_helpful_error_message_if_it_doesn_t_understand_its_configuration_file' (2632) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'gives_helpful_error_message_if_it_doesn_t_understand_its_configuration_file' (2632) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:948:1: step 1, given a Radicle node, with CI configured with not-yaml.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- gives_helpful_error_message_if_node_socket_can_t_be_found stdout ----
unknown: scenario: Gives helpful error message if node socket can't be found
/ci/src/ci-broker.md:925:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'gives_helpful_error_message_if_node_socket_can_t_be_found' (2633) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'gives_helpful_error_message_if_node_socket_can_t_be_found' (2633) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:925:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- handles_adapter_failing_on_a_failed_run stdout ----
unknown: scenario: Handles adapter failing on a failed run
/ci/src/ci-broker.md:648:1: step 1: given a Radicle node, with CI configured with broker-with-triggers.yaml and adapter failing-on-failure.sh
thread 'handles_adapter_failing_on_a_failed_run' (2634) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'handles_adapter_failing_on_a_failed_run' (2634) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:648:1: step 1, given a Radicle node, with CI configured with broker-with-triggers.yaml and adapter failing-on-failure.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- handles_adapter_failing_on_a_successful_run stdout ----
unknown: scenario: Handles adapter failing on a successful run
/ci/src/ci-broker.md:608:1: step 1: given a Radicle node, with CI configured with broker-with-triggers.yaml and adapter failing-on-success.sh
thread 'handles_adapter_failing_on_a_successful_run' (2635) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'handles_adapter_failing_on_a_successful_run' (2635) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:608:1: step 1, given a Radicle node, with CI configured with broker-with-triggers.yaml and adapter failing-on-success.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- insert_events_into_queue stdout ----
unknown: scenario: Insert events into queue
/ci/src/ci-broker.md:1854:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'insert_events_into_queue' (2636) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'insert_events_into_queue' (2636) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1854:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- insert_many_events_into_queue stdout ----
unknown: scenario: Insert many events into queue
/ci/src/ci-broker.md:1881:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'insert_many_events_into_queue' (2637) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'insert_many_events_into_queue' (2637) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1881:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- logs_adapter_stderr_output stdout ----
unknown: scenario: Logs adapter stderr output
/ci/src/ci-broker.md:1040:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter broken-adapter.sh
thread 'logs_adapter_stderr_output' (2638) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'logs_adapter_stderr_output' (2638) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1040:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter broken-adapter.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- logs_start_and_successful_end stdout ----
unknown: scenario: Logs start and successful end
/ci/src/ci-broker.md:2607:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'logs_start_and_successful_end' (2639) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'logs_start_and_successful_end' (2639) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2607:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- logs_termination_due_to_error stdout ----
unknown: scenario: Logs termination due to error
/ci/src/ci-broker.md:2630:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'logs_termination_due_to_error' (2640) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'logs_termination_due_to_error' (2640) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2630:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- process_queued_events stdout ----
unknown: scenario: Process queued events
/ci/src/ci-broker.md:1909:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'process_queued_events' (2641) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'process_queued_events' (2641) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1909:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- processes_empty_event_queue_successfully stdout ----
unknown: scenario: Processes empty event queue successfully
/ci/src/ci-broker.md:589:1: step 1: given a Radicle node, with CI configured with broker-with-triggers.yaml and adapter dummy.sh
thread 'processes_empty_event_queue_successfully' (2642) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'processes_empty_event_queue_successfully' (2642) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:589:1: step 1, given a Radicle node, with CI configured with broker-with-triggers.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- produces_a_json_status_file stdout ----
unknown: scenario: Produces a JSON status file
/ci/src/ci-broker.md:2653:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'produces_a_json_status_file' (2643) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'produces_a_json_status_file' (2643) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2653:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- produces_a_report_page_upon_request stdout ----
unknown: scenario: Produces a report page upon request
/ci/src/ci-broker.md:1016:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'produces_a_report_page_upon_request' (2644) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'produces_a_report_page_upon_request' (2644) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1016:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- queue_a_node_event_for_processing stdout ----
unknown: scenario: Queue a node event for processing
/ci/src/ci-broker.md:387:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'queue_a_node_event_for_processing' (2645) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'queue_a_node_event_for_processing' (2645) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:387:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- record_node_events stdout ----
unknown: scenario: Record node events
/ci/src/ci-broker.md:2458:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'record_node_events' (2646) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'record_node_events' (2646) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2458:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- refuses_config_with_an_unknown_field stdout ----
unknown: scenario: Refuses config with an unknown field
/ci/src/ci-broker.md:513:1: step 1: given a Radicle node, with CI configured with buggy.yaml and adapter dummy.sh
thread 'refuses_config_with_an_unknown_field' (2647) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'refuses_config_with_an_unknown_field' (2647) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:513:1: step 1, given a Radicle node, with CI configured with buggy.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- remove_information_about_a_run_from_the_database stdout ----
unknown: scenario: Remove information about a run from the database
/ci/src/ci-broker.md:2350:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'remove_information_about_a_run_from_the_database' (2648) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'remove_information_about_a_run_from_the_database' (2648) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2350:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- reports_it_version stdout ----
unknown: scenario: Reports it version
/ci/src/ci-broker.md:871:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'reports_it_version' (2649) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'reports_it_version' (2649) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:871:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- runs_adapter_on_each_type_of_event stdout ----
unknown: scenario: Runs adapter on each type of event
/ci/src/ci-broker.md:787:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'runs_adapter_on_each_type_of_event' (2650) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'runs_adapter_on_each_type_of_event' (2650) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:787:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- runs_adapter_with_configuration stdout ----
unknown: scenario: Runs adapter with configuration
/ci/src/ci-broker.md:690:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'runs_adapter_with_configuration' (2651) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'runs_adapter_with_configuration' (2651) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:690:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- runs_adapter_without_a_report_directory stdout ----
unknown: scenario: Runs adapter without a report directory
/ci/src/ci-broker.md:718:1: step 1: given a Radicle node, with CI configured with broker-with-triggers.yaml and adapter dummy.sh
thread 'runs_adapter_without_a_report_directory' (2652) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'runs_adapter_without_a_report_directory' (2652) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:718:1: step 1, given a Radicle node, with CI configured with broker-with-triggers.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- runs_adapters_for_all_matching_triggers stdout ----
unknown: scenario: Runs adapters for all matching triggers
/ci/src/ci-broker.md:746:1: step 1: given a Radicle node, with CI configured with broker-with-two-triggers.yaml and adapter dummy.sh
thread 'runs_adapters_for_all_matching_triggers' (2653) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'runs_adapters_for_all_matching_triggers' (2653) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:746:1: step 1, given a Radicle node, with CI configured with broker-with-two-triggers.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- set_up_a_node stdout ----
unknown: scenario: Set up a node
/ci/src/ci-broker.md:266:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'set_up_a_node' (2654) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'set_up_a_node' (2654) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:266:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- shows_adapter_specification stdout ----
unknown: scenario: Shows adapter specification
/ci/src/ci-broker.md:493:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'shows_adapter_specification' (2655) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'shows_adapter_specification' (2655) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:493:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- shows_json_config_as_json stdout ----
unknown: scenario: Shows JSON config as JSON
/ci/src/ci-broker.md:444:1: step 1: given a Radicle node, with CI configured with config.json and adapter dummy.sh
thread 'shows_json_config_as_json' (2656) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'shows_json_config_as_json' (2656) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:444:1: step 1, given a Radicle node, with CI configured with config.json and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- shows_yaml_config_as_json stdout ----
unknown: scenario: Shows YAML config as JSON
/ci/src/ci-broker.md:422:1: step 1: given a Radicle node, with CI configured with broker-with-all-filter-kinds.yaml and adapter dummy.sh
thread 'shows_yaml_config_as_json' (2657) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'shows_yaml_config_as_json' (2657) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:422:1: step 1, given a Radicle node, with CI configured with broker-with-all-filter-kinds.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- smoke_test__runs_adapter stdout ----
unknown: scenario: Smoke test: Runs adapter
/ci/src/ci-broker.md:549:1: step 1: given a Radicle node, with CI configured with broker-with-triggers.yaml and adapter dummy.sh
thread 'smoke_test__runs_adapter' (2658) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'smoke_test__runs_adapter' (2658) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:549:1: step 1, given a Radicle node, with CI configured with broker-with-triggers.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- stops_if_the_node_connection_breaks stdout ----
unknown: scenario: Stops if the node connection breaks
/ci/src/ci-broker.md:972:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'stops_if_the_node_connection_breaks' (2659) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'stops_if_the_node_connection_breaks' (2659) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:972:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- update_and_show_information_about_run_to_running stdout ----
unknown: scenario: Update and show information about run to running
/ci/src/ci-broker.md:2378:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'update_and_show_information_about_run_to_running' (2660) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'update_and_show_information_about_run_to_running' (2660) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:2378:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
---- we_can_run_rad stdout ----
unknown: scenario: We can run rad
/ci/src/ci-broker.md:1733:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh
thread 'we_can_run_rad' (2661) panicked at tests/subplot.rs:1:1:
SUBPLOT_DIR must be set: NotPresent
return: Failure
thread 'we_can_run_rad' (2661) panicked at tests/subplot.rs:1:1:
called `Result::unwrap()` on an `Err` value: "/ci/src/ci-broker.md:1733:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent"
failures:
adapter_can_provide_url_for_info_on_run
add_information_about_run_that_s_finished_in_failure_to_database
add_information_about_run_that_s_finished_successfully_to_database
add_information_about_run_that_s_running_to_database
add_information_about_triggered_run_to_database
allows_setting_minimum_log_level
can_add_a_branch_creation_event_to_queue
can_add_a_branch_deletion_event_to_queue
can_add_a_branch_update_event_to_queue
can_add_a_patch_creation_event_to_queue
can_add_a_patch_update_event_to_queue
can_add_shutdown_event_to_queue
can_output_trigger_message_for_a_ci_run
can_remove_all_queued_events
can_shut_down_cleanly
can_trigger_a_ci_run
convert_recorded_node_events_into_ci_events
count_in_a_single_process
count_in_concurrent_processes
create_a_repository
don_t_insert_event_for_non_existent_repository
event_synthesizer_terminates_after_first_connection
events_can_be_queued_and_removed_from_queue
extract_cib_log_from_journald_and_pretty_print
fails_run_if_building_trigger_fails__but_does_not_crash
filter_predicate_allow
filter_predicate_and
filter_predicate_anydelegate
filter_predicate_branch
filter_predicate_branchcreated
filter_predicate_branchdeleted
filter_predicate_branchupdated
filter_predicate_defaultbranch
filter_predicate_deny
filter_predicate_hasfile
filter_predicate_node
filter_predicate_not
filter_predicate_or
filter_predicate_repository
filter_predicate_tag
filter_recorded_ci_events
gives_helpful_error_message_if_it_doesn_t_understand_its_configuration_file
gives_helpful_error_message_if_node_socket_can_t_be_found
handles_adapter_failing_on_a_failed_run
handles_adapter_failing_on_a_successful_run
insert_events_into_queue
insert_many_events_into_queue
logs_adapter_stderr_output
logs_start_and_successful_end
logs_termination_due_to_error
process_queued_events
processes_empty_event_queue_successfully
produces_a_json_status_file
produces_a_report_page_upon_request
queue_a_node_event_for_processing
record_node_events
refuses_config_with_an_unknown_field
remove_information_about_a_run_from_the_database
reports_it_version
runs_adapter_on_each_type_of_event
runs_adapter_with_configuration
runs_adapter_without_a_report_directory
runs_adapters_for_all_matching_triggers
set_up_a_node
shows_adapter_specification
shows_json_config_as_json
shows_yaml_config_as_json
smoke_test__runs_adapter
stops_if_the_node_connection_breaks
update_and_show_information_about_run_to_running
we_can_run_rad
test result: FAILED. 2 passed; 71 failed; 0 ignored; 0 measured; 1 filtered out; finished in 2.02s
running 1 test
test adapterlib/src/lib.rs - RunId (line 34) ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
all doctests ran in 0.44s; merged doctests compilation took 0.44s
running 1 test
test src/timeoutcmd.rs - timeoutcmd (line 21) ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
all doctests ran in 0.68s; merged doctests compilation took 0.67s
+ export CARGO_TARGET_DIR=/ci/cache
+ CARGO_TARGET_DIR=/ci/cache
+ export CARGO_HOME=/ci/deps
+ CARGO_HOME=/ci/deps
+ export HOME=/root
+ HOME=/root
+ export PATH=/root/.cargo/bin:/root/.radicle/bin:/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
+ PATH=/root/.cargo/bin:/root/.radicle/bin:/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
+ rad --help
+ cargo doc --workspace --no-deps
Compiling radicle-ci-broker v0.31.0 (/ci/src)
Checking radicle-ci-adapter v0.1.0 (/ci/src/adapterlib)
Documenting radicle-ci-adapter v0.1.0 (/ci/src/adapterlib)
Documenting radicle-ci-broker v0.31.0 (/ci/src)
Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.26s
Generated /ci/cache/doc/radicle_ci_adapter/index.html and 5 other files
+ export RAD_PASSPHRAE=secret
+ RAD_PASSPHRAE=secret
+ rad auth --alias ambient
+ env
+ cargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2
Compiling radicle-ci-adapter v0.1.0 (/ci/src/adapterlib)
Compiling radicle-ci-broker v0.31.0 (/ci/src)
Finished `test` profile [unoptimized + debuginfo] target(s) in 6.41s
Running unittests src/lib.rs (/ci/cache/debug/deps/radicle_ci_adapter-14de6a517d2fbd8c)
Running unittests src/lib.rs (/ci/cache/debug/deps/radicle_ci_broker-cd9951daf635d7cd)
Running unittests src/bin/cib.rs (/ci/cache/debug/deps/cib-0ca1091efdcc202b)
Running unittests src/bin/cibtool.rs (/ci/cache/debug/deps/cibtool-eae6d5fa7e483810)
Running unittests src/bin/default_branch.rs (/ci/cache/debug/deps/default_branch-f154276158aa14e2)
Running unittests src/bin/synthetic-events.rs (/ci/cache/debug/deps/synthetic_events-10a569f7e83b9c2e)
Running tests/subplot.rs (/ci/cache/debug/deps/subplot-5df44b4a6b3fa024)
error: test failed, to rerun pass `-p radicle-ci-broker --test subplot`
Doc-tests radicle_ci_adapter
Doc-tests radicle_ci_broker
error: 1 target failed:
`-p radicle-ci-broker --test subplot`
- action: shell
shell: |
export CARGO_TARGET_DIR=/ci/cache
export CARGO_HOME=/ci/deps
export HOME=/root
export PATH="/root/.cargo/bin:/root/.radicle/bin:$PATH"
# Check that `rad` is there.
rad --help >/dev/null || (echo rad is not there; exit 1)
cargo doc --workspace --no-deps
# FIXME: We can't run upgrade tests from older versions because
# Ambient only fetches dependencies for the current version.
# Thus, we can't build the old versions. This is an Ambient
# problem that we can't fix here. So we skip the upgrade tests.
export RAD_PASSPHRAE=secret
rad auth --alias ambient
env
cargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2
subplot docgen ci-broker.subplot -o doc/ci-broker.html
subplot docgen doc/userguide.subplot -o doc/userguide.html
make -C doc
cp doc/*.html /ci/artifacts/rsync/.
BdsDxe: 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)
Booting `Debian GNU/Linux'
Loading Linux 6.12.86+deb13-amd64 ...
Loading initial ramdisk ...
EFI stub: Loaded initrd from LINUX_EFI_INITRD_MEDIA_GUID device path
Loading, please wait...
Starting systemd-udevd version 257.13-1~deb13u1
Begin: Loading essential drivers ... done.
Begin: Running /scripts/init-premount ... done.
Begin: Mounting root file system ... Begin: Running /scripts/local-top ... done.
Begin: Running /scripts/local-premount ... done.
Begin: Will now check root file system ... fsck from util-linux 2.41
fsck: error 2 (No such file or directory) while executing fsck.ext4 for /dev/vda2
fsck exited with status code 8
done.
Warning: File system check failed but did not detect errors
done.
Begin: Running /scripts/local-bottom ... done.
Begin: Running /scripts/init-bottom ... done.
Welcome to Debian GNU/Linux 13 (trixie)!
[ OK ] Created slice system-getty.slice - Slice /system/getty.
[ OK ] Created slice system-modprobe.slice - Slice /system/modprobe.
[ OK ] Created slice system-serial\x2dget…slice - Slice /system/serial-getty.
[ OK ] Created slice user.slice - User and Session Slice.
[ OK ] Started systemd-ask-password-conso…equests to Console Directory Watch.
[ OK ] Started systemd-ask-password-wall.…d Requests to Wall Directory Watch.
[ OK ] Set up automount proc-sys-fs-binfm…ormats File System Automount Point.
Expecting device dev-ttyS0.device - /dev/ttyS0...
[ OK ] Reached target paths.target - Path Units.
[ OK ] Reached target remote-fs.target - Remote File Systems.
[ OK ] Reached target slices.target - Slice Units.
[ OK ] Reached target swap.target - Swaps.
[ OK ] Listening on systemd-creds.socket - Credential Encryption/Decryption.
[ OK ] Listening on systemd-initctl.socke…- initctl Compatibility Named Pipe.
[ OK ] Listening on systemd-journald-dev-…socket - Journal Socket (/dev/log).
[ OK ] Listening on systemd-journald.socket - Journal Sockets.
[ OK ] Listening on systemd-networkd.socket - Network Service Netlink Socket.
[ OK ] Listening on systemd-udevd-control.socket - udev Control Socket.
[ OK ] Listening on systemd-udevd-kernel.socket - udev Kernel Socket.
Mounting dev-hugepages.mount - Huge Pages File System...
Mounting dev-mqueue.mount - POSIX Message Queue File System...
Mounting run-lock.mount - Legacy Locks Directory /run/lock...
Mounting sys-kernel-debug.mount - Kernel Debug File System...
Mounting sys-kernel-tracing.mount - Kernel Trace File System...
Mounting tmp.mount - Temporary Directory /tmp...
Starting kmod-static-nodes.service…eate List of Static Device Nodes...
Starting modprobe@configfs.service - Load Kernel Module configfs...
Starting modprobe@drm.service - Load Kernel Module drm...
Starting modprobe@efi_pstore.servi… - Load Kernel Module efi_pstore...
Starting modprobe@fuse.service - Load Kernel Module fuse...
Starting systemd-journald.service - Journal Service...
Starting systemd-modules-load.service - Load Kernel Modules...
Starting systemd-network-generator…k Units from Kernel Command Line...
Starting systemd-remount-fs.servic…unt Root and Kernel File Systems...
Starting systemd-udev-load-credent…Load udev Rules from Credentials...
Starting systemd-udev-trigger.service - Coldplug All udev Devices...
[ OK ] Mounted dev-hugepages.mount - Huge Pages File System.
[ OK ] Mounted dev-mqueue.mount - POSIX Message Queue File System.
[ OK ] Mounted run-lock.mount - Legacy Locks Directory /run/lock.
[ OK ] Mounted sys-kernel-debug.mount - Kernel Debug File System.
[ OK ] Mounted sys-kernel-tracing.mount - Kernel Trace File System.
[ OK ] Mounted tmp.mount - Temporary Directory /tmp.
[ OK ] Finished kmod-static-nodes.service…Create List of Static Device Nodes.
[ OK ] Finished modprobe@configfs.service - Load Kernel Module configfs.
[ OK ] Finished modprobe@drm.service - Load Kernel Module drm.
[ OK ] Finished modprobe@efi_pstore.service - Load Kernel Module efi_pstore.
[ OK ] Finished modprobe@fuse.service - Load Kernel Module fuse.
[ OK ] Finished systemd-modules-load.service - Load Kernel Modules.
[ OK ] Finished systemd-network-generator…ork Units from Kernel Command Line.
[ OK ] Finished systemd-remount-fs.servic…mount Root and Kernel File Systems.
[ OK ] Finished systemd-udev-load-credent…- Load udev Rules from Credentials.
[ OK ] Reached target network-pre.target - Preparation for Network.
Mounting sys-fs-fuse-connections.mount - FUSE Control File System...
Mounting sys-kernel-config.mount - Kernel Configuration File System...
Starting systemd-random-seed.service - Load/Save OS Random Seed...
Starting systemd-sysctl.service - Apply Kernel Variables...
Starting systemd-tmpfiles-setup-de… Device Nodes in /dev gracefully...
[ OK ] Started systemd-journald.service - Journal Service.
[ OK ] Finished systemd-udev-trigger.service - Coldplug All udev Devices.
[ OK ] Mounted sys-fs-fuse-connections.mount - FUSE Control File System.
[ OK ] Mounted sys-kernel-config.mount - Kernel Configuration File System.
Starting systemd-journal-flush.ser…sh Journal to Persistent Storage...
[ OK ] Finished systemd-sysctl.service - Apply Kernel Variables.
[ OK ] Finished systemd-random-seed.service - Load/Save OS Random Seed.
[ OK ] Finished systemd-tmpfiles-setup-de…ic Device Nodes in /dev gracefully.
Starting systemd-sysusers.service - Create System Users...
[ OK ] Finished systemd-journal-flush.ser…lush Journal to Persistent Storage.
[ OK ] Finished systemd-sysusers.service - Create System Users.
Starting systemd-resolved.service - Network Name Resolution...
Starting systemd-tmpfiles-setup-de…eate Static Device Nodes in /dev...
[ OK ] Finished systemd-tmpfiles-setup-de…Create Static Device Nodes in /dev.
[ OK ] Reached target local-fs-pre.target…Preparation for Local File Systems.
[ OK ] Set up automount efi.automount - EFI System Partition Automount.
[ OK ] Reached target local-fs.target - Local File Systems.
[ OK ] Listening on systemd-sysext.socket… System Extension Image Management.
Starting systemd-binfmt.service - Set Up Additional Binary Formats...
Starting systemd-tmpfiles-setup.se…ate System Files and Directories...
Starting systemd-udevd.service - R…ager for Device Events and Files...
[ OK ] Finished systemd-tmpfiles-setup.se…reate System Files and Directories.
[ OK ] Started systemd-resolved.service - Network Name Resolution.
[ OK ] Reached target nss-lookup.target - Host and Network Name Lookups.
Starting ldconfig.service - Rebuild Dynamic Linker Cache...
Starting systemd-journal-catalog-u…ervice - Rebuild Journal Catalog...
[ OK ] Started systemd-udevd.service - Ru…anager for Device Events and Files.
Starting systemd-networkd.service - Network Configuration...
[ OK ] Finished systemd-journal-catalog-u….service - Rebuild Journal Catalog.
[ OK ] Found device dev-ttyS0.device - /dev/ttyS0.
[ OK ] Finished ldconfig.service - Rebuild Dynamic Linker Cache.
Starting systemd-update-done.service - Update is Completed...
[ OK ] Finished systemd-update-done.service - Update is Completed.
Mounting proc-sys-fs-binfmt_misc.m…cutable File Formats File System...
[ OK ] Mounted proc-sys-fs-binfmt_misc.mo…xecutable File Formats File System.
[ OK ] Finished systemd-binfmt.service - Set Up Additional Binary Formats.
[ OK ] Reached target sysinit.target - System Initialization.
[ OK ] Started apt-daily.timer - Daily apt download activities.
[ OK ] Started apt-daily-upgrade.timer - …y apt upgrade and clean activities.
[ OK ] Started dpkg-db-backup.timer - Daily dpkg database backup timer.
[ OK ] Started fstrim.timer - Discard unused filesystem blocks once a week.
[ OK ] Started man-db.timer - Daily man-db regeneration.
[ OK ] Started systemd-tmpfiles-clean.tim…y Cleanup of Temporary Directories.
[ OK ] Reached target timers.target - Timer Units.
[ OK ] Listening on dbus.socket - D-Bus System Message Bus Socket.
[ OK ] Listening on sshd-unix-local.socke…temd-ssh-generator, AF_UNIX Local).
[ OK ] Listening on systemd-hostnamed.socket - Hostname Service Socket.
[ OK ] Reached target sockets.target - Socket Units.
[ OK ] Reached target basic.target - Basic System.
Starting ambient.service - Run build job for Ambient CI...
Starting dbus.service - D-Bus System Message Bus...
Starting grub-common.service - Record successful boot for GRUB...
Starting systemd-logind.service - User Login Management...
[ OK ] Started dbus.service - D-Bus System Message Bus.
[ OK ] Listening on systemd-rfkill.socket…ll Switch Status /dev/rfkill Watch.
[ OK ] Finished grub-common.service - Record successful boot for GRUB.
[ OK ] Started systemd-logind.service - User Login Management.
[ OK ] Started systemd-networkd.service - Network Configuration.
[ OK ] Reached target network.target - Network.
Starting ssh.service - OpenBSD Secure Shell server...
Starting systemd-networkd-persiste…tent Storage in systemd-networkd...
Starting systemd-user-sessions.service - Permit User Sessions...
[ OK ] Finished systemd-networkd-persiste…istent Storage in systemd-networkd.
[ OK ] Finished systemd-user-sessions.service - Permit User Sessions.
[ OK ] Started getty@tty1.service - Getty on tty1.
[ OK ] Started serial-getty@ttyS0.service - Serial Getty on ttyS0.
[ OK ] Reached target getty.target - Login Prompts.
[ OK ] Started ssh.service - OpenBSD Secure Shell server.
Debian GNU/Linux 13 ambient-dev ttyS0
ambient-dev login: [ OK ] Stopped ambient.service - Run build job for Ambient CI.
[ OK ] Removed slice system-modprobe.slice - Slice /system/modprobe.
[ OK ] Stopped target getty.target - Login Prompts.
[ OK ] Stopped target nss-lookup.target - Host and Network Name Lookups.
[ OK ] Stopped target timers.targettopping systemd-logind.service - User Login Management...
Stopping systemd-networkd-persiste…tent Storage in systemd-networkd...
Stopping systemd-random-seed.service - Load/Save OS Random Seed...
[ OK ] Stopped systemd-udev-load-credenti…- Load udev Rules from Credentials.
[ OK ] Stopped ssh.service - OpenBSD Secure Shell server.
[ OK ] Stopped getty@tty1.service - Getty on tty1.
[ OK ] Stopped serial-getty@ttyS0.service - Serial Getty on ttyS0.
[ OK ] Stopped dbus.service - D-Bus System Message Bus.
[ OK ] Stopped systemd-networkd-persisten…istent Storage in systemd-networkd.
[ OK ] Stopped systemd-random-seed.service - Load/Save OS Random Seed.
[ OK ] Stopped systemd-logind.service - User Login Management.
[ OK ] Removed slice system-getty.slice - Slice /system/getty.
[ OK ] Removed slice system-serial\x2dget…slice - Slice /system/serial-getty.
Stopping systemd-user-sessions.service - Permit User Sessions...
[ OK ] Stopped systemd-user-sessions.service - Permit User Sessions.
[ OK ] Stopped target basic.target - Basic System.
[ OK ] Stopped target network.target - Network.
[ OK ] Stopped target paths.target - Path Units.
[ OK ] Stopped systemd-ask-password-conso…equests to Console Directory Watch.
[ OK ] Stopped systemd-ask-password-wall.…d Requests to Wall Directory Watch.
[ OK ] Stopped target remote-fs.target - Remote File Systems.
[ OK ] Stopped target slices.target - Slice Units.
[ OK ] Removed slice user.slice - User and Session Slice.
[ OK ] Stopped target sockets.target - Socket Units.
[ OK ] Closed dbus.socket - D-Bus System Message Bus Socket.
[ OK ] Closed sshd-unix-local.socket - Op…temd-ssh-generator, AF_UNIX Local).
[ OK ] Closed systemd-hostnamed.socket - Hostname Service Socket.
[ OK ] Stopped target sysinit.target - System Initialization.
Stopping systemd-binfmt.service - Set Up Additional Binary Formats...
Stopping systemd-networkd.service - Network Configuration...
Stopping systemd-resolved.service - Network Name Resolution...
[ OK ] Stopped systemd-update-done.service - Update is Completed.
[ OK ] Stopped ldconfig.service - Rebuild Dynamic Linker Cache.
[ OK ] Stopped systemd-journal-catalog-up….service - Rebuild Journal Catalog.
[ OK ] Stopped systemd-tmpfiles-setup.ser…reate System Files and Directories.
[ OK ] Stopped systemd-networkd.service - Network Configuration.
[ OK ] Stopped systemd-binfmt.service - Set Up Additional Binary Formats.
[ OK ] Unset automount proc-sys-fs-binfmt…ormats File System Automount Point.
[ OK ] Stopped target local-fs.target - Local File Systems.
[ OK ] Unset automount efi.automount - EFI System Partition Automount.
[ OK ] Stopped target local-fs-pre.target…Preparation for Local File Systems.
[ OK ] Stopped target network-pre.target - Preparation for Network.
[ OK ] Closed systemd-networkd.socket - Network Service Netlink Socket.
Unmounting run-lock.mount - Legacy Locks Directory /run/lock...
Unmounting tmp.mount - Temporary Directory /tmp...
[ OK ] Stopped systemd-network-generator.…ork Units from Kernel Command Line.
[ OK ] Stopped systemd-tmpfiles-setup-dev…Create Static Device Nodes in /dev.
[ OK ] Stopped systemd-resolved.service - Network Name Resolution.
[ OK ] Unmounted run-lock.mount - Legacy Locks Directory /run/lock.
[ OK ] Stopped systemd-sysctl.service - Apply Kernel Variables.
[ OK ] Stopped systemd-modules-load.service - Load Kernel Modules.
[ OK ] Stopped systemd-sysusers.service - Create System Users.
[ OK ] Stopped systemd-remount-fs.service…mount Root and Kernel File Systems.
[ OK ] Stopped systemd-tmpfiles-setup-dev…ic Device Nodes in /dev gracefully.
[ OK ] Unmounted tmp.mount - Temporary Directory /tmp.
[ OK ] Stopped target swap.target - Swaps.
[ OK ] Reached target shutdown.target - System Shutdown.
[ OK ] Reached target umount.target - Unmount All Filesystems.
[ OK ] Reached target final.target - Late Shutdown Services.
[ OK ] Finished systemd-poweroff.service - System Power Off.
[ OK ] Reached target poweroff.target - System Power Off.
[ 45.350609] reboot: Power down
BdsDxe: 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)
EFI stub: Loaded initrd from LINUX_EFI_INITRD_MEDIA_GUID device path
INFO: Block devices
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sr0 11:0 1 372K 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 5.2M 1 disk
vdc 254:32 0 11.9M 1 disk
vdd 254:48 0 953.7M 0 disk
vde 254:64 0 27.9G 0 disk
vdf 254:80 0 100G 1 disk
vdg 254:96 0 10K 1 disk
INFO: Extracting tar archive from /dev/vdb
drwxr-xr-x _rad/_rad 0 2026-08-24 15:10 ./
-rw-r--r-- _rad/_rad 2260 2026-08-24 15:11 ./plan.yaml
-rwxr-xr-x _rad/_rad 5460288 2026-08-24 15:11 ./run-ci
INFO: Extracted files:
6 0 drwxr-xr-x 2 1000 1000 80 Aug 24 15:10 .
10 5336 -rwxr-xr-x 1 1000 1000 5460288 Aug 24 15:11 ./run-ci
9 4 -rw-r--r-- 1 1000 1000 2260 Aug 24 15:11 ./plan.yaml
INFO: Running run-ci from /dev/vdb
================================ BEGIN ================================
{"type":"executor_starts","name":"ambient-execute-plan","version":"0.18.0@5360d3f","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":859777394}}
{"type":"trace","title":"Set environment variable \"HOME\"","msg":"\"HOME\"=\"/root\"","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":859812769}}
{"type":"runnable_plan","steps":[{"action":"mkdir","pathname":"/ci"},{"action":"mkdir","pathname":"/ci/artifacts"},{"action":"mkdir","pathname":"/ci/artifacts/debian"},{"action":"mkdir","pathname":"/ci/artifacts/rsync"},{"action":"mkdir","pathname":"/ci/secrets"},{"action":"mkdir","pathname":"/ci/deps"},{"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":"tar_extract","archive":"/dev/vdd","directory":"/ci/artifacts"},{"action":"tar_extract","archive":"/dev/vdg","directory":"/ci/secrets"},{"action":"shell","shell":"ln -sf /ci /workspace"},{"action":"create_file","filename":"/root/.ssh/config","content":"Host *\nStrictHostKeyChecking accept-new\nIdentityFile /ci/secrets/ssh_key\n ","overwrite":true},{"action":"cargo_clippy"},{"action":"shell","shell":"export CARGO_TARGET_DIR=/ci/cache\nexport CARGO_HOME=/ci/deps\nexport HOME=/root\nexport PATH=\"/root/.cargo/bin:/root/.radicle/bin:$PATH\"\n\n# Check that `rad` is there.\nrad --help >/dev/null || (echo rad is not there; exit 1)\n\ncargo doc --workspace --no-deps\n\n# FIXME: We can't run upgrade tests from older versions because\n# Ambient only fetches dependencies for the current version.\n# Thus, we can't build the old versions. This is an Ambient\n# problem that we can't fix here. So we skip the upgrade tests.\nexport RAD_PASSPHRAE=secret\nrad auth --alias ambient\nenv\ncargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2\n\nsubplot docgen ci-broker.subplot -o doc/ci-broker.html\nsubplot docgen doc/userguide.subplot -o doc/userguide.html\nmake -C doc\ncp doc/*.html /ci/artifacts/rsync/.\n"},{"action":"custom","name":"dch","args":{"debemail":"liw@liw.fi","debfullname":"Lars Wirzenius"}},{"action":"deb","packages":"debian"},{"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","secrets_drive":null,"workspace_dir":"/ci","source_dir":"/ci/src","deps_dir":"/ci/deps","cache_dir":"/ci/cache","artifacts_dir":"/ci/artifacts","secrets_dir":null,"envs":{},"timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":860394906}}
{"type":"trace","title":"Set environment variable \"CARGO_TARGET_DIR\"","msg":"\"CARGO_TARGET_DIR\"=\"/ci/cache/cargo-target\"","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":860459057}}
{"type":"trace","title":"Set environment variable \"CARGO_HOME\"","msg":"\"CARGO_HOME\"=\"/ci/deps\"","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":860658747}}
{"type":"trace","title":"Set environment variable \"PATH\"","msg":"\"PATH\"=\"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\"","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":860664832}}
{"type":"trace","title":"Set environment variable \"CARGO_TARGET_DIR\"","msg":"\"CARGO_TARGET_DIR\"=\"/ci/cache/cargo-target\"","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":860870438}}
{"type":"trace","title":"Set environment variable \"CARGO_HOME\"","msg":"\"CARGO_HOME\"=\"/ci/deps\"","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":860874759}}
{"type":"trace","title":"Set environment variable \"PATH\"","msg":"\"PATH\"=\"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\"","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":861815870}}
{"type":"trace","title":"Execute action","msg":"Mkdir(\n Mkdir {\n pathname: \"/ci\",\n },\n)","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":862802324}}
{"type":"action_succeeded","action":"mkdir","pathname":"/ci","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":864219450}}
{"type":"trace","title":"Execute action","msg":"Mkdir(\n Mkdir {\n pathname: \"/ci/artifacts\",\n },\n)","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":864279752}}
{"type":"action_succeeded","action":"mkdir","pathname":"/ci/artifacts","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":918958417}}
{"type":"trace","title":"Execute action","msg":"Mkdir(\n Mkdir {\n pathname: \"/ci/artifacts/debian\",\n },\n)","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":919139249}}
{"type":"action_succeeded","action":"mkdir","pathname":"/ci/artifacts/debian","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":919169305}}
{"type":"trace","title":"Execute action","msg":"Mkdir(\n Mkdir {\n pathname: \"/ci/artifacts/rsync\",\n },\n)","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":919350499}}
{"type":"action_succeeded","action":"mkdir","pathname":"/ci/artifacts/rsync","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":919377549}}
{"type":"trace","title":"Execute action","msg":"Mkdir(\n Mkdir {\n pathname: \"/ci/secrets\",\n },\n)","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":919561315}}
{"type":"action_succeeded","action":"mkdir","pathname":"/ci/secrets","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":919588607}}
{"type":"trace","title":"Execute action","msg":"Mkdir(\n Mkdir {\n pathname: \"/ci/deps\",\n },\n)","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":919771540}}
{"type":"action_succeeded","action":"mkdir","pathname":"/ci/deps","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":919796256}}
{"type":"trace","title":"Execute action","msg":"TarExtract(\n TarExtract {\n archive: \"/dev/vdc\",\n directory: \"/ci/src\",\n },\n)","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":919983490}}
{"type":"action_succeeded","action":"tar_extract","archive":"/dev/vdc","directory":"/ci/src","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":957537060}}
{"type":"trace","title":"Execute action","msg":"TarExtract(\n TarExtract {\n archive: \"/dev/vdf\",\n directory: \"/ci/deps\",\n },\n)","timestamp":{"secs_since_epoch":1787584268,"nanos_since_epoch":958012196}}
{"type":"action_succeeded","action":"tar_extract","archive":"/dev/vdf","directory":"/ci/deps","timestamp":{"secs_since_epoch":1787584270,"nanos_since_epoch":625580778}}
{"type":"trace","title":"Execute action","msg":"TarExtract(\n TarExtract {\n archive: \"/dev/vde\",\n directory: \"/ci/cache\",\n },\n)","timestamp":{"secs_since_epoch":1787584270,"nanos_since_epoch":625630519}}
{"type":"action_succeeded","action":"tar_extract","archive":"/dev/vde","directory":"/ci/cache","timestamp":{"secs_since_epoch":1787584278,"nanos_since_epoch":601438437}}
{"type":"trace","title":"Execute action","msg":"TarExtract(\n TarExtract {\n archive: \"/dev/vdd\",\n directory: \"/ci/artifacts\",\n },\n)","timestamp":{"secs_since_epoch":1787584278,"nanos_since_epoch":601486264}}
{"type":"action_succeeded","action":"tar_extract","archive":"/dev/vdd","directory":"/ci/artifacts","timestamp":{"secs_since_epoch":1787584278,"nanos_since_epoch":609115655}}
{"type":"trace","title":"Execute action","msg":"TarExtract(\n TarExtract {\n archive: \"/dev/vdg\",\n directory: \"/ci/secrets\",\n },\n)","timestamp":{"secs_since_epoch":1787584278,"nanos_since_epoch":609141032}}
{"type":"action_succeeded","action":"tar_extract","archive":"/dev/vdg","directory":"/ci/secrets","timestamp":{"secs_since_epoch":1787584278,"nanos_since_epoch":615821022}}
{"type":"trace","title":"Execute action","msg":"Shell(\n Shell {\n shell: \"ln -sf /ci /workspace\",\n },\n)","timestamp":{"secs_since_epoch":1787584278,"nanos_since_epoch":615845078}}
{"type":"trace","title":"Start program bash","msg":"Command {\n program: \"bash\",\n args: [\n \"bash\",\n \"-c\",\n \"set -xeuo pipefail\\nln -sf /ci /workspace\\n\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584278,"nanos_since_epoch":616074000}}
{"type":"program_succeeded","program_name":"bash","exit_code":0,"stdout":"","stderr":"+ ln -sf /ci /workspace\n","timestamp":{"secs_since_epoch":1787584278,"nanos_since_epoch":634099904}}
{"type":"action_succeeded","action":"shell","shell":"ln -sf /ci /workspace","timestamp":{"secs_since_epoch":1787584278,"nanos_since_epoch":634125392}}
{"type":"trace","title":"Execute action","msg":"CreateFile(\n CreateFile {\n filename: \"/root/.ssh/config\",\n content: \"Host *\\nStrictHostKeyChecking accept-new\\nIdentityFile /ci/secrets/ssh_key\\n \",\n overwrite: true,\n },\n)","timestamp":{"secs_since_epoch":1787584278,"nanos_since_epoch":634336950}}
{"type":"action_succeeded","action":"create_file","filename":"/root/.ssh/config","content":"Host *\nStrictHostKeyChecking accept-new\nIdentityFile /ci/secrets/ssh_key\n ","overwrite":true,"timestamp":{"secs_since_epoch":1787584278,"nanos_since_epoch":634959519}}
{"type":"trace","title":"Execute action","msg":"CargoClippy(\n CargoClippy,\n)","timestamp":{"secs_since_epoch":1787584278,"nanos_since_epoch":635008341}}
{"type":"trace","title":"Start program cargo","msg":"Command {\n program: \"cargo\",\n args: [\n \"cargo\",\n \"--version\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584278,"nanos_since_epoch":635029089}}
{"type":"program_succeeded","program_name":"cargo","exit_code":0,"stdout":"cargo 1.98.0 (797e8a9bc 2026-08-05)\n","stderr":"","timestamp":{"secs_since_epoch":1787584278,"nanos_since_epoch":686381135}}
{"type":"trace","title":"Start program cargo","msg":"Command {\n program: \"cargo\",\n args: [\n \"cargo\",\n \"clippy\",\n \"--version\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584278,"nanos_since_epoch":689286288}}
{"type":"program_succeeded","program_name":"cargo","exit_code":0,"stdout":"clippy 0.1.98 (88d9e12ae1 2026-08-18)\n","stderr":"","timestamp":{"secs_since_epoch":1787584278,"nanos_since_epoch":748155160}}
{"type":"trace","title":"Start program rustc","msg":"Command {\n program: \"rustc\",\n args: [\n \"rustc\",\n \"--version\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584278,"nanos_since_epoch":751032756}}
{"type":"program_succeeded","program_name":"rustc","exit_code":0,"stdout":"rustc 1.98.0 (88d9e12ae 2026-08-18)\n","stderr":"","timestamp":{"secs_since_epoch":1787584278,"nanos_since_epoch":776562459}}
{"type":"trace","title":"Start program cargo","msg":"Command {\n program: \"cargo\",\n args: [\n \"cargo\",\n \"clippy\",\n \"--offline\",\n \"--locked\",\n \"--workspace\",\n \"--all-targets\",\n \"--no-deps\",\n \"--\",\n \"--deny\",\n \"warnings\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584278,"nanos_since_epoch":779447794}}
{"type":"program_succeeded","program_name":"cargo","exit_code":0,"stdout":"","stderr":" Checking radicle-ci-adapter v0.1.0 (/ci/src/adapterlib)\n Compiling radicle-ci-broker v0.31.0 (/ci/src)\n Finished `dev` profile [unoptimized + debuginfo] target(s) in 2.99s\n","timestamp":{"secs_since_epoch":1787584281,"nanos_since_epoch":846287315}}
{"type":"action_succeeded","action":"cargo_clippy","timestamp":{"secs_since_epoch":1787584281,"nanos_since_epoch":851094345}}
{"type":"trace","title":"Execute action","msg":"Shell(\n Shell {\n shell: \"export CARGO_TARGET_DIR=/ci/cache\\nexport CARGO_HOME=/ci/deps\\nexport HOME=/root\\nexport PATH=\\\"/root/.cargo/bin:/root/.radicle/bin:$PATH\\\"\\n\\n# Check that `rad` is there.\\nrad --help >/dev/null || (echo rad is not there; exit 1)\\n\\ncargo doc --workspace --no-deps\\n\\n# FIXME: We can't run upgrade tests from older versions because\\n# Ambient only fetches dependencies for the current version.\\n# Thus, we can't build the old versions. This is an Ambient\\n# problem that we can't fix here. So we skip the upgrade tests.\\nexport RAD_PASSPHRAE=secret\\nrad auth --alias ambient\\nenv\\ncargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2\\n\\nsubplot docgen ci-broker.subplot -o doc/ci-broker.html\\nsubplot docgen doc/userguide.subplot -o doc/userguide.html\\nmake -C doc\\ncp doc/*.html /ci/artifacts/rsync/.\\n\",\n },\n)","timestamp":{"secs_since_epoch":1787584281,"nanos_since_epoch":852879209}}
{"type":"trace","title":"Start program bash","msg":"Command {\n program: \"bash\",\n args: [\n \"bash\",\n \"-c\",\n \"set -xeuo pipefail\\nexport CARGO_TARGET_DIR=/ci/cache\\nexport CARGO_HOME=/ci/deps\\nexport HOME=/root\\nexport PATH=\\\"/root/.cargo/bin:/root/.radicle/bin:$PATH\\\"\\n\\n# Check that `rad` is there.\\nrad --help >/dev/null || (echo rad is not there; exit 1)\\n\\ncargo doc --workspace --no-deps\\n\\n# FIXME: We can\\'t run upgrade tests from older versions because\\n# Ambient only fetches dependencies for the current version.\\n# Thus, we can\\'t build the old versions. This is an Ambient\\n# problem that we can\\'t fix here. So we skip the upgrade tests.\\nexport RAD_PASSPHRAE=secret\\nrad auth --alias ambient\\nenv\\ncargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2\\n\\nsubplot docgen ci-broker.subplot -o doc/ci-broker.html\\nsubplot docgen doc/userguide.subplot -o doc/userguide.html\\nmake -C doc\\ncp doc/*.html /ci/artifacts/rsync/.\\n\\n\",\n ],\n env: CommandEnv {\n clear: false,\n vars: {\n \"CARGO_HOME\": Some(\n \"/ci/deps\",\n ),\n \"CARGO_TARGET_DIR\": Some(\n \"/ci/cache/cargo-target\",\n ),\n \"HOME\": Some(\n \"/root\",\n ),\n \"PATH\": Some(\n \"/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\",\n ),\n },\n },\n cwd: Some(\n \"/ci/src\",\n ),\n create_pidfd: false,\n}","timestamp":{"secs_since_epoch":1787584281,"nanos_since_epoch":866662890}}
{"type":"program_failed","program_name":"bash","exit_code":101,"stdout":"\nInitializing your Radicle 👾 identity\n\n✓ Creating your Ed25519 keypair…\n✓ Your Radicle DID is did:key:z6Mkgrox8ZR7Nifzbcv9Na15jXx64rkH2HD4Xze6E1sz6v5h. This identifies your device. Run `rad self` to show it at all times.\n✓ You're all set.\n\nTo create a Radicle repository, run `rad init` from a Git repository with at least one commit.\nTo clone a repository, run `rad clone <rid>`. For example, `rad clone rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5` clones the Radicle 'heartwood' repository.\nTo get a list of all commands, run `rad`.\nMEMORY_PRESSURE_WRITE=c29tZSAyMDAwMDAgMjAwMDAwMAA=\nCARGO_TARGET_DIR=/ci/cache\nPWD=/ci/src\nSYSTEMD_EXEC_PID=372\nHOME=/root\nLANG=C.UTF-8\nCARGO_HOME=/ci/deps\nMEMORY_PRESSURE_WATCH=/sys/fs/cgroup/system.slice/ambient.service/memory.pressure\nINVOCATION_ID=dddd8ad7b964411cbe0f53d50e4e0d53\nRAD_PASSPHRAE=secret\nUSER=root\nSHLVL=2\nJOURNAL_STREAM=9:3293\nPATH=/root/.cargo/bin:/root/.radicle/bin:/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\nOLDPWD=/\n_=/usr/bin/env\n\nrunning 0 tests\n\ntest result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s\n\n\nrunning 88 tests\ntest adapter::test::adapter_does_not_exist ... ok\ntest adapter::test::adapter_ends_ok_before_first_message ... ok\ntest adapter::test::adapter_ends_ok_before_second_message ... ok\ntest adapter::test::adapter_exits_nonzero ... ok\ntest adapter::test::adapter_has_bad_interpreter ... ok\ntest adapter::test::adapter_first_message_isnt_triggered ... ok\ntest adapter::test::adapter_is_killed_before_any_messages ... ok\ntest adapter::test::adapter_is_killed_after_second_message ... ok\ntest adapter::test::adapter_is_killed_before_first_message ... ok\ntest adapter::test::adapter_is_not_executable ... ok\ntest adapter::test::adapter_outputs_too_many_messages ... ok\ntest adapter::test::adapter_produces_as_bad_message ... ok\ntest adapter::test::adapter_redacts_sensitive_environment ... ok\ntest adapter::test::adapter_reports_success ... ok\ntest adapter::test::adapter_reports_failure ... ok\ntest broker::test::adapter_fails ... ok\ntest broker::test::executes_adapter ... ok\ntest ci_event::test::branch_created ... ok\ntest ci_event::test::branch_deleted ... ok\ntest ci_event::test::diff_refs ... ok\ntest ci_event::test::nothing_updated ... ok\ntest ci_event::test::branch_updated ... ok\ntest ci_event::test::patch_created ... ok\ntest ci_event::test::patch_updated ... ok\ntest ci_event::test::skipped ... ok\ntest ci_event::test_parsed_ref::branch ... ok\ntest ci_event::test_parsed_ref::patch ... ok\ntest ci_event::test_parsed_ref::tag ... ok\ntest config::test::parse_config_yaml ... ok\ntest config::test::parse_config_yaml_without_max_run_time ... ok\ntest filter::test::allows_all_for_default_repository ... ok\ntest filter::test::allows_all_for_main_branch ... ok\ntest filter::test::allows_all_for_right_node ... ok\ntest filter::test::allows_any_event ... ok\ntest filter::test::allows_branch_creation ... ok\ntest filter::test::allows_branch_deletion ... ok\ntest filter::test::allows_branch_update ... ok\ntest filter::test::allows_if_all_allow ... ok\ntest filter::test::allows_if_any_allows ... ok\ntest filter::test::allows_none_for_wrong_node ... ok\ntest filter::test::allows_no_event ... ok\ntest filter::test::allows_patch_creation ... ok\ntest filter::test::allows_patch_update ... ok\ntest filter::test::allows_opposite ... ok\ntest filter::test::allows_shutdown ... ok\ntest filter::test::allows_specific_patch ... ok\ntest filter::test::deserialize_yaml_nested_not ... ok\ntest filter::test::allows_wanted_tag ... ok\ntest filter::test::doesnt_allow_any_for_other_branch ... ok\ntest filter::test::doesnt_allow_any_for_other_repository ... ok\ntest filter::test::doesnt_allow_unexpected_tag ... ok\ntest filter::test::doesnt_allow_unexpected_tag_even_if_wanted_is_prefix ... ok\ntest filter::test::doesnt_allows_other_patch ... ok\ntest filter::test::doesnt_allow_unexpected_tag_even_if_wanted_is_suffix ... ok\ntest filter::test::only_allows_branch_creation ... ok\ntest filter::test::only_allows_branch_deletion ... ok\ntest filter::test::only_allows_patch_creation ... ok\ntest filter::test::only_allows_branch_update ... ok\ntest filter::test::only_allows_patch_update ... ok\ntest filter::test::yaml_roundtrip ... ok\ntest msg::trigger_from_ci_event_tests::trigger_patch_from_patch_created ... ok\ntest msg::trigger_from_ci_event_tests::trigger_patch_from_patch_updated ... ok\ntest msg::trigger_from_ci_event_tests::trigger_push_from_branch_created ... ok\ntest refs::test::creates_patch_from_str ... ok\ntest refs::test::extracts_branch_namespaced_branch ... ok\ntest refs::test::namespaced_branch_from_plain ... ok\ntest refs::test::plain_branch_name ... ok\ntest refs::test::qualified_branch_name_from_plain ... ok\ntest refs::test::ref_string_from_plain_branch_name ... ok\ntest run::test::serialize_run_state ... ok\ntest sensitive::test_sensitive::debugged ... ok\ntest sensitive::test_sensitive::deser ... ok\ntest sensitive::test_sensitive::displayed ... ok\ntest sensitive::test_sensitive::ser ... ok\ntest timeoutcmd::tests::bin_false ... ok\ntest timeoutcmd::tests::bin_true ... ok\ntest msg::trigger_from_ci_event_tests::trigger_push_from_branch_updated ... ok\ntest timeoutcmd::tests::hello_world ... ok\ntest timeoutcmd::tests::hello_world_to_stderr ... ok\ntest timeoutcmd::tests::kill ... ok\ntest timeoutcmd::tests::kill_stderr ... ok\ntest timeoutcmd::tests::pipe_through_cat ... ok\ntest timeoutcmd::tests::sleep_1 ... ok\ntest timeoutcmd::tests::sleep_for_too_long ... ok\ntest timeoutcmd::tests::yes_to_stderr ... ok\ntest timeoutcmd::tests::sleep_for_too_long_while_reading_with_realtimelines ... ok\ntest timeoutcmd::tests::yes_to_stdout ... ok\ntest timeoutcmd::tests::yes_to_stdout_while_reading_with_realtimelines ... ok\n\ntest result: ok. 88 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 7.47s\n\n\nrunning 0 tests\n\ntest result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s\n\n\nrunning 0 tests\n\ntest result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s\n\n\nrunning 0 tests\n\ntest result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s\n\n\nrunning 0 tests\n\ntest result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s\n\n\nrunning 73 tests\ntest adapter_can_provide_url_for_info_on_run ... FAILED\ntest add_information_about_run_that_s_finished_in_failure_to_database ... FAILED\ntest add_information_about_run_that_s_finished_successfully_to_database ... FAILED\ntest add_information_about_run_that_s_running_to_database ... FAILED\ntest add_information_about_triggered_run_to_database ... FAILED\ntest allows_setting_minimum_log_level ... FAILED\ntest adapter_with_url_runs_successfully ... ok\ntest can_add_a_branch_creation_event_to_queue ... FAILED\ntest can_add_a_branch_deletion_event_to_queue ... FAILED\ntest can_add_a_branch_update_event_to_queue ... FAILED\ntest can_add_a_patch_creation_event_to_queue ... FAILED\ntest can_add_a_patch_update_event_to_queue ... FAILED\ntest can_add_shutdown_event_to_queue ... FAILED\ntest can_output_trigger_message_for_a_ci_run ... FAILED\ntest can_remove_all_queued_events ... FAILED\ntest can_shut_down_cleanly ... FAILED\ntest can_trigger_a_ci_run ... FAILED\ntest convert_recorded_node_events_into_ci_events ... FAILED\ntest count_in_concurrent_processes ... FAILED\ntest count_in_a_single_process ... FAILED\ntest create_a_repository ... FAILED\ntest don_t_insert_event_for_non_existent_repository ... FAILED\ntest event_synthesizer_terminates_after_first_connection ... FAILED\ntest events_can_be_queued_and_removed_from_queue ... FAILED\ntest extract_cib_log_from_journald_and_pretty_print ... FAILED\ntest fails_run_if_building_trigger_fails__but_does_not_crash ... FAILED\ntest filter_predicate_allow ... FAILED\ntest filter_predicate_and ... FAILED\ntest filter_predicate_anydelegate ... FAILED\ntest filter_predicate_branch ... FAILED\ntest filter_predicate_branchcreated ... FAILED\ntest filter_predicate_branchdeleted ... FAILED\ntest filter_predicate_branchupdated ... FAILED\ntest filter_predicate_defaultbranch ... FAILED\ntest filter_predicate_deny ... FAILED\ntest filter_predicate_hasfile ... FAILED\ntest filter_predicate_node ... FAILED\ntest filter_predicate_not ... FAILED\ntest filter_predicate_or ... FAILED\ntest filter_predicate_repository ... FAILED\ntest filter_predicate_tag ... FAILED\ntest filter_recorded_ci_events ... FAILED\ntest gives_helpful_error_message_if_it_doesn_t_understand_its_configuration_file ... FAILED\ntest gives_helpful_error_message_if_node_socket_can_t_be_found ... FAILED\ntest handles_adapter_failing_on_a_failed_run ... FAILED\ntest handles_adapter_failing_on_a_successful_run ... FAILED\ntest insert_events_into_queue ... FAILED\ntest insert_many_events_into_queue ... FAILED\ntest logs_adapter_stderr_output ... FAILED\ntest logs_start_and_successful_end ... FAILED\ntest logs_termination_due_to_error ... FAILED\ntest process_queued_events ... FAILED\ntest processes_empty_event_queue_successfully ... FAILED\ntest produces_a_json_status_file ... FAILED\ntest produces_a_report_page_upon_request ... FAILED\ntest queue_a_node_event_for_processing ... FAILED\ntest record_node_events ... FAILED\ntest refuses_config_with_an_unknown_field ... FAILED\ntest remove_information_about_a_run_from_the_database ... FAILED\ntest reports_it_version ... FAILED\ntest runs_adapter_on_each_type_of_event ... FAILED\ntest runs_adapter_with_configuration ... FAILED\ntest runs_adapter_without_a_report_directory ... FAILED\ntest runs_adapters_for_all_matching_triggers ... FAILED\ntest set_up_a_node ... FAILED\ntest shows_adapter_specification ... FAILED\ntest shows_json_config_as_json ... FAILED\ntest shows_yaml_config_as_json ... FAILED\ntest smoke_test__runs_adapter ... FAILED\ntest stops_if_the_node_connection_breaks ... FAILED\ntest update_and_show_information_about_run_to_running ... FAILED\ntest we_can_run_rad ... FAILED\ntest dummy_adapter_runs_successfully ... ok\n\nfailures:\n\n---- adapter_can_provide_url_for_info_on_run stdout ----\nunknown: scenario: Adapter can provide URL for info on run\n/ci/src/ci-broker.md:897:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter adapter-with-url.sh\n\nthread 'adapter_can_provide_url_for_info_on_run' (2583) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\nnote: run with `RUST_BACKTRACE=1` environment variable to display a backtrace\n return: Failure\n\nthread 'adapter_can_provide_url_for_info_on_run' (2583) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:897:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter adapter-with-url.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- add_information_about_run_that_s_finished_in_failure_to_database stdout ----\nunknown: scenario: Add information about run that's finished in failure to database\n/ci/src/ci-broker.md:2325:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'add_information_about_run_that_s_finished_in_failure_to_database' (2585) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'add_information_about_run_that_s_finished_in_failure_to_database' (2585) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2325:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- add_information_about_run_that_s_finished_successfully_to_database stdout ----\nunknown: scenario: Add information about run that's finished successfully to database\n/ci/src/ci-broker.md:2302:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'add_information_about_run_that_s_finished_successfully_to_database' (2586) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'add_information_about_run_that_s_finished_successfully_to_database' (2586) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2302:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- add_information_about_run_that_s_running_to_database stdout ----\nunknown: scenario: Add information about run that's running to database\n/ci/src/ci-broker.md:2279:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'add_information_about_run_that_s_running_to_database' (2588) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'add_information_about_run_that_s_running_to_database' (2588) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2279:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- add_information_about_triggered_run_to_database stdout ----\nunknown: scenario: Add information about triggered run to database\n/ci/src/ci-broker.md:2256:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'add_information_about_triggered_run_to_database' (2589) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'add_information_about_triggered_run_to_database' (2589) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2256:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- allows_setting_minimum_log_level stdout ----\nunknown: scenario: Allows setting minimum log level\n/ci/src/ci-broker.md:1076:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'allows_setting_minimum_log_level' (2590) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'allows_setting_minimum_log_level' (2590) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1076:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- can_add_a_branch_creation_event_to_queue stdout ----\nunknown: scenario: Can add a branch creation event to queue\n/ci/src/ci-broker.md:2107:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'can_add_a_branch_creation_event_to_queue' (2592) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'can_add_a_branch_creation_event_to_queue' (2592) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2107:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- can_add_a_branch_deletion_event_to_queue stdout ----\nunknown: scenario: Can add a branch deletion event to queue\n/ci/src/ci-broker.md:2147:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'can_add_a_branch_deletion_event_to_queue' (2593) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'can_add_a_branch_deletion_event_to_queue' (2593) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2147:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- can_add_a_branch_update_event_to_queue stdout ----\nunknown: scenario: Can add a branch update event to queue\n/ci/src/ci-broker.md:2127:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'can_add_a_branch_update_event_to_queue' (2594) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'can_add_a_branch_update_event_to_queue' (2594) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2127:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- can_add_a_patch_creation_event_to_queue stdout ----\nunknown: scenario: Can add a patch creation event to queue\n/ci/src/ci-broker.md:2167:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'can_add_a_patch_creation_event_to_queue' (2595) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'can_add_a_patch_creation_event_to_queue' (2595) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2167:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- can_add_a_patch_update_event_to_queue stdout ----\nunknown: scenario: Can add a patch update event to queue\n/ci/src/ci-broker.md:2187:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'can_add_a_patch_update_event_to_queue' (2596) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'can_add_a_patch_update_event_to_queue' (2596) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2187:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- can_add_shutdown_event_to_queue stdout ----\nunknown: scenario: Can add shutdown event to queue\n/ci/src/ci-broker.md:2087:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'can_add_shutdown_event_to_queue' (2597) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'can_add_shutdown_event_to_queue' (2597) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2087:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- can_output_trigger_message_for_a_ci_run stdout ----\nunknown: scenario: Can output trigger message for a CI run\n/ci/src/ci-broker.md:2231:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'can_output_trigger_message_for_a_ci_run' (2598) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'can_output_trigger_message_for_a_ci_run' (2598) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2231:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- can_remove_all_queued_events stdout ----\nunknown: scenario: Can remove all queued events\n/ci/src/ci-broker.md:2058:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'can_remove_all_queued_events' (2599) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'can_remove_all_queued_events' (2599) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2058:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- can_shut_down_cleanly stdout ----\nunknown: scenario: Can shut down cleanly\n/ci/src/ci-broker.md:995:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'can_shut_down_cleanly' (2600) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'can_shut_down_cleanly' (2600) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:995:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- can_trigger_a_ci_run stdout ----\nunknown: scenario: Can trigger a CI run\n/ci/src/ci-broker.md:2209:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'can_trigger_a_ci_run' (2601) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'can_trigger_a_ci_run' (2601) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2209:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- convert_recorded_node_events_into_ci_events stdout ----\nunknown: scenario: Convert recorded node events into CI events\n/ci/src/ci-broker.md:2479:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'convert_recorded_node_events_into_ci_events' (2602) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'convert_recorded_node_events_into_ci_events' (2602) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2479:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- count_in_concurrent_processes stdout ----\nunknown: scenario: Count in concurrent processes\n/ci/src/ci-broker.md:1945:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'count_in_concurrent_processes' (2604) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'count_in_concurrent_processes' (2604) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1945:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- count_in_a_single_process stdout ----\nunknown: scenario: Count in a single process\n/ci/src/ci-broker.md:1832:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'count_in_a_single_process' (2603) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'count_in_a_single_process' (2603) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1832:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- create_a_repository stdout ----\nunknown: scenario: Create a repository\n/ci/src/ci-broker.md:348:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'create_a_repository' (2605) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'create_a_repository' (2605) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:348:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- don_t_insert_event_for_non_existent_repository stdout ----\nunknown: scenario: Don't insert event for non-existent repository\n/ci/src/ci-broker.md:2426:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'don_t_insert_event_for_non_existent_repository' (2606) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'don_t_insert_event_for_non_existent_repository' (2606) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2426:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- event_synthesizer_terminates_after_first_connection stdout ----\nunknown: scenario: Event synthesizer terminates after first connection\n/ci/src/ci-broker.md:1795:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'event_synthesizer_terminates_after_first_connection' (2608) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'event_synthesizer_terminates_after_first_connection' (2608) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1795:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- events_can_be_queued_and_removed_from_queue stdout ----\nunknown: scenario: Events can be queued and removed from queue\n/ci/src/ci-broker.md:2029:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'events_can_be_queued_and_removed_from_queue' (2610) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'events_can_be_queued_and_removed_from_queue' (2610) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2029:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- extract_cib_log_from_journald_and_pretty_print stdout ----\nunknown: scenario: Extract cib log from journald and pretty print\n/ci/src/ci-broker.md:2542:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'extract_cib_log_from_journald_and_pretty_print' (2611) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'extract_cib_log_from_journald_and_pretty_print' (2611) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2542:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- fails_run_if_building_trigger_fails__but_does_not_crash stdout ----\nunknown: scenario: Fails run if building trigger fails, but does not crash\n/ci/src/ci-broker.md:1113:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'fails_run_if_building_trigger_fails__but_does_not_crash' (2612) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'fails_run_if_building_trigger_fails__but_does_not_crash' (2612) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1113:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- filter_predicate_allow stdout ----\nunknown: scenario: Filter predicate Allow\n/ci/src/ci-broker.md:1457:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'filter_predicate_allow' (2614) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'filter_predicate_allow' (2614) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1457:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- filter_predicate_and stdout ----\nunknown: scenario: Filter predicate And\n/ci/src/ci-broker.md:1526:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'filter_predicate_and' (2615) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'filter_predicate_and' (2615) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1526:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- filter_predicate_anydelegate stdout ----\nunknown: scenario: Filter predicate AnyDelegate\n/ci/src/ci-broker.md:1243:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'filter_predicate_anydelegate' (2616) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'filter_predicate_anydelegate' (2616) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1243:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- filter_predicate_branch stdout ----\nunknown: scenario: Filter predicate Branch\n/ci/src/ci-broker.md:1319:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'filter_predicate_branch' (2618) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'filter_predicate_branch' (2618) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1319:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- filter_predicate_branchcreated stdout ----\nunknown: scenario: Filter predicate BranchCreated\n/ci/src/ci-broker.md:1353:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'filter_predicate_branchcreated' (2619) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'filter_predicate_branchcreated' (2619) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1353:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- filter_predicate_branchdeleted stdout ----\nunknown: scenario: Filter predicate BranchDeleted\n/ci/src/ci-broker.md:1423:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'filter_predicate_branchdeleted' (2620) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'filter_predicate_branchdeleted' (2620) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1423:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- filter_predicate_branchupdated stdout ----\nunknown: scenario: Filter predicate BranchUpdated\n/ci/src/ci-broker.md:1388:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'filter_predicate_branchupdated' (2622) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'filter_predicate_branchupdated' (2622) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1388:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- filter_predicate_defaultbranch stdout ----\nunknown: scenario: Filter predicate DefaultBranch\n/ci/src/ci-broker.md:1636:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'filter_predicate_defaultbranch' (2623) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'filter_predicate_defaultbranch' (2623) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1636:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- filter_predicate_deny stdout ----\nunknown: scenario: Filter predicate Deny\n/ci/src/ci-broker.md:1491:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'filter_predicate_deny' (2624) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'filter_predicate_deny' (2624) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1491:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- filter_predicate_hasfile stdout ----\nunknown: scenario: Filter predicate HasFile\n/ci/src/ci-broker.md:1672:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'filter_predicate_hasfile' (2625) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'filter_predicate_hasfile' (2625) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1672:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- filter_predicate_node stdout ----\nunknown: scenario: Filter predicate Node\n/ci/src/ci-broker.md:1194:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'filter_predicate_node' (2626) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'filter_predicate_node' (2626) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1194:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- filter_predicate_not stdout ----\nunknown: scenario: Filter predicate Not\n/ci/src/ci-broker.md:1599:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'filter_predicate_not' (2627) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'filter_predicate_not' (2627) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1599:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- filter_predicate_or stdout ----\nunknown: scenario: Filter predicate Or\n/ci/src/ci-broker.md:1563:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'filter_predicate_or' (2628) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'filter_predicate_or' (2628) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1563:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- filter_predicate_repository stdout ----\nunknown: scenario: Filter predicate Repository\n/ci/src/ci-broker.md:1145:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'filter_predicate_repository' (2629) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'filter_predicate_repository' (2629) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1145:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- filter_predicate_tag stdout ----\nunknown: scenario: Filter predicate Tag\n/ci/src/ci-broker.md:1280:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'filter_predicate_tag' (2630) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'filter_predicate_tag' (2630) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1280:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- filter_recorded_ci_events stdout ----\nunknown: scenario: Filter recorded CI events\n/ci/src/ci-broker.md:2500:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'filter_recorded_ci_events' (2631) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'filter_recorded_ci_events' (2631) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2500:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- gives_helpful_error_message_if_it_doesn_t_understand_its_configuration_file stdout ----\nunknown: scenario: Gives helpful error message if it doesn't understand its configuration file\n/ci/src/ci-broker.md:948:1: step 1: given a Radicle node, with CI configured with not-yaml.yaml and adapter dummy.sh\n\nthread 'gives_helpful_error_message_if_it_doesn_t_understand_its_configuration_file' (2632) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'gives_helpful_error_message_if_it_doesn_t_understand_its_configuration_file' (2632) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:948:1: step 1, given a Radicle node, with CI configured with not-yaml.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- gives_helpful_error_message_if_node_socket_can_t_be_found stdout ----\nunknown: scenario: Gives helpful error message if node socket can't be found\n/ci/src/ci-broker.md:925:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'gives_helpful_error_message_if_node_socket_can_t_be_found' (2633) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'gives_helpful_error_message_if_node_socket_can_t_be_found' (2633) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:925:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- handles_adapter_failing_on_a_failed_run stdout ----\nunknown: scenario: Handles adapter failing on a failed run\n/ci/src/ci-broker.md:648:1: step 1: given a Radicle node, with CI configured with broker-with-triggers.yaml and adapter failing-on-failure.sh\n\nthread 'handles_adapter_failing_on_a_failed_run' (2634) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'handles_adapter_failing_on_a_failed_run' (2634) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:648:1: step 1, given a Radicle node, with CI configured with broker-with-triggers.yaml and adapter failing-on-failure.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- handles_adapter_failing_on_a_successful_run stdout ----\nunknown: scenario: Handles adapter failing on a successful run\n/ci/src/ci-broker.md:608:1: step 1: given a Radicle node, with CI configured with broker-with-triggers.yaml and adapter failing-on-success.sh\n\nthread 'handles_adapter_failing_on_a_successful_run' (2635) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'handles_adapter_failing_on_a_successful_run' (2635) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:608:1: step 1, given a Radicle node, with CI configured with broker-with-triggers.yaml and adapter failing-on-success.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- insert_events_into_queue stdout ----\nunknown: scenario: Insert events into queue\n/ci/src/ci-broker.md:1854:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'insert_events_into_queue' (2636) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'insert_events_into_queue' (2636) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1854:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- insert_many_events_into_queue stdout ----\nunknown: scenario: Insert many events into queue\n/ci/src/ci-broker.md:1881:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'insert_many_events_into_queue' (2637) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'insert_many_events_into_queue' (2637) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1881:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- logs_adapter_stderr_output stdout ----\nunknown: scenario: Logs adapter stderr output\n/ci/src/ci-broker.md:1040:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter broken-adapter.sh\n\nthread 'logs_adapter_stderr_output' (2638) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'logs_adapter_stderr_output' (2638) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1040:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter broken-adapter.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- logs_start_and_successful_end stdout ----\nunknown: scenario: Logs start and successful end\n/ci/src/ci-broker.md:2607:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'logs_start_and_successful_end' (2639) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'logs_start_and_successful_end' (2639) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2607:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- logs_termination_due_to_error stdout ----\nunknown: scenario: Logs termination due to error\n/ci/src/ci-broker.md:2630:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'logs_termination_due_to_error' (2640) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'logs_termination_due_to_error' (2640) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2630:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- process_queued_events stdout ----\nunknown: scenario: Process queued events\n/ci/src/ci-broker.md:1909:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'process_queued_events' (2641) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'process_queued_events' (2641) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1909:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- processes_empty_event_queue_successfully stdout ----\nunknown: scenario: Processes empty event queue successfully\n/ci/src/ci-broker.md:589:1: step 1: given a Radicle node, with CI configured with broker-with-triggers.yaml and adapter dummy.sh\n\nthread 'processes_empty_event_queue_successfully' (2642) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'processes_empty_event_queue_successfully' (2642) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:589:1: step 1, given a Radicle node, with CI configured with broker-with-triggers.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- produces_a_json_status_file stdout ----\nunknown: scenario: Produces a JSON status file\n/ci/src/ci-broker.md:2653:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'produces_a_json_status_file' (2643) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'produces_a_json_status_file' (2643) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2653:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- produces_a_report_page_upon_request stdout ----\nunknown: scenario: Produces a report page upon request\n/ci/src/ci-broker.md:1016:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'produces_a_report_page_upon_request' (2644) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'produces_a_report_page_upon_request' (2644) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1016:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- queue_a_node_event_for_processing stdout ----\nunknown: scenario: Queue a node event for processing\n/ci/src/ci-broker.md:387:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'queue_a_node_event_for_processing' (2645) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'queue_a_node_event_for_processing' (2645) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:387:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- record_node_events stdout ----\nunknown: scenario: Record node events\n/ci/src/ci-broker.md:2458:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'record_node_events' (2646) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'record_node_events' (2646) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2458:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- refuses_config_with_an_unknown_field stdout ----\nunknown: scenario: Refuses config with an unknown field\n/ci/src/ci-broker.md:513:1: step 1: given a Radicle node, with CI configured with buggy.yaml and adapter dummy.sh\n\nthread 'refuses_config_with_an_unknown_field' (2647) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'refuses_config_with_an_unknown_field' (2647) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:513:1: step 1, given a Radicle node, with CI configured with buggy.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- remove_information_about_a_run_from_the_database stdout ----\nunknown: scenario: Remove information about a run from the database\n/ci/src/ci-broker.md:2350:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'remove_information_about_a_run_from_the_database' (2648) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'remove_information_about_a_run_from_the_database' (2648) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2350:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- reports_it_version stdout ----\nunknown: scenario: Reports it version\n/ci/src/ci-broker.md:871:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'reports_it_version' (2649) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'reports_it_version' (2649) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:871:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- runs_adapter_on_each_type_of_event stdout ----\nunknown: scenario: Runs adapter on each type of event\n/ci/src/ci-broker.md:787:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'runs_adapter_on_each_type_of_event' (2650) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'runs_adapter_on_each_type_of_event' (2650) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:787:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- runs_adapter_with_configuration stdout ----\nunknown: scenario: Runs adapter with configuration\n/ci/src/ci-broker.md:690:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'runs_adapter_with_configuration' (2651) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'runs_adapter_with_configuration' (2651) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:690:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- runs_adapter_without_a_report_directory stdout ----\nunknown: scenario: Runs adapter without a report directory\n/ci/src/ci-broker.md:718:1: step 1: given a Radicle node, with CI configured with broker-with-triggers.yaml and adapter dummy.sh\n\nthread 'runs_adapter_without_a_report_directory' (2652) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'runs_adapter_without_a_report_directory' (2652) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:718:1: step 1, given a Radicle node, with CI configured with broker-with-triggers.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- runs_adapters_for_all_matching_triggers stdout ----\nunknown: scenario: Runs adapters for all matching triggers\n/ci/src/ci-broker.md:746:1: step 1: given a Radicle node, with CI configured with broker-with-two-triggers.yaml and adapter dummy.sh\n\nthread 'runs_adapters_for_all_matching_triggers' (2653) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'runs_adapters_for_all_matching_triggers' (2653) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:746:1: step 1, given a Radicle node, with CI configured with broker-with-two-triggers.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- set_up_a_node stdout ----\nunknown: scenario: Set up a node\n/ci/src/ci-broker.md:266:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'set_up_a_node' (2654) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'set_up_a_node' (2654) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:266:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- shows_adapter_specification stdout ----\nunknown: scenario: Shows adapter specification\n/ci/src/ci-broker.md:493:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'shows_adapter_specification' (2655) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'shows_adapter_specification' (2655) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:493:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- shows_json_config_as_json stdout ----\nunknown: scenario: Shows JSON config as JSON\n/ci/src/ci-broker.md:444:1: step 1: given a Radicle node, with CI configured with config.json and adapter dummy.sh\n\nthread 'shows_json_config_as_json' (2656) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'shows_json_config_as_json' (2656) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:444:1: step 1, given a Radicle node, with CI configured with config.json and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- shows_yaml_config_as_json stdout ----\nunknown: scenario: Shows YAML config as JSON\n/ci/src/ci-broker.md:422:1: step 1: given a Radicle node, with CI configured with broker-with-all-filter-kinds.yaml and adapter dummy.sh\n\nthread 'shows_yaml_config_as_json' (2657) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'shows_yaml_config_as_json' (2657) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:422:1: step 1, given a Radicle node, with CI configured with broker-with-all-filter-kinds.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- smoke_test__runs_adapter stdout ----\nunknown: scenario: Smoke test: Runs adapter\n/ci/src/ci-broker.md:549:1: step 1: given a Radicle node, with CI configured with broker-with-triggers.yaml and adapter dummy.sh\n\nthread 'smoke_test__runs_adapter' (2658) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'smoke_test__runs_adapter' (2658) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:549:1: step 1, given a Radicle node, with CI configured with broker-with-triggers.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- stops_if_the_node_connection_breaks stdout ----\nunknown: scenario: Stops if the node connection breaks\n/ci/src/ci-broker.md:972:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'stops_if_the_node_connection_breaks' (2659) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'stops_if_the_node_connection_breaks' (2659) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:972:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- update_and_show_information_about_run_to_running stdout ----\nunknown: scenario: Update and show information about run to running\n/ci/src/ci-broker.md:2378:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'update_and_show_information_about_run_to_running' (2660) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'update_and_show_information_about_run_to_running' (2660) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:2378:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n---- we_can_run_rad stdout ----\nunknown: scenario: We can run rad\n/ci/src/ci-broker.md:1733:1: step 1: given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh\n\nthread 'we_can_run_rad' (2661) panicked at tests/subplot.rs:1:1:\nSUBPLOT_DIR must be set: NotPresent\n return: Failure\n\nthread 'we_can_run_rad' (2661) panicked at tests/subplot.rs:1:1:\ncalled `Result::unwrap()` on an `Err` value: \"/ci/src/ci-broker.md:1733:1: step 1, given a Radicle node, with CI configured with broker.yaml and adapter dummy.sh panic'd: SUBPLOT_DIR must be set: NotPresent\"\n\n\nfailures:\n adapter_can_provide_url_for_info_on_run\n add_information_about_run_that_s_finished_in_failure_to_database\n add_information_about_run_that_s_finished_successfully_to_database\n add_information_about_run_that_s_running_to_database\n add_information_about_triggered_run_to_database\n allows_setting_minimum_log_level\n can_add_a_branch_creation_event_to_queue\n can_add_a_branch_deletion_event_to_queue\n can_add_a_branch_update_event_to_queue\n can_add_a_patch_creation_event_to_queue\n can_add_a_patch_update_event_to_queue\n can_add_shutdown_event_to_queue\n can_output_trigger_message_for_a_ci_run\n can_remove_all_queued_events\n can_shut_down_cleanly\n can_trigger_a_ci_run\n convert_recorded_node_events_into_ci_events\n count_in_a_single_process\n count_in_concurrent_processes\n create_a_repository\n don_t_insert_event_for_non_existent_repository\n event_synthesizer_terminates_after_first_connection\n events_can_be_queued_and_removed_from_queue\n extract_cib_log_from_journald_and_pretty_print\n fails_run_if_building_trigger_fails__but_does_not_crash\n filter_predicate_allow\n filter_predicate_and\n filter_predicate_anydelegate\n filter_predicate_branch\n filter_predicate_branchcreated\n filter_predicate_branchdeleted\n filter_predicate_branchupdated\n filter_predicate_defaultbranch\n filter_predicate_deny\n filter_predicate_hasfile\n filter_predicate_node\n filter_predicate_not\n filter_predicate_or\n filter_predicate_repository\n filter_predicate_tag\n filter_recorded_ci_events\n gives_helpful_error_message_if_it_doesn_t_understand_its_configuration_file\n gives_helpful_error_message_if_node_socket_can_t_be_found\n handles_adapter_failing_on_a_failed_run\n handles_adapter_failing_on_a_successful_run\n insert_events_into_queue\n insert_many_events_into_queue\n logs_adapter_stderr_output\n logs_start_and_successful_end\n logs_termination_due_to_error\n process_queued_events\n processes_empty_event_queue_successfully\n produces_a_json_status_file\n produces_a_report_page_upon_request\n queue_a_node_event_for_processing\n record_node_events\n refuses_config_with_an_unknown_field\n remove_information_about_a_run_from_the_database\n reports_it_version\n runs_adapter_on_each_type_of_event\n runs_adapter_with_configuration\n runs_adapter_without_a_report_directory\n runs_adapters_for_all_matching_triggers\n set_up_a_node\n shows_adapter_specification\n shows_json_config_as_json\n shows_yaml_config_as_json\n smoke_test__runs_adapter\n stops_if_the_node_connection_breaks\n update_and_show_information_about_run_to_running\n we_can_run_rad\n\ntest result: FAILED. 2 passed; 71 failed; 0 ignored; 0 measured; 1 filtered out; finished in 2.02s\n\n\nrunning 1 test\ntest adapterlib/src/lib.rs - RunId (line 34) ... ok\n\ntest result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s\n\nall doctests ran in 0.44s; merged doctests compilation took 0.44s\n\nrunning 1 test\ntest src/timeoutcmd.rs - timeoutcmd (line 21) ... ok\n\ntest result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s\n\nall doctests ran in 0.68s; merged doctests compilation took 0.67s\n","stderr":"+ export CARGO_TARGET_DIR=/ci/cache\n+ CARGO_TARGET_DIR=/ci/cache\n+ export CARGO_HOME=/ci/deps\n+ CARGO_HOME=/ci/deps\n+ export HOME=/root\n+ HOME=/root\n+ export PATH=/root/.cargo/bin:/root/.radicle/bin:/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\n+ PATH=/root/.cargo/bin:/root/.radicle/bin:/root/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin\n+ rad --help\n+ cargo doc --workspace --no-deps\n Compiling radicle-ci-broker v0.31.0 (/ci/src)\n Checking radicle-ci-adapter v0.1.0 (/ci/src/adapterlib)\n Documenting radicle-ci-adapter v0.1.0 (/ci/src/adapterlib)\n Documenting radicle-ci-broker v0.31.0 (/ci/src)\n Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.26s\n Generated /ci/cache/doc/radicle_ci_adapter/index.html and 5 other files\n+ export RAD_PASSPHRAE=secret\n+ RAD_PASSPHRAE=secret\n+ rad auth --alias ambient\n+ env\n+ cargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2\n Compiling radicle-ci-adapter v0.1.0 (/ci/src/adapterlib)\n Compiling radicle-ci-broker v0.31.0 (/ci/src)\n Finished `test` profile [unoptimized + debuginfo] target(s) in 6.41s\n Running unittests src/lib.rs (/ci/cache/debug/deps/radicle_ci_adapter-14de6a517d2fbd8c)\n Running unittests src/lib.rs (/ci/cache/debug/deps/radicle_ci_broker-cd9951daf635d7cd)\n Running unittests src/bin/cib.rs (/ci/cache/debug/deps/cib-0ca1091efdcc202b)\n Running unittests src/bin/cibtool.rs (/ci/cache/debug/deps/cibtool-eae6d5fa7e483810)\n Running unittests src/bin/default_branch.rs (/ci/cache/debug/deps/default_branch-f154276158aa14e2)\n Running unittests src/bin/synthetic-events.rs (/ci/cache/debug/deps/synthetic_events-10a569f7e83b9c2e)\n Running tests/subplot.rs (/ci/cache/debug/deps/subplot-5df44b4a6b3fa024)\nerror: test failed, to rerun pass `-p radicle-ci-broker --test subplot`\n Doc-tests radicle_ci_adapter\n Doc-tests radicle_ci_broker\nerror: 1 target failed:\n `-p radicle-ci-broker --test subplot`\n","timestamp":{"secs_since_epoch":1787584304,"nanos_since_epoch":438345656}}
{"type":"action_failed","action":"shell","shell":"export CARGO_TARGET_DIR=/ci/cache\nexport CARGO_HOME=/ci/deps\nexport HOME=/root\nexport PATH=\"/root/.cargo/bin:/root/.radicle/bin:$PATH\"\n\n# Check that `rad` is there.\nrad --help >/dev/null || (echo rad is not there; exit 1)\n\ncargo doc --workspace --no-deps\n\n# FIXME: We can't run upgrade tests from older versions because\n# Ambient only fetches dependencies for the current version.\n# Thus, we can't build the old versions. This is an Ambient\n# problem that we can't fix here. So we skip the upgrade tests.\nexport RAD_PASSPHRAE=secret\nrad auth --alias ambient\nenv\ncargo test --workspace --no-fail-fast -- --skip upgrade --test-threads 2\n\nsubplot docgen ci-broker.subplot -o doc/ci-broker.html\nsubplot docgen doc/userguide.subplot -o doc/userguide.html\nmake -C doc\ncp doc/*.html /ci/artifacts/rsync/.\n","timestamp":{"secs_since_epoch":1787584305,"nanos_since_epoch":255839233}}
ERROR: failed to execute bash
caused by: command failed: "bash"
{"type":"executor_ends_in_failure","exit_code":1,"timestamp":{"secs_since_epoch":1787584305,"nanos_since_epoch":256467697}}
EXIT CODE: 1
No log