@vcp-dev/site-edit-bridge 0.10.30 → 0.10.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -0
- package/dist/auto-bootstrap.d.ts +1 -0
- package/dist/auto-bootstrap.js +15 -15
- package/dist/client.d.ts +20 -0
- package/dist/client.js +1 -1
- package/dist/engine-worker.js +2 -2
- package/dist/index.js +10 -10
- package/dist/next-dev-server.js +4 -4
- package/dist/protocol.d.ts +17 -1
- package/dist/protocol.js +27 -0
- package/dist/server.js +2 -2
- package/dist/window-message.d.ts +2 -0
- package/dist/window-message.js +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -26,6 +26,14 @@
|
|
|
26
26
|
|
|
27
27
|
包还发布 `vcp-site-edit-next-dev-server` CLI,供受控 preview 启动流程使用。不要把它替换成浏览器可提交的任意 shell 命令。
|
|
28
28
|
|
|
29
|
+
## 连接时限与心跳
|
|
30
|
+
|
|
31
|
+
浏览器端 `SiteEditWebSocketClient` 的建连到 `auth-ok` 默认 10s 内必须完成,超时以 `SITE_EDIT_BRIDGE_CONNECT_TIMEOUT` 失败;auto-bootstrap 核对进程身份的 health 请求 5s 超时(`SITE_EDIT_BRIDGE_HEALTH_TIMEOUT`)。两者都转成普通失败,走既有的退避重连,不会把同路由同步永久卡在 connecting。
|
|
32
|
+
|
|
33
|
+
连接就绪后每 20s 发送传输层 `ping`,服务端 socket 层在消息入队前直接回 `pong`,不经过引擎,引擎忙不影响判定;期间收到任何帧都算连接存活,10s 内无任何回应以 `SITE_EDIT_BRIDGE_HEARTBEAT_TIMEOUT` 断开并重连。页面不可见时暂停心跳,回到可见时立即检测一次,避免后台计时器节流造成误判。心跳只是数据面流量,不延长沙盒 TTL(已实测)。
|
|
34
|
+
|
|
35
|
+
`bridge-status` 的 `failed`/`reconnecting` 可带可选的 `failureCode`(只含机器可读错误码,不含错误正文),父页据此上报诊断遥测。
|
|
36
|
+
|
|
29
37
|
## 修改回执与预览重载
|
|
30
38
|
|
|
31
39
|
`execute` 的操作 ID 标识一次源码修改。preview server 在进程内保留原请求指纹与执行结果,最多保留 256 个已完成回执;等待中的操作不提前淘汰。WebSocket 的只读 `get-operation-result` 和 frame channel 的 `bridge-get-operation-result` 接受完整原请求,核对站点、快照、操作 ID 与指纹后返回结果;不存在或身份不匹配时返回 `null`,不会再次执行修改。
|
package/dist/auto-bootstrap.d.ts
CHANGED
|
@@ -92,4 +92,5 @@ export declare function startSiteEditFrameRuntime(windowLike?: Window & typeof g
|
|
|
92
92
|
setCurrentDocument?: (document: SiteEditRenderDocument) => void;
|
|
93
93
|
onBridgeRequestError?: (error: unknown, request: BridgeFrameRuntimeRequestBody) => void;
|
|
94
94
|
}): () => void;
|
|
95
|
+
export declare const SITE_EDIT_BRIDGE_HEALTH_TIMEOUT = "SITE_EDIT_BRIDGE_HEALTH_TIMEOUT";
|
|
95
96
|
export {};
|