# Changelog ## 0.5.13 - Remove native `title` tooltips from heatmap cells, trend buckets and ring segments, so only the styled floating tooltip appears (no overlapping browser tooltip). ## 0.5.12 - Move the instant-render snapshot cache from `sessionStorage` to `localStorage`, so it survives a DSH restart. - Keep the background refresh and the「更新中…」footer hint. ## 0.5.11 - Render the last statistics instantly from `sessionStorage`, then refresh in the background. - Keep the cached view when a background refresh fails and show a lightweight retry line. - Show「更新中…」in the footer while the background request is running. ## 0.5.10 - Use the theme blue for selected heatmap cells, range buttons, trend crosshair, shaded column, axis label and dots. - Model usage now focuses: click a legend row or ring segment to show only that model;「显示全部」restores all models. - Refresh the injected stylesheet instead of skipping injection, so the loading spinner and new rules appear after hot reload. ## 0.5.9 - Default the panel to the last 7 days instead of 30. - Replace the text loading state with a centered spinner and「加载中」; remove the elapsed-seconds counter. - Highlight the selected heatmap cell and restore the previous one when another is clicked. - Pin a selected day in the trend chart with a solid crosshair, shaded column, bold axis label and larger dots. - Strengthen the selected time-range button and hidden-model legend rows. ## 0.5.8 - Make refresh update the whole page (stats strip, heatmap, trend, models, sessions and footer). - Show a lightweight retry line when refresh or range loading fails; add retry to the initial failure state. - Add token composition (input / output / cache read) to every session ranking row. - Explain the partial historical cost: source (`billing` / `cost-meter`) plus covered days. - Show how many days in the current range have no records. - Persist hidden model legend selections in `localStorage`. - Add native `title` to session titles, enlarge pager touch targets, and count loading seconds. - Add a cross-midnight test to keep local-day bucketing stable. ## 0.5.7 - Cache the merged session data in memory; when no session file changed, repeat API requests skip the merge step (about 35ms instead of seconds). - Cache the legacy billing / ledger merge by file mtime, and reset `cost` when those files disappear. - Warm up the scan 2s after host start instead of 15s. ## 0.5.6 - Scope the session ranking to the selected range (7 days / 30 days / all). - Add「查看全部」to the session card: full ranking, 10 rows per page, with previous / next paging. - Expose `sessionsRanking` from the host API; `sessionsTop` remains the first five entries. ## 0.5.5 - Add a spinning「↻」icon and「正在读取…」label to the refresh button while a scan is running. - Raise the centered cold-start message by `10vh` so it sits in the visual center of the panel. ## 0.5.4 - Move the data coverage and today / week / cache-hit summary to the page footer. - Replace the skeleton loading state with a centered「正在统计模型使用」message, so the loading hint no longer sits below tall placeholder blocks. - Keep the footer version notice directly below the summary. ## 0.5.3 - Move the client / host version mismatch notice to the very bottom of the page. - Make the notice subtle and self-explanatory; remove the separate `全部` range warning banner. - Keep refresh and range switching silent while the local scan runs. - Change the cold-start hint to say it may take a few minutes. ## 0.5.2 - Remove the CSV / JSON / PNG export buttons; the dashboard is read-only again. - Remove the local daily budget input and its percentage hint. - Keep the manual refresh button and all host / API behavior unchanged. ## 0.5.1 - Move the hover tooltip to `document.body` so themes that transform/backdrop-filter dialogs (for example Catppuccin glass) cannot trap or clip it. - Add native `title` fallbacks on heatmap cells, trend buckets and model ring segments. - Convert React tooltip content to readable multi-line text for the body-level tooltip. - Keep tooltips above the settings dialog with a dedicated top z-index. ## 0.5.0 - Add `days=all` / `全部` range for the trend and model charts. - Add data coverage (first/last local day) and source counts. - Add today / last-7-days totals and cache-hit rate. - Add session Top 5 (title, tokens, duration). - Add CSV / JSON / PNG export. - Add a local-only daily token budget. - Add model legend toggle, ring/list model filtering, hover crosshair and area fill. - Add theme-aware CSS variables, dark-mode chart palette, mobile horizontal heatmap scroll. - Add loading skeleton and pulse animation. - Move the incremental cache from JSON to SQLite (`session-cache.sqlite`), with JSON fallback/migration. - Add `DSH_HOME` support. - Add host tests for multi-frame zstd parsing and stats calculations. ## 0.4.0 - Rename package to `dsh-token-insight`, visible name to「使用统计」. - Use local DSH sessions + legacy billing/cost-meter data. - Add 5 metric cards, 52-week heatmap, smooth trend chart and model ring. - Add ZCode-style tooltips, model list and AI install guide.