Gopher · Web ↔ Go — live

Booting the web app and the Go phone…
Requester Request · web
gophergo.io/gopher-request.html
Gopher Go app
How it works — there is no server and no fake bridge. The left pane is the live web site — navigate it exactly as a requester would, including the site's own Connect ↔ Request links; the harness re-applies ?pt=1 to whatever page lands there. The right pane is the real Gopher Go prototype. Under that flag each web app publishes window.GWeb — a GReq-shaped view of its own dashboard store — and the Go prototype publishes the __pt* hooks it already had. This page is only the wire between them.

Nothing here is demo data. No seeded requests, no request history, no saved Gophers, no recommended-Gopher inbox, and no pool of fake workers. Every request is one you submitted, and the only Gopher who can ever appear is the real one on the Go phone — a request stays Broadcasting until they actually accept it. What that acceptance then means is decided by the request's own worker-selection mode: under First available the acceptance is the hire; under I'll select my worker it arrives as a candidacy you must Hire. That difference is the single most important thing this playground exists to prove.

Each page keeps its own requests across navigation, so you can leave Request, use Connect, and come back to find your work intact. The Go phone holds jobs from both.
Not yet relayed — the Go app raises these, but the web dashboards have no surface that can receive them, so they are deliberately not faked: no-show timer, dispute, turn-by-turn navigation state, report-a-request, and Refer-Yourself. Cost adjustment is representable (r.pendingAdjustment) and is wired.