Synthetic input & virtual device coverage

mandatory

Tracks which input modalities / virtual-device classes from meta/docs/stack/specs/develop/synthetic-input-and-virtual-devices.kmd § R1 are implemented in the test harness (the `koder-vdev` driver) and on which host tier. Generated tests requiring an unimplemented modality are emitted skipped-with-reason (spec § R4), so this registry is the source of truth for what flows can be exercised end-to-end today.

Status per modality (spec § R1 matrix). Host: C = privileged container, VM = s.khost1 QEMU layer.

Cell Meaning
Driver implemented in koder-vdev, used by ≥1 test
🟡 Driver implemented, not yet wired into a generated test
Not implemented

Coverage

# Modality Driver Host Status
1 Keyboard uinput / wlroots virtual-keyboard C ✅ (koder-vdev uinput; selftest read-back green on s.khost1, KSTACK-180 fatia 1)
2 Pointer (moveclickscroll) uinput / wlroots virtual-pointer C 🟡 (koder-vdev driver done — absrelclickscrollbuttons; not yet wired into a generated test)
3 Drag & drop sequenced pointer + DnD C
4 Touch / multitouch / gesture uinput ABS_MT (protocol B) C ✅ (koder-vdev touch — tapmultitapdrag/parallel-multidrag; selftest BTNTOUCH+ABSMT read-back green on s.khost1, KSTACK-183; spec gesture-tdds.kmd)
5 Stylus / tablet uinput tablet C
6 Microphone in PipeWire virtual source C
7 Webcam photo v4l2loopback (still) C
8 Webcam video v4l2loopback (stream) C
9 USB connect/disconnect QEMU device_add / usbip VM
10 HDMI / monitor hot-plug wlroots headless output / QEMU display C/VM
11 Ethernet cable up/down dummy/veth + carrier C
12 Wi-Fi (scanassocsignal) mac80211_hwsim + hostapd C
13 Bluetooth (pair/connect) BlueZ hci_vhci / btvirt C
14 Battery / power / lid upower test backend / ACPI C/VM
15 Removable media mount virtual USB block + udisks VM

Seed at creation (2026-06-07 with projects/koder-stack#180). Fatia 1 (2026-06-07): koder-vdev exists (products/dev/vdev) with the uinput keyboard (#1 ✅, selftest read-back green on s.khost1) + pointer (#2 driver done) — the real-input trigger that supersedes the debug hook (animation-parity-tdds.kmd § R2.1). Build-out order: rest of the container-friendly drivers (R7 step 1), then the VM layer (step 2). Runs on s.khost1, never the owner's laptop (heavy-work-isolation.kmd).