diff --git a/docs/rewrite/notes/verification-VR.md b/docs/rewrite/notes/verification-VR.md index 157bcf1..61c1f75 100644 --- a/docs/rewrite/notes/verification-VR.md +++ b/docs/rewrite/notes/verification-VR.md @@ -65,7 +65,9 @@ grep NEEDED` has no `libwayland-client`. Regression: `quick_terminal_layer_surfa - `tests/gtk_replay.rs` (root package, runs the real binary on the current Wayland/X11 session; skips without a display or with `GHOSTTY_SKIP_GTK_REPLAY`): IME flow, paste deny/confirm, OSC 52 write/read ask (+remember), quick terminal layer surface/toggle/autohide/no-autohide, horizontal scroll tab switching. ~45 s total, serialized - (they share the session clipboard). + (they share the session clipboard). The harness sets `RUST_LOG=debug` and + `GHOSTTY_LOG=stderr` for the app so replay assertions and Wayland layer-shell + detection work independently of the default log level and inherited logging settings. - Parser unit tests for the new steps in `debug_input.rs`. ## Notes diff --git a/tests/gtk_replay.rs b/tests/gtk_replay.rs index 26b84ff..41d13d4 100644 --- a/tests/gtk_replay.rs +++ b/tests/gtk_replay.rs @@ -8,6 +8,8 @@ //! //! Skipped (passes) when there is no display or `GHOSTTY_SKIP_GTK_REPLAY` is //! set. The tests share the session clipboard, so they run one at a time. +//! Child processes explicitly enable debug logs on stderr: replay assertions +//! and layer-shell detection must not depend on the user's logging settings. use std::{ path::{Path, PathBuf}, @@ -72,6 +74,9 @@ fn run(script: &str, extra: &[&str], child: &str) -> Run { .args(extra) .args(["-e", "sh", "-c", child]) .env("GHOSTTY_DEBUG_INPUT_SCRIPT", &script_path) + // Replay output is warn-level; Wayland capability detection is debug-level. + .env("RUST_LOG", "debug") + .env("GHOSTTY_LOG", "stderr") .stdin(Stdio::null()) .stdout(Stdio::null()) .stderr(Stdio::piped())