dragon-iso/installer
Zac Gaetano daa4068784
Some checks failed
CI / build-and-test (push) Successful in 3m23s
Release / build-msi (push) Failing after 12m47s
fix(control-surface): reserve loopback URL ACL at install time
The control surface uses HttpListener (http.sys), which denies prefix
registration to standard users -- on every non-Administrator install the
REST/WebSocket surface died at startup with Access is denied (5), taking
the /ui phone panel and Companion integration with it. The MSI runs
elevated, so it now reserves http://127.0.0.1:9755/ on install and deletes
the reservation on uninstall.

Deliberately NOT the strong wildcard: verified empirically that an idle
http://+:9755/ RESERVATION makes http.sys answer 503 for every request to
the loopback-bound listener without the request ever reaching the app.
The in-app failure guidance suggested exactly that reservation; corrected
to recommend the bound prefix and warn about the stale-wildcard trap.

Verified on a clean install: urlacl present, GET / and /ui and
/participants all 200 as a standard user; reservation removed on
uninstall.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-06 21:46:12 -04:00
..
Dragon-ISO.Installer.wixproj fix(control-surface): reserve loopback URL ACL at install time 2026-07-06 21:46:12 -04:00
Package.wxs fix(control-surface): reserve loopback URL ACL at install time 2026-07-06 21:46:12 -04:00