Repository navigation
v4.21.0: 仪表盘全新 UI、账户生命周期管理与凭据安全加固
优化提升计划第 0 期(界面)+ 第 1 期 + 第 2 期,6 条任务线并行开发后合并。
零配置升级承诺:仪表盘默认渲染与 4.20.0 完全一致;除审计日志(minimal,仅元数据)与
健康检查(纯旁路日志)默认开启外,其余新功能全部默认关闭,API 行为不变。
可视化界面(Phase 0–2,21 人日计划的全量前置三期)
- Phase 0(零感知):语义色板 CSS 变量收口(暗色默认视觉逐一对齐不变)、统一空状态与骨架屏、
窄屏宽表横向滚动降级。 - Phase 1(受益):概览页补「今日请求/成本」「活跃账号」卡片;账号卡片登录方式与 5h 额度徽标;
概览页快捷刷新。 - Phase 2(增强):用量表默认折叠的筛选栏 + 列头排序 + 行下钻详情;模型家族徽章;
日志 level/模型/错误码结构化高亮。全部动态内容走 esc() 转义,新增 20 项 spa 测试(65 项前端测试全绿)。
架构(Phase 1 + Phase 2 存储/adapter 部分)
- config.ts 859 → 547 行:OAuth/浏览器登录拆出
auth-browser.ts,SSRF 守卫拆出
security-guard.ts(均 re-export 保持调用方零改动);types 按域拆 5 文件(index.ts 聚合 re-export)。 - usage-store 后端接口化(
UsageStorageBackend,默认 jsonl,文件格式逐字节不变,为 SQLite 预留)。 - adapter.ts 964 行单类 → 组装式 5 模块(reasoning / request-translate / stream-encode /
anthropic-response / usage-extract),92 个 SSE 快照逐字节钉住行为零变化;
快照注入固定模型缓存保证跨环境可复现。 - 明确不做(本轮):upstream Pipeline 编排(D)与路由去重(E)——按架构师建议后置,
需配合绞杀者灰度单独一轮。
新功能(默认关闭 / 仅旁路)
- 通道健康检查(默认 5 分钟探活,仅日志告警,绝不拦截请求):
HEALTH_CHECK_INTERVAL_MS(0 关闭)。 - Webhook 告警(默认关):
WEBHOOK_URL+WEBHOOK_COST_USD/WEBHOOK_ERROR_RATE阈值,
每日每事件一次去重,fire-and-forget 不重试。 - Prompt 版本管理(默认关):
PROMPT_VERSIONS=on启用/api/prompts/*——保存自动快照、
按时间戳回滚(回滚前当前内容同样先快照,历史不丢);目录穿越白名单防护。 - 速率限制(默认关):
RATE_LIMIT_RPM/RATE_LIMIT_TPM,60s 滑动窗口,超限 429 +
Retry-After;错误码复用既有RATE_LIMIT(429),零追加公共契约。 - 模型访问控制(默认关):
MODEL_ALLOWLIST/MODEL_BLOCKLIST,拒绝 403。 - 审计日志(默认 on,minimal):只记 ts/route/model/tokens/status/duration 元数据,
绝不记录消息正文;AUDIT_LOG=off关闭。
修复
- 删除 adapter 拆分暴露的死函数
anthropicImageToWire(拆分前即无调用的 private 方法)。
测试
- 全量 601/602 通过(+188:spa 20、adapter 快照 92、健康检查 12、webhook 18、prompt 11、
限速 13、模型控制 13、审计 10 等新测试);唯一失败为既有环境性用例(本机存在生产 .env)。 tsc --noEmit、eslint零错误;6 分支合并零冲突(按文件域并行隔离)。