# Hunter Quant 本机访问桥

## 访问地址

`http://127.0.0.1:8787`

当中国大陆网络直接关闭 `*.pages.dev` 连接时，浏览器只访问本机回环地址；本机桥负责访问公网门户并转发 HTML、静态资源、API 和 WebSocket。云端 `quantpilot-primary` Durable Object 仍独立每秒运行，本机桥不会创建第二个模拟账户。

## 数据路径

浏览器 → `127.0.0.1:8787` → `hunter-quant.pages.dev` → `hunter` Worker → `quantpilot-primary` Durable Object

本机桥同时代理 WebSocket，因此监控页仍可每秒收到模拟账户快照。关闭本机桥只会影响这台电脑的访问，不会停止云端策略或模拟成交。

## 启动方式

在门户项目目录运行 `npm run access:local`。默认端口为 8787；如端口被占用，可通过 `HUNTER_BRIDGE_PORT` 指定其他端口。

## 本次故障与修复

- 现象：`hunter-quant.pages.dev` 在当前网络返回 `ERR_CONNECTION_CLOSED`。
- 直接原因：当前网络到 `*.pages.dev` 的连接被关闭；本机访问桥用于绕过浏览器直连问题。
- 页面加载故障：Worker 曾把 `/assets/`、字体和成果档案路径交给动态页面处理，导致前端脚本返回 404。
- 修复：上述静态路径现已明确交给 Cloudflare 静态资源绑定，HTML、脚本、样式、档案、API 和 WebSocket 均可经本机桥访问。
- 稳定性加固：访问桥会规范化上游的非标准 WebSocket 关闭码，并在异常关闭时安全终止单条连接，避免桥接进程退出。

## 2026-08-01 验收

- 本机首页：HTTP 200，地址 `http://127.0.0.1:8787`。
- 模拟账户 API：返回 `always-on-durable-object`，与门户原有 `quantpilot-primary` 账户一致。
- WebSocket：连续收到 `2026-08-01T04:39:17Z` 和 `2026-08-01T04:39:18Z` 两个秒级快照。
- 浏览器：状态显示“每秒同步”，更新时间由 `12:48:43` 自动变为 `12:48:45`，未再出现“正在连接”。
- 云端版本：Worker `7749de75-4d97-4dbe-a96a-341590ab2a04`。
- 关闭连接回归：客户端连续收到两个快照后主动断开，本机首页和 API 仍均返回 HTTP 200，桥接进程保持运行。
