Commit Graph
14 Commits
Author SHA1 Message Date
Raven Scott f1e98a7edd docs: add CONTRIBUTING.md, CHANGELOG.md, and JSDoc to entire codebase
CI / Build & Test (push) Successful in 2m54s
Add docs/CONTRIBUTING.md covering the build system, dev workflow, all
npm scripts, how to add new native host message types, code style, and
debugging guidance.

Add CHANGELOG.md at the project root documenting all features and fixes
across the 1.0.0 release.

Add JSDoc (@param, @returns) to all previously undocumented exported
functions across 35 JS files:
- native-host/holesail-manager/ (index, virtual-hosts, service-tunnels,
  servers, port-allocator)
- native-host top-level managers (startup, connect-proxy, https-proxy,
  certificate-authority, ssh-manager, rdp-manager)
- extension/background/ (logs, native-messaging, proxy, message-router)
- extension/dashboard/core/ (utils, navigation, init)
- extension/dashboard/ui/ (modal, toast, state-tag)
- extension/dashboard/pages/ (all 10 page files)
- extension/dashboard/refresh.js, events.js
- extension/dashboard/data/hostname-validator.js
- scripts/ (build-host, run-install)
2026-03-01 00:40:53 -05:00
Raven Scott f3cad8f125 fix installer
CI / Build & Test (push) Successful in 3m19s
2026-02-28 19:05:53 -05:00
Raven Scott e5a1fa71fe fix: comprehensive bug fixes, security improvements, and feature additions
CI / Build & Test (push) Successful in 3m21s
Critical fixes:
- Fix wrong registry key (com.bridgeswarm → com.holesail.browser) in
  update-native-manifest-extension-id.ps1 — script was always failing on Windows
- Create missing wrong-domain.html redirect page for .host.test URLs
- Remove options_ui pointing to non-existent options.html from manifest

High-priority bug fixes:
- ssh-manager: track and kill orphaned printf FIFO writer when key auth succeeds
- ssh-manager: fix uncancelled 2000ms fallback password timer (assign to fallbackTimer,
  clear in cancelPasswordWatch); fix null-check before removeAllListeners
- ssh-manager: add 30s Promise.race timeout to holesailInst.ready()
- backup-manager: fix macOS cp -R nesting bug by removing destination before copy;
  add tar -tzf integrity check after archive creation
- host.js: restoreBackup now stops running tunnels before restore and re-starts them
- holesail-manager: fix stale closure bug in virtual host and service tunnel
  error/close handlers (guard with v.holesail === hs check)
- dashboard.js: remove dead setText('dashTabs', ...) call referencing non-existent element

Medium improvements:
- manifest: remove unused storage and scripting permissions; restrict
  web_accessible_resources match from <all_urls> to chrome-extension://*/*
- background.js: fix self-referential browser alias (globalThis.browser ?? chrome);
  add 30s per-request timeout to send(); clean up dashboardTabs on tab close
- holesail-manager: gate saveStateSync stderr log behind DEBUG flag; updateSettings
  now returns requiresRestart:true when proxy port changes; add backupRetention field
- host.js: pass requiresRestart through in updateSettings response
- dashboard.js: remove dead loadSettings() function; add requiresRestart warning toast;
  add chrome.runtime.lastError guards in fetchState and refreshBackups;
  set dynamic version from chrome.runtime.getManifest()
- dashboard.html: remove stray </button> tag; add id="sidebarVersion" for dynamic version
- install.sh/install.ps1: fetch version from RELEASE_BASE/VERSION instead of hardcoded 1.0.0
- install.ps1: add Firefox .xpi download and Firefox registry key
- update-native-manifest-extension-id.sh: add optional Firefox manifest update
- certificate-authority.js: defer RSA key generation to setImmediate to avoid blocking
  startup; expose caReady promise
- host.js: await caReady before starting HTTPS proxy

Documentation:
- REMOTE-DESKTOP.md: correct RDP WebSocket protocol field names to match rdp-manager.js
  (destLeft/destTop/destRight/destBottom, mouseMove/mouseButton/keyEvent/keyUnicode)

Feature additions:
- dashboard.js: add Reconnect button for service tunnels in error/closed state
- https-proxy.js: add WebSocket upgrade handler to support ws:// over *.hole.sail
- connect-proxy.js: add 10s header-read timeout to protect against idle connections
- native-host: add bare-fs as explicit dependency
2026-02-28 19:00:13 -05:00
Raven Scott 49dca45d85 cleanup older downloads
CI / Build & Test (push) Successful in 3m7s
2026-02-28 18:07:35 -05:00
Raven Scott 98f75f01b3 allow upgrades, restore state on reinstall
CI / Build & Test (push) Successful in 2m53s
2026-02-28 17:43:26 -05:00
Raven Scott f8d36e16bb fix(firefox): update install instructions to use about:debugging for regular Firefox, xpi for Dev Edition/Nightly
CI / Build & Test (push) Has been cancelled
Made-with: Cursor
2026-02-27 23:59:57 -05:00
Raven Scott 64e1f3ed5e fix(installer): kill pre-extraction process directly so no orphan native host remains after install
CI / Build & Test (push) Successful in 4m45s
Made-with: Cursor
2026-02-27 21:10:34 -05:00
Raven Scott 3dd88df61f fix(install): reliably wait for addon extraction before signing on macOS
CI / Build & Test (push) Successful in 2m34s
Made-with: Cursor
2026-02-27 19:40:44 -05:00
Raven Scott affc20ef6a fix(install): sign all bare addons after extraction to prevent Gatekeeper blocking
CI / Build & Test (push) Successful in 2m35s
Made-with: Cursor
2026-02-27 19:29:19 -05:00
Raven Scott ef0a273ca5 fix(install): pre-extract and sign bare addons to prevent Gatekeeper blocking
CI / Build & Test (push) Successful in 2m40s
Made-with: Cursor
2026-02-27 19:23:00 -05:00
Raven Scott 59cdeb78f9 fix(install): ad-hoc sign darwin binary after download to satisfy Gatekeeper
CI / Build & Test (push) Successful in 2m38s
Made-with: Cursor
2026-02-27 19:19:15 -05:00
Raven Scott 93b8fc6f2f fix(build): patch bare-build codesign to allow darwin cross-compile from linux
CI / Build & Test (push) Has been cancelled
Made-with: Cursor
2026-02-27 19:17:46 -05:00
Raven Scott e43b48e38c feat: rewrite installers to download from release, remove local install
CI / Build & Test (push) Successful in 1m40s
Made-with: Cursor
2026-02-27 19:10:17 -05:00
Raven Scott d58a0b6e2d first commit
CI / Build & Test (push) Has been cancelled
2026-02-27 18:13:59 -05:00