feat: cloud 门禁/超时/成本/沙箱收敛为单一判定源

- 新增标准库叶子层 timeouts/gates/quota/sandbox_policy:
  审批 3600 与单轮 600 各有名常量与环境覆盖层,已建项
  expires_at 永不重算;目录/控制/合并状态门禁统一判定,
  目录违规无任何覆盖参数;配额取数与比较唯一来源
  (USD 先于无价、命中均为 >=、无价只计 actual 行);
  /tmp 隔离矩阵与失联清理判定纯函数化。
- 调用点委托:server/worker/automations/auto_memory 的
  配额 SQL 与比较、server/tree/marker 的目录解析、
  marker 的控制门、sandbox 的任务容器名正则、两处 300 秒
  陈旧阈值默认值均收敛,别名与错误文案不变。
- 统一两个 P0 口径分歧:服务端无价计数由全部 usd IS NULL
  行改为 actual-only;显式不限额用户在服务端准入亦不受
  无价上限约束(与 worker 运行时一致)。
- 不新增门禁种类与 record 模式(主线无此实现);不改
  skill_seed/skills/SKILL.md;不改 v1.1 契约与分支保护。
- 新增 test_arch_converge.py 18 项。
This commit is contained in:
host committed 2026-11-03 02:49:25 +00:00
1 parent 2720acef46
commit 41e8c98512
16 files changed
+1068 -301

No files matched your search

+3 -1
View File
@@ -67,8 +67,10 @@ import socket
import time
from cloud.db import connect as _db_connect
from cloud.timeouts import WORKER_ALIVE_SECONDS as _WORKER_ALIVE
DEFAULT_ALIVE_SECONDS = 120
# 存活阈值数值收敛到 cloud/timeouts.py(别名保留)。
DEFAULT_ALIVE_SECONDS = _WORKER_ALIVE
# workers 表新增列:(列名, 类型)。pid 用 BIGINT:SQLite 下为
# INTEGER 亲和性,Postgres 下为 8 字节整数,均可容纳进程号;