fix: verify work during continuously hidden guest intervals
This commit is contained in:
+22
-4
@@ -18,7 +18,10 @@ The smoke test builds a private input helper with an ordinary evdev/pc105 US
|
||||
keyboard map. It boots two tiny counter workloads from separate scratch qcow2
|
||||
disks, connects two fullscreen viewers, and checks reserved switching/recovery,
|
||||
manual USB selection, explicit reconnect and independent QMP lifecycles.
|
||||
Guest memory counters must advance and QEMU PIDs must remain unchanged through
|
||||
After each confirmed workspace switch, the hidden guest is sampled across a
|
||||
half-second interval with no focus changes, switches or reconnects; the check is
|
||||
then repeated with the other guest hidden. `result.json` records both intervals.
|
||||
Guest memory counters must advance and QEMU PIDs remain unchanged through
|
||||
switching. Viewer protocol logs must show no reconnection during switching.
|
||||
A test-only `ToggleKeybinds` action and F12 marker establish native labwc
|
||||
keybinding inhibition before checking the production reserved bindings. Those
|
||||
@@ -28,7 +31,8 @@ extra controls are absent from the production session configuration. See the
|
||||
for native `ToggleKeybinds` behavior.
|
||||
|
||||
USB acceptance checks the actual selector window title, holds the modifiers
|
||||
through opening, releases them inside the modal dialog, then switches again.
|
||||
through opening, releases them inside the modal dialog, then asserts fresh
|
||||
keyboard leave/enter transitions for both Right and Left switches.
|
||||
QEMU's USB device list must stay unchanged without a selection. Both viewer
|
||||
USB filters deny automatic hotplug and connection redirection. This check does
|
||||
not attach a physical USB device or prove guest driver behavior.
|
||||
@@ -38,6 +42,17 @@ forwarding an event to the guest. Upstream keyboard grabs remove the GTK
|
||||
application accelerator group; without this adaptation, the configured USB
|
||||
shortcut reaches the viewer but does not open its selector.
|
||||
|
||||
The pinned labwc 0.20.2 runtime has no documented runtime XWayland-disable
|
||||
option. This native-Wayland probe sets `WLR_XWAYLAND=/bin/false` so no X server
|
||||
is launched, and explicitly disables activation-environment updates. It can
|
||||
still log an occupied X socket while wlroots reserves a display number. Only
|
||||
`[xwayland/sockets.c] Failed to bind socket ... Address already in use` is
|
||||
classified as expected noise in `result.json`; any other compositor `[ERROR]`
|
||||
fails the probe. Full logs remain available. This classification does not
|
||||
suppress viewer errors or compiler/test diagnostics. The viewer build's upstream
|
||||
Meson boolean-check and compiler-warning-option guidance are build noise; the four-test
|
||||
result, compiler errors and process exit status remain the build acceptance gate.
|
||||
|
||||
## Installed guest workflow
|
||||
|
||||
`--iso` is optional. Attach or detach media only while the VM is stopped:
|
||||
@@ -78,8 +93,11 @@ Only `add` reads distribution defaults. Explicit `--network`, `--bridge`,
|
||||
not change. `--defaults PATH` selects another preferences file for development.
|
||||
Missing defaults use developer preferences; unknown or invalid fields fail
|
||||
before creating a profile. Dimensions are integers from 1 to 16384, refresh is
|
||||
an integer from 0 to 1000000 mHz. Nonzero refresh requires the tracked patched
|
||||
QEMU provided by `dev/tools.nix` and distribution packaging.
|
||||
zero for automatic refresh or an integer from 50000 to 255000 mHz, matching
|
||||
the vertical range descriptor limits. This bound does not establish every
|
||||
resolution/refresh combination; pixel-clock and horizontal timing limits are
|
||||
mode-dependent and the verified target remains 1920×1080/144000 mHz. Nonzero
|
||||
refresh requires the tracked patched QEMU provided by `dev/tools.nix` and distribution packaging.
|
||||
|
||||
The patch keeps the requested refresh through frontend resizing and extends
|
||||
EDID monitor ranges to include the generated preferred mode. To verify the
|
||||
|
||||
Reference in New Issue
Block a user