Repository navigation
spec(tri): dev_view -- which surface shows the course HUD, pod rules - #13341
Conversation
The tri dev flow shows the course HUD in the Browser pane by default. The neko pod from 999-multibots-telegraf is used only when the Docker daemon answers and the owner has allowed heavy runs on the Mac. The pod opens the HUD at host.docker.internal:8027, never publishes the CDP port, is one pod per dev session named browser-<session>, and a health probe past 15 s is WAITING_RESOURCE, not FAIL. Observed: 999's dockerDriver publishes the CDP bridge, binds 8080 on all interfaces and mounts the profile, so a dev pod cannot use it as is. t27c test-report: 12 tests, 12 pass, 0 vacuous. t27b test --check: 12 passed, 1 invariant held. Refs #13251 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…efs #13251) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
PR DashboardGenerated at: 2026-11-08 05:57:10 UTC
Summary
Seal Status
|
…13251) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
PR DashboardGenerated at: 2026-11-08 06:07:59 UTC
Summary
Seal Status
|
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 0d18991. Configure here.
…13251) is_cdp_port() names both the bridge 9223 and Chrome's 9222; mux_ok and port_may_publish refuse either, so no host can publish 9222 by picking it as the WebRTC mux. The CDP test gains that negative control. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
PR DashboardGenerated at: 2026-11-09 22:10:20 UTC
Summary
Seal Status
|

Refs #13251
What
specs/tri/dev_view.t27(moduleTriDevView) holds the rules for which surface thetri devflow uses to show the course HUD. No earlier spec covers this: the fourspecs/automation/browser-*.t27specs andspecs/t27os/browser_ws.t27deal with booting the viewer, restarting the pod, sign-in, tab strips and the DSH bridge.viewer_for,viewer_nowhttp://host.docker.internal:8027/hud_NN.png, because the pod cannot reach the host's 127.0.0.1hud_url127.0.0.1orlocalhost; frame 100 and an unknown viewer give an empty URLport_may_publishbrowser-<session>pod_name,pod_stephealth,health_wordFinding (observed in 999-multibots-telegraf, read only)
pod-driver.tsdockerDriver breaks rule 3 in three ways today:127.0.0.1:0:9223)0:8080)The spec records these as
DOCKER_DRIVER_*constants, anddev_pod_may_use_docker_driver()is false. A dev pod needs a driver option in 999 before it can start.Gates (run in a T27 OS pane, not the Mac shell)
t27c test-report specs/tri/dev_view.t27: 12 tests, 12 pass, FAIL 0, vacuous 0 of 12, 1 invariant provedt27b test specs/tri/dev_view.t27 --check: 12 passed, 0 failed, 59 runtime asserts, 1 invariant held, RC 0Open
host.docker.internal:8027is not verified (POD_REACHES_GATEWAY_VERIFIED = false). No pod was started.Draft. Not for merge by this session.
🤖 Generated with Claude Code
Note
Low Risk
Spec-only addition with tests; behavior and dockerDriver integration are explicitly deferred and documented as unverified.
Overview
Adds
specs/tri/dev_view.t27(TriDevView) as the first spec for wheretri devshows course HUD frames after an iteration: default Claude Browser pane, optional 999 neko pod when Docker responds and the owner allows heavy Mac runs.The spec codifies viewer selection (
viewer_for/viewer_now), HUD URLs on:8127(127.0.0.1vshost.docker.internal), loopback-only publishing of 8080 plus one WebRTC mux with CDP ports forbidden, onebrowser-<session>pod per session, and 15s health semantics where slow start isWAITING_RESOURCE(notFAIL) until the pod is up—then the pane still shows the HUD.It records that today’s
dockerDriverfails rule 3 (dev_pod_may_use_docker_driver()is false) and that pod→gateway reachability is unverified (POD_REACHES_GATEWAY_VERIFIED = false). 12 tests and one invariant exercise the rules; no application or 999 driver changes in this diff.Reviewed by Cursor Bugbot for commit fcaf9cd. Bugbot is set up for automated code reviews on this repo. Configure here.