feat(cookie-gate): 调度器恢复重跑接线与控制台健康自检

调度器维护循环挂载 CookieGateRecoveryManager,登录态恢复后按原业务日期自动
重跑被阻断工作流并飞书确认;工作流级 required_accounts 声明接入目录解析;
采集器抛 CookieExpiredError 退出 75;控制台新增 /api/health 自检端点与进程内
看门狗,配合 deploy/watchdog 双层保活;安装脚本同步。
This commit is contained in:
wangyunlong committed 2026-10-09 13:45:29 +08:00
1 parent 78ea4641ce
commit 130f06b320
13 files changed
+318 -77

No files matched your search

+3 -3
View File
@@ -103,9 +103,9 @@ def test_project_registry_covers_every_script_with_unique_stable_port() -> None:
)
assert len(scripts.command_ids) == 60
assert len(first.command_ids) == 163
assert len(first.command_ids) == 157
bindings = [first.binding_for(command_id) for command_id in first.command_ids]
assert len({binding.cdp_port for binding in bindings}) == 163
assert len({binding.cdp_port for binding in bindings}) == 157
assert all(22000 <= binding.cdp_port <= 22999 for binding in bindings)
assert all(binding.cdp_url.startswith("http://127.0.0.1:") for binding in bindings)
assert bindings == [second.binding_for(item.script_id) for item in bindings]
@@ -450,7 +450,7 @@ def test_project_accounts_cover_all_configured_platform_login_identities() -> No
assert all(
catalog.bindings_for_account(account.account_id)
for account in catalog.accounts
if account.account_id != "tmall-ozko"
if account.account_id not in {"tmall-ozko", "xingtu"}
)
assert catalog.bindings_for_account("tmall-ozko") == ()
assert catalog.account_for("jd-shop").credential_env_names == (