完成 WebSocket 与 workspace 架构优化收尾,并修复全量回归阻塞。

本次将握手鉴权、Origin 校验、限流、重连补偿、发送背压与观测字段打通,同时修复 gateway 异常路径与备份清理兼容问题,确保工具历史压缩语义一致并恢复全量测试通过。

Made-with: Cursor
This commit is contained in:
oliver 2026-04-27 20:41:50 +08:00
parent 09836dddfa
commit 7253f6795d
12 changed files with 536 additions and 24 deletions

View file

@ -335,7 +335,7 @@ class OclawGateway:
if isinstance(dispatch, dict):
instruction_text = str(dispatch.get("instruction_text") or "").strip()
if not instruction_text:
return ("generalist", "manager_instruction_missing", None, "", False, None, "", "")
return ("generalist", "manager_instruction_missing", None, "", False, None, "", "", "")
need_wiki_inject: bool | None = None
wiki_query = ""
memory_write_text = ""
@ -766,6 +766,7 @@ class OclawGateway:
ws_received_ms = None
trace_id = new_trace_id()
rid = str(run_id or "").strip() or str(uuid.uuid4())
executed_turn_uuid = ""
ctx = OclawSessionContext(
session_id=msg.session_id,
tenant_id=msg.tenant_id,
@ -926,7 +927,7 @@ class OclawGateway:
user_id=msg.user_id,
role=msg.role,
channel=msg.channel,
text=str(instruction_text or "").strip(),
text=str(manager_instruction_text or "").strip(),
attachments=list(msg.attachments or []),
metadata=(
{