Skip to content

Codex 本地中转 v1.9.0

Choose a tag to compare

@github-actions github-actions released this 03 Sep 10:00
· 15 commits to main since this release
955760b

Codex Provider Hub v1.9.0

本版本由已验证的功能变更说明自动生成。

2026-09-03-share-card-terminal-restyle

  • 类型:feature
  • 发布级别:minor
  • 目标:按用户提供的设计稿(C:\Users\Kane\Documents\token_report_card.html,"今日 Token 战报"终端风卡片)一比一复刻战报海报:macOS 窗口红绿灯标题栏 + codex — today's-usage.log 路径、$ 日期行、ember 渐变大数字、昨日对比行、输入/输出/缓存三行统计、请求元信息、消耗构成条(第一名供应商)、"最晚一战"页脚与光标块,全部接真实数据。
  • 实际改动:- proxy_static/src/components/ShareCardDialog.vuedrawCard 整体重写为终端风卡片(逻辑 380px 宽 + 28px 阴影边距,3× 缩放导出 PNG):标题栏(红黄绿圆点 + codex — today's-usage.log,服务名取自 controlBase)、$ 日期行、Space Grotesk 46px 渐变大数字(linear-gradient(100deg, #ff5f2e, #ffb020))、▼/▲ 昨日对比(绿)、输入/输出/缓存三行(右对齐数值)、请求元信息、消耗构成条(90° 渐变 #ff5f2e→#c893ff,宽度=第一名占比;多家显示"共 N 家 · X 领跑")、"最晚一战/你正在敲代码"页脚 + 绿色光标块、静态扫描线;绘制前 document.fonts.ready(1.2s 超时竞速);对话按钮换 .share-terminal-button(主按钮 ember 渐变)。
  • proxy_static/src/share-card.js:删除 posterStars/posterLayout(旧星空海报专用),新增 terminalCardTheme()(色板/字体栈/间距单一来源)。
  • proxy_static/src/styles.css:Google Fonts @import(JetBrains Mono + Space Grotesk)、.share-card-canvas-terminal.share-card-actions-terminal.share-terminal-button(.primary)
  • tests/share_card.test.jsposterStars/posterLayout 两个用例替换为 terminalCardTheme 色板与度量断言。
  • tests/local_proxy_vue_ui.test.js:海报用例重写为终端卡断言(画布 436×509、字体、扫描线、渐变、文案、旧布局工具不残留)。
  • proxy_static/dist/:重建(index-CmG0ijTb.js / index-c2vqW2_1.css)。
  • 兼容性:- 纯前端视觉重构;下载文件名、复制行为、空数据提示保持。dist 重建。
  • 风险:1. webfont 离线不可用导致字形差异:回退等宽栈 + 布局不依赖具体字宽(右侧数值统一右对齐)。
  1. 长供应商名/长数字溢出:fitText 截断加省略号。
  2. 对比语义:设计稿箭头与百分比均为主色绿(--good),如实复刻(升/降同为绿);持平/首日用中性灰。
  • 验证结果:- node --test tests/share_card.test.js tests/local_proxy_vue_ui.test.js → 34/34 通过(2026-09-03 17:49)。
  • 真实渲染可视化验证(2026-09-03 17:50):以设计稿同数值的假数据驱动 verbatim 提取的绘制代码,浏览器截图逐项比对——标题栏圆点与路径、$ 2026-09-03 周四、渐变大数字 11,654,341、▼ 77.6% 较昨日全天、三行统计(11.6M/54.62K/10.85M)、构成条 100% baicai copy + 独揽今日全部用量最晚一战 17:00 + 你正在敲代码 光标块全部与设计稿一致,无重叠/溢出。
  • python -m unittest discover -s tests -p "test_*.py" → 555 项全部通过;node --test tests/*.test.js 全部通过;node --check(classic/src/provider_status)、npm run build --prefix proxy_static 全部通过(2026-09-03 17:52)。
  • PR:#80

2026-09-03-usage-trend-chart-gallery

  • 类型:feature
  • 发布级别:minor
  • 目标:把用量趋势视图的单一样式图表升级为多种可切换的图型,视觉与编码规范参考开源 Skill Lieflat Charts(Mono 灰阶保底、诚实编码、结论式摘要、图型按数据形状选择),继续零新增依赖(手写 SVG)。
  • 实际改动:- proxy_static/src/components/UsageTrendView.vue:重写图表区为四图型画廊——新增图型切换按钮组(面积/折线/柱状/热力,持久化 local-proxy-usage-trend-chart,默认 area);新增合计折线 + meanValue 窗口均值虚线;新增 barRects 零基线堆叠柱(输入/输出两档灰度);新增 heatLayout/heatCells/heatLevel 热力矩阵(小时粒度=日期×24 小时、天粒度=星期×周,值=合计 token 五档灰阶,格级 hoverCell 悬停明细);汇总卡第一项改结论式(conclusionLabel = "窗口合计 → N tokens");图例按图型切换并标注编码含义("虚线=窗口均值;y 轴从 0 开始"、"零基线 · 不断轴")。
  • proxy_static/src/styles.css:新增 --usage-mono-1..4/--usage-mono-ink/--usage-heat-0 灰阶变量(明暗两套主题取反方向);图表配色由 teal/amber 彩色系切换为 Mono 单色系;新增图型切换按钮、均值线、堆叠柱、热力格与热力图例样式。
  • tests/local_proxy_vue_ui.test.js:新增 "usage trend view offers selectable mono chart types" 源断言测试(四图型选项与持久化键、meanValue/barRects/heatCells/heatLevel/conclusionLabel 渲染分支、灰阶 CSS 变量与新样式存在)。
  • proxy_static/dist/npm run build 重建(index-DqQoFmZx.js / index-ytPSDIQN.css)。
  • 另安装了用户级 Skill C:\Users\Kane\.agents\skills\lieflat-charts(克隆自上游仓库,仅作为设计规范参考,未复制其代码,仓库内无其任何文件)。
  • 兼容性:- 纯前端展示层变更;旧 localStorage 时间范围键沿用,新增图表类型键缺失时默认 area。dist 重建。
  • 风险:1. 热力矩阵在 all 长跨度(周数多)下格子过小:限制最大列数标签抽稀、格子最小尺寸,超宽时仅标注首末周。
  1. 图型切换与自动刷新竞态:切换只改渲染,不触发重新请求,数据流不变。
  2. 灰阶在暗色主题对比度不足:灰阶变量在暗色主题取反方向(浅→深),图例同步。
  • 验证结果:- node --test tests/local_proxy_vue_ui.test.js → 25/25 通过(含新增 1 项)(2026-09-03 17:35)。
  • 组件脚本 stub 执行几何抽查:天粒度热力 7 格分档单调(levels 4122334)、柱状堆叠底边落在零基线、24 小时热力 24 格单行且列宽越界检查通过(2026-09-03 17:36)。
  • python -m unittest discover -s tests -p "test_*.py" → 555 项全部通过;node --test tests/*.test.js 全部通过;node --check(classic/src/provider_status)、npm ci + npm run build --prefix proxy_static 全部通过(2026-09-03 17:36)。
  • PR:#79