[BUG] Release physical native-editor CI probe fails after the VM catalog passes #13

Open
opened 2026-09-12 09:22:57 +02:00 by erikinkinen · 0 comments
Owner

Summary

Integration CI run 1553 failed the physical native-editor probe on the release image after its complete 486-scenario VM catalog passed. The earlier development physical and COM1 editor probes passed. The failure prevents completion of the remaining post-image acceptance checks.

Reproduction

Observed once in the prepared CI workspace at Integration fb851108e7373add0da4bc9af3d0aa0bd5b4059f. The workflow builds the runtime release appliance and invokes:

APPLIANCE_NAME=erix-release RUNTIME_CONFIG_PROFILE=release ./scripts/package-appliance.sh
RUNTIME_CONFIG_PROFILE=release ./scripts/build-disk-image.sh erix-release
./tests/native-editor-vm.sh physical out/appliance/erix-release.img

These commands require the CI-prepared pinned component graph and build environment. No new standalone rerun was performed during this audit. A separately triggered later main run 1554 passed the same release-physical probe at 07:15:40 UTC. Its Integration commit has the same source tree, but image digests and inner probe evidence are unavailable through the published job log; that later pass is not a demonstrated fix.

Expected and actual behavior

Expected: all ten editor commands, history navigation, insertion/deletion, wrapped-line edits and the final caret satisfy the existing physical-input and framebuffer assertions.

Actual: the release-physical invocation began at 06:50:05 UTC on 2026-09-12 and failed about 44.2 seconds later with exit status 1:

error: physical interactive probe failed; raw evidence retained at .../native-editor/erix-interactive-physical.1VgvgW

The wrapper takes this path when its inner VM command fails, before its final event-list assertions. The published log does not expose that command's specific failure. Do not attribute the failure to injection, renderer/caret verification or a timeout without the retained inner evidence.

Environment and identity

  • Component repository/revision and Integration source graph: Integration fb851108e7373add0da4bc9af3d0aa0bd5b4059f; resolved kernel 4330175e27718490f06b93098e95e3c1553cb765, rootd ac3c1847af9915164d4a819f5f15e1827884e8b1, exsh 70521817b0c8d907e765b0d8ef8ed1eaa89f67ce, ttyd 62a1ffd8b966f9ffd59c017d9dc83521f9491426.
  • Image profile, digest and build/runtime configuration: runtime release image, private writable test copy; source digest/identity were retained in the runner workspace but not printed. Preserve those original files before comparing a rebuilt image.
  • Hardware or VM, architecture, firmware and toolchain versions: x86_64 QEMU/q35 with one vCPU; installed packages QEMU 1:10.0.11+ds-0+deb13u1 and OVMF 2025.02-8+deb13u1. Exact resolved accelerator, firmware hashes and Rust toolchain are not available in the failing probe's published log.
  • Input/session route and granted authority relevant to reproduction: physical emulated keyboard ingress, physical native-editor profile, no COM1 input injection. Existing 120-second hard, 15-second silence and 10-second per-command limits remain required.
  • Last known working revision, if known: no preceding identical-image passing result established. The separately identified main run above passed this probe without an Integration source-tree change.

Evidence and prior checks

Run 1553, API run 8889, integration job 19124 attempt 1 is terminal failure. Its complete retained job log shows 486/486 catalog scenarios passed, followed by 22 successful post-image workflow steps and the failure at step 23. Eight later workflow steps did not execute, including four independent terminal-mode probes within the final step.

The raw vm.log, physical-input events, serial stream, screenshots and image identity were collected into the runner's CI directory. The Actions artifacts API lists no uploaded artifact for this run; the workflow constructs a tarball without an upload step. Recover or expose these bounded raw files before root-cause diagnosis. Preserve the original failure and all deadlines; no marker relaxation or unchanged retry-to-green is acceptance.

All existing Integration issues were checked; no prior bug issue duplicates this observed failure. The zero-hash fetch and invalid helper-option errors earlier in the log are intentional passing negative fixtures and are unrelated.

Tracking

Related acceptance work: integration#6, integration#5, integration#11.

Regression closure requires exact source/image-bound release physical and COM1 editor observations, preserved raw failure evidence, and completion of the remaining post-image checks. A catalog-only pass does not close this defect.

