Twinned from https://github.com/cfsh/ninefold/issues/571 by tools/beads/import_github.py's reconcile pass.
Noticed while consolidating Godot discovery for #566, and explicitly out of scope there.
The same path is overridden by a different variable depending on which tool you are in:
| var | read by |
|---|---|
| GODOT_EXE | probe.py, presubmit.py --doctor |
| GODOT_BIN | f5.py, tools/pr/rebuild_f5.py, tools/release/release.py |
| GODOT_CONSOLE | run_godot_tests.sh |
All three are inventoried in design 001 §5.2 as part of the env surface, so this is known rather than newly discovered — but #566 put the *discovery* in one place (nflib.godot), which makes the three-name override surface the remaining oddity.
Why #566 did not touch it: these live in shell profiles, in a deployed schtasks job and in cron prompts on machines the change cannot see. Collapsing them is a rename with un-versioned state on the far end — exactly the class design 001 §5.2 warns about — so it wants its own migration with a deprecation window (accept the old names, warn, then drop).
⚠️ There is also a real semantic difference to preserve or deliberately resolve, not just a naming one:
f5.py falls through to discovery when its override is set but missing, so a stale profile degrades to "found the real one" rather than "no Godot here".probe.py and rebuild_f5.py trust the override. For probe.py that is deliberate — a probe run is PR evidence, so naming the wrong engine must fail loudly rather than silently succeed against a different build. For rebuild_f5.py it looks incidental.A unification that flattens those into one behaviour would be a behaviour change wearing a rename's clothes.
Unclaimed.
None.
No comments.