feat: add deepseek-harness workbench plugin and console diagnosis API
- console: GET /api/workflows/{id}, /runs/{run_id}, /runs/{run_id}/diagnosis
(journal trace + sanitized bounded log tails, workflow/run pairing enforced)
- workbench/: dsh 宿主插件(7 个工作流工具、中文系统提示词、失败监控器、
本机回环桥接服务)+ 侧边栏面板客户端包(sidebar.footer.action 与
shell.overlay 追加插槽)+ 降级独立面板 + 一键启动脚本
- adapters/browser: 收敛 looks_like_login_url 到共享层,修复
jd_main_image_collector 对 gyxx_flow.accounts 的越层导入
- tests: 新端点覆盖;replay_policy 断言对齐已迁移的 catalog(repeatable)
This commit is contained in:
@@ -20,7 +20,7 @@ from pathlib import Path, PurePosixPath
|
||||
from typing import Any, TextIO
|
||||
from urllib.parse import urlparse
|
||||
|
||||
from gyxx_flow.adapters.browser import BrowserCookieStore
|
||||
from gyxx_flow.adapters.browser import BrowserCookieStore, looks_like_login_url
|
||||
from gyxx_flow.adapters.integration import (
|
||||
RuntimeIntegrationCatalog,
|
||||
_account_cookie_valid,
|
||||
@@ -634,11 +634,7 @@ def _origin_matches_account(
|
||||
|
||||
|
||||
def _looks_like_login_url(url: str) -> bool:
|
||||
parsed = urlparse(str(url))
|
||||
hostname = (parsed.hostname or "").casefold()
|
||||
path = parsed.path.casefold()
|
||||
markers = ("login", "passport", "signin", "sign-in")
|
||||
return any(marker in hostname or marker in path for marker in markers)
|
||||
return looks_like_login_url(url)
|
||||
|
||||
|
||||
def _probe_account_page(page: Any, account: Any) -> dict[str, object]:
|
||||
|
||||
Reference in New Issue
Block a user