Releases: leolionart/CLIProxyAPI-Dashboard
Releases · leolionart/CLIProxyAPI-Dashboard
Release list
v2.5.1 — fix usage metrics overflow
Features
- None.
Fixes
- Expand database capacity for usage metrics by upgrading cost fields to
NUMERIC(20,6)and request counters toBIGINTacrossusage_snapshots,model_usage, anddaily_stats. - Add migration
0003_expand_numeric_capacity.sqlso existing deployments auto-apply schema updates at collector startup.
Docs
- None.
Chores
- Bump version to
v2.5.1.
v2.5.0 — Skills Panel Redesign
Features
- Redesigned Top Skills — replaced horizontal bar chart with ranked list that handles long skill names and many entries gracefully, with sort tabs (Runs / Tokens / Cost)
- Sortable Recent Runs table — click column headers to sort by any field (asc/desc)
- Project tracking —
project_dirnow included in skill runs query, displayed in Recent Runs table - URL param navigation —
?tab=skillsopens Claude Skills tab directly - Boot sequence animation — loading screen with AI-themed boot messages
Fixes
- Remove duplicate hooks reference from plugin manifest
Chores
- Cleaned up leftover debug screenshots from repo root
- Removed unused custom CSS (
.skill-sort-tabs) in favor of existing design system classes
v2.4.0 — Skill Tracking & Mobile Header Redesign
Features
- Claude Code Skill Tracking: New collector endpoint, DB schema migration, SkillsPanel UI with webhook setup guide and plugin system
Improvements
- Mobile Header Redesign: CSS Grid app bar layout — menu pinned left, logo centered, theme toggle right; controls row with date picker, refresh (icon-only), and updated time
- Light Mode Drawer Fix: Solid white background on mobile (was transparent)
- Mobile Padding: Reduced from 40px to 12px side padding
Fixes
- Order usage legends by cost (descending)
- Sort cost legend by cost value
v2.3.3 — Fix cached/reasoning tokens missing from multi-day view
Fixes
- Collector gate condition drops cached/reasoning tokens:
breakdown_deltaspreviously skipped models whend_req == 0 and d_cost == 0, even ifd_cachedord_reasoningwas positive. This caused cached/reasoning token deltas to be silently lost — most notably on the first snapshot after the column migration where values jumped fromDEFAULT 0to their full cumulative amounts while no new requests occurred in that 5-minute window. Fixed by extending the gate to also pass whend_cached > 0 or d_reasoning > 0. - Backfilled today's daily_stats.breakdown on production DB with correct cached/reasoning values per model (one-time manual fix).
v2.3.2 — Fix token type legend values and tooltip clipping
Fixes
- Token type legend showing all zeros: Legend was reading
cached_tokens/reasoning_tokensfrommodel_usagetable (historical rows haveDEFAULT 0after column migration) instead of fromdaily_stats.breakdownJSONB which the chart bars use. Fixed by computing per-model, per-type totals (tokenTrendTotals) in the sameuseMemopass astokenTrendData, ensuring chart and legend always share the same data source. - Tooltip clipped horizontally on right edge:
allowEscapeViewBoxx: false → trueon the token types chart so the tooltip can escape the chart area and remain fully visible.
v2.3.1 — Fix tooltip clipping in Usage Trends chart
Fixes
- Fix tooltip clipped by sibling cards: Removed
overflow: hiddenfrom.chart-cardand.chart-split-mainso Recharts tooltips can escape container boundaries. Addedz-index: 1baseline +z-index: 10on hover so the active card rises above adjacent cards in stacking order.
v2.3.0 — Auto schema migration runner
Features
- Auto schema migration runner: Collector tự apply pending SQL migrations khi startup — không cần SSH tay khi deploy. Migrations được track trong table
schema_migrations, mỗi file chỉ chạy đúng một lần. - Thêm
collector/migrations/với file0001_add_reasoning_cached_tokens.sql
Fixes
- Fix lỗi
unsupported operand type: Decimal + floatkhi collector đọc giá trị cost/count từ PostgreSQL (psycopg2 trảdecimal.Decimal, code dùng trực tiếp vớifloat)
Style
- Tăng chiều rộng sidebar credential detail lên 35% để khớp với legend các chart card khác
Docs
- Ghi rõ quy tắc schema migration trong
CLAUDE.md
v2.2.4 — Fix mobile tab header layout
Fixes
- Tab header jumps on mobile when switching views — Added
width: 100%to.chart-controlsin the mobile media query so the tab container always fills the full card width. Addedflex: 1to.chart-tabsinside.chart-controlsso multiple tab groups (Models/Token Types and Hour/Day) share the row evenly. Prevents layout shift when the Hour/Day group appears or disappears on tab switch.
v2.2.3 — Fix charts blank on mobile Safari
Fixes
- Charts blank on mobile Safari — Root cause:
align-items: flex-starton column-direction flex container caused Safari to resolvewidth: 100%insidechart-split-mainas 0 (circular dependency). Chrome handled this leniently; Safari followed the spec strictly. Fixed by adding explicitwidth: 100%to.chart-split-mainin the mobile media query. - Removed stale wrapper
<div>around token types AutoWidthChart (leftover from previous refactor).
Background
v2.2.2 replaced ResponsiveContainer with a custom AutoWidthChart using ResizeObserver to fix iOS Safari. That fix worked on Chrome mobile but Safari still showed blank charts due to the flex layout issue described above.
v2.2.2 — Fix charts on iOS Safari
Fixes
- iOS Safari: Bọc tất cả
ResponsiveContainertrong<div style={{ width: '100%', height: N }}>và dùngheight="100%"thay vì truyền số — fix lỗi WebKit không tính được SVG width trong flex container