[pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:19.577474511-05:00 ==> [amd64] rootfs loop=/dev/loop24 -> /tmp/device-sim-rootfs.9YUKbp (ro) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:19.582150751-05:00 ==> [amd64] device-sim gate -- HARD-FAIL [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:19.582164111-05:00 ==> [amd64] device-sim Layer A: behavioral mesh self-heal (edge#282) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:19.582169391-05:00 ==> [amd64] rig headscale=/usr/local/bin/headscale (offline, baked); tailscale/tailscaled from golden rootfs [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:19.590340129-05:00 ==> edge-sim mesh self-heal scenario (#282) against /tmp/device-sim-rootfs.9YUKbp [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:19.598667676-05:00 ok: sim workspace /tmp/edge-device-sim.qrSS6G (host=sm-sim-30, rootfs=/tmp/device-sim-rootfs.9YUKbp) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:19.609562977-05:00 ok: headscale 0.25.1 (/usr/local/bin/headscale), port 18080, state /tmp/edge-sim-fixture [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:20.133682800-05:00 ok: headscale healthy: http://127.0.0.1:18080/health [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:20.146856656-05:00 ok: user 'simdev' created [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:20.149496949-05:00 ok: rig up -- eval this output or: . /tmp/edge-sim-fixture/rig.env [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:20.154824865-05:00 ok: fixture rig up (headscale=http://127.0.0.1:18080) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:20.207081562-05:00 ok: tailscale binaries: golden rootfs pair (1.98.9) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:20.474855727-05:00 ok: userspace tailscaled up (pid 121, origin=rootfs, socket=/tmp/edge-device-sim.qrSS6G/tailscaled.sock) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:20.474881887-05:00 [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:20.474886847-05:00 ==== CASE 1: valid (reusable) staged key, fault=tailscale logout ==== [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:20.553502687-05:00 ok: minted reusable preauthkey for 'simdev' (expiration 24h) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:20.605862123-05:00 PASS: case1: joined mesh (Running, ip=100.64.0.1) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:20.634688640-05:00 PASS: case1: logout forced off-mesh (state=NeedsLogin) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:20.737409406-05:00 (recovered on tick 1/4) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:20.744118893-05:00 PASS: case1: mesh-rejoin recovered via staged key (Running, ip=100.64.0.1) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:20.744140723-05:00 [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:20.744145183-05:00 ==== CASE 2: stale staged key + baked break-glass (SIM_BAKED_AUTHKEY), fault=server expire ==== [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:20.839672805-05:00 ok: minted reusable preauthkey for 'simdev' (expiration 24h) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:20.888603833-05:00 PASS: case2: joined mesh (Running, ip=100.64.0.3) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:20.954388564-05:00 PASS: case2: server-side expire forced off-mesh (state=NeedsLogin) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:21.263926873-05:00 (recovered on tick 1/4) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:21.270614851-05:00 PASS: case2: mesh-rejoin recovered via BREAK-GLASS key (Running, ip=100.64.0.3) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:21.270641740-05:00 PASS: case2: break-glass marker written (selftest-visible, EPHEMERAL-session warning path) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:21.270695050-05:00 [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:21.270700140-05:00 ==== CASE 3: no usable key, fault=server expire -> bounded, exit 0, stays off-mesh ==== [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:21.365387757-05:00 ok: minted reusable preauthkey for 'simdev' (expiration 24h) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:21.414374025-05:00 PASS: case3: joined mesh (Running, ip=100.64.0.5) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:21.494076228-05:00 PASS: case3: logout+expire forced off-mesh (state=NeedsLogin) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:21.646415568-05:00 PASS: case3: mesh-rejoin exited 0 (never-fatal contract) in 0s [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:21.646439127-05:00 PASS: case3: bounded (0s <= 60s cap) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:21.662734203-05:00 PASS: case3: honest off-mesh report (state=NeedsLogin, no phantom recovery) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:21.662765713-05:00 [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:21.662771203-05:00 ==== CASE 4: stale session (Running+IP, data-plane dark) -> cross-tick self-heal ==== [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:21.750852912-05:00 ok: minted reusable preauthkey for 'simdev' (expiration 24h) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:21.798851817-05:00 PASS: case4: joined mesh, looks healthy (Running, ip=100.64.0.6) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:21.802443294-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-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:22.021681128-05:00 (self-healed on tick 2/4: rung-2 re-auth re-established the session) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:22.021709118-05:00 PASS: case4: stale session self-healed -- rung-2 re-auth marker present + Running (fix #283 active) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:22.021721567-05:00 [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:22.021725777-05:00 ==> summary: 15 passed, 0 failed [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:22.021734737-05:00 ==> edge-sim mesh self-heal: OK [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:33.073902629-05:00 ==> [amd64] device-sim Layer B: real enrollment flow (edge#284) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:33.083220659-05:00 ==> edge-sim ENROLLMENT flow scenario (Layer B, #284) against /tmp/device-sim-rootfs.9YUKbp [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:33.091508127-05:00 ok: sim workspace /tmp/edge-device-sim.hKewuw (host=sm-sim-1486, rootfs=/tmp/device-sim-rootfs.9YUKbp) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:33.103194832-05:00 ok: headscale 0.25.1 (/usr/local/bin/headscale), port 18080, state /tmp/edge-sim-fixture [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:33.621954924-05:00 ok: headscale healthy: http://127.0.0.1:18080/health [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:33.637011898-05:00 ok: user 'simdev' created [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:34.190347989-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-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:34.191684171-05:00 ok: rig up -- eval this output or: . /tmp/edge-sim-fixture/rig.env [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:34.199800069-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-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:34.216164904-05:00 ok: tailscale binaries: golden rootfs pair (1.98.9) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:34.484005486-05:00 ok: userspace tailscaled up (pid 1595, origin=rootfs, socket=/tmp/edge-device-sim.hKewuw/tailscaled.sock) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:34.484034476-05:00 [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:34.484040306-05:00 ==== CASE 1: edge-enroll POST /enroll -> per-device authkey staged ==== [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:34.565704775-05:00 PASS: case1: wrong token rejected (edge-enroll non-zero) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:34.565725345-05:00 PASS: case1: wrong token staged no authkey [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:34.684658737-05:00 PASS: case1: edge-enroll exchange exited 0 [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:34.684683906-05:00 PASS: case1: per-device authkey staged -> /tmp/edge-device-sim.hKewuw/data/provision/mesh-authkey [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:34.687049771-05:00 PASS: case1: staged authkey is 0600 [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:34.687096081-05:00 [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:11:34.687102911-05:00 ==== CASE 2: firstboot-mesh enrollment-precedence -> Running + mesh IP (not break-glass) ==== [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:00.132957651-05:00 PASS: case2: firstboot-mesh joined the loopback mesh (Running, ip=100.64.0.1) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:00.140634462-05:00 PASS: case2: mesh IP acquired (100.64.0.1) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:00.140658842-05:00 PASS: case2: enrollment marker present -- joined via a per-device token key (#407 evidence) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:00.140674382-05:00 PASS: case2: single-use enrollment key consumed after join (no replay risk, #407) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:00.140692202-05:00 PASS: case2: no break-glass marker -- joined via the ENROLLMENT key (precedence honoured) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:00.141903044-05:00 PASS: case2: firstboot-mesh logged the enrollment key source [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:00.141945754-05:00 [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:00.141950964-05:00 ==== CASE 3: bounded ansible-pull DRY-RUN (escape-hatch transport slice, #455) ==== [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:00.142076783-05:00 SKIP: case3: ansible-pull not on PATH (the golden/pod image carries ansible-core) -- converge slice skipped [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:00.142098113-05:00 [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:00.142104093-05:00 ==== CASE 4: shipped edge-selftest confirms mesh enrollment ==== [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:00.142207932-05:00 SKIP: case4: ansible-playbook not on PATH -- edge-selftest needs ansible-core; selftest confirmation skipped [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:00.142240342-05:00 [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:00.142246182-05:00 ==> summary: 11 passed, 0 failed, 2 skipped [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:00.142260532-05:00 ==> edge-sim enrollment flow: OK [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:21.230195783-05:00 ==> [amd64] device-sim Layer C: chaos-monkey fail-safe recovery (edge#285) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:21.239155445-05:00 ==> edge-sim CHAOS-MONKEY scenario (Layer C, #285) against /tmp/device-sim-rootfs.9YUKbp [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:21.248429616-05:00 ok: sim workspace /tmp/edge-device-sim.SaGVfc (host=sm-sim-2185, rootfs=/tmp/device-sim-rootfs.9YUKbp) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:21.259960012-05:00 ok: headscale 0.25.1 (/usr/local/bin/headscale), port 18080, state /tmp/edge-sim-fixture [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:21.778107259-05:00 ok: headscale healthy: http://127.0.0.1:18080/health [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:21.791734072-05:00 ok: user 'simdev' created [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:22.332584274-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-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:22.333978625-05:00 ok: rig up -- eval this output or: . /tmp/edge-sim-fixture/rig.env [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:22.342802598-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-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:22.359684640-05:00 ok: tailscale binaries: golden rootfs pair (1.98.9) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:22.626965826-05:00 ok: userspace tailscaled up (pid 2291, origin=rootfs, socket=/tmp/edge-device-sim.SaGVfc/tailscaled.sock) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:22.627001366-05:00 [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:22.627008856-05:00 ==== CASE 1: kill tailscaled -> restart + mesh-rejoin -> Running + mesh IP ==== [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:47.046468407-05:00 PASS: case1: baseline up + enrolled (Running, ip=100.64.0.1) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:50.079411566-05:00 PASS: case1: fault took -- tailscaled dead, LocalAPI socket unresponsive (mesh down) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:50.342992011-05:00 ok: userspace tailscaled up (pid 2694, origin=rootfs, socket=/tmp/edge-device-sim.SaGVfc/tailscaled.sock) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:50.652146753-05:00 (recovered on tick 1/4) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:50.659701304-05:00 PASS: case1: mesh restored after tailscaled kill (Running, ip=100.64.0.1) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:50.666738679-05:00 PASS: case1: reachable mesh IP re-acquired (100.64.0.1) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:50.666776189-05:00 [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:12:50.666789229-05:00 ==== CASE 2: logout + server expire -> self-heal RE-ENROLLS (edge-enroll --force) -> Running ==== [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:13:16.110452789-05:00 PASS: case2: baseline up + enrolled (Running, ip=100.64.0.2) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:13:16.195114484-05:00 PASS: case2: logout+expire forced off-mesh (state=NeedsLogin) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:13:16.428197701-05:00 (recovered on tick 1/4) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:13:16.434927427-05:00 PASS: case2: self-heal recovered the mesh (Running, ip=100.64.0.2) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:13:16.434939007-05:00 PASS: case2: no break-glass marker -- recovered via the per-device enrollment path (#469) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:13:16.436289259-05:00 PASS: case2: mesh-rejoin logged the edge-enroll --force re-enrollment [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:13:16.436320338-05:00 [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:13:16.436327748-05:00 ==== CASE 3: kill vector -> SM_HOST oneshot recovery (edge#244) -> shipping resumes ==== [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:13:16.518663978-05:00 PASS: case3: oneshot derived the host label (SM_HOST=sm-sim-2185, expect SM_HOST=sm-sim-2185 via the sim hostname) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:13:21.531083504-05:00 PASS: case3: vector (stand-in) shipping in steady state (ships=1) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:13:22.537999449-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-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:13:22.553920836-05:00 PASS: case3: SM_HOST oneshot re-fired -- env re-derived (SM_HOST=sm-sim-2185) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:13:27.566694281-05:00 PASS: case3: shipping RESUMED after the oneshot recovery (ships 1 -> 2) [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:13:27.566987929-05:00 [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:13:27.567002559-05:00 ==== CASE 4: post-chaos edge-selftest confirms mesh/tailscale_enrolled = pass ==== [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:13:27.567053948-05:00 SKIP: case4: ansible-playbook not on PATH -- edge-selftest needs ansible-core; post-chaos confirmation skipped [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:13:27.567067478-05:00 [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:13:27.567076308-05:00 ==> summary: 14 passed, 0 failed, 1 skipped [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/step-device-sim] 2026-08-17T14:13:27.567094078-05:00 ==> edge-sim chaos-monkey: OK [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/prepare] 2026-08-17T14:11:14.895038543-05:00 2026/08/17 19:11:14 Entrypoint initialization [pod/edge-image-builder-tag-wcrxb-edge-device-sim-amd64-pod/place-scripts] 2026-08-17T14:11:15.268053739-05:00 2026/08/17 19:11:15 Decoded script /tekton/scripts/script-0-28m7d