[pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:35.913749801-05:00 ==> [amd64] rootfs loop=/dev/loop27 -> /tmp/device-sim-rootfs.jpQtbk (ro) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:35.918069297-05:00 ==> [amd64] device-sim gate -- HARD-FAIL [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:35.918081887-05:00 ==> [amd64] device-sim Layer A: behavioral mesh self-heal (edge#282) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:35.918095107-05:00 ==> [amd64] rig headscale=/usr/local/bin/headscale (offline, baked); tailscale/tailscaled from golden rootfs [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:35.926448960-05:00 ==> edge-sim mesh self-heal scenario (#282) against /tmp/device-sim-rootfs.jpQtbk [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:35.935194701-05:00 ok: sim workspace /tmp/edge-device-sim.HiOHKc (host=sm-sim-28, rootfs=/tmp/device-sim-rootfs.jpQtbk) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:35.946937435-05:00 ok: headscale 0.25.1 (/usr/local/bin/headscale), port 18080, state /tmp/edge-sim-fixture [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:36.468007144-05:00 ok: headscale healthy: http://127.0.0.1:18080/health [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:36.484544772-05:00 ok: user 'simdev' created [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:36.487688474-05:00 ok: rig up -- eval this output or: . /tmp/edge-sim-fixture/rig.env [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:36.493468782-05:00 ok: fixture rig up (headscale=http://127.0.0.1:18080) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:36.550261943-05:00 ok: tailscale binaries: golden rootfs pair (1.98.8) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:36.820333519-05:00 ok: userspace tailscaled up (pid 119, origin=rootfs, socket=/tmp/edge-device-sim.HiOHKc/tailscaled.sock) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:36.820364119-05:00 [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:36.820372409-05:00 ==== CASE 1: valid (reusable) staged key, fault=tailscale logout ==== [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:36.904049480-05:00 ok: minted reusable preauthkey for 'simdev' (expiration 24h) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:36.981807394-05:00 PASS: case1: joined mesh (Running, ip=100.64.0.1) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:37.024990832-05:00 PASS: case1: logout forced off-mesh (state=NeedsLogin) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:37.148644988-05:00 (recovered on tick 1/4) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:37.156047207-05:00 PASS: case1: mesh-rejoin recovered via staged key (Running, ip=100.64.0.1) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:37.156083987-05:00 [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:37.156099197-05:00 ==== CASE 2: stale staged key + baked break-glass (SIM_BAKED_AUTHKEY), fault=server expire ==== [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:37.270721424-05:00 ok: minted reusable preauthkey for 'simdev' (expiration 24h) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:37.331964530-05:00 PASS: case2: joined mesh (Running, ip=100.64.0.3) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:37.403711218-05:00 PASS: case2: server-side expire forced off-mesh (state=NeedsLogin) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:37.679547491-05:00 (recovered on tick 1/4) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:37.687273608-05:00 PASS: case2: mesh-rejoin recovered via BREAK-GLASS key (Running, ip=100.64.0.3) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:37.687297697-05:00 PASS: case2: break-glass marker written (selftest-visible, EPHEMERAL-session warning path) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:37.687326057-05:00 [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:37.687330957-05:00 ==== CASE 3: no usable key, fault=server expire -> bounded, exit 0, stays off-mesh ==== [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:37.802378932-05:00 ok: minted reusable preauthkey for 'simdev' (expiration 24h) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:37.870778398-05:00 PASS: case3: joined mesh (Running, ip=100.64.0.5) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:37.971210595-05:00 PASS: case3: logout+expire forced off-mesh (state=NeedsLogin) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:38.168511978-05:00 PASS: case3: mesh-rejoin exited 0 (never-fatal contract) in 1s [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:38.168601708-05:00 PASS: case3: bounded (1s <= 60s cap) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:38.187586071-05:00 PASS: case3: honest off-mesh report (state=NeedsLogin, no phantom recovery) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:38.187613551-05:00 [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:38.187619591-05:00 ==== CASE 4: stale session (Running+IP, data-plane dark) -> cross-tick self-heal ==== [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:38.280489570-05:00 ok: minted reusable preauthkey for 'simdev' (expiration 24h) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:38.356226645-05:00 PASS: case4: joined mesh, looks healthy (Running, ip=100.64.0.6) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:38.360544741-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-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:38.642255231-05:00 (self-healed on tick 2/4: rung-2 re-auth re-established the session) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:38.642373250-05:00 PASS: case4: stale session self-healed -- rung-2 re-auth marker present + Running (fix #283 active) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:38.642378500-05:00 [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:38.642383190-05:00 ==> summary: 15 passed, 0 failed [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:38.642389760-05:00 ==> edge-sim mesh self-heal: OK [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:49.692863664-05:00 ==> [amd64] device-sim Layer B: real enrollment flow (edge#284) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:49.702481840-05:00 ==> edge-sim ENROLLMENT flow scenario (Layer B, #284) against /tmp/device-sim-rootfs.jpQtbk [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:49.711518749-05:00 ok: sim workspace /tmp/edge-device-sim.LqDJKg (host=sm-sim-1470, rootfs=/tmp/device-sim-rootfs.jpQtbk) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:49.722962885-05:00 ok: headscale 0.25.1 (/usr/local/bin/headscale), port 18080, state /tmp/edge-sim-fixture [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:50.244176529-05:00 ok: headscale healthy: http://127.0.0.1:18080/health [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:50.259006576-05:00 ok: user 'simdev' created [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:50.814942434-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-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:50.816710844-05:00 ok: rig up -- eval this output or: . /tmp/edge-sim-fixture/rig.env [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:50.824912028-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-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:50.842693898-05:00 ok: tailscale binaries: golden rootfs pair (1.98.8) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:51.109700543-05:00 ok: userspace tailscaled up (pid 1578, origin=rootfs, socket=/tmp/edge-device-sim.LqDJKg/tailscaled.sock) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:51.109724033-05:00 [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:51.109731333-05:00 ==== CASE 1: edge-enroll POST /enroll -> per-device authkey staged ==== [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:51.190002151-05:00 PASS: case1: wrong token rejected (edge-enroll non-zero) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:51.190099130-05:00 PASS: case1: wrong token staged no authkey [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:51.282539719-05:00 PASS: case1: edge-enroll exchange exited 0 [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:51.282567369-05:00 PASS: case1: per-device authkey staged -> /tmp/edge-device-sim.LqDJKg/data/provision/mesh-authkey [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:51.284685857-05:00 PASS: case1: staged authkey is 0600 [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:51.284711277-05:00 [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:11:51.284716877-05:00 ==== CASE 2: firstboot-mesh enrollment-precedence -> Running + mesh IP (not break-glass) ==== [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:01.644140643-05:00 PASS: case2: firstboot-mesh joined the loopback mesh (Running, ip=100.64.0.1) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:01.652710955-05:00 PASS: case2: mesh IP acquired (100.64.0.1) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:01.652726615-05:00 PASS: case2: enrollment exchange staged the per-device authkey [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:01.652732265-05:00 PASS: case2: no break-glass marker -- joined via the ENROLLMENT key (precedence honoured) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:01.652911154-05:00 PASS: case2: firstboot-mesh logged the enrollment key source [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:01.652984534-05:00 [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:01.652999173-05:00 ==== CASE 3: bounded ansible-pull converge DRY-RUN (transport slice) ==== [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:01.653074413-05:00 SKIP: case3: ansible-pull not on PATH (the golden/pod image carries ansible-core) -- converge slice skipped [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:01.653107143-05:00 [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:01.653113563-05:00 ==== CASE 4: shipped edge-selftest confirms mesh enrollment ==== [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:01.653177192-05:00 SKIP: case4: ansible-playbook not on PATH -- edge-selftest needs ansible-core; selftest confirmation skipped [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:01.653194912-05:00 [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:01.653198662-05:00 ==> summary: 10 passed, 0 failed, 2 skipped [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:01.653214322-05:00 ==> edge-sim enrollment flow: OK [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:22.742824131-05:00 ==> [amd64] device-sim Layer C: chaos-monkey fail-safe recovery (edge#285) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:22.752743534-05:00 ==> edge-sim CHAOS-MONKEY scenario (Layer C, #285) against /tmp/device-sim-rootfs.jpQtbk [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:22.761744983-05:00 ok: sim workspace /tmp/edge-device-sim.5iFpVN (host=sm-sim-2088, rootfs=/tmp/device-sim-rootfs.jpQtbk) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:22.772832400-05:00 ok: headscale 0.25.1 (/usr/local/bin/headscale), port 18080, state /tmp/edge-sim-fixture [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:23.292856499-05:00 ok: headscale healthy: http://127.0.0.1:18080/health [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:23.309580934-05:00 ok: user 'simdev' created [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:23.856343151-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-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:23.857758783-05:00 ok: rig up -- eval this output or: . /tmp/edge-sim-fixture/rig.env [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:23.865891857-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-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:23.884302732-05:00 ok: tailscale binaries: golden rootfs pair (1.98.8) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:24.151640469-05:00 ok: userspace tailscaled up (pid 2194, origin=rootfs, socket=/tmp/edge-device-sim.5iFpVN/tailscaled.sock) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:24.151679019-05:00 [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:24.151684449-05:00 ==== CASE 1: kill tailscaled -> restart + mesh-rejoin -> Running + mesh IP ==== [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:34.534628993-05:00 PASS: case1: baseline up + enrolled (Running, ip=100.64.0.1) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:37.564425554-05:00 PASS: case1: fault took -- tailscaled dead, LocalAPI socket unresponsive (mesh down) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:37.829409049-05:00 ok: userspace tailscaled up (pid 2524, origin=rootfs, socket=/tmp/edge-device-sim.5iFpVN/tailscaled.sock) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:38.013873294-05:00 (recovered on tick 1/4) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:38.021912398-05:00 PASS: case1: mesh restored after tailscaled kill (Running, ip=100.64.0.1) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:38.030132831-05:00 PASS: case1: reachable mesh IP re-acquired (100.64.0.1) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:38.030198531-05:00 [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:38.030203791-05:00 ==== CASE 2: logout + server expire -> self-heal RE-ENROLLS (edge-enroll --force) -> Running ==== [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:48.446851620-05:00 PASS: case2: baseline up + enrolled (Running, ip=100.64.0.2) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:48.551946047-05:00 PASS: case2: logout+expire forced off-mesh (state=NeedsLogin) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:48.788853868-05:00 (recovered on tick 1/4) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:48.796318635-05:00 PASS: case2: self-heal recovered the mesh (Running, ip=100.64.0.2) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:48.796397405-05:00 PASS: case2: no break-glass marker -- recovered via the per-device enrollment path (#469) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:48.798010785-05:00 PASS: case2: mesh-rejoin logged the edge-enroll --force re-enrollment [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:48.798038695-05:00 [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:48.798044985-05:00 ==== CASE 3: kill vector -> SM_HOST oneshot recovery (edge#244) -> shipping resumes ==== [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:48.903399261-05:00 PASS: case3: oneshot derived the host label (SM_HOST=sm-sim-2088, expect SM_HOST=sm-sim-2088 via the sim hostname) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:53.916088766-05:00 PASS: case3: vector (stand-in) shipping in steady state (ships=1) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:54.924095513-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-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:54.940584268-05:00 PASS: case3: SM_HOST oneshot re-fired -- env re-derived (SM_HOST=sm-sim-2088) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:59.953237723-05:00 PASS: case3: shipping RESUMED after the oneshot recovery (ships 1 -> 2) [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:59.953474662-05:00 [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:59.953487052-05:00 ==== CASE 4: post-chaos edge-selftest confirms mesh/tailscale_enrolled = pass ==== [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:59.953527232-05:00 SKIP: case4: ansible-playbook not on PATH -- edge-selftest needs ansible-core; post-chaos confirmation skipped [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:59.953543932-05:00 [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:59.953547772-05:00 ==> summary: 14 passed, 0 failed, 1 skipped [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:12:59.953553992-05:00 ==> edge-sim chaos-monkey: OK [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/step-device-sim] 2026-07-13T14:13:21.046217938-05:00 ==> [amd64] device-sim done [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/prepare] 2026-07-13T14:11:30.515869309-05:00 2026/07/13 19:11:30 Entrypoint initialization [pod/edge-image-builder-tag-r26kx-edge-device-sim-amd64-pod/place-scripts] 2026-07-13T14:11:31.347721404-05:00 2026/07/13 19:11:31 Decoded script /tekton/scripts/script-0-5kdv7