Exercise ordinary input in private display and retain inventory UI failure diagnosis

This commit is contained in:
2026-09-19 17:06:04 +02:00
parent 5a24eea2f5
commit 5c7719c19c
65 changed files with 9092 additions and 12 deletions
+5
View File
@@ -110,3 +110,8 @@ Both hidden ordinary-game and Workbench runners take `.erri-workbench.lock` befo
After a launched test, the runners stop their own wineserver and fresh process group, then verify that no prefix process remains. For the explicitly owned `/tmp/erri-headless-compat` only, `private_prefix_cleanup.py` can reap adopted `winedevice.exe` children left behind by Proton: exact prefix, same user, installed executable and inode, fixed argv, user-systemd parent and unchanged process start identities must all match. It pins each candidate with a pidfd, rechecks the complete prefix census before each signal, and uses bounded TERM/KILL waits. Unknown or newly arriving processes stop cleanup; no other prefix or parent process is signalled. Other disposable prefixes retain ordinary shutdown and strict idle checking without this orphan-reaping path.
The runner records `cleanup_confirmed`, a structured cleanup report and any errors. Incomplete cleanup fails the run and prevents claiming a sealed stopped source/log snapshot. [The explicit historical cleanup](evidence/private-prefix-cleanup-2026-09-19-1631/review.json) removed nineteen old device helpers missed by the earlier exact-byte prefix check; historical logs are preserved. These are test-environment guarantees, not gameplay or multiplayer acceptance.
### Explicit ordinary keyboard diagnostic
After configuring the existing private prefix/profile, the loose Core/Chat runner accepts `--inspect-headless-display --observe-player-input --exercise-player-input --settle 50`. This explicitly requests only W down/up and two Tab pairs, inside the verified hidden display. The normal runner sends no input without the exercise flag. See [keyboard proof](headless-input-proof.md) for identity/focus checks, supervised key releases and exact evidence limits. Native errors remain failures; the current inventory diagnosis is unresolved. A short explicit `--failure-grace 10` only retains additional diagnostic frames and does not convert a failed run into success.