SITE_TUNING_RESULTS_2026-09-14.md 6.3 KB

本地调整结果与后续选项

本轮按“备份留档 → 整体审查 → 本地修复 → 验证”的顺序执行。没有连接或部署远程服务器,没有改写实际业务数据库,也没有调用真实上游账号。

调整前备份

主存档:完整备份

指定目录副本:桌面 sub2备份 中的副本

备份说明与恢复注意事项

71,005 个实际文件与 3,162 个链接已逐项回读验证;原始文件共 625,374,688 字节,压缩包 185,027,691 字节。归档包含隐藏文件、源码、已有文档和依赖,内部依赖链接使用相对目标。包内 BACKUP_MANIFEST.json 保存逐文件 SHA-256。两份存档在修改前后均核对为同一 SHA-256:

4C7A328E9A265C668451B198D4EF40DFBE66D17C4F3C4B3FDE39BFC5DD20A71A

这是本地项目文件备份,不包含未读取的服务器数据库。制作过程中未完成的两个临时压缩包已清理,原项目文件没有删除。

本轮已完成

整体审查的原始证据与范围见 调整前审查。

  1. 429 重试与冷却。 显式 Retry-After 被识别为等待边界,账号在该时间前不走普通瞬时 429 的立即重试路径;返回给调用方的等待头保留。无明确等待信号的 OAuth 429 重试同时受次数和总时长约束,默认最多三次同账号重试,按逐步延长并加正向随机偏移的间隔执行。不能把上游要求的 90 秒压成 8 秒,也不能为了塞进截止时间而提前请求。
  2. 冷却只延长。 通用 SetRateLimited 接入已有的原子“仅延长”写入。并发的短冷却不能覆盖较长冷却;明确的手动恢复入口仍可清除限制。
  3. 测试遵守冷却。 智能测试执行前检查账号限流、过载、临时暂停和所选模型冷却。存在限制时延后排队、显示原因与下次检查时间,不发送上游请求。普通连接测试明确提示稍后重试。共享并发准入继续保留。
  4. 成功测试不整体恢复。 普通连接测试成功后仅报告该次观测,不再清除所有模型或其他请求刚写入的限制。需要恢复时使用已有的手动恢复入口。
  5. 排队公平性。 队列按可执行时间、任务 ID 排序。反复延后的小 ID 任务不会持续压住其他已经在等待的任务;延后写入也校验执行租约是否仍归该 worker 所有。
  6. 评分边界修复。 否定、假设、含糊结论及引用行不再因为出现标准数字就放行;JSON 重复答案键保留全部候选,冲突时需复核。单位规则明确分为“不接受单位”“只接受指定单位”“沿用旧题兼容规则”。
  7. 评分版本升级。 当前规则为 v3,仍属于 B 方案。v2 记录继续显示原判定,可以从详情按新规则重评,原始答复、题目快照和原判定保留。没有自动批量改写历史。
  8. 独立完整性控制。 账号编辑新增关闭、仅观察、严格拦截选项,独立于身份与 TLS。已开启保护的 OpenAI OAuth/Setup Token 默认先观察转换差异;mode1 原有强制检查不能通过普通编辑关闭。选项进入调度缓存与测试执行快照,在已接入的 Responses/WSS 路径执行检查,日志不记录请求正文、凭据或对话内容。
  9. 统计诚实性与 CI。 未实现的分组 stats 接口不再伪装成功返回全部零值,改为明确的 501 / GROUP_STATS_UNAVAILABLE;现有分组用量汇总接口仍可使用。数据库专项 CI 纳入 ProtectedProxy、RateLimitObservation 等新增测试前缀。

默认身份策略仍为“初代兼容”。本轮没有把账号切换到其他 TLS/身份策略,也没有给所有账号强加统一的 RPM 数值或自动提高/降低已保存的并发上限。

已完成的验证

验证 结果
前端全量 Vitest 2,054 项通过,0 失败
后端全量单元测试 -tags=unit ./... 19,371 个测试/子测试通过,0 失败,29 跳过
最终独立数据库专项 105 个测试/子测试通过,0 失败、0 跳过
Vue 类型检查与 ESLint 通过
后端构建与前端生产构建 通过,产物写入本机临时目录
浏览器组件验收 冷却原因、下次检查、最近完成结果同时展示;不接受单位时隐藏单位输入;详情显示 legacy + nodejs24 + 仅观察;鹈鹕图片已解码并可显示

数据库专项使用仅绑定 127.0.0.1 的新临时 PostgreSQL 和 relay_tuning_test 数据库,覆盖冷却并发、队列延后/取消/公平性、保护事务、管理权限、评分重评和用户清理。测试后 PostgreSQL 与本地界面验证服务均已停止,临时验证页已关闭。

测试计数含父测试与子测试,不能把专项与全量相加当作独立用例数。浏览器使用真实组件和明确标注的本地合成答复,API 网络调用被阻断;不据此声称已经验证真实上游握手、限流概率或模型质量。

需要后续选择的策略

方面 可选方案 建议
严格 RPM 保持当前软限制;或新增按账号配置的原子硬限制与突发预算 先采集每账号请求频率、429 率和等待时间,再决定数值。原子硬限制尚未实现/启用。
自适应并发 只提示建议降低;或允许在管理员上限内自动降速、缓慢恢复 先采用只提示,避免吞吐在无人知晓时变化。自动调节尚未实现/启用。
完整性拦截 仅观察;或对选定账号开启严格拦截 控制已实现,默认兼容阶段仅观察。严格拦截可能拒绝尚未纳入允许转换的合法请求,应先核对差异。
完整分组统计 用户实际扣费、账面费用、上游账号成本分别展示 需要明确字段口径后再实现完整 stats,不能把占位零值当真。

这些可选项不阻塞本轮已授权的确定性修复。本轮没有发布、提交 Git 基线、删除测试历史或改变结果公开范围;新 JSON 字段复用现有结构,无新增数据库迁移,但正式上线仍需此前的 248_intelligent_assessment_v2.sql 与本轮前后端配套。