Disable ftruncate_flush_race, and file the boot-timeout verdict's blind spot - #576
Conversation
…erdict's blind spot The orchestrator's nightly reproduced the same failure on PR #572 at 8762941, whose diff is a firmware selection change that never touches the VFS. A flaky test is disabled at once, never re-run. That run also showed wait_for_ready (tests/common/qemu.rs:5157) reading the 16550 log only when the ready marker is not the default one: a boot that panics before virtio-console comes up writes only to that file, and the timeout's own panic quotes stdio alone, so the panic line never reached the verdict. Filed as a defect for the harness to fix. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01W6rME2DoqwjcYFStYHHY4j
|
Review of #576 at Attribution. Nothing shows the red is #572's, so this disable does not hide a regression on
Coverage lost. This test was the only runtime witness that BLOCKER NOTE
REMOVE
LAND AFTER NAMED CHANGES |
…ess issue to kind: tooling with a status that agrees with its owner, and reuse the Disconnected arm's uart_log read instead of adding a second one The ftruncate-flush-race issue named a rate and a refutation but nothing owed: it now names the actuator's owner and an exit a machine can check (the capture starts holding when set_len entered the kernel relative to the stall's start). Its two misleading sentences about #572 and about the redlist disable are deleted rather than reworded. The boot-timeout-verdict issue is the development machine, not the OS, so it moves to kind: tooling per issues/README.md, and its status moves to assigned to agree with its "held by the orchestrator" owner line. Its false claim that wait_for_ready reads uart_log only inside the Timeout arm is deleted (the Disconnected arm reads it too), and the paragraph that quotes a source comment verbatim and gives a verdict example the evidence run contradicts is deleted. Its exit condition now points at the Disconnected arm's existing fs::read_to_string(uart_log) read rather than asking for a second reader. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01W6rME2DoqwjcYFStYHHY4j
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01W6rME2DoqwjcYFStYHHY4j
…ing it reworded Line-bounded deletion of the false claim about wait_for_ready's uart_log read left a following sentence whose "that arm" had no antecedent. Problematic prose is deleted, not reworded: the whole sentence goes. The title already states the defect and the Evidence/Exit paragraphs already carry the rest. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01W6rME2DoqwjcYFStYHHY4j
What
Disable
ftruncate_flush_raceinsrc/redlist.rs, behind its existingissue
issues/build/ftruncate-flush-race-reds-intermittently-and-nothing-says-why.md.The issue gains one evidence line: red in the orchestrator's nightly for PR
Every guest boots the UEFI firmware the host's QEMU declares; ovmf/ and aavmf/ go #572 at
87629411with "the truncate did not serialise with the stalledflush". Status is set to
expected-red, assrc/redlist.rs's gaterequires. A flaky test is disabled at once, never re-run. The issue also
now names an owner and a machine-checkable exit condition.
File a harness issue,
issues/build/a-boot-timeout-verdict-quotes-stdio-alone-and-never-the-16550-log.md(
kind: tooling, ownertests/common/qemu.rs, held by the orchestrator).wait_for_readyreads the 16550 log back only when the ready marker is notthe default one, so a boot that panics before virtio-console comes up —
which writes only to the 16550 — times out with a verdict that quotes stdio
alone and never shows the panic. Evidence: the same PR Every guest boots the UEFI firmware the host's QEMU declares; ovmf/ and aavmf/ go #572 control run at
87629411heldEARLY PANIC: panicked at library/alloc/src/alloc.rs:659:9: memory allocation of 4096 bytes failedin its 16550 log while the verdict said only "Boot timed out". Exit: the
timeout verdict quotes the 16550 file's tail the same way the
Disconnectedarm already does, rather than adding a second reader, shownby a test that stages an early panic.
Gates
cargo test --libcargo test --test toyos-build -- --listcargo run -- --known-red ftruncate_flush_race🤖 Generated with Claude Code
https://claude.ai/code/session_01W6rME2DoqwjcYFStYHHY4j