probe.sh hardcodes the window, so layout-dependent bugs cannot be probed nf-llll ← Beads

closed priority 2 task unassigned

Twinned from https://github.com/cfsh/ninefold/issues/524 by tools/beads/import_github.py's reconcile pass.

Hit this chasing #517 today. Filed unclaimed.

What is missing

probe.sh:68 launches Godot with a fixed invocation:

```bash "$exe" --path . --position -9999,-9999 -- "--probe=$script" ```

There is no way to ask for a window size — not from the CLI, not from the probe JSON. Every probe in tools/probes/ therefore runs at whatever project.godot specifies (1920x1080), and that is the only layout any probe has ever exercised.

Why it matters now

Tonapse's layout is size-dependent by design since #453: Auto resolves to split or one-screen based on the viewport, and #439/#455 added scale boosts on top. So the thing most likely to break is the thing the probe suite structurally cannot reach.

Concretely, on #517 — aedanpope reported a play button that does not toggle and a playhead that does not animate, in split screen, on a 1906x807 window. None of it reproduced at 1920x1080. Bypassing probe.sh and invoking Godot directly:

``` $ godot --path . --position -9999,-9999 --resolution 1906x807 -- --probe=<same script>

1920x1080: focus "▶ play pattern" -> @Button@115 then "⏹ stop" OK, PlayheadShown = lit Loop 1906x807: focus "▶ play pattern" -> @Button@38 (!) then "⏹ stop" OK, PlayheadShown = off Song ```

At his size the label resolved to a different button, and pressing it started Song playback instead of Loop. That is the only lead #517 has, and getting it required going around the runner — which also means it cannot be committed as a regression test.

Two consequences, and the second is the sharper one:

Worth considering

Correcting it rather than deleting it because the claim was load-bearing in the wrong direction: it was the stated reason #527 shipped with zero probes using the new key, and left standing it would have deterred the Deck-size probes above indefinitely, on a constraint that does not exist. Caught by ninefold-reviewer on #527.

Not blocking anything today; #517 has its lead. But the next layout bug costs the same afternoon.

Related: #517 (the live case), #453 / #439 / #455 (the size-dependent layout), #514 (gate baseline), #410 (probe DSL).

Dependencies

None.

Comments

No comments.

Add a comment