feat(ui,server): surface active instance service URLs in About settings (#2669)

Show the running instance's local server URL and tunnel URL (when a
tunnel is active) as labeled, click-to-open buttons on the About page.
/api/system/info now reports the instance port and tunnel URL, resolved
lazily from the tunnel runtime so each Git-worktree instance identifies
itself in the UI without parsing terminal output.

Refs OPE-194
This commit is contained in:
Serhii Dziupin
2026-08-07 00:25:57 +03:00
committed by GitHub
parent 668a6f54fe
commit 834d2edb87
17 changed files with 214 additions and 0 deletions
@@ -67,6 +67,12 @@ export const registerServerStatusRoutes = (app, dependencies) => {
serverStartedAt,
gracefulShutdown,
getHealthSnapshot,
// Port this OpenChamber instance serves on and the tunnel public URL (if
// a tunnel is active). Exposed on /api/system/info so the UI can surface
// the active instance's service URLs. Optional: older wiring omits them
// and the endpoint reports null.
getServerPort = () => null,
getTunnelUrl = () => null,
// Stable server identity (hash of the public signing key — not a secret).
// Exposed on /health and /api/version so a client can verify that a
// learned/probed address belongs to the expected server BEFORE sending its
@@ -356,6 +362,8 @@ export const registerServerStatusRoutes = (app, dependencies) => {
runtime: runtimeName,
pid: process.pid,
startedAt: serverStartedAt,
port: getServerPort(),
tunnelUrl: getTunnelUrl(),
});
});