blob: a01743c90a63cd2b3e723d8046598f18f6075349 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
Use to smoke-test unbox visually without leaving the live labwc session.
---
# /nested-run — nested smoke-test checklist
1. **Build** the needed targets: `ninja -C build` (or unit target + host-bin).
2. **Launch nested:** `./build/packages/host-bin/unbox` — wlroots
auto-detects the parent Wayland session (labwc) and opens unbox as a
window. NEVER test on a bare TTY during development; the nested window
is the sandbox.
3. **Drive it:** note the `WAYLAND_DISPLAY` socket unbox prints, then
`WAYLAND_DISPLAY=<that socket> foot` to open a client inside it.
4. **Verify the ONE thing you came to verify**, then exit. Visual checks:
a single targeted `grim` screenshot of the nested output, read it, done.
Screenshots are token-expensive — never browse around with captures.
5. **Crashes:** reproduce under `build-asan/` FIRST and read the sanitizer
trace before reading any source (see ORCHESTRATOR.md §4).
**Killing sessions:** `pkill -x unbox` ONLY — `pkill -f` matches your
own shell's command line and kills it mid-command (learned the hard
way). Launch detached: `setsid nohup … &` so the session survives the
tool call.
6. **Touch caveat:** nested touch fidelity depends on what labwc forwards.
Final touch/gesture validation only counts on the real seat (slice 9+,
s6 service on seat0).
7. **Parent-keybind hazard (learned the hard way):** labwc intercepts its
own keybinds BEFORE the nested window sees them — and labwc's default
`A-Escape` is **Exit labwc** (kills the whole dev session, terminals,
agents and all). Never bind or instruct `Alt+Escape` nested; unbox's
dev terminate is `Ctrl+Alt+Backspace` (user rule: quit must share NO
keys with parent-session bindings). Check new bindings against
labwc's defaults before testing them nested.
|