[pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:17.362650911-05:00 [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:17.362688501-05:00 == scripts on PATH + executable == [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:17.364794069-05:00 ok: scripts/edge-selftest.sh: has shebang [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:17.366734677-05:00 warn: scripts/edge-selftest.sh: not tracked by git but +x on disk [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:17.370704064-05:00 ok: scripts/edge-selftest.sh: bash -n clean [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.214096647-05:00 ok: scripts/edge-selftest.sh: shellcheck clean [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.223229044-05:00 ok: scripts/edge-selftest.sh: runs (--help exit 0) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.225352521-05:00 ok: scripts/edge-selftest: has shebang [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.227672228-05:00 warn: scripts/edge-selftest: not tracked by git but +x on disk [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.230697790-05:00 ok: scripts/edge-selftest: bash -n clean [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.349057377-05:00 ok: scripts/edge-selftest: shellcheck clean [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.353794569-05:00 ok: scripts/edge-selftest: runs (--help exit 0) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.356211595-05:00 ok: roles/selftest installs to a PATH dir: /usr/local/sbin/edge-selftest [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.357497667-05:00 ok: roles/selftest copies the script to {{ selftest_bin }} [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.357516507-05:00 [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.357533467-05:00 == console login hooks (profile.d) == [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.360134362-05:00 ok: image/overlay/etc/profile.d/01-edge-console-record.sh: bash -n clean [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.388354557-05:00 ok: image/overlay/etc/profile.d/01-edge-console-record.sh: shellcheck clean [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.389972757-05:00 ok: image/overlay/etc/profile.d/01-edge-console-record.sh: no bare exit (comments excluded) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.391041371-05:00 ok: image/overlay/etc/profile.d/01-edge-console-record.sh: guards non-interactive shells ($-) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.393386827-05:00 ok: image/overlay/etc/profile.d/zz-edge-selftest.sh: bash -n clean [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.437706448-05:00 ok: image/overlay/etc/profile.d/zz-edge-selftest.sh: shellcheck clean [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.439442518-05:00 ok: image/overlay/etc/profile.d/zz-edge-selftest.sh: no bare exit (comments excluded) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.440650861-05:00 ok: image/overlay/etc/profile.d/zz-edge-selftest.sh: guards non-interactive shells ($-) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.442067812-05:00 ok: banner: EDGE_SELFTEST_NOLOGIN opt-out present [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.443239235-05:00 ok: banner: disable-file opt-out present [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.444659247-05:00 ok: recorder: EDGE_CONSOLE_NORECORD opt-out present [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.446112429-05:00 ok: recorder: disable-file opt-out present [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.448389185-05:00 ok: EDGE_CONSOLE_RECORDING marker shared by recorder + banner [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.448444605-05:00 ok: serial console autologin overlay present (image/overlay/etc/systemd/system/serial-getty@ttyS0.service.d/autologin.conf) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.452888139-05:00 ok: banner report dir matches role selftest_report_dir (/var/log/edge-selftest) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:18.466631679-05:00 ok: tests/selftest-login.sh passes [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:47.487996162-05:00 ok: tests/selftest-report-contract.sh passes [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:47.711070403-05:00 ok: tests/selftest-login-pty.sh passes [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:47.872913173-05:00 ok: tests/selftest-wrapper.sh passes [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:47.962323088-05:00 ok: tests/console-record.sh passes [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:48.327715184-05:00 ok: tests/selftest-firmware-fixtures.sh passes [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:29:50.203092369-05:00 ok: tests/selftest-firmware-e2big.sh passes [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:12.430313484-05:00 ok: tests/selftest-converge-defer.sh passes [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:15.269535232-05:00 ok: tests/selftest-verify-keys-exist.sh passes [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:15.361713400-05:00 ok: tests/vault-agent-template-render.sh passes [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:15.362965423-05:00 ok: image/overlay/usr/local/sbin/edge-selftest matches scripts/edge-selftest (v2 wrapper) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:15.364934321-05:00 warn: image/overlay/usr/local/sbin/edge-selftest: no git metadata (CI workspace) but +x on disk [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:15.364952941-05:00 [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:15.364959971-05:00 == ansible packaged + works locally == [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:15.366441742-05:00 ok: image/packages.list declares ansible-core (baked into the golden) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:15.367763685-05:00 ok: image/packages.list declares python3 (baked into the golden) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:15.368986288-05:00 ok: image/packages.list declares git (baked into the golden) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:15.699948232-05:00 ok: ansible present: ansible [core 2.21.2] [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:16.188719028-05:00 ok: ansible executes a module over the local connection [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:16.188743328-05:00 [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:16.188760827-05:00 == playbooks: valid YAML + valid playbook syntax == [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:16.222655328-05:00 ok: YAML parses: selftest.yml [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:16.255992252-05:00 ok: YAML parses: selftest-release-gate.yml [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:16.291808412-05:00 ok: YAML parses: roles/selftest/tasks/main.yml [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:16.332346093-05:00 ok: YAML parses: roles/selftest/tasks/detect.yml [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:16.379723775-05:00 ok: YAML parses: roles/selftest/tasks/native.yml [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:16.428223809-05:00 ok: YAML parses: roles/selftest/defaults/main.yml [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:16.474100870-05:00 ok: YAML parses: roles/selftest/tasks/tiers/boot.yml [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:16.508342018-05:00 ok: YAML parses: roles/selftest/tasks/tiers/net.yml [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:16.549459396-05:00 ok: YAML parses: roles/selftest/tasks/tiers/firmware.yml [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:16.583581996-05:00 ok: YAML parses: roles/selftest/tasks/tiers/dns.yml [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:16.631813232-05:00 ok: YAML parses: roles/selftest/tasks/tiers/mesh.yml [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:16.696925629-05:00 ok: YAML parses: roles/selftest/tasks/tiers/converge.yml [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:16.742015904-05:00 ok: YAML parses: roles/selftest/tasks/tiers/metrics.yml [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:16.786992730-05:00 ok: YAML parses: roles/selftest/tasks/tiers/logs.yml [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:16.825060126-05:00 ok: YAML parses: roles/selftest/tasks/tiers/wifi.yml [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:17.195444388-05:00 warn: yamllint findings (non-fatal): [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:17.204018728-05:00 roles/selftest/tasks/tiers/boot.yml [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:17.204027988-05:00 364:31 error trailing spaces (trailing-spaces) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:17.204032688-05:00 [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:17.650918970-05:00 ok: ansible-playbook --syntax-check OK: selftest.yml [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:17.651041239-05:00 [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:17.651048469-05:00 == site/role targeting groups (#247) == [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:19.576807633-05:00 ok: tests/site-role-groups.sh passes (subset-targeting contract, #247) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:19.576918943-05:00 [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:19.576926043-05:00 == pki first-boot cert dirs (#334) == [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:19.642837955-05:00 ok: tests/pki-firstboot-cert-dirs.sh passes (bare-box cert-render contract, #334) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:19.642861195-05:00 [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:19.642866845-05:00 == pki AppRole steady-state auth switch (#387) == [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:19.730693278-05:00 ok: tests/pki-approle-switch.sh passes (approle steady-state, cert retired, #387) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:19.730716888-05:00 [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:19.730722228-05:00 == selftest boot tier: masked-unit gating (#399) == [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:21.242583596-05:00 ok: tests/selftest-boot-masked-units.sh passes (masked units excluded from failed_units, #399) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:21.242691195-05:00 [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:21.242707775-05:00 == A/B slot completeness markers (edge#520/#484) == [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:21.980201517-05:00 ok: tests/slot-marker-completeness.sh passes (rollback completeness-marker contract, edge#520/#484) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:21.980224917-05:00 [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:21.980243207-05:00 == synchronous first-boot converge (#356) == [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:28.125849678-05:00 ok: tests/firstboot-converge.sh passes (sync converge before readiness, #356) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:28.131782013-05:00 [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:28.131792363-05:00 == active-firmware prompt (#361) == [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:28.152816819-05:00 ok: tests/firmware-prompt.sh passes (prompt reflects active firmware, #361) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:28.152834739-05:00 [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:28.152840479-05:00 == per-container metrics collector (#395) == [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:28.234356020-05:00 ok: tests/container-metrics.sh passes (per-container metrics contract, #395) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:28.234382080-05:00 [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:28.234388249-05:00 == config dispatcher: KNOWLEDGE k/v -> service configs (edge#458, retire-converge #449) == [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:30.858994642-05:00 ok: storeminder-config provisioned from Nexus PyPI (storeminder-config==0.1.6) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:32.789243550-05:00 ok: tests/config-dispatcher.sh passes (#884 shape, cron->OnCalendar, sts creds, forward-skew, validation gate, Mender exit-code contract) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:34.838620775-05:00 ok: tests/selftest-gate.sh passes (post-apply health gate: ordering, rollback teeth, timeout bound, skip semantics; edge#457) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:34.838720085-05:00 [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:34.838727854-05:00 == manifest-driven S3 uploader units (edge#451, retire-converge #449) == [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:35.018027209-05:00 ok: tests/s3-uploader.sh passes (unit wiring, seam agreement, skip ladder, rclone flow, converge yield) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:35.018118578-05:00 [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:35.018124088-05:00 == collector config seam (edge#478, retire-converge #449) == [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:36.256300478-05:00 ok: tests/collector-config.sh passes (config round-trip, skip-when-absent, oneshot no-reload, no-secret-in-world-readable-sink) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:36.256437727-05:00 [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:36.256449317-05:00 == selftest logs round-trip tier (edge#394) == [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:53.310256866-05:00 ok: tests/selftest-logs-roundtrip.sh passes (emit->ship->index->confirm contract, edge#394) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:53.310372375-05:00 [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:30:53.310380475-05:00 == selftest release gate (edge#504) == [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:31:39.843818863-05:00 ok: tests/selftest-release-gate.sh passes (round-trip escalation is a release blocker, edge#504) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:31:39.844280431-05:00 [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:31:39.844289841-05:00 == hermetic obs round-trip fixture (edge#506) == [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:32:28.164588196-05:00 ok: tests/selftest-obs-fixture.sh passes (obs fixture + shape helpers + round-trip wiring, edge#506) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:32:28.164604825-05:00 [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:32:28.164610015-05:00 == setup narrative + failure signatures (edge#421) == [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:32:28.225399636-05:00 ok: tests/setup-log.sh passes (narrative primitive contract, edge#421) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:32:28.424784660-05:00 ok: tests/setup-diagnose.sh passes (failure-signature catalogue, edge#421) [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:32:28.424890759-05:00 [pod/edge-main-validate-mmt9b-selftest-validate-pod/step-selftest-validate] 2026-08-19T18:32:28.424897509-05:00 edge-selftest-lint: all checks passed [pod/edge-main-validate-mmt9b-selftest-validate-pod/prepare] 2026-08-19T18:29:12.168071814-05:00 2026/08/19 23:29:12 Entrypoint initialization [pod/edge-main-validate-mmt9b-selftest-validate-pod/place-scripts] 2026-08-19T18:29:12.926245457-05:00 2026/08/19 23:29:12 Decoded script /tekton/scripts/script-0-g2fnp