[pod/edge-main-validate-sdqj6-lint-pod/place-scripts] 2026-08-09T12:17:29.268177814-05:00 2026/08/09 17:17:29 Decoded script /tekton/scripts/script-0-mcj4x
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.474718611-05:00 ok:   install-system.sh parses
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.476086744-05:00 ok:   installer-logship.sh parses
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.477284388-05:00 ok:   installer-diaglink.sh parses
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.478573891-05:00 ok:   firstboot-mesh.sh parses
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.479907384-05:00 ok:   firstboot-logship.sh parses
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.480939359-05:00 ok:   firstboot-hostname.sh parses
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.482090193-05:00 ok:   firstboot-devicetype.sh parses
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.483267317-05:00 ok:   firstboot-mender.sh parses
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.486369731-05:00 ok:   build-golden.sh parses
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.488973187-05:00 ok:   build-installer-rootfs.sh parses
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.491154256-05:00 ok:   build-selfinstall-disk.sh parses
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.493415475-05:00 ok:   build-rc.sh parses
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.496335169-05:00 ok:   grubenv-flow-test.sh parses
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.499804642-05:00 ok:   ci/edge-golden-smoke.sh parses
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.502719636-05:00 ok:   ci/edge-ota-install.sh parses
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.502750016-05:00 ok:   overlay present: data.mount
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.502766606-05:00 ok:   overlay present: boot-efi.mount
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.502780076-05:00 ok:   overlay present: storeminder-data-check.service
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.502802086-05:00 ok:   overlay present: emergency.service.d/10-storeminder-sulogin-force.conf
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.502811116-05:00 ok:   overlay present: rescue.service.d/10-storeminder-sulogin-force.conf
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.502834726-05:00 ok:   overlay present: getty@tty1.service.d/autologin.conf
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.502859976-05:00 ok:   boot-efi.mount enabled via local-fs.target.wants
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.503939880-05:00 ok:   data.mount What= is by-label
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.505446042-05:00 ok:   data.mount Options= has nofail
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.506642986-05:00 ok:   boot-efi.mount What= is by-label ESP
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.507985259-05:00 ok:   boot-efi.mount Options= has nofail
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.509204793-05:00 ok:   emergency: Environment=SYSTEMD_SULOGIN_FORCE=1
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.510239398-05:00 ok:   rescue: Environment=SYSTEMD_SULOGIN_FORCE=1
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.510271498-05:00 ok:   overlay present: wait-online --any drop-in
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.511399042-05:00 ok:   wait-online drop-in sets ExecStart ... --any
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.512400277-05:00 ok:   wait-online drop-in blanks ExecStart= before re-setting it
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.512440306-05:00 ok:   overlay present: smartd condition drop-in (SSOT, #367/#363)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.513527731-05:00 ok:   roles/observability sources the smartd drop-in from image/overlay (single source, #367)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.515003383-05:00 ok:   roles/base sources the wait-online drop-in from image/overlay (single source, #367)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.515056483-05:00 ok:   overlay present: catch-all DHCP .network
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.515998568-05:00 ok:   catch-all .network sets DHCP=yes
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.517089312-05:00 ok:   catch-all .network matches en*/eth*
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.517114222-05:00 ok:   systemd-networkd.service enabled via multi-user.target.wants
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.517129822-05:00 ok:   systemd-networkd.socket enabled via sockets.target.wants
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.517150762-05:00 ok:   wait-online enabled via network-online.target.wants (pre-converge)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.518791704-05:00 ok:   cloud-init network rendering disabled (99-storeminder-network.cfg)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.518820774-05:00 ok:   overlay present: HDA/i915 softdep drop-in
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.519977038-05:00 ok:   HDA drop-in orders i915 before snd_hda_intel (softdep)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.521637509-05:00 ok:   edge-golden-smoke asserts /etc/resolv.conf is the resolved stub symlink (edge#143)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:34.523341320-05:00 ok:   edge-golden-smoke asserts systemd-resolved is enabled in the golden (edge#143)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:35.612220929-05:00 ok:   tests/pyfixtures/test_golden_smoke_dns.py passes (resolv.conf-stub + resolved-enabled gate, edge#143)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:35.612359178-05:00 ok:   overlay present: tailscaled /data-state drop-in
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:35.614058100-05:00 ok:   tailscaled drop-in gates on /data (RequiresMountsFor)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:35.615360523-05:00 ok:   tailscaled drop-in clears the stock ExecStart (empty ExecStart=)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:35.616741576-05:00 ok:   tailscaled drop-in points --state at /data on the argv (unclobberable by EnvironmentFile)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:35.618128249-05:00 ok:   tailscaled drop-in disables logtail (--no-logs-no-support)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:35.620151368-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-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:35.621399592-05:00 ok:   tailscaled drop-in creates /data/tailscale before start (ExecStartPre)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:35.626767714-05:00 ok:   edge-golden-smoke asserts the baked mesh authkey (edge#160)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:35.632606994-05:00 ok:   edge-golden-smoke asserts tailscaled is enabled in the golden (edge#160)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:35.634953922-05:00 ok:   edge-golden-smoke asserts firstboot-mesh is enabled in the golden (edge#160)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.667586621-05:00 ok:   tests/pyfixtures/test_golden_smoke_mesh.py passes (offline mesh-machinery gate, edge#160)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.672701845-05:00 ok:   retired: x86-selfinstall/storeminder-pull.service absent (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.677152682-05:00 ok:   retired: x86-selfinstall/storeminder-pull.timer absent (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.681548390-05:00 ok:   retired: pi-selfinstall/storeminder-pull.service absent (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.685609529-05:00 ok:   retired: pi-selfinstall/storeminder-pull.timer absent (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.689976976-05:00 ok:   retired: system/storeminder-pull.service absent (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.694397854-05:00 ok:   retired: system/storeminder-pull.timer absent (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.699265778-05:00 ok:   retired: timers.target.wants/storeminder-pull.timer absent (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.702355253-05:00 ok:   build-golden.sh does not bake the retired pull loop (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.705399917-05:00 ok:   build-selfinstall-sd.sh does not bake the retired pull loop (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.706712620-05:00 ok:   roles/base does not install the retired pull units (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.709182787-05:00 ok:   roles/base removes the retired pull units on escape-hatch runs (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.712781039-05:00 ok:   roles/mender post-OTA ansible-pull hook retired (removal-only) (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.715249276-05:00 ok:   firstboot-converge.sh is ansible-free (identity materialization only) (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.717087477-05:00 ok:   firstboot-converge.sh runs the baked AppRole self-mint (edge#387/#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.717140696-05:00 ok:   overlay ships vault-approle-mint.sh executable (ansible-free AppRole mint, #455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.721027886-05:00 ok:   vault-approle-mint.sh mints role_id + secret_id (edge#387)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.723148556-05:00 ok:   vault-approle-mint.sh never logs the minted secret (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.724392729-05:00 ok:   smcfgd-requirements.txt pins the storeminder-config contract closure (edge#458)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.730348008-05:00 ok:   build-golden bakes smcfgd python deps from the Nexus PyPI (edge#458/#454)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.732340828-05:00 ok:   build-golden fail-loud import smoke guards the smcfgd bake
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.734313558-05:00 ok:   build-golden purges the transient pip toolchain (minimal/read-only-friendly rootfs, #456)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.735591642-05:00 ok:   baked vector.yaml carries: docker_logs (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.736865565-05:00 ok:   baked vector.yaml carries: type: aws_s3 (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.738108359-05:00 ok:   baked vector.yaml carries: prometheus_remote_write (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.739418392-05:00 ok:   baked vector.yaml carries: get_env_var("SM_HOST") (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.740567636-05:00 ok:   baked vector.yaml carries: get_env_var("SM_SITE") (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.741781880-05:00 ok:   baked vector.yaml carries: get_env_var("SM_DEVICE_TYPE") (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.743782559-05:00 ok:   baked vector.yaml avoids ${SM_HOST} config interpolation (#230)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.745567680-05:00 ok:   baked vector.yaml does not set current_boot_only (#228)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.748069387-05:00 ok:   baked vector.yaml disables the aws_s3/remote_write healthchecks (#383/#394)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.750021877-05:00 ok:   vector-host-env.sh exports SM_HOST (#243/#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.751658659-05:00 ok:   vector-host-env.sh exports SM_SITE (#243/#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.753303100-05:00 ok:   vector-host-env.sh exports SM_DEVICE_TYPE (#243/#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.755593229-05:00 ok:   baked vector obs drop-in grants docker.sock + optional S3 creds env (edge#394/#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.757161841-05:00 ok:   overlay bakes vector-s3.env.ctmpl (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.758513954-05:00 ok:   overlay bakes vector-s3.hcl (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.760016756-05:00 ok:   overlay bakes collector-env.ctmpl (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.761422829-05:00 ok:   overlay bakes collector-env.hcl (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.762720152-05:00 ok:   collector IDENTITY env renders to the /run tmpfs (edge#456/#478)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.763922066-05:00 ok:   baked collector compose reads the /run IDENTITY env (edge#456/#478)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.765375568-05:00 ok:   overlay bakes storeminder-platform-check.service (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.766922460-05:00 ok:   overlay bakes storeminder-platform-check.timer (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.766942700-05:00 ok:   overlay enables storeminder-platform-check.service (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.766984820-05:00 ok:   overlay enables storeminder-platform-check.timer (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.768373063-05:00 ok:   overlay bakes storeminder-container-metrics.service (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.769863675-05:00 ok:   overlay bakes storeminder-container-metrics.timer (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.769880665-05:00 ok:   overlay enables storeminder-container-metrics.service (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.769918135-05:00 ok:   overlay enables storeminder-container-metrics.timer (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.769970515-05:00 ok:   overlay ships storeminder-platform-check executable (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.772227503-05:00 ok:   platform-check derives edge_converge_ok from the config boot re-apply (#455/#458)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.774237993-05:00 ok:   platform-check exports the retired-pull tripwire metric (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.774256773-05:00 ok:   overlay ships storeminder-container-metrics executable (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.775833204-05:00 ok:   baked collector service gates on the dispatcher config sink (edge#478/#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.777463616-05:00 ok:   baked collector service runs the baked container formula (edge#452/#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.779985623-05:00 ok:   baked collector timer sets OnCalendar + WantedBy=timers.target (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.780032743-05:00 ok:   overlay enables storeminder-collector.timer (#455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.781333466-05:00 ok:   tmpfiles bakes the /run/storeminder/collector dir (vault-agent dest, #455)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.783297266-05:00 ok:   storage device defaults to mmcblk0
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.785245006-05:00 ok:   data-part growfs disabled
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.787088157-05:00 ok:   mender-convert cfg pins MENDER_SERVER_URL to mender.storeminder.ai (#438)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.788921107-05:00 ok:   grub.cfg boots from ${root} (no blind ESP label search)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.790764078-05:00 ok:   internal-disk detection by lsblk TRAN
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.792800267-05:00 ok:   mender.conf.j2 has no stale nvme0n1 reference
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.794597578-05:00 ok:   install-system.sh creates ESP on the target
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.796639727-05:00 ok:   install-system.sh creates UROOTA on the target
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.798401648-05:00 ok:   install-system.sh creates UROOTB on the target
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.800289509-05:00 ok:   install-system.sh creates DATA on the target
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.802739816-05:00 ok:   install-system.sh creates NO IROOT on the target (one-pass)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.804658936-05:00 ok:   install-system.sh seeds /data/mender/bootstrap.mender -> mender records artifact_name (edge#465)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.806551687-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-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.808375907-05:00 ok:   install-system.sh has no phase-2 clone handoff
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.810369187-05:00 ok:   install-system.sh powers off after install
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.812414306-05:00 ok:   install-system.sh does not reboot (poweroff-only handoff)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.814125478-05:00 ok:   install-system.sh grub-installs onto the eMMC ESP
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.815833709-05:00 ok:   install-system.sh lays grub-system.cfg onto the eMMC ESP
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.817813329-05:00 ok:   install-system.sh gives the eMMC ESP a fresh FAT label 'ESP'
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.819456910-05:00 ok:   install-system.sh fail-loud asserts the ESP label resolves
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.819474850-05:00 ok:   grub-system.cfg present
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.821020252-05:00 ok:   grub-system.cfg has the slot-A entry
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.822870913-05:00 ok:   grub-system.cfg has no 'installer' entry
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.824507804-05:00 ok:   grub-system.cfg has no 'diagnostic' entry
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.826358655-05:00 ok:   grub-system.cfg has no 'reinstall' entry
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.828440524-05:00 ok:   grub-system.cfg references no installer kernel
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.831941646-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-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.833291239-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-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.834703932-05:00 ok:   provisioner/x86-selfinstall/grub-system.cfg: system-b boots directly by root=PARTUUID=${rootuuid_b} (edge#508)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.836284364-05:00 ok:   provisioner/x86-selfinstall/grub-system.cfg: system-b loads a kernel directly (linux ...) (edge#508)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.838087694-05:00 ok:   provisioner/x86-selfinstall/grub-system.cfg: insmod regexp present (disk derivation + kernel glob) (edge#508)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.840200574-05:00 ok:   provisioner/x86-selfinstall/install-system.sh: records rootuuid_b (slot-B PARTUUID) into the grubenv (edge#508)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.843853855-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-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.845086108-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-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.846529551-05:00 ok:   provisioner/arm64-selfinstall/grub-system.cfg: system-b boots directly by root=PARTUUID=${rootuuid_b} (edge#508)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.847982033-05:00 ok:   provisioner/arm64-selfinstall/grub-system.cfg: system-b loads a kernel directly (linux ...) (edge#508)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.849950463-05:00 ok:   provisioner/arm64-selfinstall/grub-system.cfg: insmod regexp present (disk derivation + kernel glob) (edge#508)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.851724794-05:00 ok:   provisioner/arm64-selfinstall/install-system.sh: records rootuuid_b (slot-B PARTUUID) into the grubenv (edge#508)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.855582634-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-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.856995497-05:00 ok:   provisioner/x86-selfinstall/grub.cfg: system-b entry does not depend on the UROOTB label (edge#529)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.858445400-05:00 ok:   provisioner/x86-selfinstall/grub.cfg: system-b boots by GPT identity (rootuuid_b / PARTLABEL) (edge#529)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.859945302-05:00 ok:   provisioner/x86-selfinstall/grub.cfg: system-b loads a kernel directly (linux ...) (edge#529)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.861515934-05:00 ok:   provisioner/x86-selfinstall/grub.cfg: insmod regexp present (disk derivation + kernel glob) (edge#529)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.864699567-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-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.866059100-05:00 ok:   provisioner/arm64-selfinstall/grub.cfg: system-b entry does not depend on the UROOTB label (edge#529)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.867482763-05:00 ok:   provisioner/arm64-selfinstall/grub.cfg: system-b boots by GPT identity (rootuuid_b / PARTLABEL) (edge#529)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.868954096-05:00 ok:   provisioner/arm64-selfinstall/grub.cfg: system-b loads a kernel directly (linux ...) (edge#529)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.870747716-05:00 ok:   provisioner/arm64-selfinstall/grub.cfg: insmod regexp present (disk derivation + kernel glob) (edge#529)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.872779026-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-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.874502347-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-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.878385097-05:00 ok:   sm_last_boot_action seeded by BOTH provisioning paths (installer + field remediation) (edge#520)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.881903579-05:00 ok:   sm_last_boot_part seeded by BOTH provisioning paths (installer + field remediation) (edge#520)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:38.883724690-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-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.818497574-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-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.820544103-05:00 ok:   grub-system.cfg: saved_entry is the persistent default (#295)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.822277484-05:00 ok:   grub-system.cfg: next_entry one-shot SELF-CLEARS (save_env next_entry) (#120/#295)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.824342994-05:00 ok:   grub-system.cfg: deliberately omits bootcount (emergency shell, not a boot loop; #135/#295)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.824441263-05:00 ok:   grub.cfg (USB selector) present
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.826168964-05:00 ok:   grub.cfg: next_entry one-shot SELF-CLEARS (save_env next_entry) (#295)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.827985435-05:00 ok:   grub.cfg: bootcount gates the revert on boot_success=0 (#295)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.829876365-05:00 ok:   grub.cfg: persists boot-counting across cycles (save_env boot_indeterminate) (#295)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.831842765-05:00 ok:   install-system.sh lays the grub-mender-grubenv env surface on the ESP (edge#470)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.833758735-05:00 ok:   install-system.sh seeds mender_boot_part into the mender env pair (edge#470)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.835769645-05:00 ok:   install-system.sh seeds upgrade_available into the mender env pair (edge#470)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.837540996-05:00 ok:   install-system.sh writes the mender env lock.sha256sum (shim integrity check) (edge#470)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.839174348-05:00 ok:   install-system.sh records mender_rootfsa/b_part for the selector map (edge#470)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.840650990-05:00 ok:   grub-system.cfg loads the mender OTA env (mender_boot_part) (edge#470)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.842310651-05:00 ok:   grub-system.cfg flips to system-b when mender_boot_part points at slot B (edge#470)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.843482705-05:00 ok:   overlay pins ENV_DIR=/boot/efi/grub-mender-grubenv in etc/mender_grubenv.config (edge#483)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.844627000-05:00 ok:   roles/mender mender_grubenv.config is byte-identical to the overlay SSOT (edge#483/#366)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.845930073-05:00 ok:   roles/mender lays /etc/mender_grubenv.config at converge (heals deployed rootfses, edge#483)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.847121617-05:00 ok:   selftest converge tier probes the grubenv shim end-to-end (edge#483)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.848196601-05:00 ok:   selftest converge tier reports mender_grubenv_config (edge#483)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.849489814-05:00 ok:   selftest manifest carries mender_grubenv_config (edge#483/#195)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.850892117-05:00 ok:   selftest converge tier reports mender_grubenv_dir (edge#483)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.852090341-05:00 ok:   selftest manifest carries mender_grubenv_dir (edge#483/#195)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.853739883-05:00 ok:   selftest converge tier reports mender_grubenv_resolves (edge#483)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.855052726-05:00 ok:   selftest manifest carries mender_grubenv_resolves (edge#483/#195)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.857037456-05:00 ok:   installer rootfs includes grub-efi-amd64-bin (grub-install available)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.859252194-05:00 ok:   build-selfinstall-disk.sh bakes grub-system.cfg into /opt/installer
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.861390613-05:00 ok:   build-selfinstall-disk.sh bakes bootstrap.mender into /opt/installer (edge#465)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.863428053-05:00 ok:   build-golden.sh extracts the mender bootstrap artifact for the self-install (edge#465)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.865266213-05:00 ok:   build-rc.sh threads BOOTSTRAP_MENDER golden->selfinstall (edge#465)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.900283183-05:00 ok:   tests/selfinstall-bootstrap-artifact.sh passes (mender-managed self-install records artifact_name, edge#465)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.969778046-05:00 ok:   tests/edge-ota-install-selftest.sh passes (real-client OTA-install gate wired, edge#471)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.971788176-05:00 ok:   mender defaults: x86 rootfs A = /dev/mmcblk0p2
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.973810286-05:00 ok:   mender defaults: x86 rootfs B = /dev/mmcblk0p3
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.975863505-05:00 ok:   mender defaults: no x86 slot on /dev/mmcblk0p4 (DATA)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.975925065-05:00 ok:   installer-logship.service present
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.977732485-05:00 ok:   logship: 'set -u' (no set -e -> never aborts)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.979638956-05:00 ok:   logship unit does not gate installer.service
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.983618545-05:00 ok:   install-system.sh raises install-complete + waits for the ship drain before poweroff (#229)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.985629985-05:00 ok:   install-system.sh drain wait is hard-capped (SHIP_DRAIN_CAP_SECS)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.989084907-05:00 ok:   installer-logship confirms Loki delivery via promtail metrics -> raises drained (#229)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.990808048-05:00 ok:   installer-logship raises terminal on give-up (no full-cap stall) (#229)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.996361180-05:00 ok:   build-installer-rootfs wires in tailscale + promtail + logship unit
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.997648143-05:00 ok:   build-installer-rootfs sources the shared firmware.list (single-source #66)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:40.999406104-05:00 ok:   firmware.list includes firmware-iwlwifi (Wi-Fi/BT, golden #143 parity)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:41.001150355-05:00 ok:   firmware.list includes firmware-realtek (N150 ethernet -> mesh/Loki)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:41.002853796-05:00 ok:   build-golden asserts firmware blobs under /lib/firmware (fail-loud, edge#103)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:41.004631887-05:00 ok:   edge-golden-smoke asserts firmware blobs under /lib/firmware (runtime gate, edge#103)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:41.006623647-05:00 ok:   edge-golden-smoke resolves symlinked blobs within the mounted rootfs (edge#141)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:41.008436138-05:00 ok:   build-golden resolves the alternatives-managed regulatory.db within the chroot (edge#141)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:41.010653426-05:00 ok:   edge-golden-smoke asserts regulatory.db.p7s alongside the reg-db (edge#141)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:41.972447776-05:00 ok:   tests/pyfixtures/test_golden_smoke_regdb.py passes (alternatives-symlink reg-db gate, edge#141)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:41.974415816-05:00 ok:   build-installer-rootfs includes grub2-common (grub-install for eMMC #212)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:41.976434636-05:00 ok:   build-installer-rootfs unmounts chroot binds before tar
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:41.978258646-05:00 ok:   disk build bakes ephemeral mesh-authkey (outside payload/)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:41.979819298-05:00 ok:   no mesh-authkey committed to the repo
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:41.979895098-05:00 ok:   present: firstboot-mesh.sh
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:41.979906818-05:00 ok:   present: firstboot-logship.sh
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:41.979930178-05:00 ok:   present: storeminder-firstboot-mesh.service
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:41.979944538-05:00 ok:   present: storeminder-firstboot-logship.service
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:41.983444270-05:00 ok:   firstboot scripts are 'set -u' (never abort boot) (#230)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:41.985268590-05:00 ok:   firstboot-mesh ordered Before cloud-final (mesh up before ansible-pull) (#230)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:41.989056071-05:00 ok:   firstboot-mesh keys off enrollment-or-baked (inert when absent) (#230)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:41.990756892-05:00 ok:   firstboot-mesh bounds 'tailscale up' with --timeout (#135)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:41.992367584-05:00 ok:   firstboot-mesh 'tailscale up' carries --reset (no 'requires mentioning all') (#469/#283)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:17:42.007050969-05:00 ok:   firstboot-mesh TimeoutStartSec=300 >= budget 245s + 30s margin (#135/#167)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.429676996-05:00 ok:   tests/firstboot-mesh.sh passes (exits 0 on hung 'tailscale up', #135)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.433024089-05:00 ok:   firstboot-logship ships stage=firstboot + hands off to Vector (#230)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.436351702-05:00 ok:   build-golden bakes tailscale + promtail (mesh/logship units ride image/overlay, #366/#230)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.439760935-05:00 ok:   build-golden bakes the first-boot authkey from env (reuses MESH_INSTALLER_AUTHKEY) (#230)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.440997638-05:00 ok:   no firstboot-mesh-authkey committed to the repo
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.442095383-05:00 ok:   overlay ships firstboot-hostname.sh (byte-identical to the provisioner reference) (#366)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.442153273-05:00 ok:   overlay firstboot-hostname.sh is executable (baked 0755) (#366)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.443120928-05:00 ok:   overlay ships storeminder-firstboot-hostname.service (byte-identical) (#366)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.443180017-05:00 ok:   overlay enables storeminder-firstboot-hostname.service (multi-user.target.wants symlink) (#366)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.444925759-05:00 ok:   build-golden.sh does not re-hand-install firstboot-hostname (rides the overlay, #366)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.445951113-05:00 ok:   overlay ships firstboot-mesh.sh (byte-identical to the provisioner reference) (#366)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.446027183-05:00 ok:   overlay firstboot-mesh.sh is executable (baked 0755) (#366)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.446965968-05:00 ok:   overlay ships storeminder-firstboot-mesh.service (byte-identical) (#366)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.446974198-05:00 ok:   overlay enables storeminder-firstboot-mesh.service (multi-user.target.wants symlink) (#366)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.448826739-05:00 ok:   build-golden.sh does not re-hand-install firstboot-mesh (rides the overlay, #366)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.449838614-05:00 ok:   overlay ships firstboot-logship.sh (byte-identical to the provisioner reference) (#366)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.449856094-05:00 ok:   overlay firstboot-logship.sh is executable (baked 0755) (#366)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.450932458-05:00 ok:   overlay ships storeminder-firstboot-logship.service (byte-identical) (#366)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.450977458-05:00 ok:   overlay enables storeminder-firstboot-logship.service (multi-user.target.wants symlink) (#366)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.452744909-05:00 ok:   build-golden.sh does not re-hand-install firstboot-logship (rides the overlay, #366)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.453589385-05:00 ok:   overlay ships firstboot-converge.sh (byte-identical to the provisioner reference) (#366)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.453632465-05:00 ok:   overlay firstboot-converge.sh is executable (baked 0755) (#366)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.454552150-05:00 ok:   overlay ships storeminder-firstboot-converge.service (byte-identical) (#366)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.454562100-05:00 ok:   overlay enables storeminder-firstboot-converge.service (multi-user.target.wants symlink) (#366)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.456327981-05:00 ok:   build-golden.sh does not re-hand-install firstboot-converge (rides the overlay, #366)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.456380411-05:00 ok:   overlay ships setup-log.sh (narrative lib, #421)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.456390751-05:00 ok:   overlay ships setup-diagnose.sh executable (failure-signature detector, #421)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.456407841-05:00 ok:   overlay ships the setup-log CLI executable (replay/follow/diagnose, #421)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.460436380-05:00 ok:   firstboot-hostname.sh sources the narrative lib with the guarded no-op fallback (#421)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.463764133-05:00 ok:   firstboot-mesh.sh sources the narrative lib with the guarded no-op fallback (#421)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.467693474-05:00 ok:   firstboot-logship.sh sources the narrative lib with the guarded no-op fallback (#421)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.471461564-05:00 ok:   firstboot-converge.sh sources the narrative lib with the guarded no-op fallback (#421)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.475059146-05:00 ok:   firstboot-devicetype.sh sources the narrative lib with the guarded no-op fallback (#421)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.478536609-05:00 ok:   firstboot-sshkey.sh sources the narrative lib with the guarded no-op fallback (#421)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.481757822-05:00 ok:   firstboot-user.sh sources the narrative lib with the guarded no-op fallback (#421)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.485114615-05:00 ok:   firstboot-siterole.sh sources the narrative lib with the guarded no-op fallback (#421)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.488478218-05:00 ok:   mesh-rejoin.sh sources the narrative lib with the guarded no-op fallback (#421)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.489537453-05:00 ok:   setup-diagnose emits the SETUP-SIG anchor (grep/LogQL contract, #421)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.526090178-05:00 ok:   tests/host-label-rule.sh passes (SM_HOST rule in every vector config, #198)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.706052528-05:00 ok:   tests/vector-host-derive.sh passes (derivation ladder + never-fatal, #198)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.707312762-05:00 ok:   vector rides image/packages.list (baked pre-converge, #198)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.709631880-05:00 ok:   image/overlay/etc/vector/vector.yaml: no current_boot_only key (systemd 252 compatible)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.711628050-05:00 ok:   roles/observability/templates/vector.yaml.j2: no current_boot_only key (systemd 252 compatible)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.713572060-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-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.715692169-05:00 ok:   obs_logs_endpoint strips the push path from logs_remote_endpoint (#228)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.715810309-05:00 ok:   vector binary not present -- skipping vector validate (grep gates above still enforce #228)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.715891749-05:00 ok:   overlay present: storeminder-vector-env.service
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.718244527-05:00 ok:   vector-env unit is Type=oneshot
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.720254687-05:00 ok:   vector-env unit sets RemainAfterExit=yes (later Wants= pulls don't re-run it)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.722278986-05:00 ok:   vector-env unit invokes the shared vector-host-env.sh (single #198/#241 derivation)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.724114307-05:00 ok:   vector-env unit ordered Before=vector.service (env exists for the FIRST start attempt)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.725820358-05:00 ok:   vector-env unit ordered After=data.mount (#71/#72 invariant: reads /data identity, preps /data/vector)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.727647799-05:00 ok:   vector-env unit installs into multi-user.target
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.727702199-05:00 ok:   vector-env enabled via multi-user.target.wants symlink
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.728810783-05:00 ok:   vector-host-env.sh parses (POSIX sh)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.732529964-05:00 ok:   vector-host-env.sh is 'set -u' never-fatal (#168 contract)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.734605544-05:00 ok:   vector drop-in has no ExecStartPre (SM_HOST comes from the #244 oneshot)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.736406495-05:00 ok:   vector drop-in keeps EnvironmentFile=-/run/storeminder-vector.env
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.737988077-05:00 ok:   vector drop-in sets Restart=on-failure (#244)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.739725468-05:00 ok:   vector drop-in relaxes the start limit (StartLimitIntervalSec, #244)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:13.741339000-05:00 ok:   roles/observability renders no vector ExecStartPre (converge keeps the #244 shape)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:15.332900917-05:00 ok:   tests/pyfixtures/test_golden_smoke_vector_env.py passes (SM_HOST-oneshot smoke gate, edge#244)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:15.441749287-05:00 ok:   tests/vector-docker-logs-s3.sh passes (docker_logs -> Loki + S3 fallback, edge#394)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:15.452833581-05:00 ok:   tests/vector-buffer-capacity.sh passes (disk-buffer sum fits /data + logs_s3 healthcheck disabled, edge#394)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:15.452881791-05:00 ok:   present: firstboot-hostname.sh
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:15.452907961-05:00 ok:   present: storeminder-firstboot-hostname.service
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:15.454640402-05:00 ok:   firstboot-hostname.sh is 'set -u' (never abort boot) (#168)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:15.456695492-05:00 ok:   firstboot-hostname ordered Before the mesh join (#168)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:15.458746911-05:00 ok:   firstboot-hostname ordered Before cloud-final (#168)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:15.460639202-05:00 ok:   firstboot-hostname needs only local-fs (no network dependency) (#168)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:15.460721661-05:00 ok:   early-hostname unit delivered + enabled via image/overlay (SSOT, #366/#168)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:15.608376885-05:00 ok:   tests/firstboot-hostname.sh passes (derivation + never-fatal, #168)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:15.961555021-05:00 ok:   tests/hostname-derivation-parity.sh passes (firstboot-hostname == cloud-init namer, #368)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:15.963078074-05:00 ok:   edge-enroll.sh parses
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:15.965364592-05:00 ok:   edge-enroll.sh is 'set -u' (not set -e) (#165)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:15.969535261-05:00 ok:   edge-enroll stages the enrollment authkey mode-0600 (#165)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:15.971594491-05:00 ok:   edge-enroll refuses to clobber a staged single-use key without --force (#165)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:17.822555668-05:00 ok:   tests/edge-enroll.sh passes (token->authkey exchange contract, #165)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:17.824520218-05:00 ok:   firstboot-mesh invokes the enroll client (ENROLL_CLIENT) (#167)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:17.826286889-05:00 ok:   firstboot-mesh hard-caps the enroll exchange (run_capped ENROLL_CAP_SECS) (#167)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:17.828412708-05:00 ok:   enroll exchange runs BEFORE the key pick (enrollment key wins) (#167)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:17.830390018-05:00 ok:   firstboot-mesh logs LOUDLY on break-glass (baked shared key) use (#167)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:17.832153149-05:00 ok:   firstboot-mesh leaves the /data break-glass marker (#167)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:17.833882651-05:00 ok:   build-golden bakes the edge-enroll client onto PATH (#167)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:17.835048875-05:00 ok:   overlay ships edge-enroll (byte-identical to scripts/edge-enroll.sh) (#167)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:17.837003235-05:00 ok:   roles/mesh reasserts the edge-enroll client at converge (#167)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:17.838733066-05:00 ok:   roles/mesh audits break-glass (shared-key) joins in the converge log (#167)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:17.841018405-05:00 ok:   mint-bootstrap.sh parses
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:17.842837975-05:00 ok:   mint-bootstrap stages secrets under umask 077 / 0600 (#245)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:17.844330778-05:00 ok:   mint-bootstrap enforces the 2h preauthkey TTL floor (#245)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:17.846185698-05:00 ok:   mint-bootstrap refuses to clobber staged secrets without --force (#245)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:18.664553010-05:00 ok:   tests/mint-bootstrap.sh passes (flash-time mint+stage contract, #245)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:18.666721659-05:00 ok:   build-golden gates the shared-key bake behind ALLOW_BREAKGLASS_BAKE (#162)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:18.669068647-05:00 ok:   edge-golden-smoke gates against a baked shared mesh key (#162)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.350015604-05:00 ok:   tests/pyfixtures/test_golden_smoke_meshkey.py passes (shared-key retirement gate, #162)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.353823655-05:00 ok:   promtail default URL derives from the Nexus raw mirror (not a public release)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.357269697-05:00 ok:   promtail.zip is sha256-pinned at build
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390248921-05:00 ok:   map covers bootdisk  ansible-core
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390323331-05:00 ok:   map covers bootdisk  bmap-tools
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390329590-05:00 ok:   map covers bootdisk  ca-certificates
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390335030-05:00 ok:   map covers bootdisk  chrony
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390339200-05:00 ok:   map covers bootdisk  cloud-init
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390343730-05:00 ok:   map covers bootdisk  curl
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390348340-05:00 ok:   map covers bootdisk  dmidecode
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390352760-05:00 ok:   map covers bootdisk  firmware-iwlwifi
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390358550-05:00 ok:   map covers bootdisk  firmware-misc-nonfree
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390363030-05:00 ok:   map covers bootdisk  firmware-realtek
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390368590-05:00 ok:   map covers bootdisk  fontconfig
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390372730-05:00 ok:   map covers bootdisk  fonts-dejavu-core
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390377130-05:00 ok:   map covers bootdisk  git
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390381250-05:00 ok:   map covers bootdisk  jq
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390385300-05:00 ok:   map covers bootdisk  mender-client4
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390389610-05:00 ok:   map covers bootdisk  mender-flash
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390393730-05:00 ok:   map covers bootdisk  nftables
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390397840-05:00 ok:   map covers bootdisk  openssh-server
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390401840-05:00 ok:   map covers bootdisk  plymouth
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390406410-05:00 ok:   map covers bootdisk  prometheus-node-exporter
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390410380-05:00 ok:   map covers bootdisk  python3
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390414410-05:00 ok:   map covers bootdisk  python3-apt
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390418390-05:00 ok:   map covers bootdisk  rclone
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390431350-05:00 ok:   map covers bootdisk  smartmontools
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390434170-05:00 ok:   map covers bootdisk  vault
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390436870-05:00 ok:   map covers bootdisk  vector
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390439520-05:00 ok:   map covers bootdisk  wireless-regdb
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390442160-05:00 ok:   map covers installer ca-certificates
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390444910-05:00 ok:   map covers installer curl
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390448080-05:00 ok:   map covers installer firmware-iwlwifi
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390450850-05:00 ok:   map covers installer firmware-misc-nonfree
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390453490-05:00 ok:   map covers installer firmware-realtek
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390456230-05:00 ok:   map covers installer iproute2
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390459010-05:00 ok:   map covers installer kmod
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390461710-05:00 ok:   map covers installer socat
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390464370-05:00 ok:   map covers installer tailscale
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390467030-05:00 ok:   map covers installer wireless-regdb
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390469770-05:00 ok:   map covers converged chrony
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390472450-05:00 ok:   map covers converged containerd.io
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390475380-05:00 ok:   map covers converged dmidecode
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390481830-05:00 ok:   map covers converged docker-ce
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390484640-05:00 ok:   map covers converged docker-ce-cli
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390487480-05:00 ok:   map covers converged docker-compose-plugin
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390490200-05:00 ok:   map covers converged flashrom
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390492870-05:00 ok:   map covers converged fwupd
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390495630-05:00 ok:   map covers converged intel-microcode
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390498760-05:00 ok:   map covers converged libraspberrypi-bin
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390501420-05:00 ok:   map covers converged linux-modules-extra-raspi
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390504120-05:00 ok:   map covers converged mender-client4
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390506810-05:00 ok:   map covers converged mender-flash
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390509490-05:00 ok:   map covers converged nftables
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390512160-05:00 ok:   map covers converged nvme-cli
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390514820-05:00 ok:   map covers converged openssh-server
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390517490-05:00 ok:   map covers converged prometheus-node-exporter
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390520190-05:00 ok:   map covers converged tailscale
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390522869-05:00 ok:   map covers converged thermald
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390525599-05:00 ok:   map covers converged vault
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390528319-05:00 ok:   map covers converged vector
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390532559-05:00 ok:   source ok  bootdisk  cloud-init               -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390535349-05:00 ok:   source ok  bootdisk  plymouth                 -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390538009-05:00 ok:   source ok  bootdisk  fontconfig               -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390540689-05:00 ok:   source ok  bootdisk  fonts-dejavu-core        -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390543329-05:00 ok:   source ok  bootdisk  chrony                   -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390545999-05:00 ok:   source ok  bootdisk  nftables                 -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390548649-05:00 ok:   source ok  bootdisk  ca-certificates          -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390551389-05:00 ok:   source ok  bootdisk  firmware-iwlwifi         -> backports
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390554109-05:00 ok:   source ok  bootdisk  firmware-misc-nonfree    -> backports
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390556799-05:00 ok:   source ok  bootdisk  firmware-realtek         -> backports
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390559549-05:00 ok:   source ok  bootdisk  wireless-regdb           -> backports
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390567169-05:00 ok:   source ok  bootdisk  ansible-core             -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390570009-05:00 ok:   source ok  bootdisk  python3                  -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390572679-05:00 ok:   source ok  bootdisk  python3-apt              -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390575399-05:00 ok:   source ok  bootdisk  git                      -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390578339-05:00 ok:   source ok  bootdisk  mender-client4           -> mender
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390581019-05:00 ok:   source ok  bootdisk  mender-flash             -> mender
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390583689-05:00 ok:   source ok  bootdisk  vault                    -> hashicorp
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390586359-05:00 ok:   source ok  bootdisk  rclone                   -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390589109-05:00 ok:   source ok  bootdisk  bmap-tools               -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390591849-05:00 ok:   source ok  bootdisk  prometheus-node-exporter -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390594639-05:00 ok:   source ok  bootdisk  openssh-server           -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390599259-05:00 ok:   source ok  bootdisk  curl                     -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390602109-05:00 ok:   source ok  bootdisk  jq                       -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390604879-05:00 ok:   source ok  bootdisk  dmidecode                -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390608169-05:00 ok:   source ok  bootdisk  smartmontools            -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390611849-05:00 ok:   source ok  bootdisk  vector                   -> vector
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390621839-05:00 ok:   source ok  installer systemd-sysv             -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390624999-05:00 ok:   source ok  installer udev                     -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390628609-05:00 ok:   source ok  installer zstd                     -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390631969-05:00 ok:   source ok  installer e2fsprogs                -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390634759-05:00 ok:   source ok  installer dosfstools               -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390679719-05:00 ok:   source ok  installer parted                   -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390686299-05:00 ok:   source ok  installer util-linux               -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390690789-05:00 ok:   source ok  installer coreutils                -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390695029-05:00 ok:   source ok  installer ca-certificates          -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390703929-05:00 ok:   source ok  installer grub-common              -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390708539-05:00 ok:   source ok  installer grub2-common             -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390712739-05:00 ok:   source ok  installer grub-efi-amd64-bin       -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390716828-05:00 ok:   source ok  installer initramfs-tools          -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390720868-05:00 ok:   source ok  installer linux-image-amd64        -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390724958-05:00 ok:   source ok  installer curl                     -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390728998-05:00 ok:   source ok  installer iproute2                 -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390733128-05:00 ok:   source ok  installer firmware-realtek         -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390737168-05:00 ok:   source ok  installer firmware-iwlwifi         -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390741218-05:00 ok:   source ok  installer firmware-misc-nonfree    -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390745268-05:00 ok:   source ok  installer wireless-regdb           -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390756658-05:00 ok:   source ok  installer tailscale                -> tailscale
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390759528-05:00 ok:   source ok  installer socat                    -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390762188-05:00 ok:   source ok  installer kmod                     -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390764868-05:00 ok:   source ok  converged mender-client4           -> mender
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390767568-05:00 ok:   source ok  converged mender-flash             -> mender
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390770318-05:00 ok:   source ok  converged chrony                   -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390774168-05:00 ok:   source ok  converged nftables                 -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390776938-05:00 ok:   source ok  converged vault                    -> hashicorp
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390779708-05:00 ok:   source ok  converged openssh-server           -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390782358-05:00 ok:   source ok  converged rclone                   -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390784988-05:00 ok:   source ok  converged prometheus-node-exporter -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390787778-05:00 ok:   source ok  converged vector                   -> vector
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390790458-05:00 ok:   source ok  converged tailscale                -> tailscale
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390793228-05:00 ok:   source ok  converged docker-ce                -> docker
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390795948-05:00 ok:   source ok  converged docker-ce-cli            -> docker
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390798668-05:00 ok:   source ok  converged containerd.io            -> docker
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390801368-05:00 ok:   source ok  converged docker-compose-plugin    -> docker
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390804078-05:00 ok:   source ok  converged fwupd                    -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390806798-05:00 ok:   source ok  converged flashrom                 -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390809488-05:00 ok:   source ok  converged dmidecode                -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390812188-05:00 ok:   source ok  converged intel-microcode          -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390814858-05:00 ok:   source ok  converged thermald                 -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390817518-05:00 ok:   source ok  converged nvme-cli                 -> debian-main
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390820638-05:00 ok:   firmware parity golden == installer (firmware-iwlwifi, firmware-misc-nonfree, firmware-realtek, wireless-regdb)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390823458-05:00 ok:   required present bootdisk  firmware-iwlwifi
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390826168-05:00 ok:   required present bootdisk  firmware-misc-nonfree
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390828888-05:00 ok:   required present bootdisk  firmware-realtek
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390831628-05:00 ok:   required present bootdisk  wireless-regdb
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390834348-05:00 ok:   required present installer firmware-iwlwifi
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390836998-05:00 ok:   required present installer firmware-misc-nonfree
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390839728-05:00 ok:   required present installer firmware-realtek
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390842488-05:00 ok:   required present installer wireless-regdb
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390845858-05:00 warn: orphan map row: `systemd-sysv installer debian-main` matches nothing installed on that surface (stale?)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390848618-05:00 warn: orphan map row: `udev installer debian-main` matches nothing installed on that surface (stale?)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390851308-05:00 warn: orphan map row: `zstd installer debian-main` matches nothing installed on that surface (stale?)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390853968-05:00 warn: orphan map row: `e2fsprogs installer debian-main` matches nothing installed on that surface (stale?)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390856638-05:00 warn: orphan map row: `dosfstools installer debian-main` matches nothing installed on that surface (stale?)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390863698-05:00 warn: orphan map row: `parted installer debian-main` matches nothing installed on that surface (stale?)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390875738-05:00 warn: orphan map row: `util-linux installer debian-main` matches nothing installed on that surface (stale?)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390878848-05:00 warn: orphan map row: `coreutils installer debian-main` matches nothing installed on that surface (stale?)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390881608-05:00 warn: orphan map row: `grub-common installer debian-main` matches nothing installed on that surface (stale?)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390884268-05:00 warn: orphan map row: `grub2-common installer debian-main` matches nothing installed on that surface (stale?)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390886998-05:00 warn: orphan map row: `grub-efi-amd64-bin installer debian-main` matches nothing installed on that surface (stale?)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390889648-05:00 warn: orphan map row: `initramfs-tools installer debian-main` matches nothing installed on that surface (stale?)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390892528-05:00 warn: orphan map row: `linux-image-amd64 installer debian-main` matches nothing installed on that surface (stale?)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390895188-05:00 warn: orphan map row: `rclone converged debian-main` matches nothing installed on that surface (stale?)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390897878-05:00 
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.390900658-05:00 pkg_manifest: reconcile OK (137 checks, 14 warning(s))
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.392733638-05:00 ok:   packages.map reconciles with packages.list + roles + installer build
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.422809937-05:00 edge-rootfs-lint: boundary intact -- rootfs is FORMULA, /data is state, no rendered config baked (#456).
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.425036435-05:00 ok:   rootfs boundary intact: FORMULA immutable, /data state-only, config on /run (edge#456)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.448944285-05:00 edge-bake-ssot-lint: NOTE -- unresolved templated destinations (review by hand; not a failure):
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.448959665-05:00   ? roles/audio_archive/tasks/main.yml: template -> /etc/systemd/system/{{ item.dest }} (templated dest unresolved)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.448965245-05:00   ? roles/mesh/tasks/main.yml: copy -> /etc/systemd/system/{{ item }} (templated dest unresolved)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.448969845-05:00   ? roles/pki/tasks/main.yml: copy -> {{ item.path }} (templated dest unresolved)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.448973575-05:00 
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.448977725-05:00 edge-bake-ssot-lint: OK -- 58 rootfs writes all baked or justified (36 overlay-backed, 22 justified exception(s)); no converge-only-unbaked artifact (edge#518).
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.451151234-05:00 ok:   bake-SSOT intact: every rootfs role-write is baked or justified (edge#518)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.526003556-05:00 ok:   tests/bake-ssot-lint.sh passes (the bake-SSOT lint's verdicts hold, edge#518)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.526103896-05:00 ok:   installer-diaglink.service present
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.528187725-05:00 ok:   diaglink: 'set -u' (no set -e -> never aborts)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.531842197-05:00 ok:   diaglink gates on the sm.diag kernel cmdline flag (opt-in)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.535349279-05:00 ok:   diaglink arms kernel netconsole via configfs
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.539128850-05:00 ok:   diaglink forwards the install journal via socat
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.541050601-05:00 ok:   diaglink unit does not gate installer.service
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.546084585-05:00 ok:   build-installer-rootfs wires in socat + kmod + netconsole autoload + diaglink unit
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.547871606-05:00 ok:   grub.cfg has the opt-in installer-diag menuentry
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.551472148-05:00 ok:   default installer entry does not set sm.diag (production install unchanged)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.551512838-05:00 ok:   waveshare receiver present: sm-diag-receiver.py
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.551522188-05:00 ok:   waveshare receiver present: README.md
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.551536008-05:00 ok:   waveshare receiver present: sm-diag-receiver.service
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.586130223-05:00 ok:   sm-diag-receiver.py compiles
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.588796710-05:00 ok:   build-golden leaves $M/var/lib/mender untouched (clear for mender-convert's symlink, #152)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.592611611-05:00 ok:   install-system.sh seeds /data/mender/device_type after formatting /data (#152)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.592714910-05:00 ok:   present: firstboot-devicetype.sh
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.592749050-05:00 ok:   present: storeminder-firstboot-devicetype.service
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.594611311-05:00 ok:   firstboot-devicetype.sh is 'set -u' (never abort boot) (#152)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.596299822-05:00 ok:   firstboot-devicetype ordered Before=mender-updated (marker before first poll) (#152)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.597981484-05:00 ok:   firstboot-devicetype needs only local-fs (/data mount, no network) (#152)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.601484436-05:00 ok:   build-golden bakes firstboot-devicetype.sh + unit (fallback in the golden, #152)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.602515471-05:00 ok:   overlay bakes firstboot-devicetype.sh (byte-identical to the provisioner copy) (#152)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.603406606-05:00 ok:   overlay bakes storeminder-firstboot-devicetype.service (byte-identical) (#152)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.603427556-05:00 ok:   overlay enables storeminder-firstboot-devicetype.service (multi-user.target.wants symlink) (#152)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.605266167-05:00 ok:   edge-golden-smoke gates the device_type plumbing (rootfs symlink layout + fallback, #152)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.607010458-05:00 ok:   group_vars/all declares vault_ready (#176)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.608682690-05:00 ok:   site.yml references vault_ready (Vault-hard roles gated, #176)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.609973903-05:00 ok:   no vault.storeminder.example placeholder in group_vars/ or provisioner/payload/
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.611501865-05:00 ok:   no *.storeminder.example placeholder in group_vars/ or provisioner/payload/
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.615531665-05:00 ok:   keys/fleet-bootstrap-ops.pub is exactly one well-formed ed25519 PUBLIC key (#178)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.618733719-05:00 ok:   build-golden bakes the COMMITTED .pub -> $M/etc/ssh/authorized_keys.d/edge-ops (#178)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.619762564-05:00 ok:   build-golden bakes the sshd AuthorizedKeysFile drop-in (user path first, #170-safe) (#178)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.623385365-05:00 ok:   group_vars/all defaults base_ops_authorized_keys from the SAME committed .pub (converge == bake) (#178)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.625201666-05:00 ok:   edge-golden-smoke gates the baked bootstrap key (runtime gate, #178)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.626404690-05:00 ok:   firstboot-sshkey.sh parses (POSIX sh)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.629956932-05:00 ok:   firstboot-sshkey.sh is 'set -u' never-fatal (#168 contract)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.631553454-05:00 ok:   firstboot-sshkey.sh guards on /data being a real mountpoint
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.633332265-05:00 ok:   firstboot-sshkey.sh generates an ed25519 key on-device
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.633381955-05:00 ok:   overlay present: storeminder-firstboot-sshkey.service
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.634660209-05:00 ok:   firstboot-sshkey ordered Before=ssh.service (key exists when sshd's condition is evaluated)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.635826863-05:00 ok:   firstboot-sshkey ordered After=data.mount (#71/#72 invariant)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.635886962-05:00 ok:   firstboot-sshkey enabled via multi-user.target.wants
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.637067597-05:00 ok:   bootstrap HostKey drop-in points sshd at the /data key (pre-converge window open)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.640293520-05:00 ok:   build-golden bakes firstboot-sshkey + bootstrap HostKey drop-in from the overlay sources (#184)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.644922037-05:00 ok:   ssh.service keeps After=data.mount + OR-form ConditionPathExists over /data + bootstrap keys (#107/edge#221)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.648362880-05:00 ok:   roles/ssh_ca retires the bootstrap HostKey drop-in at converge (single HostKey source) (#184)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.654321380-05:00 ok:   16-...-hostkey.conf lists per-device /data key FIRST, bootstrap fallback second (edge#221)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.655613963-05:00 ok:   no committed OpenSSH private key material (edge#221 key stays in Vault)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.659044946-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-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.661062986-05:00 ok:   roles/ssh_ca removes the baked shared bootstrap key at converge (edge#221)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.665425224-05:00 ok:   edge-golden-smoke gates the baked bootstrap key + names the sunset issue (edge#221/#222)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.666746617-05:00 ok:   firstboot-user.sh parses (POSIX sh)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.670372049-05:00 ok:   firstboot-user.sh is 'set -u' never-fatal (#168 contract)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.672231519-05:00 ok:   firstboot-user.sh creates the operator user (-m -s /bin/bash -G sudo)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.673973430-05:00 ok:   firstboot-user.sh locks the password (no password auth, ever)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.675736762-05:00 ok:   firstboot-user.sh installs the NOPASSWD sudoers drop-in
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.677457833-05:00 ok:   firstboot-user.sh visudo-validates the drop-in BEFORE install (bad sudoers bricks sudo)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.677502653-05:00 ok:   overlay present: storeminder-firstboot-user.service
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.678632767-05:00 ok:   firstboot-user ordered Before=ssh.service (user exists for the first login attempt)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.679865831-05:00 ok:   firstboot-user needs only local-fs (no network dependency)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.679886651-05:00 ok:   firstboot-user enabled via multi-user.target.wants
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.681635952-05:00 ok:   user-data.tmpl keeps the users: block (harmless double-set where cloud-init runs)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.682875096-05:00 ok:   user-data.tmpl documents the users: block as dead on installed boxes (#229)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.809186239-05:00 ok:   tests/firstboot-user.sh passes (operator-user contract, #229)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.811014780-05:00 ok:   site.yml includes tasks/targeting-groups.yml (site_*/role_* mapping, #247)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.811044619-05:00 ok:   tasks/targeting-groups.yml present
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.812897220-05:00 ok:   group_vars/all defines site_marker_path (hermetic-testable lookups, #247)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.812959670-05:00 ok:   group_vars/site_lab demo override committed (living proof of the convention, #247)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.812976460-05:00 ok:   tests/site-role-groups.sh present (behaviour gate runs in edge-selftest-lint, #247)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.815803755-05:00 ok:   requirements.yml collection versions are exact pins (#182)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.818490792-05:00 ok:   requirements.lock entries are well-formed (name + exact version + sha256)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.825326177-05:00 ok:   requirements.yml and requirements.lock agree 1:1 (6 collections)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.832863009-05:00 ok:   build-golden vendors requirements.lock collections into the rootfs (#182)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.834636800-05:00 ok:   build-golden sha256-verifies fetched collection tarballs (#182)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.836599091-05:00 ok:   build-golden never points 'ansible-galaxy install -r' at the proxy (#156)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.838290752-05:00 ok:   ansible.cfg collections_paths includes /usr/share/ansible/collections (#182)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.842044083-05:00 ok:   edge-golden-smoke gates the vendored collections against requirements.lock (#182)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.842112163-05:00 ok:   present: mesh-rejoin.sh
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.842140323-05:00 ok:   present: storeminder-mesh-rejoin.service
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.842151733-05:00 ok:   present: storeminder-mesh-rejoin.timer
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.843388856-05:00 ok:   mesh-rejoin.sh parses
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.845121608-05:00 ok:   mesh-rejoin.sh is 'set -u' (never fatal) (#166)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.846836209-05:00 ok:   mesh-rejoin bounds 'tailscale up' with --timeout (#135)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.848480461-05:00 ok:   mesh-rejoin 'tailscale up' carries --reset (no 'requires mentioning all') (#469/#283)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.850211312-05:00 ok:   mesh-rejoin 'tailscale up' carries --force-reauth (wedged-session re-register) (#469/#283)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.853925373-05:00 ok:   mesh-rejoin dials real data-plane liveness before trusting Running+IP (#469/#283)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.857550815-05:00 ok:   mesh-rejoin probes control-plane recognition (Health) before trusting Running+IP (#263)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.859381976-05:00 ok:   mesh-rejoin keeps cross-tick stale escalation state (/data marker) (#469/#283)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.861288856-05:00 ok:   mesh-rejoin rate-limits rung-2 re-auth (headscale 0.25 churn guard) (#469/#283)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.863250406-05:00 ok:   mesh-rejoin refuses to logout without a re-join credential (#469/#283)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.867110907-05:00 ok:   mesh-rejoin re-enrolls via the baked enroll client (#166)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.869187596-05:00 ok:   mesh-rejoin re-mints with edge-enroll --force (stale single-use key) (#166)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.871080847-05:00 ok:   mesh-rejoin logs LOUDLY on break-glass use (#166)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.872885188-05:00 ok:   mesh-rejoin leaves the /data break-glass marker (#166)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.874812128-05:00 ok:   mesh-rejoin skips while firstboot-mesh is mid-join (no churn) (#166)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.894333030-05:00 ok:   mesh-rejoin TimeoutStartSec=240 >= budget 195s + 30s margin (#135/#166)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.895966561-05:00 ok:   mesh-rejoin service is timer-activated only (no WantedBy) (#166)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.898263300-05:00 ok:   mesh-rejoin.timer sets OnUnitActiveSec + WantedBy=timers.target (#166)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.899380174-05:00 ok:   mesh-rejoin.timer spreads the fleet (RandomizedDelaySec) (#166)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.901150635-05:00 ok:   mesh-rejoin service orders after /data (RequiresMountsFor) (#83/#166)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.904687197-05:00 ok:   build-golden bakes mesh-rejoin.sh + enables the timer (#166)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.905621743-05:00 ok:   overlay ships mesh-rejoin.sh (byte-identical to the x86 baked copy) (#166)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.906454418-05:00 ok:   overlay ships storeminder-mesh-rejoin.service (byte-identical to the x86 baked copy) (#166)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.907460963-05:00 ok:   overlay ships storeminder-mesh-rejoin.timer (byte-identical to the x86 baked copy) (#166)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.907498333-05:00 ok:   overlay enables storeminder-mesh-rejoin.timer (timers.target.wants symlink) (#166)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.910073680-05:00 ok:   roles/mesh reasserts mesh-rejoin script + units at converge (single source) (#283)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:19.911983771-05:00 ok:   edge-golden-smoke gates the baked mesh re-join (runtime gate, #166)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:27.095968241-05:00 ok:   tests/mesh-rejoin.sh passes (self-heal re-join contract, #166)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:27.101552553-05:00 ok:   build-golden bakes the selftest v2 wrapper + repo snapshot (#191)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:27.103300284-05:00 ok:   build-golden fail-louds on an incomplete selftest snapshot (#191)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:27.106701147-05:00 ok:   edge-golden-smoke gates the baked selftest wrapper + snapshot (#200)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:27.107738192-05:00 ok:   journald drop-in bakes Storage=persistent (storeminder#225)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:27.108793367-05:00 ok:   journald drop-in bakes SystemMaxUse cap (edge#89)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:27.109987951-05:00 ok:   journald drop-in bakes MaxFileSec rotation (edge#89)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:27.111820471-05:00 ok:   edge-golden-smoke checks ownership NUMERICALLY (stat %u/%g, never name resolution) (edge#227)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:27.113706472-05:00 ok:   edge-golden-smoke sweeps the rootfs for uid/gid >= 1000 owners (edge#227)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.107978588-05:00 ok:   tests/pyfixtures/test_golden_smoke_ownership.py passes (uid-10001 bake-class ownership gate, edge#227)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.109744750-05:00 ok:   overlay symlink: /etc/storeminder/site -> /data/identity/site (#243)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.111350181-05:00 ok:   overlay symlink: /etc/storeminder/role -> /data/identity/role (#243)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.112381216-05:00 ok:   firstboot-siterole.sh parses (POSIX sh)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.116076858-05:00 ok:   firstboot-siterole.sh is 'set -u' never-fatal (#168 contract)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.117977708-05:00 ok:   firstboot-siterole.sh reads the payload device-batch.json contract
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.119702590-05:00 ok:   firstboot-siterole.sh guards the /data mountpoint (rootfs-shadow hazard)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.119745549-05:00 ok:   overlay present: storeminder-firstboot-siterole.service
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.120989413-05:00 ok:   firstboot-siterole needs only local-fs (no network dependency)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.122188627-05:00 ok:   firstboot-siterole ordered Before=storeminder-vector-env.service (SM_SITE sees the marker on first boot)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.122215417-05:00 ok:   firstboot-siterole enabled via multi-user.target.wants
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.123934068-05:00 ok:   install-system.sh seeds /data/identity/{site,role} from the payload (#243)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.125591420-05:00 ok:   vector-host-env.sh derives SM_SITE beside SM_HOST (#243)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.127261872-05:00 ok:   baked vector.yaml stamps the site label via ${SM_SITE} (#243)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.129490570-05:00 ok:   edge-golden-smoke gates the baked site/role marker wiring (#243)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.237192830-05:00 ok:   tests/firstboot-siterole.sh passes (site/role marker contract, #243)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.237299689-05:00 ok:   no edge_replication templates in this ref -- lockfile-writability check skipped (edge#404)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.238599633-05:00 ok:   baked chrony sources prefer the internal mesh NTP (edge#314/#454)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.239695877-05:00 ok:   baked chrony sources keep the first-boot pool fallback
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.240859141-05:00 ok:   roles/base sources the baked chrony file (SSOT #367)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.242312214-05:00 ok:   baked apt periodic config disables unattended-upgrade
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.243972656-05:00 ok:   baked mask: apt-daily.timer -> /dev/null (edge#399 pre-converge window closed)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.245797027-05:00 ok:   baked mask: apt-daily-upgrade.timer -> /dev/null (edge#399 pre-converge window closed)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.247703727-05:00 ok:   baked mask: unattended-upgrades.service -> /dev/null (edge#399 pre-converge window closed)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.249257139-05:00 ok:   baked tmpfiles: /data/keys 0770 root:vault-agent (edge#334 steady state)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.250638982-05:00 ok:   baked tmpfiles: /data/provision traversable (0751)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.252459553-05:00 ok:   baked nftables.conf is default-deny (policy drop)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.254121075-05:00 ok:   baked nftables.conf allows ssh on the mesh only
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.254146955-05:00 ok:   nftables.service enabled via baked sysinit.target.wants symlink
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.255456278-05:00 ok:   roles/firewall sources the baked ruleset (SSOT #367)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.255476998-05:00 ok:   no duplicate nftables template (overlay is the single source)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.256697822-05:00 ok:   baked sshd hardening: HostKey /data/keys/ssh_host_ed25519_key
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.257967335-05:00 ok:   baked sshd hardening: PasswordAuthentication no
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.259350098-05:00 ok:   baked sshd hardening: PermitRootLogin no
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.260897221-05:00 ok:   baked sshd hardening: TrustedUserCAKeys /data/keys/trusted-user-ca.pub
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.262264484-05:00 ok:   baked sshd config carries no HostCertificate (pre-cert render, correct)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.263415938-05:00 ok:   firstboot-sshkey stages the TrustedUserCAKeys placeholder (no dangling ref)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.265115810-05:00 ok:   baked vault-agent.hcl is the AppRole steady-state shape (#387)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.267131990-05:00 ok:   baked vault-agent.hcl has EXACTLY one auto_auth method (edge#275)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.268276064-05:00 ok:   baked vault-agent bootstrap gate holds the agent until AppRole creds exist
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.269260009-05:00 ok:   roles/pki removes the bootstrap gate at converge (supersede pattern, #184-style)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.270373773-05:00 ok:   baked vault-agent.service orders on /data (no nofail race)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.270429213-05:00 ok:   vault-agent.service enabled via baked wants symlink
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.270439173-05:00 ok:   baked + enabled: pki-renew-client.timer
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.270443173-05:00 ok:   baked + enabled: pki-renew-sshhost.timer
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.271438068-05:00 ok:   roles/pki sources the baked vault-agent unit (SSOT #367)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.271461778-05:00 ok:   baked ctmpl present: client-cert.ctmpl
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.271475338-05:00 ok:   baked ctmpl present: client-key.ctmpl
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.271484538-05:00 ok:   baked ctmpl present: ssh-host-cert.ctmpl
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.271499038-05:00 ok:   baked ctmpl present: ssh-user-ca.ctmpl
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.272412233-05:00 ok:   client-cert.ctmpl derives the CN at render time (hostname-agnostic, bakeable)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.273429308-05:00 ok:   client-key.ctmpl derives the CN at render time (hostname-agnostic, bakeable)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.276372583-05:00 ok:   client cert+key ctmpl secret calls are byte-identical (dedup -> matched pair)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.277590817-05:00 ok:   client-cert.ctmpl carries no comment lines (comments would leak into the rendered PEM)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.278694811-05:00 ok:   roles/pki sources the baked ctmpl files (SSOT #367)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.279853006-05:00 ok:   vault-agent user baked via sysusers.d (exists before tmpfiles/unit)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.281079409-05:00 ok:   baked docker daemon.json routes Hub pulls through Nexus (storeminder#50)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.282215104-05:00 ok:   roles/runtime sources the baked daemon.json (SSOT #367)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.283948885-05:00 ok:   baked node-exporter args carry the textfile collector dir
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.285074849-05:00 ok:   roles/observability sources the baked node-exporter args (SSOT #367)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.285154339-05:00 ok:   dispatcher base-config.yaml baked (FORMULA defaults for #458)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.316139883-05:00 ok:   base-config.yaml parses as YAML
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.317358187-05:00 ok:   build-golden bakes the plymouth theme + initramfs (edge#348/#454)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.318292783-05:00 ok:   mender-convert.cfg installs the configure add-on (edge#450)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.319630426-05:00 ok:   dispatcher entry symlinked into mender-configure apply-device-config.d
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.321257278-05:00 ok:   post-apply selftest gate symlinked after the render entry (edge#457)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.322329782-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-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.323634226-05:00 ok:   /var/lib/mender-configure symlinked to persistent /data
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.324795090-05:00 ok:   baked tmpfiles creates /data/mender-configure (configure module aborts on symlink-without-dir)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.326002414-05:00 ok:   boot re-render unit runs mender-configure --apply-only (deb ships no boot unit)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.328571051-05:00 ok:   config-apply ordered after data.mount, before the /run-sink consumers
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.329953704-05:00 ok:   config-apply gated on a persisted config (never-configured box skips cleanly)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.330009784-05:00 ok:   config-apply enabled via baked wants symlink
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.331120788-05:00 ok:   smcfgd merges the baked base-config (schema < base < delivered) (edge#454)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.333958654-05:00 ok:   no tests/*.sh sets pipefail (edge#531 gate-on-the-gate)
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.334001764-05:00 
[pod/edge-main-validate-sdqj6-lint-pod/step-lint] 2026-08-09T12:18:28.334012544-05:00 edge-image-lint: all invariants hold
[pod/edge-main-validate-sdqj6-lint-pod/prepare] 2026-08-09T12:17:28.544467555-05:00 2026/08/09 17:17:28 Entrypoint initialization
