generated from erix/meta
[BUG] Development serial-input CI probe loses its character device after the VM catalog passes #30
Labels
No labels
bug
ci
docs
duplicate
enhancement
help wanted
invalid
performance
phase-6
question
refactor
security
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
erix/integration#30
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
The positive development-image serial-input probe fails because its QEMU serial character device closes before the injector observes the required command result. Integration PR run 1576 passed all 486 VM catalog scenarios, then failed this later probe. This is a retained CI failure; the reason for the transport closure is not established.
Reproduction
Observed once in Integration run 1576 at
96f1c21848d534683fc077779dd92d332e3e4779, job 19487, attempt 1. The existing workflow builds its development image and invokes:The wrapper first validates physical-input native
ls, then uses a separate development-disk copy for serial input. The latter waits for$, injectsls;/bin/echo SERIAL_INPUT_STATUS$?followed by carriage return, and requires theSERIAL_INPUT_STATUS0result. No fresh reproduction, CI retry or deadline change has been performed; frequency and a minimal deterministic trigger remain unknown.Expected and actual behavior
Expected: the serial probe completes its native command and exact result checks, then stops its owned QEMU through QMP and allows the later workflow gates to run.
Actual at 2026-09-12 17:05:47 UTC:
The step exits 1 and the job/run fails. This message comes from a zero-byte socket receive. It does not show whether the prompt was reached, the command was submitted, or QEMU exited because of a guest, watchdog or other condition. The wrapper checks injector failure before its QEMU timeout/stall/status branches, so absence of those later messages does not establish their underlying status.
Environment and identity
96f1c21848d534683fc077779dd92d332e3e4779; PR event, run 1576/API 9060, job 19487 attempt 1.194f01c61f61de9b9fcd41589c14d556cb6d59e3; its separate runs were still active when this failure was classified.Evidence and prior checks
The terminal run 1576 job log contains the exact real catalog summary
passed=486 failed=0 total=486at 16:58:25.8086840 UTC. Later development disk-rebuild, canonical interactive development VM and physical-input nativelschecks succeeded; nativelsreported 6.373670918866992 seconds. The serial-input failure follows, before later interactive/editor gates. Rust and Markdown jobs succeeded independently.The complete failing job log is 13,136,260 bytes with SHA-256
cf5125e1d12aa4c76ba06a02361e9a66b65ef4cab9a2629551683a775c59c246. The final evidence listing names serial and QEMU-stderr files, but those contents were unavailable; the artifact catalog was empty. No cause, guest failure, host contention or threshold defect is inferred. No new warning diagnostic or real catalog timeout was observed.Current
74f16acc4e0dbac80b437b0f13edcb9b213409d8adds a distinct private runner log and correlated status receipt to each development physical/serial native-launch probe. It emits only allowlisted scalar failure diagnostics, preserves the actual runner exit and existing injector precedence, and stops before the second stage after first-stage failure. Missing, malformed, stale or false-success receipts cannot manufacture success. Thevm_exitfield describes the waited watchdog/timeout/QEMU command status, which may be 124/125 rather than QEMU's direct exit. Existing command markers and 120/45/10-second bounds are unchanged. All 19 host diagnostic tests pass, including the original 13 cases, both-stage success, missing markers, independent status failures and private evidence. The original wrapper fails the new omission control. This establishes diagnostic coverage, not a cause or correction for #30. The signed checkpoint is available in PR #12; current-head Integration CI remains pending. The matching manual is signed and published as Docs0912e7313c0212cd3be6f06fae7d932174ce087ain Docs PR #4: all 44 documentation tests and the complete 2317-page local render pass with clean final warnings/geometry and actual visual review. Both exact-revision push CI 819 and PR CI 820 pass. Each passes 44 unit tests, 55 Markdown files and the complete 2317-page manual. All four terminal job logs are retained (744804 bytes); reference/rerun diagnostics resolve across LaTeX passes, leaving zero final warnings. CI reports a 4050835-byte PDF; its bytes were not downloaded, and no local PDF hash is attributed to CI. This issue remains open until the transport failure has its own cause and runtime evidence.Tracking
This is a different observed gate from the release physical editor failure, catalog quota timeout, other positive filesystem timeouts, and positive host-watchdog fixture failure. Those observations do not establish a shared cause. Preserve this failure and obtain bounded runner-owned status and the selected probe's final evidence before changing runtime behavior or acceptance limits.
Implementation and regression coordination: WIP PR #12.
erikinkinen referenced this issue2026-09-12 19:20:38 +02:00
erikinkinen referenced this issue from erix/docs2026-09-12 20:00:19 +02:00