app
Fusion - the Fusion 360 Bridge
Public Made by Adomby adom
Drive Autodesk Fusion 360 from the cloud via Adom Bridge: component libraries, IPC package generation, board layout, exports (STEP/Gerbers/BOM/CPL), fast APS cloud search, and parametric modeling.
← Commit history
dashboard 1.9.157: WSL-aware direct URL
4 files changed
+19−3
dashboard/Cargo.lock+1−1@@ -4,7 +4,7 @@ version = 4 [[package]] name = "fusion-dashboard"-version = "1.9.156"+version = "1.9.157" dependencies = [ "serde_json", ]
dashboard/Cargo.toml+1−1@@ -1,6 +1,6 @@ [package] name = "fusion-dashboard"-version = "1.9.156"+version = "1.9.157" edition = "2021" [dependencies]
dashboard/src/main.rs+16@@ -1222,9 +1222,25 @@ fn handle_conn(app: &Arc<App>, mut stream: TcpStream) { } } +/// True on WSL2, where the guest's port IS a Windows localhost port (mirrored networking).+fn is_wsl() -> bool {+ std::fs::read_to_string("/proc/sys/kernel/osrelease")+ .map(|s| { let l = s.to_lowercase(); l.contains("microsoft") || l.contains("wsl") })+ .unwrap_or(false)+}+ /// The URL a dock webview can ACTUALLY REACH for a given port (issue #37: a webview /// renders OUTSIDE this container, so loopback is only right for a genuinely local run). fn url_for(port: u16) -> String {+ // WSL2 mirrored networking (project-1d / dock-bar thread, 2026-08-23): the WSL port IS a+ // Windows localhost port, so print the DIRECT loopback URL. The /proxy/<port>/ prefix+ // caused /api/health path-join bugs, and bare `localhost` resolves IPv6-first on Windows+ // (measured ~820ms vs 13ms for 127.0.0.1 - it eats the 2000ms health budget). 127.0.0.1+ // is explicit IPv4, direct, and prefix-free. In a CLOUD container the webview renders+ // OUTSIDE this container so loopback is unreachable - keep the VS Code proxy URL (#37).+ if is_wsl() {+ return format!("http://127.0.0.1:{}/", port);+ } std::env::var("VSCODE_PROXY_URI") .ok() .filter(|u| u.contains("{{port}}"))
install.sh+1−1@@ -21,7 +21,7 @@ echo "Installed fusion-bridge skills: $(ls "$PKG_DIR/skills" 2>/dev/null | tr '\ # binary (the three-artifact pattern: bridge zip -> ab, THIS pkg -> container skills + # this download, page media -> wiki). Per the wiki's PKG_VS_RELEASE policy, binaries are # platform-tagged RELEASE assets, never tarball content - the installer fetches them.-DASH_VERSION="1.9.153"+DASH_VERSION="1.9.157" DASH_URL="https://wiki.adom.inc/download/adom/fusion-bridge/${DASH_VERSION}/fusion-dashboard" DEST="" if [ -w /usr/local/bin ]; then DEST=/usr/local/bin