← Commit history
install/ad-safety-check.ps1deleted−67@@ -1,67 +0,0 @@-<#- adom-browser-extension :: AD-safety neutralize + verify- -------------------------------------------------------- Run this LOCALLY on the Windows laptop (NOT through adom-desktop) BEFORE re-opening AD, after the- 2026-06-19 port-exhaustion incident. No admin / UAC needed — it only touches HKCU + the user profile.-- It ONLY touches adom-browser-extension artifacts:- - the native-messaging host registration named 'inc.adom.native_browser' (Chrome + Edge)- - the 'native-browser' bridge dir in AD's bridges-cache- - the bridge discovery/pidfiles under ~/.adom/bridges/native-browser- - node.exe processes running native-host.js- Nothing else on the machine is read or modified.-- Removing the host registration + the cached bridge makes the runaway loop PHYSICALLY impossible:- Chrome/Edge can no longer spawn the host, and AD can no longer auto-spawn the bridge.-- Usage (PowerShell, normal window — no admin):- powershell -ExecutionPolicy Bypass -File ad-safety-check.ps1-#>-$ErrorActionPreference = 'SilentlyContinue'-$HostName = 'inc.adom.native_browser'-$pending = 0-Write-Host "=== adom-browser-extension safety check $(Get-Date) ===" -ForegroundColor Cyan--# 1) KILL-SWITCH: native-messaging host registration (Chrome + Edge).-# Without this, connectNative() cannot launch a host -> the loop cannot start.-foreach ($v in 'Google\Chrome','Microsoft\Edge') {- $key = "HKCU:\Software\$v\NativeMessagingHosts\$HostName"- if (Test-Path $key) {- Write-Host "[FOUND] host registration: $key -> removing" -ForegroundColor Yellow- Remove-Item $key -Force- } else { Write-Host "[clean] no host registration under $v" -ForegroundColor Green }-}--# 2) Bridge files in AD's cache (so AD cannot auto-spawn the broken bridge on startup).-$cache = Join-Path $env:LOCALAPPDATA 'Adom Desktop\bridges-cache\native-browser'-if (Test-Path $cache) {- Write-Host "[FOUND] bridge in cache: $cache -> removing" -ForegroundColor Yellow- Remove-Item $cache -Recurse -Force-} else { Write-Host "[clean] no native-browser bridge in bridges-cache" -ForegroundColor Green }--# 3) Discovery file + pidfile (host.json / host.pid).-$bdir = Join-Path $env:USERPROFILE '.adom\bridges\native-browser'-if (Test-Path $bdir) {- Write-Host "[FOUND] discovery dir: $bdir -> removing" -ForegroundColor Yellow- Get-ChildItem $bdir | ForEach-Object { Write-Host " $($_.Name)" }- Remove-Item $bdir -Recurse -Force-} else { Write-Host "[clean] no discovery/pidfiles" -ForegroundColor Green }--# 4) Running looping hosts (node.exe -> native-host.js).-$hosts = Get-CimInstance Win32_Process -Filter "Name='node.exe'" | Where-Object { $_.CommandLine -like '*native-host.js*' }-if ($hosts) {- Write-Host "[FOUND] $($hosts.Count) native-host process(es) running -> killing" -ForegroundColor Yellow- $hosts | ForEach-Object { Write-Host " pid $($_.ProcessId)"; Stop-Process -Id $_.ProcessId -Force }-} else { Write-Host "[clean] no native-host.js processes running" -ForegroundColor Green }--# 5) Socket health (did the machine recover from the WSAENOBUFS / 10055 exhaustion?).-$tcp = (Get-NetTCPConnection).Count-$node = (Get-CimInstance Win32_Process -Filter "Name='node.exe'").Count-Write-Host "[info] total TCP connections: $tcp (healthy idle machine is typically a few hundred)"-Write-Host "[info] total node.exe processes: $node"--Write-Host "`n=== RESULT ===" -ForegroundColor Cyan-Write-Host "All [clean]/[info] -> SAFE to open AD:" -ForegroundColor Green-Write-Host " * Chrome/Edge can no longer spawn the host (registration removed)"-Write-Host " * AD can no longer auto-spawn the bridge (cache removed)"-Write-Host "Open AD, let it reconnect to galliaApril, then tell Claude 'AD is up'."