import { jsonResponse, errorResponse } from '../utils/cors' import { PORT_TERMINAL } from '../config' /** * Proxy GET /api/session-state → terminal server. * Returns session-state + terminal-registry combined, * so external clients (Android widget) get everything in one call. */ export async function handleSessionStateProxy(url: URL): Promise { try { const [stateResp, registryResp] = await Promise.all([ fetch(`http://localhost:${PORT_TERMINAL}/session-state`), fetch(`http://localhost:${PORT_TERMINAL}/terminal-registry`) ]) const stateData = stateResp.ok ? await stateResp.json() : { agents: {} } const registryData = registryResp.ok ? await registryResp.json() : { registry: [] } return jsonResponse({ agents: stateData.agents ?? {}, registry: registryData.registry ?? [] }) } catch (e: any) { return errorResponse(`Failed to reach terminal server: ${e.message}`, 502) } }