===== edge-main-validate-klqch-archive-logs-pod.log ===== [pod/edge-main-validate-klqch-archive-logs-pod/step-collect-logs] 2026-08-09T20:56:48.082302176-05:00 ==> collecting pod logs for PipelineRun=edge-main-validate-klqch [pod/edge-main-validate-klqch-archive-logs-pod/prepare] 2026-08-09T20:56:43.623431022-05:00 2026/08/10 01:56:43 Entrypoint initialization [pod/edge-main-validate-klqch-archive-logs-pod/place-scripts] 2026-08-09T20:56:44.509553704-05:00 2026/08/10 01:56:44 Decoded script /tekton/scripts/script-0-w6gt4 [pod/edge-main-validate-klqch-archive-logs-pod/place-scripts] 2026-08-09T20:56:44.527065024-05:00 2026/08/10 01:56:44 Decoded script /tekton/scripts/script-1-5dfl6 ===== edge-main-validate-klqch-clone-pod.log ===== [pod/edge-main-validate-klqch-clone-pod/prepare] 2026-08-09T20:53:29.756901498-05:00 2026/08/10 01:53:29 Entrypoint initialization [pod/edge-main-validate-klqch-clone-pod/place-scripts] 2026-08-09T20:53:30.062263661-05:00 2026/08/10 01:53:30 Decoded script /tekton/scripts/script-0-xsfml [pod/edge-main-validate-klqch-clone-pod/step-clone] 2026-08-09T20:53:34.454931209-05:00 From https://github.com/storeminder-ai/storeminder-edge [pod/edge-main-validate-klqch-clone-pod/step-clone] 2026-08-09T20:53:34.455040378-05:00 * branch d37135cd276428eb5c50a64af4dfbf88df7a58ae -> FETCH_HEAD [pod/edge-main-validate-klqch-clone-pod/step-clone] 2026-08-09T20:53:34.490257735-05:00 Cloned d37135cd276428eb5c50a64af4dfbf88df7a58ae ===== edge-main-validate-klqch-lint-pod.log ===== [pod/edge-main-validate-klqch-lint-pod/prepare] 2026-08-09T20:53:36.976940104-05:00 2026/08/10 01:53:36 Entrypoint initialization [pod/edge-main-validate-klqch-lint-pod/place-scripts] 2026-08-09T20:53:37.278338949-05:00 2026/08/10 01:53:37 Decoded script /tekton/scripts/script-0-kjkss [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.797585957-05:00 ok: install-system.sh parses [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.798746574-05:00 ok: installer-logship.sh parses [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.800133550-05:00 ok: installer-diaglink.sh parses [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.801535476-05:00 ok: firstboot-mesh.sh parses [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.802596763-05:00 ok: firstboot-logship.sh parses [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.803752089-05:00 ok: firstboot-hostname.sh parses [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.805134405-05:00 ok: firstboot-devicetype.sh parses [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.806476131-05:00 ok: firstboot-mender.sh parses [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.809531922-05:00 ok: build-golden.sh parses [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.812251354-05:00 ok: build-installer-rootfs.sh parses [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.814503638-05:00 ok: build-selfinstall-disk.sh parses [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.816766541-05:00 ok: build-rc.sh parses [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.819718962-05:00 ok: grubenv-flow-test.sh parses [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.823812490-05:00 ok: ci/edge-golden-smoke.sh parses [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.827008401-05:00 ok: ci/edge-ota-install.sh parses [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.827041061-05:00 ok: overlay present: data.mount [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.827064210-05:00 ok: overlay present: boot-efi.mount [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.827085910-05:00 ok: overlay present: storeminder-data-check.service [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.827098120-05:00 ok: overlay present: emergency.service.d/10-storeminder-sulogin-force.conf [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.827107920-05:00 ok: overlay present: rescue.service.d/10-storeminder-sulogin-force.conf [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.827129860-05:00 ok: overlay present: getty@tty1.service.d/autologin.conf [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.827162080-05:00 ok: boot-efi.mount enabled via local-fs.target.wants [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.829387554-05:00 ok: data.mount What= is by-label [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.831002179-05:00 ok: data.mount Options= has nofail [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.832061906-05:00 ok: boot-efi.mount What= is by-label ESP [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.833550491-05:00 ok: boot-efi.mount Options= has nofail [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.834892877-05:00 ok: emergency: Environment=SYSTEMD_SULOGIN_FORCE=1 [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.836012344-05:00 ok: rescue: Environment=SYSTEMD_SULOGIN_FORCE=1 [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.836053984-05:00 ok: overlay present: wait-online --any drop-in [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.837188621-05:00 ok: wait-online drop-in sets ExecStart ... --any [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.842381755-05:00 ok: wait-online drop-in blanks ExecStart= before re-setting it [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.842435115-05:00 ok: overlay present: smartd condition drop-in (SSOT, #367/#363) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.843875141-05:00 ok: roles/observability sources the smartd drop-in from image/overlay (single source, #367) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.845430716-05:00 ok: roles/base sources the wait-online drop-in from image/overlay (single source, #367) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.845502356-05:00 ok: overlay present: catch-all DHCP .network [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.846741683-05:00 ok: catch-all .network sets DHCP=yes [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.847972129-05:00 ok: catch-all .network matches en*/eth* [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.848024299-05:00 ok: systemd-networkd.service enabled via multi-user.target.wants [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.848034709-05:00 ok: systemd-networkd.socket enabled via sockets.target.wants [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.848042939-05:00 ok: wait-online enabled via network-online.target.wants (pre-converge) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.849643104-05:00 ok: cloud-init network rendering disabled (99-storeminder-network.cfg) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.849690714-05:00 ok: overlay present: HDA/i915 softdep drop-in [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.851016460-05:00 ok: HDA drop-in orders i915 before snd_hda_intel (softdep) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.852893474-05:00 ok: edge-golden-smoke asserts /etc/resolv.conf is the resolved stub symlink (edge#143) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:41.854752079-05:00 ok: edge-golden-smoke asserts systemd-resolved is enabled in the golden (edge#143) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:42.938506921-05:00 ok: tests/pyfixtures/test_golden_smoke_dns.py passes (resolv.conf-stub + resolved-enabled gate, edge#143) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:42.938620331-05:00 ok: overlay present: tailscaled /data-state drop-in [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:42.940131396-05:00 ok: tailscaled drop-in gates on /data (RequiresMountsFor) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:42.941497792-05:00 ok: tailscaled drop-in clears the stock ExecStart (empty ExecStart=) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:42.942630449-05:00 ok: tailscaled drop-in points --state at /data on the argv (unclobberable by EnvironmentFile) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:42.944296314-05:00 ok: tailscaled drop-in disables logtail (--no-logs-no-support) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:42.946037929-05:00 ok: firstboot-mesh fallback drop-in overrides ExecStart with --state on /data + --no-logs-no-support (edge#151/#161) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:42.947166476-05:00 ok: tailscaled drop-in creates /data/tailscale before start (ExecStartPre) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:42.948874390-05:00 ok: edge-golden-smoke asserts the baked mesh authkey (edge#160) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:42.950829775-05:00 ok: edge-golden-smoke asserts tailscaled is enabled in the golden (edge#160) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:42.952775829-05:00 ok: edge-golden-smoke asserts firstboot-mesh is enabled in the golden (edge#160) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.836713120-05:00 ok: tests/pyfixtures/test_golden_smoke_mesh.py passes (offline mesh-machinery gate, edge#160) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.841951474-05:00 ok: retired: x86-selfinstall/storeminder-pull.service absent (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.846768320-05:00 ok: retired: x86-selfinstall/storeminder-pull.timer absent (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.851293627-05:00 ok: retired: pi-selfinstall/storeminder-pull.service absent (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.856382191-05:00 ok: retired: pi-selfinstall/storeminder-pull.timer absent (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.861343287-05:00 ok: retired: system/storeminder-pull.service absent (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.865752844-05:00 ok: retired: system/storeminder-pull.timer absent (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.870308900-05:00 ok: retired: timers.target.wants/storeminder-pull.timer absent (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.875319585-05:00 ok: build-golden.sh does not bake the retired pull loop (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.878808615-05:00 ok: build-selfinstall-sd.sh does not bake the retired pull loop (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.880224591-05:00 ok: roles/base does not install the retired pull units (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.882666234-05:00 ok: roles/base removes the retired pull units on escape-hatch runs (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.885532085-05:00 ok: roles/mender post-OTA ansible-pull hook retired (removal-only) (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.887387050-05:00 ok: firstboot-converge.sh is ansible-free (identity materialization only) (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.888995045-05:00 ok: firstboot-converge.sh runs the baked AppRole self-mint (edge#387/#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.889045515-05:00 ok: overlay ships vault-approle-mint.sh executable (ansible-free AppRole mint, #455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.892432055-05:00 ok: vault-approle-mint.sh mints role_id + secret_id (edge#387) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.894326719-05:00 ok: vault-approle-mint.sh never logs the minted secret (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.895473066-05:00 ok: smcfgd-requirements.txt pins the storeminder-config contract closure (edge#458) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.900365671-05:00 ok: build-golden bakes smcfgd python deps from the Nexus PyPI (edge#458/#454) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.902022376-05:00 ok: build-golden fail-loud import smoke guards the smcfgd bake [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.903587862-05:00 ok: build-golden purges the transient pip toolchain (minimal/read-only-friendly rootfs, #456) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.904734878-05:00 ok: baked vector.yaml carries: docker_logs (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.905959725-05:00 ok: baked vector.yaml carries: type: aws_s3 (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.907143371-05:00 ok: baked vector.yaml carries: prometheus_remote_write (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.908316688-05:00 ok: baked vector.yaml carries: get_env_var("SM_HOST") (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.909314625-05:00 ok: baked vector.yaml carries: get_env_var("SM_SITE") (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.910285592-05:00 ok: baked vector.yaml carries: get_env_var("SM_DEVICE_TYPE") (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.911890387-05:00 ok: baked vector.yaml avoids ${SM_HOST} config interpolation (#230) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.913367443-05:00 ok: baked vector.yaml does not set current_boot_only (#228) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.915871625-05:00 ok: baked vector.yaml disables the aws_s3/remote_write healthchecks (#383/#394) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.917333591-05:00 ok: vector-host-env.sh exports SM_HOST (#243/#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.918827967-05:00 ok: vector-host-env.sh exports SM_SITE (#243/#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.920189723-05:00 ok: vector-host-env.sh exports SM_DEVICE_TYPE (#243/#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.922472366-05:00 ok: baked vector obs drop-in grants docker.sock + optional S3 creds env (edge#394/#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.924066991-05:00 ok: overlay bakes vector-s3.env.ctmpl (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.925739546-05:00 ok: overlay bakes vector-s3.hcl (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.927201532-05:00 ok: overlay bakes collector-env.ctmpl (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.928640387-05:00 ok: overlay bakes collector-env.hcl (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.929935994-05:00 ok: collector IDENTITY env renders to the /run tmpfs (edge#456/#478) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.931310580-05:00 ok: baked collector compose reads the /run IDENTITY env (edge#456/#478) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.932722095-05:00 ok: overlay bakes storeminder-platform-check.service (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.934309411-05:00 ok: overlay bakes storeminder-platform-check.timer (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.934329851-05:00 ok: overlay enables storeminder-platform-check.service (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.934355311-05:00 ok: overlay enables storeminder-platform-check.timer (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.936042056-05:00 ok: overlay bakes storeminder-container-metrics.service (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.937683451-05:00 ok: overlay bakes storeminder-container-metrics.timer (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.937698251-05:00 ok: overlay enables storeminder-container-metrics.service (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.937720771-05:00 ok: overlay enables storeminder-container-metrics.timer (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.937786350-05:00 ok: overlay ships storeminder-platform-check executable (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.939596795-05:00 ok: platform-check derives edge_converge_ok from the config boot re-apply (#455/#458) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.941353760-05:00 ok: platform-check exports the retired-pull tripwire metric (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.941428930-05:00 ok: overlay ships storeminder-container-metrics executable (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.942669166-05:00 ok: baked collector service gates on the dispatcher config sink (edge#478/#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.943861682-05:00 ok: baked collector service runs the baked container formula (edge#452/#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.946175656-05:00 ok: baked collector timer sets OnCalendar + WantedBy=timers.target (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.946222806-05:00 ok: overlay enables storeminder-collector.timer (#455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.947279312-05:00 ok: tmpfiles bakes the /run/storeminder/collector dir (vault-agent dest, #455) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.949024057-05:00 ok: storage device defaults to mmcblk0 [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.950773902-05:00 ok: data-part growfs disabled [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.952626217-05:00 ok: mender-convert cfg pins MENDER_SERVER_URL to mender.storeminder.ai (#438) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.954617061-05:00 ok: grub.cfg boots from ${root} (no blind ESP label search) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.956471205-05:00 ok: internal-disk detection by lsblk TRAN [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.958175620-05:00 ok: mender.conf.j2 has no stale nvme0n1 reference [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.959954545-05:00 ok: install-system.sh creates ESP on the target [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.961957509-05:00 ok: install-system.sh creates UROOTA on the target [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.963877633-05:00 ok: install-system.sh creates UROOTB on the target [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.965727018-05:00 ok: install-system.sh creates DATA on the target [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.967695642-05:00 ok: install-system.sh creates NO IROOT on the target (one-pass) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.969463837-05:00 ok: install-system.sh seeds /data/mender/bootstrap.mender -> mender records artifact_name (edge#465) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.971524761-05:00 ok: install-system.sh no longer writes the ineffective /etc/mender/artifact_info stamp (superseded by the bootstrap artifact, edge#465) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.973633124-05:00 ok: install-system.sh has no phase-2 clone handoff [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.975386019-05:00 ok: install-system.sh powers off after install [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.977565803-05:00 ok: install-system.sh does not reboot (poweroff-only handoff) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.979473577-05:00 ok: install-system.sh grub-installs onto the eMMC ESP [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.981421381-05:00 ok: install-system.sh lays grub-system.cfg onto the eMMC ESP [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.983330446-05:00 ok: install-system.sh gives the eMMC ESP a fresh FAT label 'ESP' [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.985081360-05:00 ok: install-system.sh fail-loud asserts the ESP label resolves [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.985097150-05:00 ok: grub-system.cfg present [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.986965125-05:00 ok: grub-system.cfg has the slot-A entry [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.988864759-05:00 ok: grub-system.cfg has no 'installer' entry [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.990832483-05:00 ok: grub-system.cfg has no 'diagnostic' entry [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.992534248-05:00 ok: grub-system.cfg has no 'reinstall' entry [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.994671122-05:00 ok: grub-system.cfg references no installer kernel [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:45.998746420-05:00 ok: provisioner/x86-selfinstall/grub-system.cfg: system-b entry does not chainload a slot-B grub.cfg (edge#508) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.000235946-05:00 ok: provisioner/x86-selfinstall/grub-system.cfg: system-b entry does not depend on the UROOTB label (edge#508) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.001743241-05:00 ok: provisioner/x86-selfinstall/grub-system.cfg: system-b boots directly by root=PARTUUID=${rootuuid_b} (edge#508) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.003200937-05:00 ok: provisioner/x86-selfinstall/grub-system.cfg: system-b loads a kernel directly (linux ...) (edge#508) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.004916012-05:00 ok: provisioner/x86-selfinstall/grub-system.cfg: insmod regexp present (disk derivation + kernel glob) (edge#508) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.006670457-05:00 ok: provisioner/x86-selfinstall/install-system.sh: records rootuuid_b (slot-B PARTUUID) into the grubenv (edge#508) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.010146226-05:00 ok: provisioner/arm64-selfinstall/grub-system.cfg: system-b entry does not chainload a slot-B grub.cfg (edge#508) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.011427562-05:00 ok: provisioner/arm64-selfinstall/grub-system.cfg: system-b entry does not depend on the UROOTB label (edge#508) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.012764148-05:00 ok: provisioner/arm64-selfinstall/grub-system.cfg: system-b boots directly by root=PARTUUID=${rootuuid_b} (edge#508) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.014089944-05:00 ok: provisioner/arm64-selfinstall/grub-system.cfg: system-b loads a kernel directly (linux ...) (edge#508) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.015679930-05:00 ok: provisioner/arm64-selfinstall/grub-system.cfg: insmod regexp present (disk derivation + kernel glob) (edge#508) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.017228335-05:00 ok: provisioner/arm64-selfinstall/install-system.sh: records rootuuid_b (slot-B PARTUUID) into the grubenv (edge#508) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.020755405-05:00 ok: provisioner/x86-selfinstall/grub.cfg: system-b entry does not chainload a slot-B grub.cfg (edge#529) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.021981411-05:00 ok: provisioner/x86-selfinstall/grub.cfg: system-b entry does not depend on the UROOTB label (edge#529) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.023333387-05:00 ok: provisioner/x86-selfinstall/grub.cfg: system-b boots by GPT identity (rootuuid_b / PARTLABEL) (edge#529) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.024433474-05:00 ok: provisioner/x86-selfinstall/grub.cfg: system-b loads a kernel directly (linux ...) (edge#529) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.026053869-05:00 ok: provisioner/x86-selfinstall/grub.cfg: insmod regexp present (disk derivation + kernel glob) (edge#529) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.029506479-05:00 ok: provisioner/arm64-selfinstall/grub.cfg: system-b entry does not chainload a slot-B grub.cfg (edge#529) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.030733725-05:00 ok: provisioner/arm64-selfinstall/grub.cfg: system-b entry does not depend on the UROOTB label (edge#529) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.032137531-05:00 ok: provisioner/arm64-selfinstall/grub.cfg: system-b boots by GPT identity (rootuuid_b / PARTLABEL) (edge#529) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.033421137-05:00 ok: provisioner/arm64-selfinstall/grub.cfg: system-b loads a kernel directly (linux ...) (edge#529) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.035024142-05:00 ok: provisioner/arm64-selfinstall/grub.cfg: insmod regexp present (disk derivation + kernel glob) (edge#529) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.036862447-05:00 ok: roles/mender/files/sm-esp-grubenv-remediate: records rootuuid_b so remediated field boxes can boot an OTA'd slot B (edge#485/#508) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.038603252-05:00 ok: roles/mender/files/sm-esp-grubenv-remediate: records rootuuid_a (self-heals a stale/absent slot-A PARTUUID) (edge#508) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.042323011-05:00 ok: sm_last_boot_action seeded by BOTH provisioning paths (installer + field remediation) (edge#520) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.045845120-05:00 ok: sm_last_boot_part seeded by BOTH provisioning paths (installer + field remediation) (edge#520) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:46.047613875-05:00 ok: roles/mender/files/sm-esp-grubenv-remediate: discovers slots by GPT PARTLABEL, which survives a rootfs OTA (edge#525) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.277380749-05:00 ok: tests/esp-remediate-slot-discovery.sh passes (ESP remediation is re-runnable at any point in a box's life, edge#525) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.279069464-05:00 ok: grub-system.cfg: saved_entry is the persistent default (#295) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.280858108-05:00 ok: grub-system.cfg: next_entry one-shot SELF-CLEARS (save_env next_entry) (#120/#295) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.282723293-05:00 ok: grub-system.cfg: deliberately omits bootcount (emergency shell, not a boot loop; #135/#295) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.282742753-05:00 ok: grub.cfg (USB selector) present [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.284496877-05:00 ok: grub.cfg: next_entry one-shot SELF-CLEARS (save_env next_entry) (#295) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.286285752-05:00 ok: grub.cfg: bootcount gates the revert on boot_success=0 (#295) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.287953067-05:00 ok: grub.cfg: persists boot-counting across cycles (save_env boot_indeterminate) (#295) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.289765942-05:00 ok: install-system.sh lays the grub-mender-grubenv env surface on the ESP (edge#470) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.291500307-05:00 ok: install-system.sh seeds mender_boot_part into the mender env pair (edge#470) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.293073642-05:00 ok: install-system.sh seeds upgrade_available into the mender env pair (edge#470) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.294820487-05:00 ok: install-system.sh writes the mender env lock.sha256sum (shim integrity check) (edge#470) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.296438662-05:00 ok: install-system.sh records mender_rootfsa/b_part for the selector map (edge#470) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.298264757-05:00 ok: grub-system.cfg loads the mender OTA env (mender_boot_part) (edge#470) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.299893642-05:00 ok: grub-system.cfg flips to system-b when mender_boot_part points at slot B (edge#470) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.301210428-05:00 ok: overlay pins ENV_DIR=/boot/efi/grub-mender-grubenv in etc/mender_grubenv.config (edge#483) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.302355674-05:00 ok: roles/mender mender_grubenv.config is byte-identical to the overlay SSOT (edge#483/#366) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.303568701-05:00 ok: roles/mender lays /etc/mender_grubenv.config at converge (heals deployed rootfses, edge#483) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.304752097-05:00 ok: selftest converge tier probes the grubenv shim end-to-end (edge#483) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.305916694-05:00 ok: selftest converge tier reports mender_grubenv_config (edge#483) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.307188570-05:00 ok: selftest manifest carries mender_grubenv_config (edge#483/#195) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.308468986-05:00 ok: selftest converge tier reports mender_grubenv_dir (edge#483) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.309574813-05:00 ok: selftest manifest carries mender_grubenv_dir (edge#483/#195) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.310687640-05:00 ok: selftest converge tier reports mender_grubenv_resolves (edge#483) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.311969736-05:00 ok: selftest manifest carries mender_grubenv_resolves (edge#483/#195) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.313908520-05:00 ok: installer rootfs includes grub-efi-amd64-bin (grub-install available) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.315575745-05:00 ok: build-selfinstall-disk.sh bakes grub-system.cfg into /opt/installer [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.317319410-05:00 ok: build-selfinstall-disk.sh bakes bootstrap.mender into /opt/installer (edge#465) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.319259924-05:00 ok: build-golden.sh extracts the mender bootstrap artifact for the self-install (edge#465) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.321047929-05:00 ok: build-rc.sh threads BOOTSTRAP_MENDER golden->selfinstall (edge#465) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.356719093-05:00 ok: tests/selfinstall-bootstrap-artifact.sh passes (mender-managed self-install records artifact_name, edge#465) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.426268087-05:00 ok: tests/edge-ota-install-selftest.sh passes (real-client OTA-install gate wired, edge#471) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.428358231-05:00 ok: mender defaults: x86 rootfs A = /dev/mmcblk0p2 [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.430492584-05:00 ok: mender defaults: x86 rootfs B = /dev/mmcblk0p3 [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.432443678-05:00 ok: mender defaults: no x86 slot on /dev/mmcblk0p4 (DATA) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.432533408-05:00 ok: installer-logship.service present [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.434093944-05:00 ok: logship: 'set -u' (no set -e -> never aborts) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.435699979-05:00 ok: logship unit does not gate installer.service [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.439364738-05:00 ok: install-system.sh raises install-complete + waits for the ship drain before poweroff (#229) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.441163242-05:00 ok: install-system.sh drain wait is hard-capped (SHIP_DRAIN_CAP_SECS) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.444527262-05:00 ok: installer-logship confirms Loki delivery via promtail metrics -> raises drained (#229) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.446371247-05:00 ok: installer-logship raises terminal on give-up (no full-cap stall) (#229) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.451525322-05:00 ok: build-installer-rootfs wires in tailscale + promtail + logship unit [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.452743988-05:00 ok: build-installer-rootfs sources the shared firmware.list (single-source #66) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.454483673-05:00 ok: firmware.list includes firmware-iwlwifi (Wi-Fi/BT, golden #143 parity) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.456233968-05:00 ok: firmware.list includes firmware-realtek (N150 ethernet -> mesh/Loki) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.458000703-05:00 ok: build-golden asserts firmware blobs under /lib/firmware (fail-loud, edge#103) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.459767217-05:00 ok: edge-golden-smoke asserts firmware blobs under /lib/firmware (runtime gate, edge#103) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.461620592-05:00 ok: edge-golden-smoke resolves symlinked blobs within the mounted rootfs (edge#141) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.463512216-05:00 ok: build-golden resolves the alternatives-managed regulatory.db within the chroot (edge#141) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:47.465423781-05:00 ok: edge-golden-smoke asserts regulatory.db.p7s alongside the reg-db (edge#141) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:48.411676081-05:00 ok: tests/pyfixtures/test_golden_smoke_regdb.py passes (alternatives-symlink reg-db gate, edge#141) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:48.413751955-05:00 ok: build-installer-rootfs includes grub2-common (grub-install for eMMC #212) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:48.415701419-05:00 ok: build-installer-rootfs unmounts chroot binds before tar [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:48.417888472-05:00 ok: disk build bakes ephemeral mesh-authkey (outside payload/) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:48.419507578-05:00 ok: no mesh-authkey committed to the repo [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:48.419576817-05:00 ok: present: firstboot-mesh.sh [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:48.419595487-05:00 ok: present: firstboot-logship.sh [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:48.419629887-05:00 ok: present: storeminder-firstboot-mesh.service [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:48.419658287-05:00 ok: present: storeminder-firstboot-logship.service [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:48.423464056-05:00 ok: firstboot scripts are 'set -u' (never abort boot) (#230) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:48.425137761-05:00 ok: firstboot-mesh ordered Before cloud-final (mesh up before ansible-pull) (#230) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:48.428629551-05:00 ok: firstboot-mesh keys off enrollment-or-baked (inert when absent) (#230) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:48.430305216-05:00 ok: firstboot-mesh bounds 'tailscale up' with --timeout (#135) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:48.432013590-05:00 ok: firstboot-mesh 'tailscale up' carries --reset (no 'requires mentioning all') (#469/#283) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:53:48.447182005-05:00 ok: firstboot-mesh TimeoutStartSec=300 >= budget 245s + 30s margin (#135/#167) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.881647937-05:00 ok: tests/firstboot-mesh.sh passes (exits 0 on hung 'tailscale up', #135) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.885719394-05:00 ok: firstboot-logship ships stage=firstboot + hands off to Vector (#230) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.889090884-05:00 ok: build-golden bakes tailscale + promtail (mesh/logship units ride image/overlay, #366/#230) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.892807642-05:00 ok: build-golden bakes the first-boot authkey from env (reuses MESH_INSTALLER_AUTHKEY) (#230) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.894268938-05:00 ok: no firstboot-mesh-authkey committed to the repo [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.895495604-05:00 ok: overlay ships firstboot-hostname.sh (byte-identical to the provisioner reference) (#366) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.895505804-05:00 ok: overlay firstboot-hostname.sh is executable (baked 0755) (#366) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.896577211-05:00 ok: overlay ships storeminder-firstboot-hostname.service (byte-identical) (#366) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.896593181-05:00 ok: overlay enables storeminder-firstboot-hostname.service (multi-user.target.wants symlink) (#366) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.898722604-05:00 ok: build-golden.sh does not re-hand-install firstboot-hostname (rides the overlay, #366) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.899902861-05:00 ok: overlay ships firstboot-mesh.sh (byte-identical to the provisioner reference) (#366) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.899914171-05:00 ok: overlay firstboot-mesh.sh is executable (baked 0755) (#366) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.900935167-05:00 ok: overlay ships storeminder-firstboot-mesh.service (byte-identical) (#366) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.900944507-05:00 ok: overlay enables storeminder-firstboot-mesh.service (multi-user.target.wants symlink) (#366) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.902979151-05:00 ok: build-golden.sh does not re-hand-install firstboot-mesh (rides the overlay, #366) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.904138618-05:00 ok: overlay ships firstboot-logship.sh (byte-identical to the provisioner reference) (#366) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.904146378-05:00 ok: overlay firstboot-logship.sh is executable (baked 0755) (#366) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.905124645-05:00 ok: overlay ships storeminder-firstboot-logship.service (byte-identical) (#366) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.905135005-05:00 ok: overlay enables storeminder-firstboot-logship.service (multi-user.target.wants symlink) (#366) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.907254138-05:00 ok: build-golden.sh does not re-hand-install firstboot-logship (rides the overlay, #366) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.908370465-05:00 ok: overlay ships firstboot-converge.sh (byte-identical to the provisioner reference) (#366) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.908400844-05:00 ok: overlay firstboot-converge.sh is executable (baked 0755) (#366) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.909292412-05:00 ok: overlay ships storeminder-firstboot-converge.service (byte-identical) (#366) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.909305792-05:00 ok: overlay enables storeminder-firstboot-converge.service (multi-user.target.wants symlink) (#366) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.911463685-05:00 ok: build-golden.sh does not re-hand-install firstboot-converge (rides the overlay, #366) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.911516725-05:00 ok: overlay ships setup-log.sh (narrative lib, #421) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.911541435-05:00 ok: overlay ships setup-diagnose.sh executable (failure-signature detector, #421) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.911550195-05:00 ok: overlay ships the setup-log CLI executable (replay/follow/diagnose, #421) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.915483663-05:00 ok: firstboot-hostname.sh sources the narrative lib with the guarded no-op fallback (#421) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.919817820-05:00 ok: firstboot-mesh.sh sources the narrative lib with the guarded no-op fallback (#421) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.923808147-05:00 ok: firstboot-logship.sh sources the narrative lib with the guarded no-op fallback (#421) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.927675785-05:00 ok: firstboot-converge.sh sources the narrative lib with the guarded no-op fallback (#421) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.931615863-05:00 ok: firstboot-devicetype.sh sources the narrative lib with the guarded no-op fallback (#421) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.935275752-05:00 ok: firstboot-sshkey.sh sources the narrative lib with the guarded no-op fallback (#421) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.939193620-05:00 ok: firstboot-user.sh sources the narrative lib with the guarded no-op fallback (#421) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.943006428-05:00 ok: firstboot-siterole.sh sources the narrative lib with the guarded no-op fallback (#421) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.947011356-05:00 ok: mesh-rejoin.sh sources the narrative lib with the guarded no-op fallback (#421) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.948353352-05:00 ok: setup-diagnose emits the SETUP-SIG anchor (grep/LogQL contract, #421) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:19.986474725-05:00 ok: tests/host-label-rule.sh passes (SM_HOST rule in every vector config, #198) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:20.183254260-05:00 ok: tests/vector-host-derive.sh passes (derivation ladder + never-fatal, #198) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:20.184758345-05:00 ok: vector rides image/packages.list (baked pre-converge, #198) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:20.186979409-05:00 ok: image/overlay/etc/vector/vector.yaml: no current_boot_only key (systemd 252 compatible) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:20.188857523-05:00 ok: roles/observability/templates/vector.yaml.j2: no current_boot_only key (systemd 252 compatible) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:20.191139736-05:00 ok: image/overlay/etc/vector/vector.yaml: loki endpoint is a BASE url (no /loki/api/v1/push suffix) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:20.193158010-05:00 ok: obs_logs_endpoint strips the push path from logs_remote_endpoint (#228) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:20.193278989-05:00 ok: vector binary not present -- skipping vector validate (grep gates above still enforce #228) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:20.193379519-05:00 ok: overlay present: storeminder-vector-env.service [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:20.195511622-05:00 ok: vector-env unit is Type=oneshot [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:20.197258907-05:00 ok: vector-env unit sets RemainAfterExit=yes (later Wants= pulls don't re-run it) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:20.198999902-05:00 ok: vector-env unit invokes the shared vector-host-env.sh (single #198/#241 derivation) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:20.200857596-05:00 ok: vector-env unit ordered Before=vector.service (env exists for the FIRST start attempt) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:20.202729550-05:00 ok: vector-env unit ordered After=data.mount (#71/#72 invariant: reads /data identity, preps /data/vector) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:20.205688071-05:00 ok: vector-env unit installs into multi-user.target [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:20.205751791-05:00 ok: vector-env enabled via multi-user.target.wants symlink [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:20.205934890-05:00 ok: vector-host-env.sh parses (POSIX sh) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:20.209828928-05:00 ok: vector-host-env.sh is 'set -u' never-fatal (#168 contract) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:20.211737873-05:00 ok: vector drop-in has no ExecStartPre (SM_HOST comes from the #244 oneshot) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:20.213421407-05:00 ok: vector drop-in keeps EnvironmentFile=-/run/storeminder-vector.env [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:20.215255342-05:00 ok: vector drop-in sets Restart=on-failure (#244) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:20.217148656-05:00 ok: vector drop-in relaxes the start limit (StartLimitIntervalSec, #244) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:20.218853511-05:00 ok: roles/observability renders no vector ExecStartPre (converge keeps the #244 shape) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:21.929430710-05:00 ok: tests/pyfixtures/test_golden_smoke_vector_env.py passes (SM_HOST-oneshot smoke gate, edge#244) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:22.043961908-05:00 ok: tests/vector-docker-logs-s3.sh passes (docker_logs -> Loki + S3 fallback, edge#394) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:22.055963841-05:00 ok: tests/vector-buffer-capacity.sh passes (disk-buffer sum fits /data + logs_s3 healthcheck disabled, edge#394) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:22.056008771-05:00 ok: present: firstboot-hostname.sh [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:22.056030221-05:00 ok: present: storeminder-firstboot-hostname.service [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:22.057886575-05:00 ok: firstboot-hostname.sh is 'set -u' (never abort boot) (#168) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:22.059776789-05:00 ok: firstboot-hostname ordered Before the mesh join (#168) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:22.061555443-05:00 ok: firstboot-hostname ordered Before cloud-final (#168) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:22.063149448-05:00 ok: firstboot-hostname needs only local-fs (no network dependency) (#168) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:22.063205918-05:00 ok: early-hostname unit delivered + enabled via image/overlay (SSOT, #366/#168) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:22.221878900-05:00 ok: tests/firstboot-hostname.sh passes (derivation + never-fatal, #168) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:22.586131488-05:00 ok: tests/hostname-derivation-parity.sh passes (firstboot-hostname == cloud-init namer, #368) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:22.587739563-05:00 ok: edge-enroll.sh parses [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:22.589735937-05:00 ok: edge-enroll.sh is 'set -u' (not set -e) (#165) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:22.593698755-05:00 ok: edge-enroll stages the enrollment authkey mode-0600 (#165) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:22.595636579-05:00 ok: edge-enroll refuses to clobber a staged single-use key without --force (#165) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:24.461119297-05:00 ok: tests/edge-enroll.sh passes (token->authkey exchange contract, #165) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:24.462841512-05:00 ok: firstboot-mesh invokes the enroll client (ENROLL_CLIENT) (#167) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:24.464709736-05:00 ok: firstboot-mesh hard-caps the enroll exchange (run_capped ENROLL_CAP_SECS) (#167) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:24.466314921-05:00 ok: enroll exchange runs BEFORE the key pick (enrollment key wins) (#167) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:24.468116176-05:00 ok: firstboot-mesh logs LOUDLY on break-glass (baked shared key) use (#167) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:24.469859520-05:00 ok: firstboot-mesh leaves the /data break-glass marker (#167) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:24.471690355-05:00 ok: build-golden bakes the edge-enroll client onto PATH (#167) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:24.472718841-05:00 ok: overlay ships edge-enroll (byte-identical to scripts/edge-enroll.sh) (#167) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:24.474555436-05:00 ok: roles/mesh reasserts the edge-enroll client at converge (#167) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:24.476332830-05:00 ok: roles/mesh audits break-glass (shared-key) joins in the converge log (#167) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:24.478937992-05:00 ok: mint-bootstrap.sh parses [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:24.480757797-05:00 ok: mint-bootstrap stages secrets under umask 077 / 0600 (#245) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:24.482635171-05:00 ok: mint-bootstrap enforces the 2h preauthkey TTL floor (#245) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:24.484442445-05:00 ok: mint-bootstrap refuses to clobber staged secrets without --force (#245) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:25.291276235-05:00 ok: tests/mint-bootstrap.sh passes (flash-time mint+stage contract, #245) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:25.293324168-05:00 ok: build-golden gates the shared-key bake behind ALLOW_BREAKGLASS_BAKE (#162) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:25.295360012-05:00 ok: edge-golden-smoke gates against a baked shared mesh key (#162) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.019372925-05:00 ok: tests/pyfixtures/test_golden_smoke_meshkey.py passes (shared-key retirement gate, #162) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.022903404-05:00 ok: promtail default URL derives from the Nexus raw mirror (not a public release) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.026117585-05:00 ok: promtail.zip is sha256-pinned at build [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058502454-05:00 ok: map covers bootdisk ansible-core [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058530054-05:00 ok: map covers bootdisk bmap-tools [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058535474-05:00 ok: map covers bootdisk ca-certificates [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058539894-05:00 ok: map covers bootdisk chrony [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058544134-05:00 ok: map covers bootdisk cloud-init [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058548724-05:00 ok: map covers bootdisk curl [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058553944-05:00 ok: map covers bootdisk dmidecode [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058558254-05:00 ok: map covers bootdisk firmware-iwlwifi [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058563094-05:00 ok: map covers bootdisk firmware-misc-nonfree [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058567484-05:00 ok: map covers bootdisk firmware-realtek [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058572374-05:00 ok: map covers bootdisk fontconfig [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058576514-05:00 ok: map covers bootdisk fonts-dejavu-core [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058580724-05:00 ok: map covers bootdisk git [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058584724-05:00 ok: map covers bootdisk jq [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058589004-05:00 ok: map covers bootdisk mender-client4 [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058592984-05:00 ok: map covers bootdisk mender-flash [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058596954-05:00 ok: map covers bootdisk nftables [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058601654-05:00 ok: map covers bootdisk openssh-server [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058605664-05:00 ok: map covers bootdisk plymouth [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058610064-05:00 ok: map covers bootdisk prometheus-node-exporter [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058614024-05:00 ok: map covers bootdisk python3 [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058617984-05:00 ok: map covers bootdisk python3-apt [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058622034-05:00 ok: map covers bootdisk rclone [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058640514-05:00 ok: map covers bootdisk smartmontools [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058643704-05:00 ok: map covers bootdisk vault [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058646924-05:00 ok: map covers bootdisk vector [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058650054-05:00 ok: map covers bootdisk wireless-regdb [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058652744-05:00 ok: map covers installer ca-certificates [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058655424-05:00 ok: map covers installer curl [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058659314-05:00 ok: map covers installer firmware-iwlwifi [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058662014-05:00 ok: map covers installer firmware-misc-nonfree [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058665484-05:00 ok: map covers installer firmware-realtek [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058668144-05:00 ok: map covers installer iproute2 [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058670824-05:00 ok: map covers installer kmod [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058673564-05:00 ok: map covers installer socat [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058677484-05:00 ok: map covers installer tailscale [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058680164-05:00 ok: map covers installer wireless-regdb [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058682974-05:00 ok: map covers converged chrony [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058685684-05:00 ok: map covers converged containerd.io [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058689214-05:00 ok: map covers converged dmidecode [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058692054-05:00 ok: map covers converged docker-ce [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058734544-05:00 ok: map covers converged docker-ce-cli [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058739254-05:00 ok: map covers converged docker-compose-plugin [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058743524-05:00 ok: map covers converged flashrom [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058748194-05:00 ok: map covers converged fwupd [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058755314-05:00 ok: map covers converged intel-microcode [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058760354-05:00 ok: map covers converged libraspberrypi-bin [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058764424-05:00 ok: map covers converged linux-modules-extra-raspi [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058768384-05:00 ok: map covers converged mender-client4 [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058772344-05:00 ok: map covers converged mender-flash [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058776594-05:00 ok: map covers converged nftables [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058780654-05:00 ok: map covers converged nvme-cli [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058784594-05:00 ok: map covers converged openssh-server [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058788794-05:00 ok: map covers converged prometheus-node-exporter [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058793714-05:00 ok: map covers converged tailscale [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058798244-05:00 ok: map covers converged thermald [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058802234-05:00 ok: map covers converged vault [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058806233-05:00 ok: map covers converged vector [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058810853-05:00 ok: source ok bootdisk cloud-init -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058814933-05:00 ok: source ok bootdisk plymouth -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058819053-05:00 ok: source ok bootdisk fontconfig -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058823063-05:00 ok: source ok bootdisk fonts-dejavu-core -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058830463-05:00 ok: source ok bootdisk chrony -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058834563-05:00 ok: source ok bootdisk nftables -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058838693-05:00 ok: source ok bootdisk ca-certificates -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058842743-05:00 ok: source ok bootdisk firmware-iwlwifi -> backports [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058846813-05:00 ok: source ok bootdisk firmware-misc-nonfree -> backports [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058850843-05:00 ok: source ok bootdisk firmware-realtek -> backports [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058861813-05:00 ok: source ok bootdisk wireless-regdb -> backports [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058864663-05:00 ok: source ok bootdisk ansible-core -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058867433-05:00 ok: source ok bootdisk python3 -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058870183-05:00 ok: source ok bootdisk python3-apt -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058872943-05:00 ok: source ok bootdisk git -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058876163-05:00 ok: source ok bootdisk mender-client4 -> mender [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058878943-05:00 ok: source ok bootdisk mender-flash -> mender [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058881903-05:00 ok: source ok bootdisk vault -> hashicorp [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058884653-05:00 ok: source ok bootdisk rclone -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058887383-05:00 ok: source ok bootdisk bmap-tools -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058890263-05:00 ok: source ok bootdisk prometheus-node-exporter -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058893013-05:00 ok: source ok bootdisk openssh-server -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058895733-05:00 ok: source ok bootdisk curl -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058898503-05:00 ok: source ok bootdisk jq -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058901513-05:00 ok: source ok bootdisk dmidecode -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058904243-05:00 ok: source ok bootdisk smartmontools -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058907503-05:00 ok: source ok bootdisk vector -> vector [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058917983-05:00 ok: source ok installer systemd-sysv -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058921043-05:00 ok: source ok installer udev -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058923913-05:00 ok: source ok installer zstd -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058927523-05:00 ok: source ok installer e2fsprogs -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058930593-05:00 ok: source ok installer dosfstools -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058933373-05:00 ok: source ok installer parted -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058936473-05:00 ok: source ok installer util-linux -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058939213-05:00 ok: source ok installer coreutils -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058942003-05:00 ok: source ok installer ca-certificates -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058944763-05:00 ok: source ok installer grub-common -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058947553-05:00 ok: source ok installer grub2-common -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058950243-05:00 ok: source ok installer grub-efi-amd64-bin -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058952963-05:00 ok: source ok installer initramfs-tools -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058955683-05:00 ok: source ok installer linux-image-amd64 -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058958433-05:00 ok: source ok installer curl -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058961923-05:00 ok: source ok installer iproute2 -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058964763-05:00 ok: source ok installer firmware-realtek -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058967463-05:00 ok: source ok installer firmware-iwlwifi -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058970233-05:00 ok: source ok installer firmware-misc-nonfree -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058973083-05:00 ok: source ok installer wireless-regdb -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058980993-05:00 ok: source ok installer tailscale -> tailscale [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058983813-05:00 ok: source ok installer socat -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058986563-05:00 ok: source ok installer kmod -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058989353-05:00 ok: source ok converged mender-client4 -> mender [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058992093-05:00 ok: source ok converged mender-flash -> mender [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058994833-05:00 ok: source ok converged chrony -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.058997613-05:00 ok: source ok converged nftables -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059000333-05:00 ok: source ok converged vault -> hashicorp [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059003063-05:00 ok: source ok converged openssh-server -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059005833-05:00 ok: source ok converged rclone -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059008553-05:00 ok: source ok converged prometheus-node-exporter -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059011333-05:00 ok: source ok converged vector -> vector [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059014093-05:00 ok: source ok converged tailscale -> tailscale [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059016863-05:00 ok: source ok converged docker-ce -> docker [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059019633-05:00 ok: source ok converged docker-ce-cli -> docker [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059022303-05:00 ok: source ok converged containerd.io -> docker [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059024983-05:00 ok: source ok converged docker-compose-plugin -> docker [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059027773-05:00 ok: source ok converged fwupd -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059032173-05:00 ok: source ok converged flashrom -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059035013-05:00 ok: source ok converged dmidecode -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059037813-05:00 ok: source ok converged intel-microcode -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059040603-05:00 ok: source ok converged thermald -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059043343-05:00 ok: source ok converged nvme-cli -> debian-main [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059046623-05:00 ok: firmware parity golden == installer (firmware-iwlwifi, firmware-misc-nonfree, firmware-realtek, wireless-regdb) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059049303-05:00 ok: required present bootdisk firmware-iwlwifi [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059052083-05:00 ok: required present bootdisk firmware-misc-nonfree [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059054763-05:00 ok: required present bootdisk firmware-realtek [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059057523-05:00 ok: required present bootdisk wireless-regdb [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059060233-05:00 ok: required present installer firmware-iwlwifi [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059062903-05:00 ok: required present installer firmware-misc-nonfree [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059065623-05:00 ok: required present installer firmware-realtek [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059068273-05:00 ok: required present installer wireless-regdb [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059071403-05:00 warn: orphan map row: `systemd-sysv installer debian-main` matches nothing installed on that surface (stale?) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059074173-05:00 warn: orphan map row: `udev installer debian-main` matches nothing installed on that surface (stale?) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059076873-05:00 warn: orphan map row: `zstd installer debian-main` matches nothing installed on that surface (stale?) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059079673-05:00 warn: orphan map row: `e2fsprogs installer debian-main` matches nothing installed on that surface (stale?) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059087023-05:00 warn: orphan map row: `dosfstools installer debian-main` matches nothing installed on that surface (stale?) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059089833-05:00 warn: orphan map row: `parted installer debian-main` matches nothing installed on that surface (stale?) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059101983-05:00 warn: orphan map row: `util-linux installer debian-main` matches nothing installed on that surface (stale?) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059112843-05:00 warn: orphan map row: `coreutils installer debian-main` matches nothing installed on that surface (stale?) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059115853-05:00 warn: orphan map row: `grub-common installer debian-main` matches nothing installed on that surface (stale?) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059121463-05:00 warn: orphan map row: `grub2-common installer debian-main` matches nothing installed on that surface (stale?) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059124333-05:00 warn: orphan map row: `grub-efi-amd64-bin installer debian-main` matches nothing installed on that surface (stale?) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059127122-05:00 warn: orphan map row: `initramfs-tools installer debian-main` matches nothing installed on that surface (stale?) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059129832-05:00 warn: orphan map row: `linux-image-amd64 installer debian-main` matches nothing installed on that surface (stale?) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059132482-05:00 warn: orphan map row: `rclone converged debian-main` matches nothing installed on that surface (stale?) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059135072-05:00 [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.059137862-05:00 pkg_manifest: reconcile OK (137 checks, 14 warning(s)) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.062057823-05:00 ok: packages.map reconciles with packages.list + roles + installer build [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.092836938-05:00 edge-rootfs-lint: boundary intact -- rootfs is FORMULA, /data is state, no rendered config baked (#456). [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.095933089-05:00 ok: rootfs boundary intact: FORMULA immutable, /data state-only, config on /run (edge#456) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.125085538-05:00 edge-bake-ssot-lint: OK -- 72 rootfs writes all baked or justified (48 overlay-backed, 24 justified exception(s)); no converge-only-unbaked artifact (edge#518). [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.129540185-05:00 ok: bake-SSOT intact: every rootfs role-write is baked or justified (edge#518) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.304153445-05:00 ok: tests/bake-ssot-lint.sh passes (the bake-SSOT lint's verdicts hold, edge#518) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.304263275-05:00 ok: installer-diaglink.service present [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.306613647-05:00 ok: diaglink: 'set -u' (no set -e -> never aborts) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.310402516-05:00 ok: diaglink gates on the sm.diag kernel cmdline flag (opt-in) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.314105654-05:00 ok: diaglink arms kernel netconsole via configfs [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.318162121-05:00 ok: diaglink forwards the install journal via socat [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.320176425-05:00 ok: diaglink unit does not gate installer.service [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.326079957-05:00 ok: build-installer-rootfs wires in socat + kmod + netconsole autoload + diaglink unit [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.328073771-05:00 ok: grub.cfg has the opt-in installer-diag menuentry [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.334002093-05:00 ok: default installer entry does not set sm.diag (production install unchanged) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.334124412-05:00 ok: waveshare receiver present: sm-diag-receiver.py [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.334129902-05:00 ok: waveshare receiver present: README.md [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.334134672-05:00 ok: waveshare receiver present: sm-diag-receiver.service [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.372916272-05:00 ok: sm-diag-receiver.py compiles [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.375226845-05:00 ok: build-golden leaves $M/var/lib/mender untouched (clear for mender-convert's symlink, #152) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.378843434-05:00 ok: install-system.sh seeds /data/mender/device_type after formatting /data (#152) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.378914934-05:00 ok: present: firstboot-devicetype.sh [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.378929644-05:00 ok: present: storeminder-firstboot-devicetype.service [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.380840188-05:00 ok: firstboot-devicetype.sh is 'set -u' (never abort boot) (#152) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.382489792-05:00 ok: firstboot-devicetype ordered Before=mender-updated (marker before first poll) (#152) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.384524466-05:00 ok: firstboot-devicetype needs only local-fs (/data mount, no network) (#152) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.387893406-05:00 ok: build-golden bakes firstboot-devicetype.sh + unit (fallback in the golden, #152) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.389016942-05:00 ok: overlay bakes firstboot-devicetype.sh (byte-identical to the provisioner copy) (#152) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.390081419-05:00 ok: overlay bakes storeminder-firstboot-devicetype.service (byte-identical) (#152) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.390139929-05:00 ok: overlay enables storeminder-firstboot-devicetype.service (multi-user.target.wants symlink) (#152) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.391971373-05:00 ok: edge-golden-smoke gates the device_type plumbing (rootfs symlink layout + fallback, #152) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.393816898-05:00 ok: group_vars/all declares vault_ready (#176) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.395367473-05:00 ok: site.yml references vault_ready (Vault-hard roles gated, #176) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.396817028-05:00 ok: no vault.storeminder.example placeholder in group_vars/ or provisioner/payload/ [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.398194954-05:00 ok: no *.storeminder.example placeholder in group_vars/ or provisioner/payload/ [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.402384121-05:00 ok: keys/fleet-bootstrap-ops.pub is exactly one well-formed ed25519 PUBLIC key (#178) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.405808610-05:00 ok: build-golden bakes the COMMITTED .pub -> $M/etc/ssh/authorized_keys.d/edge-ops (#178) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.406883387-05:00 ok: build-golden bakes the sshd AuthorizedKeysFile drop-in (user path first, #170-safe) (#178) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.410474786-05:00 ok: group_vars/all defaults base_ops_authorized_keys from the SAME committed .pub (converge == bake) (#178) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.412466360-05:00 ok: edge-golden-smoke gates the baked bootstrap key (runtime gate, #178) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.413785356-05:00 ok: firstboot-sshkey.sh parses (POSIX sh) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.417056076-05:00 ok: firstboot-sshkey.sh is 'set -u' never-fatal (#168 contract) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.418571791-05:00 ok: firstboot-sshkey.sh guards on /data being a real mountpoint [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.420184156-05:00 ok: firstboot-sshkey.sh generates an ed25519 key on-device [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.420249966-05:00 ok: overlay present: storeminder-firstboot-sshkey.service [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.421589442-05:00 ok: firstboot-sshkey ordered Before=ssh.service (key exists when sshd's condition is evaluated) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.422720728-05:00 ok: firstboot-sshkey ordered After=data.mount (#71/#72 invariant) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.422743258-05:00 ok: firstboot-sshkey enabled via multi-user.target.wants [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.424066734-05:00 ok: bootstrap HostKey drop-in points sshd at the /data key (pre-converge window open) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.427754633-05:00 ok: build-golden bakes firstboot-sshkey + bootstrap HostKey drop-in from the overlay sources (#184) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.432851087-05:00 ok: ssh.service keeps After=data.mount + OR-form ConditionPathExists over /data + bootstrap keys (#107/edge#221) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.436177516-05:00 ok: roles/ssh_ca retires the bootstrap HostKey drop-in at converge (single HostKey source) (#184) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.443526704-05:00 ok: 16-...-hostkey.conf lists per-device /data key FIRST, bootstrap fallback second (edge#221) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.445000539-05:00 ok: no committed OpenSSH private key material (edge#221 key stays in Vault) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.449311786-05:00 ok: build-golden bakes the bootstrap host key from EDGE_BOOTSTRAP_HOSTKEY_PRIV (never a committed file) (edge#221) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.451226590-05:00 ok: roles/ssh_ca removes the baked shared bootstrap key at converge (edge#221) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.455121508-05:00 ok: edge-golden-smoke gates the baked bootstrap key + names the sunset issue (edge#221/#222) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.456328344-05:00 ok: firstboot-user.sh parses (POSIX sh) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.459799283-05:00 ok: firstboot-user.sh is 'set -u' never-fatal (#168 contract) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.461661388-05:00 ok: firstboot-user.sh creates the operator user (-m -s /bin/bash -G sudo) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.463477862-05:00 ok: firstboot-user.sh locks the password (no password auth, ever) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.465190417-05:00 ok: firstboot-user.sh installs the NOPASSWD sudoers drop-in [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.467093501-05:00 ok: firstboot-user.sh visudo-validates the drop-in BEFORE install (bad sudoers bricks sudo) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.467126091-05:00 ok: overlay present: storeminder-firstboot-user.service [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.468570226-05:00 ok: firstboot-user ordered Before=ssh.service (user exists for the first login attempt) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.469919402-05:00 ok: firstboot-user needs only local-fs (no network dependency) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.469936852-05:00 ok: firstboot-user enabled via multi-user.target.wants [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.471995346-05:00 ok: user-data.tmpl keeps the users: block (harmless double-set where cloud-init runs) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.473324452-05:00 ok: user-data.tmpl documents the users: block as dead on installed boxes (#229) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.617356816-05:00 ok: tests/firstboot-user.sh passes (operator-user contract, #229) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.619446630-05:00 ok: site.yml includes tasks/targeting-groups.yml (site_*/role_* mapping, #247) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.619464930-05:00 ok: tasks/targeting-groups.yml present [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.621814003-05:00 ok: group_vars/all defines site_marker_path (hermetic-testable lookups, #247) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.621894292-05:00 ok: group_vars/site_lab demo override committed (living proof of the convention, #247) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.621912882-05:00 ok: tests/site-role-groups.sh present (behaviour gate runs in edge-selftest-lint, #247) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.624671994-05:00 ok: requirements.yml collection versions are exact pins (#182) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.627818584-05:00 ok: requirements.lock entries are well-formed (name + exact version + sha256) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.634436344-05:00 ok: requirements.yml and requirements.lock agree 1:1 (6 collections) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.641325372-05:00 ok: build-golden vendors requirements.lock collections into the rootfs (#182) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.643021037-05:00 ok: build-golden sha256-verifies fetched collection tarballs (#182) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.644955841-05:00 ok: build-golden never points 'ansible-galaxy install -r' at the proxy (#156) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.646744925-05:00 ok: ansible.cfg collections_paths includes /usr/share/ansible/collections (#182) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.650907973-05:00 ok: edge-golden-smoke gates the vendored collections against requirements.lock (#182) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.651019552-05:00 ok: present: mesh-rejoin.sh [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.651032092-05:00 ok: present: storeminder-mesh-rejoin.service [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.651054512-05:00 ok: present: storeminder-mesh-rejoin.timer [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.652709237-05:00 ok: mesh-rejoin.sh parses [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.654813580-05:00 ok: mesh-rejoin.sh is 'set -u' (never fatal) (#166) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.656603495-05:00 ok: mesh-rejoin bounds 'tailscale up' with --timeout (#135) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.658801058-05:00 ok: mesh-rejoin 'tailscale up' carries --reset (no 'requires mentioning all') (#469/#283) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.660749002-05:00 ok: mesh-rejoin 'tailscale up' carries --force-reauth (wedged-session re-register) (#469/#283) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.664995299-05:00 ok: mesh-rejoin dials real data-plane liveness before trusting Running+IP (#469/#283) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.669055127-05:00 ok: mesh-rejoin probes control-plane recognition (Health) before trusting Running+IP (#263) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.671026480-05:00 ok: mesh-rejoin keeps cross-tick stale escalation state (/data marker) (#469/#283) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.672722635-05:00 ok: mesh-rejoin rate-limits rung-2 re-auth (headscale 0.25 churn guard) (#469/#283) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.674480830-05:00 ok: mesh-rejoin refuses to logout without a re-join credential (#469/#283) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.678275838-05:00 ok: mesh-rejoin re-enrolls via the baked enroll client (#166) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.680185812-05:00 ok: mesh-rejoin re-mints with edge-enroll --force (stale single-use key) (#166) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.681880117-05:00 ok: mesh-rejoin logs LOUDLY on break-glass use (#166) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.684005060-05:00 ok: mesh-rejoin leaves the /data break-glass marker (#166) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.685992684-05:00 ok: mesh-rejoin skips while firstboot-mesh is mid-join (no churn) (#166) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.709094263-05:00 ok: mesh-rejoin TimeoutStartSec=240 >= budget 195s + 30s margin (#135/#166) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.710824517-05:00 ok: mesh-rejoin service is timer-activated only (no WantedBy) (#166) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.713055260-05:00 ok: mesh-rejoin.timer sets OnUnitActiveSec + WantedBy=timers.target (#166) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.714390636-05:00 ok: mesh-rejoin.timer spreads the fleet (RandomizedDelaySec) (#166) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.715991901-05:00 ok: mesh-rejoin service orders after /data (RequiresMountsFor) (#83/#166) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.720045189-05:00 ok: build-golden bakes mesh-rejoin.sh + enables the timer (#166) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.721370795-05:00 ok: overlay ships mesh-rejoin.sh (byte-identical to the x86 baked copy) (#166) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.722421352-05:00 ok: overlay ships storeminder-mesh-rejoin.service (byte-identical to the x86 baked copy) (#166) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.723444548-05:00 ok: overlay ships storeminder-mesh-rejoin.timer (byte-identical to the x86 baked copy) (#166) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.723477578-05:00 ok: overlay enables storeminder-mesh-rejoin.timer (timers.target.wants symlink) (#166) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.726487069-05:00 ok: roles/mesh reasserts mesh-rejoin script + units at converge (single source) (#283) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:26.728885721-05:00 ok: edge-golden-smoke gates the baked mesh re-join (runtime gate, #166) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:33.918767175-05:00 ok: tests/mesh-rejoin.sh passes (self-heal re-join contract, #166) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:33.924914826-05:00 ok: build-golden bakes the selftest v2 wrapper + repo snapshot (#191) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:33.927025830-05:00 ok: build-golden fail-louds on an incomplete selftest snapshot (#191) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:33.931292287-05:00 ok: edge-golden-smoke gates the baked selftest wrapper + snapshot (#200) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:33.932626912-05:00 ok: journald drop-in bakes Storage=persistent (storeminder#225) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:33.933860128-05:00 ok: journald drop-in bakes SystemMaxUse cap (edge#89) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:33.934994095-05:00 ok: journald drop-in bakes MaxFileSec rotation (edge#89) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:33.936955049-05:00 ok: edge-golden-smoke checks ownership NUMERICALLY (stat %u/%g, never name resolution) (edge#227) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:33.938871063-05:00 ok: edge-golden-smoke sweeps the rootfs for uid/gid >= 1000 owners (edge#227) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:34.964569727-05:00 ok: tests/pyfixtures/test_golden_smoke_ownership.py passes (uid-10001 bake-class ownership gate, edge#227) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:34.966482861-05:00 ok: overlay symlink: /etc/storeminder/site -> /data/identity/site (#243) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:34.968267765-05:00 ok: overlay symlink: /etc/storeminder/role -> /data/identity/role (#243) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:34.969746310-05:00 ok: firstboot-siterole.sh parses (POSIX sh) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:34.973310659-05:00 ok: firstboot-siterole.sh is 'set -u' never-fatal (#168 contract) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:34.974910484-05:00 ok: firstboot-siterole.sh reads the payload device-batch.json contract [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:34.976698519-05:00 ok: firstboot-siterole.sh guards the /data mountpoint (rootfs-shadow hazard) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:34.976727559-05:00 ok: overlay present: storeminder-firstboot-siterole.service [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:34.977847335-05:00 ok: firstboot-siterole needs only local-fs (no network dependency) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:34.979072121-05:00 ok: firstboot-siterole ordered Before=storeminder-vector-env.service (SM_SITE sees the marker on first boot) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:34.979088261-05:00 ok: firstboot-siterole enabled via multi-user.target.wants [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:34.980782556-05:00 ok: install-system.sh seeds /data/identity/{site,role} from the payload (#243) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:34.982484721-05:00 ok: vector-host-env.sh derives SM_SITE beside SM_HOST (#243) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:34.984192275-05:00 ok: baked vector.yaml stamps the site label via ${SM_SITE} (#243) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:34.986121379-05:00 ok: edge-golden-smoke gates the baked site/role marker wiring (#243) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.095655458-05:00 ok: tests/firstboot-siterole.sh passes (site/role marker contract, #243) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.095786457-05:00 ok: no edge_replication templates in this ref -- lockfile-writability check skipped (edge#404) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.096972444-05:00 ok: baked chrony sources prefer the internal mesh NTP (edge#314/#454) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.098385349-05:00 ok: baked chrony sources keep the first-boot pool fallback [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.099674255-05:00 ok: roles/base sources the baked chrony file (SSOT #367) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.101005991-05:00 ok: baked apt periodic config disables unattended-upgrade [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.102759916-05:00 ok: baked mask: apt-daily.timer -> /dev/null (edge#399 pre-converge window closed) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.104764879-05:00 ok: baked mask: apt-daily-upgrade.timer -> /dev/null (edge#399 pre-converge window closed) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.106100895-05:00 ok: baked mask: unattended-upgrades.service -> /dev/null (edge#399 pre-converge window closed) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.107556691-05:00 ok: baked tmpfiles: /data/keys 0770 root:vault-agent (edge#334 steady state) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.108872696-05:00 ok: baked tmpfiles: /data/provision traversable (0751) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.110574441-05:00 ok: baked nftables.conf is default-deny (policy drop) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.112390296-05:00 ok: baked nftables.conf allows ssh on the mesh only [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.112463005-05:00 ok: nftables.service enabled via baked sysinit.target.wants symlink [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.113771931-05:00 ok: roles/firewall sources the baked ruleset (SSOT #367) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.113801631-05:00 ok: no duplicate nftables template (overlay is the single source) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.115011027-05:00 ok: baked sshd hardening: HostKey /data/keys/ssh_host_ed25519_key [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.116223813-05:00 ok: baked sshd hardening: PasswordAuthentication no [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.117360110-05:00 ok: baked sshd hardening: PermitRootLogin no [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.118759426-05:00 ok: baked sshd hardening: TrustedUserCAKeys /data/keys/trusted-user-ca.pub [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.120018602-05:00 ok: baked sshd config carries no HostCertificate (pre-cert render, correct) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.121223148-05:00 ok: firstboot-sshkey stages the TrustedUserCAKeys placeholder (no dangling ref) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.122848383-05:00 ok: baked vault-agent.hcl is the AppRole steady-state shape (#387) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.124914316-05:00 ok: baked vault-agent.hcl has EXACTLY one auto_auth method (edge#275) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.126163112-05:00 ok: baked vault-agent bootstrap gate holds the agent until AppRole creds exist [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.127399979-05:00 ok: roles/pki removes the bootstrap gate at converge (supersede pattern, #184-style) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.128677035-05:00 ok: baked vault-agent.service orders on /data (no nofail race) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.128742204-05:00 ok: vault-agent.service enabled via baked wants symlink [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.128772274-05:00 ok: baked + enabled: pki-renew-client.timer [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.128802144-05:00 ok: baked + enabled: pki-renew-sshhost.timer [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.130073490-05:00 ok: roles/pki sources the baked vault-agent unit (SSOT #367) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.130109000-05:00 ok: baked ctmpl present: client-cert.ctmpl [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.130121520-05:00 ok: baked ctmpl present: client-key.ctmpl [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.130144180-05:00 ok: baked ctmpl present: ssh-host-cert.ctmpl [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.130153650-05:00 ok: baked ctmpl present: ssh-user-ca.ctmpl [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.131314816-05:00 ok: client-cert.ctmpl derives the CN at render time (hostname-agnostic, bakeable) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.132520173-05:00 ok: client-key.ctmpl derives the CN at render time (hostname-agnostic, bakeable) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.136223891-05:00 ok: client cert+key ctmpl secret calls are byte-identical (dedup -> matched pair) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.137510667-05:00 ok: client-cert.ctmpl carries no comment lines (comments would leak into the rendered PEM) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.138813963-05:00 ok: roles/pki sources the baked ctmpl files (SSOT #367) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.139859770-05:00 ok: vault-agent user baked via sysusers.d (exists before tmpfiles/unit) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.140965356-05:00 ok: baked docker daemon.json routes Hub pulls through Nexus (storeminder#50) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.142186333-05:00 ok: roles/runtime sources the baked daemon.json (SSOT #367) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.143873867-05:00 ok: baked node-exporter args carry the textfile collector dir [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.145002574-05:00 ok: roles/observability sources the baked node-exporter args (SSOT #367) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.145036474-05:00 ok: dispatcher base-config.yaml baked (FORMULA defaults for #458) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.178987118-05:00 ok: base-config.yaml parses as YAML [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.180341044-05:00 ok: build-golden bakes the plymouth theme + initramfs (edge#348/#454) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.181489570-05:00 ok: mender-convert.cfg installs the configure add-on (edge#450) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.183121935-05:00 ok: dispatcher entry symlinked into mender-configure apply-device-config.d [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.184694800-05:00 ok: post-apply selftest gate symlinked after the render entry (edge#457) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.185881216-05:00 ok: boot re-apply sets SELFTEST_GATE_SKIP=1 (never gate a mid-boot replay of accepted config; edge#457/#407) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.187371082-05:00 ok: /var/lib/mender-configure symlinked to persistent /data [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.188658518-05:00 ok: baked tmpfiles creates /data/mender-configure (configure module aborts on symlink-without-dir) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.189920754-05:00 ok: boot re-render unit runs mender-configure --apply-only (deb ships no boot unit) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.192223586-05:00 ok: config-apply ordered after data.mount, before the /run-sink consumers [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.193506632-05:00 ok: config-apply gated on a persisted config (never-configured box skips cleanly) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.193528322-05:00 ok: config-apply enabled via baked wants symlink [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.194600339-05:00 ok: smcfgd merges the baked base-config (schema < base < delivered) (edge#454) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.197510550-05:00 ok: no tests/*.sh sets pipefail (edge#531 gate-on-the-gate) [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.197572480-05:00 [pod/edge-main-validate-klqch-lint-pod/step-lint] 2026-08-09T20:54:35.197578300-05:00 edge-image-lint: all invariants hold ===== edge-main-validate-klqch-post-check-pod.log ===== [pod/edge-main-validate-klqch-post-check-pod/prepare] 2026-08-09T20:56:43.158972870-05:00 2026/08/10 01:56:43 Entrypoint initialization [pod/edge-main-validate-klqch-post-check-pod/place-scripts] 2026-08-09T20:56:43.456090362-05:00 2026/08/10 01:56:43 Decoded script /tekton/scripts/script-0-n59tx [pod/edge-main-validate-klqch-post-check-pod/step-post-check] 2026-08-09T20:56:46.690950574-05:00 Installing PyJWT + cryptography + requests… ===== edge-main-validate-klqch-post-check-resolve-pod.log ===== [pod/edge-main-validate-klqch-post-check-resolve-pod/prepare] 2026-08-09T20:56:44.405414785-05:00 2026/08/10 01:56:44 Entrypoint initialization [pod/edge-main-validate-klqch-post-check-resolve-pod/place-scripts] 2026-08-09T20:56:45.609801822-05:00 2026/08/10 01:56:45 Decoded script /tekton/scripts/script-0-f94gn [pod/edge-main-validate-klqch-post-check-resolve-pod/step-post-check] 2026-08-09T20:56:48.665691590-05:00 Installing PyJWT + cryptography + requests… ===== edge-main-validate-klqch-post-check-selftest-pod.log ===== [pod/edge-main-validate-klqch-post-check-selftest-pod/prepare] 2026-08-09T20:56:44.980114375-05:00 2026/08/10 01:56:44 Entrypoint initialization [pod/edge-main-validate-klqch-post-check-selftest-pod/place-scripts] 2026-08-09T20:56:45.616962178-05:00 2026/08/10 01:56:45 Decoded script /tekton/scripts/script-0-4xrrt [pod/edge-main-validate-klqch-post-check-selftest-pod/step-post-check] 2026-08-09T20:56:48.658583805-05:00 Installing PyJWT + cryptography + requests… ===== edge-main-validate-klqch-reclaim-workspace-pod.log ===== [pod/edge-main-validate-klqch-reclaim-workspace-pod/prepare] 2026-08-09T20:56:45.632122925-05:00 2026/08/10 01:56:45 Entrypoint initialization [pod/edge-main-validate-klqch-reclaim-workspace-pod/place-scripts] 2026-08-09T20:56:46.627450384-05:00 2026/08/10 01:56:46 Decoded script /tekton/scripts/script-0-xvf5n ===== edge-main-validate-klqch-resolve-pod.log ===== [pod/edge-main-validate-klqch-resolve-pod/prepare] 2026-08-09T20:53:36.686385555-05:00 2026/08/10 01:53:36 Entrypoint initialization [pod/edge-main-validate-klqch-resolve-pod/place-scripts] 2026-08-09T20:53:37.272719436-05:00 2026/08/10 01:53:37 Decoded script /tekton/scripts/script-0-jvqpn [pod/edge-main-validate-klqch-resolve-pod/step-resolve] 2026-08-09T20:53:41.608601875-05:00 note: resolving surface: bootdisk [pod/edge-main-validate-klqch-resolve-pod/step-resolve] 2026-08-09T20:53:46.015241521-05:00 ok: bootdisk: closure resolves -- 226 packages [pod/edge-main-validate-klqch-resolve-pod/step-resolve] 2026-08-09T20:53:46.018289532-05:00 ok: bootdisk: firmware-* resolves from bookworm-backports (pin bites) [pod/edge-main-validate-klqch-resolve-pod/step-resolve] 2026-08-09T20:53:46.025330821-05:00 ok: bootdisk: closure matches committed snapshot [pod/edge-main-validate-klqch-resolve-pod/step-resolve] 2026-08-09T20:53:46.026355838-05:00 note: resolving surface: installer [pod/edge-main-validate-klqch-resolve-pod/step-resolve] 2026-08-09T20:53:49.185115762-05:00 ok: installer: closure resolves -- 138 packages [pod/edge-main-validate-klqch-resolve-pod/step-resolve] 2026-08-09T20:53:49.189108401-05:00 ok: installer: closure matches committed snapshot [pod/edge-main-validate-klqch-resolve-pod/step-resolve] 2026-08-09T20:53:49.190277697-05:00 note: resolving surface: converged [pod/edge-main-validate-klqch-resolve-pod/step-resolve] 2026-08-09T20:53:52.703706930-05:00 ok: converged: closure resolves -- 214 packages [pod/edge-main-validate-klqch-resolve-pod/step-resolve] 2026-08-09T20:53:52.705789164-05:00 ok: converged: mender-client4 resolves to 5.x (5.1.0-1+debian+bookworm) -- matches the golden [pod/edge-main-validate-klqch-resolve-pod/step-resolve] 2026-08-09T20:53:52.709648262-05:00 ok: converged: closure matches committed snapshot [pod/edge-main-validate-klqch-resolve-pod/step-resolve] 2026-08-09T20:53:52.710647749-05:00 [pod/edge-main-validate-klqch-resolve-pod/step-resolve] 2026-08-09T20:53:52.710659539-05:00 edge-pkg-resolve: all surfaces resolve + match ===== edge-main-validate-klqch-selftest-validate-pod.log ===== [pod/edge-main-validate-klqch-selftest-validate-pod/prepare] 2026-08-09T20:53:37.437700242-05:00 2026/08/10 01:53:37 Entrypoint initialization [pod/edge-main-validate-klqch-selftest-validate-pod/place-scripts] 2026-08-09T20:53:38.382043549-05:00 2026/08/10 01:53:38 Decoded script /tekton/scripts/script-0-xlvlm [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:42.639512504-05:00 [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:42.639552823-05:00 == scripts on PATH + executable == [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:42.641681197-05:00 ok: scripts/edge-selftest.sh: has shebang [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:42.643561542-05:00 warn: scripts/edge-selftest.sh: not tracked by git but +x on disk [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:42.647428160-05:00 ok: scripts/edge-selftest.sh: bash -n clean [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.455679303-05:00 ok: scripts/edge-selftest.sh: shellcheck clean [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.462317204-05:00 ok: scripts/edge-selftest.sh: runs (--help exit 0) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.463785089-05:00 ok: scripts/edge-selftest: has shebang [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.465679204-05:00 warn: scripts/edge-selftest: not tracked by git but +x on disk [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.468350246-05:00 ok: scripts/edge-selftest: bash -n clean [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.583598815-05:00 ok: scripts/edge-selftest: shellcheck clean [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.588322591-05:00 ok: scripts/edge-selftest: runs (--help exit 0) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.590675835-05:00 ok: roles/selftest installs to a PATH dir: /usr/local/sbin/edge-selftest [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.592142600-05:00 ok: roles/selftest copies the script to {{ selftest_bin }} [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.592161610-05:00 [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.592176400-05:00 == console login hooks (profile.d) == [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.594570313-05:00 ok: image/overlay/etc/profile.d/01-edge-console-record.sh: bash -n clean [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.622772800-05:00 ok: image/overlay/etc/profile.d/01-edge-console-record.sh: shellcheck clean [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.624288595-05:00 ok: image/overlay/etc/profile.d/01-edge-console-record.sh: no bare exit (comments excluded) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.625459452-05:00 ok: image/overlay/etc/profile.d/01-edge-console-record.sh: guards non-interactive shells ($-) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.627761895-05:00 ok: image/overlay/etc/profile.d/zz-edge-selftest.sh: bash -n clean [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.667800157-05:00 ok: image/overlay/etc/profile.d/zz-edge-selftest.sh: shellcheck clean [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.669463012-05:00 ok: image/overlay/etc/profile.d/zz-edge-selftest.sh: no bare exit (comments excluded) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.670643418-05:00 ok: image/overlay/etc/profile.d/zz-edge-selftest.sh: guards non-interactive shells ($-) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.672276933-05:00 ok: banner: EDGE_SELFTEST_NOLOGIN opt-out present [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.673589889-05:00 ok: banner: disable-file opt-out present [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.674762976-05:00 ok: recorder: EDGE_CONSOLE_NORECORD opt-out present [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.676176372-05:00 ok: recorder: disable-file opt-out present [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.678649335-05:00 ok: EDGE_CONSOLE_RECORDING marker shared by recorder + banner [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.678753484-05:00 ok: serial console autologin overlay present (image/overlay/etc/systemd/system/serial-getty@ttyS0.service.d/autologin.conf) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.683160151-05:00 ok: banner report dir matches role selftest_report_dir (/var/log/edge-selftest) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:53:43.701957336-05:00 ok: tests/selftest-login.sh passes [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:09.463017999-05:00 ok: tests/selftest-report-contract.sh passes [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:09.684600466-05:00 ok: tests/selftest-login-pty.sh passes [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:09.837187322-05:00 ok: tests/selftest-wrapper.sh passes [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:09.934846625-05:00 ok: tests/console-record.sh passes [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:10.286729645-05:00 ok: tests/selftest-firmware-fixtures.sh passes [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:11.951322318-05:00 ok: tests/selftest-firmware-e2big.sh passes [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:32.327248428-05:00 ok: tests/selftest-converge-defer.sh passes [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:35.098012210-05:00 ok: tests/selftest-verify-keys-exist.sh passes [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:35.178745178-05:00 ok: tests/vault-agent-template-render.sh passes [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:35.179848925-05:00 ok: image/overlay/usr/local/sbin/edge-selftest matches scripts/edge-selftest (v2 wrapper) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:35.181627870-05:00 warn: image/overlay/usr/local/sbin/edge-selftest: no git metadata (CI workspace) but +x on disk [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:35.181640189-05:00 [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:35.181651489-05:00 == ansible packaged + works locally == [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:35.182853776-05:00 ok: image/packages.list declares ansible-core (baked into the golden) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:35.184206642-05:00 ok: image/packages.list declares python3 (baked into the golden) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:35.185611667-05:00 ok: image/packages.list declares git (baked into the golden) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:35.564753804-05:00 ok: ansible present: ansible [core 2.21.2] [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:36.052816332-05:00 ok: ansible executes a module over the local connection [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:36.052845162-05:00 [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:36.052855502-05:00 == playbooks: valid YAML + valid playbook syntax == [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:36.094954140-05:00 ok: YAML parses: selftest.yml [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:36.131993144-05:00 ok: YAML parses: selftest-release-gate.yml [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:36.167899942-05:00 ok: YAML parses: roles/selftest/tasks/main.yml [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:36.210929348-05:00 ok: YAML parses: roles/selftest/tasks/detect.yml [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:36.259931415-05:00 ok: YAML parses: roles/selftest/tasks/native.yml [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:36.309337071-05:00 ok: YAML parses: roles/selftest/defaults/main.yml [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:36.367740058-05:00 ok: YAML parses: roles/selftest/tasks/tiers/boot.yml [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:36.411297122-05:00 ok: YAML parses: roles/selftest/tasks/tiers/net.yml [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:36.465782452-05:00 ok: YAML parses: roles/selftest/tasks/tiers/firmware.yml [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:36.504980230-05:00 ok: YAML parses: roles/selftest/tasks/tiers/dns.yml [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:36.558608732-05:00 ok: YAML parses: roles/selftest/tasks/tiers/mesh.yml [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:36.626884429-05:00 ok: YAML parses: roles/selftest/tasks/tiers/converge.yml [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:36.681063510-05:00 ok: YAML parses: roles/selftest/tasks/tiers/metrics.yml [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:36.738091072-05:00 ok: YAML parses: roles/selftest/tasks/tiers/logs.yml [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:37.244471380-05:00 warn: yamllint findings (non-fatal): [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:37.245881386-05:00 roles/selftest/tasks/tiers/boot.yml [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:37.245901585-05:00 364:31 error trailing spaces (trailing-spaces) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:37.245906095-05:00 [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:37.791367711-05:00 ok: ansible-playbook --syntax-check OK: selftest.yml [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:37.791548710-05:00 [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:37.791558660-05:00 == site/role targeting groups (#247) == [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:39.920358768-05:00 ok: tests/site-role-groups.sh passes (subset-targeting contract, #247) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:39.920478437-05:00 [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:39.920486597-05:00 == pki first-boot cert dirs (#334) == [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:39.993484159-05:00 ok: tests/pki-firstboot-cert-dirs.sh passes (bare-box cert-render contract, #334) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:39.993506759-05:00 [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:39.993512779-05:00 == pki AppRole steady-state auth switch (#387) == [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:40.087127045-05:00 ok: tests/pki-approle-switch.sh passes (approle steady-state, cert retired, #387) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:40.087155125-05:00 [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:40.087160995-05:00 == selftest boot tier: masked-unit gating (#399) == [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:41.501606780-05:00 ok: tests/selftest-boot-masked-units.sh passes (masked units excluded from failed_units, #399) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:41.501639610-05:00 [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:41.501647750-05:00 == A/B slot completeness markers (edge#520/#484) == [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:41.968242076-05:00 ok: tests/slot-marker-completeness.sh passes (rollback completeness-marker contract, edge#520/#484) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:41.968280976-05:00 [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:41.968286656-05:00 == synchronous first-boot converge (#356) == [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:48.120908418-05:00 ok: tests/firstboot-converge.sh passes (sync converge before readiness, #356) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:48.120942947-05:00 [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:48.120949087-05:00 == active-firmware prompt (#361) == [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:48.149342538-05:00 ok: tests/firmware-prompt.sh passes (prompt reflects active firmware, #361) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:48.149382707-05:00 [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:48.149388867-05:00 == per-container metrics collector (#395) == [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:48.228979106-05:00 ok: tests/container-metrics.sh passes (per-container metrics contract, #395) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:48.229063266-05:00 [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:48.229071116-05:00 == config dispatcher: KNOWLEDGE k/v -> service configs (edge#458, retire-converge #449) == [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:51.301757440-05:00 ok: storeminder-config provisioned from Nexus PyPI (storeminder-config==0.1.6) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:53.182460290-05:00 ok: tests/config-dispatcher.sh passes (#884 shape, cron->OnCalendar, sts creds, forward-skew, validation gate, Mender exit-code contract) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:55.234287706-05:00 ok: tests/selftest-gate.sh passes (post-apply health gate: ordering, rollback teeth, timeout bound, skip semantics; edge#457) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:55.234322056-05:00 [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:55.234327656-05:00 == manifest-driven S3 uploader units (edge#451, retire-converge #449) == [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:55.398360154-05:00 ok: tests/s3-uploader.sh passes (unit wiring, seam agreement, skip ladder, rclone flow, converge yield) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:55.398394404-05:00 [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:55.398401454-05:00 == collector config seam (edge#478, retire-converge #449) == [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:56.438822076-05:00 ok: tests/collector-config.sh passes (config round-trip, skip-when-absent, oneshot no-reload, no-secret-in-world-readable-sink) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:56.438851836-05:00 [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:54:56.438858166-05:00 == selftest logs round-trip tier (edge#394) == [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:55:12.580989859-05:00 ok: tests/selftest-logs-roundtrip.sh passes (emit->ship->index->confirm contract, edge#394) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:55:12.581024549-05:00 [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:55:12.581031569-05:00 == selftest release gate (edge#504) == [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:55:57.521039442-05:00 ok: tests/selftest-release-gate.sh passes (round-trip escalation is a release blocker, edge#504) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:55:57.521070632-05:00 [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:55:57.521077832-05:00 == hermetic obs round-trip fixture (edge#506) == [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:56:39.167928171-05:00 ok: tests/selftest-obs-fixture.sh passes (obs fixture + shape helpers + round-trip wiring, edge#506) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:56:39.167963430-05:00 [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:56:39.167969460-05:00 == setup narrative + failure signatures (edge#421) == [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:56:39.224804504-05:00 ok: tests/setup-log.sh passes (narrative primitive contract, edge#421) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:56:39.419860101-05:00 ok: tests/setup-diagnose.sh passes (failure-signature catalogue, edge#421) [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:56:39.419882381-05:00 [pod/edge-main-validate-klqch-selftest-validate-pod/step-selftest-validate] 2026-08-09T20:56:39.419894671-05:00 edge-selftest-lint: all checks passed