## Summary Integration CI run [1553](https://git.erikinkinen.fi/erix/integration/actions/runs/1553) failed the physical native-editor probe on the release image after its complete 486-scenario VM catalog passed. The earlier development physical and COM1 editor probes passed. The failure prevents completion of the remaining post-image acceptance checks. ## Reproduction Observed once in the prepared CI workspace at Integration `fb851108e7373add0da4bc9af3d0aa0bd5b4059f`. The workflow builds the runtime release appliance and invokes: ```sh APPLIANCE_NAME=erix-release RUNTIME_CONFIG_PROFILE=release ./scripts/package-appliance.sh RUNTIME_CONFIG_PROFILE=release ./scripts/build-disk-image.sh erix-release ./tests/native-editor-vm.sh physical out/appliance/erix-release.img ``` These commands require the CI-prepared pinned component graph and build environment. No new standalone rerun was performed during this audit. A separately triggered later main run [1554](https://git.erikinkinen.fi/erix/integration/actions/runs/1554) passed the same release-physical probe at 07:15:40 UTC. Its Integration commit has the same source tree, but image digests and inner probe evidence are unavailable through the published job log; that later pass is not a demonstrated fix. ## Expected and actual behavior Expected: all ten editor commands, history navigation, insertion/deletion, wrapped-line edits and the final caret satisfy the existing physical-input and framebuffer assertions. Actual: the release-physical invocation began at 06:50:05 UTC on 2026-09-12 and failed about 44.2 seconds later with exit status 1: ```text error: physical interactive probe failed; raw evidence retained at .../native-editor/erix-interactive-physical.1VgvgW ``` The wrapper takes this path when its inner VM command fails, before its final event-list assertions. The published log does not expose that command's specific failure. Do not attribute the failure to injection, renderer/caret verification or a timeout without the retained inner evidence. ## Environment and identity - Component repository/revision and Integration source graph: Integration `fb851108e7373add0da4bc9af3d0aa0bd5b4059f`; resolved kernel `4330175e27718490f06b93098e95e3c1553cb765`, rootd `ac3c1847af9915164d4a819f5f15e1827884e8b1`, exsh `70521817b0c8d907e765b0d8ef8ed1eaa89f67ce`, ttyd `62a1ffd8b966f9ffd59c017d9dc83521f9491426`. - Image profile, digest and build/runtime configuration: runtime release image, private writable test copy; source digest/identity were retained in the runner workspace but not printed. Preserve those original files before comparing a rebuilt image. - Hardware or VM, architecture, firmware and toolchain versions: x86_64 QEMU/q35 with one vCPU; installed packages QEMU `1:10.0.11+ds-0+deb13u1` and OVMF `2025.02-8+deb13u1`. Exact resolved accelerator, firmware hashes and Rust toolchain are not available in the failing probe's published log. - Input/session route and granted authority relevant to reproduction: physical emulated keyboard ingress, physical native-editor profile, no COM1 input injection. Existing 120-second hard, 15-second silence and 10-second per-command limits remain required. - Last known working revision, if known: no preceding identical-image passing result established. The separately identified main run above passed this probe without an Integration source-tree change. ## Evidence and prior checks Run 1553, API run 8889, integration job 19124 attempt 1 is terminal failure. Its complete retained job log shows 486/486 catalog scenarios passed, followed by 22 successful post-image workflow steps and the failure at step 23. Eight later workflow steps did not execute, including four independent terminal-mode probes within the final step. The raw `vm.log`, physical-input events, serial stream, screenshots and image identity were collected into the runner's CI directory. The Actions artifacts API lists no uploaded artifact for this run; the workflow constructs a tarball without an upload step. Recover or expose these bounded raw files before root-cause diagnosis. Preserve the original failure and all deadlines; no marker relaxation or unchanged retry-to-green is acceptance. All existing Integration issues were checked; no prior bug issue duplicates this observed failure. The zero-hash fetch and invalid helper-option errors earlier in the log are intentional passing negative fixtures and are unrelated. ## Tracking Related acceptance work: [integration#6](https://git.erikinkinen.fi/erix/integration/issues/6), [integration#5](https://git.erikinkinen.fi/erix/integration/issues/5), [integration#11](https://git.erikinkinen.fi/erix/integration/issues/11). Regression closure requires exact source/image-bound release physical and COM1 editor observations, preserved raw failure evidence, and completion of the remaining post-image checks. A catalog-only pass does not close this defect.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
erix/integration#13
No description provided.