#!/usr/bin/env bash
set -euo pipefail
ab(){ npx --yes agent-browser --session issue7568-final --cdp 19470 "$@"; }
inspect(){
 date -u
 ab eval '(async()=>{const c=JSON.parse(await window.desktopBridge.getConnectionCatalog());const out=[];for(const p of c.profiles){const b=await window.desktopBridge.ensureSshEnvironment(p.target,{issuePairingToken:false});const d=await window.desktopBridge.fetchSshEnvironmentDescriptor(b.httpBaseUrl);out.push({connectionId:p.connectionId,environmentId:p.environmentId,descriptor:d.environmentId??d.id,savedTarget:p.target,resolvedTarget:b.target});}return {profiles:out,routeCount:c.profiles.length};})()'
}
inspect
ab find role switch click --name 'Switch off fs-28' --exact
python3 - <<'PY'
from pathlib import Path
import re
p=Path.home()/'.ssh/config';p.write_text(re.sub(r'(?m)^  Port \d+$','  Port 24571',p.read_text()))
p=Path('/tmp/issue-7568-ssh/sshd_config');p.write_text(re.sub(r'(?m)^Port \d+$','Port 24571',p.read_text()))
PY
sudo -n kill -HUP "$(cat /tmp/issue-7568-ssh/sshd.pid)"
ssh -o BatchMode=yes issue-7568-discovered 'printf "changed-port-fixture-ok\n"'
ab find role switch click --name 'Switch on fs-28' --exact
inspect
