[pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/prepare] 2026-08-19T21:03:04.932721538-05:00 2026/08/20 02:03:04 Entrypoint initialization [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/place-scripts] 2026-08-19T21:03:06.203515392-05:00 2026/08/20 02:03:06 Decoded script /tekton/scripts/script-0-r2qvg [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:10.766644586-05:00 ==> [amd64] rootfs loop=/dev/loop26 -> /tmp/device-sim-rootfs.3APViP (ro) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:10.771658611-05:00 ==> [amd64] device-sim gate -- HARD-FAIL [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:10.771666751-05:00 ==> [amd64] device-sim Layer A: behavioral mesh self-heal (edge#282) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:10.771674380-05:00 ==> [amd64] rig headscale=/usr/local/bin/headscale (offline, baked); tailscale/tailscaled from golden rootfs [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:10.780215347-05:00 ==> edge-sim mesh self-heal scenario (#282) against /tmp/device-sim-rootfs.3APViP [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:10.789195431-05:00 ok: sim workspace /tmp/edge-device-sim.22rZ5g (host=sm-sim-24, rootfs=/tmp/device-sim-rootfs.3APViP) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:10.798882201-05:00 ok: headscale 0.25.1 (/usr/local/bin/headscale), port 18080, state /tmp/edge-sim-fixture [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:11.322255617-05:00 ok: headscale healthy: http://127.0.0.1:18080/health [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:11.337098091-05:00 ok: user 'simdev' created [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:11.339961357-05:00 ok: rig up -- eval this output or: . /tmp/edge-sim-fixture/rig.env [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:11.344454204-05:00 ok: fixture rig up (headscale=http://127.0.0.1:18080) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:11.384139880-05:00 ok: tailscale binaries: golden rootfs pair (1.98.9) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:11.650835613-05:00 ok: userspace tailscaled up (pid 114, origin=rootfs, socket=/tmp/edge-device-sim.22rZ5g/tailscaled.sock) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:11.650861613-05:00 [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:11.650868262-05:00 ==== CASE 1: valid (reusable) staged key, fault=tailscale logout ==== [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:11.725339781-05:00 ok: minted reusable preauthkey for 'simdev' (expiration 24h) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:11.799580380-05:00 PASS: case1: joined mesh (Running, ip=100.64.0.1) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:11.839809424-05:00 PASS: case1: logout forced off-mesh (state=NeedsLogin) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:11.961020142-05:00 (recovered on tick 1/4) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:11.969489349-05:00 PASS: case1: mesh-rejoin recovered via staged key (Running, ip=100.64.0.1) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:11.969515738-05:00 [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:11.969521598-05:00 ==== CASE 2: stale staged key + baked break-glass (SIM_BAKED_AUTHKEY), fault=server expire ==== [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:12.107403981-05:00 ok: minted reusable preauthkey for 'simdev' (expiration 24h) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:12.173097075-05:00 PASS: case2: joined mesh (Running, ip=100.64.0.3) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:12.243073866-05:00 PASS: case2: server-side expire forced off-mesh (state=NeedsLogin) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:12.637290964-05:00 (recovered on tick 1/4) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:12.645699641-05:00 PASS: case2: mesh-rejoin recovered via BREAK-GLASS key (Running, ip=100.64.0.3) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:12.645726141-05:00 PASS: case2: break-glass marker written (selftest-visible, EPHEMERAL-session warning path) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:12.645771181-05:00 [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:12.645777401-05:00 ==== CASE 3: no usable key, fault=server expire -> bounded, exit 0, stays off-mesh ==== [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:12.752105036-05:00 ok: minted reusable preauthkey for 'simdev' (expiration 24h) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:12.826217086-05:00 PASS: case3: joined mesh (Running, ip=100.64.0.5) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:12.920214844-05:00 PASS: case3: logout+expire forced off-mesh (state=NeedsLogin) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:13.082780910-05:00 PASS: case3: mesh-rejoin exited 0 (never-fatal contract) in 1s [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:13.082842040-05:00 PASS: case3: bounded (1s <= 60s cap) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:13.102244960-05:00 PASS: case3: honest off-mesh report (state=NeedsLogin, no phantom recovery) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:13.102274770-05:00 [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:13.102280520-05:00 ==== CASE 4: stale session (Running+IP, data-plane dark) -> cross-tick self-heal ==== [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:13.194774616-05:00 ok: minted reusable preauthkey for 'simdev' (expiration 24h) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:13.259587014-05:00 PASS: case4: joined mesh, looks healthy (Running, ip=100.64.0.6) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:13.263479324-05:00 PASS: case4: mesh-liveness probe pointed at DARK loopback stand-in (http://127.0.0.1:19099/); underlay=http://127.0.0.1:18080 (up) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:13.515619160-05:00 (self-healed on tick 2/4: rung-2 re-auth re-established the session) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:13.515724840-05:00 PASS: case4: stale session self-healed -- rung-2 re-auth marker present + Running (fix #283 active) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:13.515730270-05:00 [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:13.515735410-05:00 ==> summary: 15 passed, 0 failed [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:13.515742280-05:00 ==> edge-sim mesh self-heal: OK [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:24.561241985-05:00 ==> [amd64] device-sim Layer B: real enrollment flow (edge#284) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:24.568718206-05:00 ==> edge-sim ENROLLMENT flow scenario (Layer B, #284) against /tmp/device-sim-rootfs.3APViP [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:24.576788635-05:00 ok: sim workspace /tmp/edge-device-sim.8s8pAT (host=sm-sim-1476, rootfs=/tmp/device-sim-rootfs.3APViP) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:24.585993148-05:00 ok: headscale 0.25.1 (/usr/local/bin/headscale), port 18080, state /tmp/edge-sim-fixture [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:25.105111575-05:00 ok: headscale healthy: http://127.0.0.1:18080/health [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:25.120950294-05:00 ok: user 'simdev' created [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:25.676058437-05:00 ok: enroll service healthy: http://127.0.0.1:18084/enroll (mints tag:edge preauthkeys off this rig) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:25.676967952-05:00 ok: rig up -- eval this output or: . /tmp/edge-sim-fixture/rig.env [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:25.684728712-05:00 ok: fixture rig up (headscale=http://127.0.0.1:18080, enroll=http://127.0.0.1:18084) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:25.702872049-05:00 ok: tailscale binaries: golden rootfs pair (1.98.9) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:25.967722351-05:00 ok: userspace tailscaled up (pid 1584, origin=rootfs, socket=/tmp/edge-device-sim.8s8pAT/tailscaled.sock) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:25.967756801-05:00 [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:25.967763041-05:00 ==== CASE 1: edge-enroll POST /enroll -> per-device authkey staged ==== [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:26.055940578-05:00 PASS: case1: wrong token rejected (edge-enroll non-zero) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:26.055961028-05:00 PASS: case1: wrong token staged no authkey [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:26.181279105-05:00 PASS: case1: edge-enroll exchange exited 0 [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:26.181304515-05:00 PASS: case1: per-device authkey staged -> /tmp/edge-device-sim.8s8pAT/data/provision/mesh-authkey [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:26.183122576-05:00 PASS: case1: staged authkey is 0600 [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:26.183139716-05:00 [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:26.183154666-05:00 ==== CASE 2: firstboot-mesh enrollment-precedence -> Running + mesh IP (not break-glass) ==== [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:51.618783690-05:00 PASS: case2: firstboot-mesh joined the loopback mesh (Running, ip=100.64.0.1) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:51.625697325-05:00 PASS: case2: mesh IP acquired (100.64.0.1) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:51.625711524-05:00 PASS: case2: enrollment marker present -- joined via a per-device token key (#407 evidence) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:51.625729084-05:00 PASS: case2: single-use enrollment key consumed after join (no replay risk, #407) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:51.625755784-05:00 PASS: case2: no break-glass marker -- joined via the ENROLLMENT key (precedence honoured) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:51.626865159-05:00 PASS: case2: firstboot-mesh logged the enrollment key source [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:51.626917638-05:00 [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:51.626930658-05:00 ==== CASE 3: bounded ansible-pull DRY-RUN (escape-hatch transport slice, #455) ==== [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:51.626992218-05:00 SKIP: case3: ansible-pull not on PATH (the golden/pod image carries ansible-core) -- converge slice skipped [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:51.627014568-05:00 [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:51.627020088-05:00 ==== CASE 4: shipped edge-selftest confirms mesh enrollment ==== [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:51.627070957-05:00 SKIP: case4: ansible-playbook not on PATH -- edge-selftest needs ansible-core; selftest confirmation skipped [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:51.627074967-05:00 [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:51.627080467-05:00 ==> summary: 11 passed, 0 failed, 2 skipped [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:03:51.627089117-05:00 ==> edge-sim enrollment flow: OK [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:04:12.710371932-05:00 ==> [amd64] device-sim Layer C: chaos-monkey fail-safe recovery (edge#285) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:04:12.717283847-05:00 ==> edge-sim CHAOS-MONKEY scenario (Layer C, #285) against /tmp/device-sim-rootfs.3APViP [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:04:12.724919358-05:00 ok: sim workspace /tmp/edge-device-sim.InSNlC (host=sm-sim-2172, rootfs=/tmp/device-sim-rootfs.3APViP) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:04:12.733466284-05:00 ok: headscale 0.25.1 (/usr/local/bin/headscale), port 18080, state /tmp/edge-sim-fixture [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:04:13.251532314-05:00 ok: headscale healthy: http://127.0.0.1:18080/health [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:04:13.267345413-05:00 ok: user 'simdev' created [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:04:13.806659614-05:00 ok: enroll service healthy: http://127.0.0.1:18084/enroll (mints tag:edge preauthkeys off this rig) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:04:13.807866688-05:00 ok: rig up -- eval this output or: . /tmp/edge-sim-fixture/rig.env [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:04:13.815728288-05:00 ok: fixture rig up (headscale=http://127.0.0.1:18080, enroll=http://127.0.0.1:18084) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:04:13.834787170-05:00 ok: tailscale binaries: golden rootfs pair (1.98.9) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:04:14.101925668-05:00 ok: userspace tailscaled up (pid 2278, origin=rootfs, socket=/tmp/edge-device-sim.InSNlC/tailscaled.sock) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:04:14.101962698-05:00 [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:04:14.101969988-05:00 ==== CASE 1: kill tailscaled -> restart + mesh-rejoin -> Running + mesh IP ==== [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:04:39.510807641-05:00 PASS: case1: baseline up + enrolled (Running, ip=100.64.0.1) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:04:42.543588043-05:00 PASS: case1: fault took -- tailscaled dead, LocalAPI socket unresponsive (mesh down) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:04:42.808571172-05:00 ok: userspace tailscaled up (pid 2674, origin=rootfs, socket=/tmp/edge-device-sim.InSNlC/tailscaled.sock) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:04:42.996522047-05:00 (recovered on tick 1/4) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:04:43.005110013-05:00 PASS: case1: mesh restored after tailscaled kill (Running, ip=100.64.0.1) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:04:43.013047102-05:00 PASS: case1: reachable mesh IP re-acquired (100.64.0.1) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:04:43.013098002-05:00 [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:04:43.013111581-05:00 ==== CASE 2: logout + server expire -> self-heal RE-ENROLLS (edge-enroll --force) -> Running ==== [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:05:08.495236161-05:00 PASS: case2: baseline up + enrolled (Running, ip=100.64.0.2) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:05:08.592641830-05:00 PASS: case2: logout+expire forced off-mesh (state=NeedsLogin) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:05:08.846715874-05:00 (recovered on tick 1/4) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:05:08.854151256-05:00 PASS: case2: self-heal recovered the mesh (Running, ip=100.64.0.2) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:05:08.854191066-05:00 PASS: case2: no break-glass marker -- recovered via the per-device enrollment path (#469) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:05:08.855526619-05:00 PASS: case2: mesh-rejoin logged the edge-enroll --force re-enrollment [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:05:08.855563909-05:00 [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:05:08.855572299-05:00 ==== CASE 3: kill vector -> SM_HOST oneshot recovery (edge#244) -> shipping resumes ==== [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:05:08.948614681-05:00 PASS: case3: oneshot derived the host label (SM_HOST=sm-sim-2172, expect SM_HOST=sm-sim-2172 via the sim hostname) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:05:13.958842413-05:00 PASS: case3: vector (stand-in) shipping in steady state (ships=1) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:05:14.964632464-05:00 PASS: case3: fault took -- vector validate-aborts on the missing SM_HOST (the #244 first-start latch), shipping stopped [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:05:14.989949113-05:00 PASS: case3: SM_HOST oneshot re-fired -- env re-derived (SM_HOST=sm-sim-2172) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:05:20.003017838-05:00 PASS: case3: shipping RESUMED after the oneshot recovery (ships 1 -> 2) [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:05:20.003351257-05:00 [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:05:20.003373856-05:00 ==== CASE 4: post-chaos edge-selftest confirms mesh/tailscale_enrolled = pass ==== [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:05:20.003433006-05:00 SKIP: case4: ansible-playbook not on PATH -- edge-selftest needs ansible-core; post-chaos confirmation skipped [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:05:20.003447686-05:00 [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:05:20.003456696-05:00 ==> summary: 14 passed, 0 failed, 1 skipped [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:05:20.003475826-05:00 ==> edge-sim chaos-monkey: OK [pod/edge-image-builder-tag-lb6gn-edge-device-sim-amd64-pod/step-device-sim] 2026-08-19T21:05:41.083860328-05:00 ==> [amd64] device-sim done