Repository navigation
Connected dashboard tells users to run ocx start while awaiting hub browser authentication #4206
Description
Client or integration
OpenCodex dashboard
Area
Dashboard
Summary
A local connected-client dashboard awaiting hub browser pairing simultaneously tells the user to run ocx start, even though the local process is running and the client connection is established. Authentication state is presented as a stopped proxy.
This causes users to restart healthy software when the next meaningful action is authorizing the dashboard session.
Reproduction
- Use a connected client with
managementTransport: relayand a healthy hub. - Open
http://127.0.0.1:10100/without an established hub browser session. - Observe the pairing panel and the dashboard error below it.
- Independently confirm
ocx connect status --jsonis connected and both services are reachable.
Observed together in the Korean UI:
- sidebar action: “허브 연결 해제” (disconnect hub);
- panel: “이 대시보드를 허브에 연결” (connect this dashboard to the hub), one-time code field;
- error: “프록시에 연결할 수 없습니다. 실행 중인가요?” followed by an instruction to run
ocx start.
The remote hub tab also displayed an administrator-token prompt together with generic model-load/proxy-running errors. That is supporting UX evidence; this report does not assert that both surfaces have the same underlying authentication defect.
Version
Client 2.50.0; hub 2.51.0, dev 6d3ad12e3fbfd8423f1515a467db4d3349732886.
Operating system
Windows 11 25H2 browser/client; macOS 27.0 hub.
Provider and model
Not provider-specific.
Logs or error output
CLI connection: connected
Local process: healthy
Hub authenticated usage read: HTTP 200
Browser: connect this dashboard to the hub
Browser: cannot connect to proxy; run ocx start
Screenshots and supporting files
gui/src/pages/Dashboard.tsx:29 renders the same cannot-connect/start message whenever useDashboardData exposes an error. gui/src/connect-pairing.ts:33 renders the separate authentication panel.
Acceptance criteria:
- Distinguish local process unavailable, hub unreachable, browser session required/expired, permission denied, and failed data load.
- When pairing is required, show “Local client connected; authorize this dashboard” with one primary recovery action. Do not also suggest starting or stopping the running proxy.
- Preserve and label stale data rather than presenting cached counters as fully current during authentication failure.
- Recheck state after successful authorization; errors must clear without a process restart.
Related: closed #3279 has similar generic offline copy but described an intermittent loopback-origin/session issue in 2.40.0. This report is the connected-client relay/pairing state observed in 2.50.0. #4055 concerns session lifetime; this report does not request changing authentication lifetime or weakening its checks.
Redacted configuration
{"runtimeRole":"client","client":{"managementTransport":"relay"}}Checks
- I searched existing issues and documentation.
- I removed secrets, tokens, account details, request credentials, and personal data.
Activity
lidge-jun commentedon Sep 10, 2026
리뷰 · 우선순위 63 / 80
연결된 클라이언트 대시보드가 허브 브라우저 페어링을 기다리는 중인데, 같은 화면에 “프록시에 연결할 수 없습니다 /
ocx start실행” 메시지를 같이 보여 줍니다. 로컬 프로세스는 살아 있고ocx connect status도 connected 인데, 인증(브라우저 세션) 부족을 프록시 다운으로 오인하게 만듭니다. 사용자는 멀쩡한 소프트웨어를 재시작합니다.현재
devHEAD6101140ff(2.51.0) 에서gui/src/pages/Dashboard.tsx는useDashboardData가 error 이면 EmptyState 로dash.cannotConnect+dash.runStart(ocx start) 만 그립니다.gui/src/connect-pairing.ts는 별도 페어링 패널(코드 입력·relay/direct 문구)입니다. 두 UI 가 동시에 뜨면 “브라우저 세션 필요”와 “프록시 정지”가 한 화면에서 충돌합니다. #4208(페어링 다음 행동 안내)과 같은 UX 묶음으로 볼 수 있습니다.라인 - gui/src/pages/Dashboard.tsx error 분기 — useDashboardData error → 무조건 cannot-connect + ocx start
경로/심볼 - gui/src/connect-pairing.ts ConnectPairingForm — 페어링 패널은 별도; 대시보드 에러와 상태 공유/구분 없음
경로/심볼 - gui/src/i18n(ko 등) dash.cannotConnect / dash.runStart — 프록시 다운 문구만; browser-session-required 문구 없음
경로/심볼 - 재현 — relay connected + /healthz OK 인데도 페어링 패널 아래 ocx start 안내
메인테이너의 판단이 필요한 지점
너의 추천
브라우저 세션(페어링) 필요와 프록시 다운을 구분하세요. 페어링 패널이 보이는 connected-client 흐름에서는
ocx start를 숨기거나 “허브에 이 대시보드를 인증하세요”로 바꾸고, 진짜 listener/proxy 비가용일 때만 start 안내를 쓰세요. #4208 과 UX 배치 가능합니다.이 댓글은 grok-bot이 작성했습니다
lidge-jun commentedon Sep 13, 2026
Resolved on
devby #4378, landed today as part of a 36-pull-request batch.gui/src/pages/Dashboard.tsxrenders nothing whileauthenticationPending, and theocx startguidance now appears only when the proxy is genuinely unreachable (!connected && connectionFailure === "unavailable"), so awaiting hub pairing no longer looks like a dead proxy.Verified against
origin/devat72601a173after the batch landed, rather than from the pull request description. Closing on that evidence; reopen if the behavior does not match on your setup.