diff --git a/src/lib/stores/stats.ts b/src/lib/stores/stats.ts index c48453a..030b6f5 100644 --- a/src/lib/stores/stats.ts +++ b/src/lib/stores/stats.ts @@ -2,6 +2,7 @@ import { writable, derived } from "svelte/store"; import { listen } from "@tauri-apps/api/event"; import { invoke } from "@tauri-apps/api/core"; import { costTrackingStore } from "./costTracking"; +import { configStore } from "./config"; export type ContextWarning = "moderate" | "high" | "critical"; export type BudgetType = "token" | "cost"; @@ -133,7 +134,7 @@ export function formatTokenCount(tokens: number): string { } // Derived store for formatted display values -export const formattedStats = derived(stats, ($stats) => { +export const formattedStats = derived([stats, configStore.config], ([$stats, $config]) => { const formatNumber = (num: number) => num.toLocaleString(); const formatCost = (cost: number) => `$${cost.toFixed(4)}`; const formatDuration = (seconds: number) => { @@ -164,6 +165,9 @@ export const formattedStats = derived(stats, ($stats) => { })); }; + // Use the model from stats if available, otherwise fall back to the configured model + const currentModel = $stats.model ?? $config.model ?? "No model selected"; + return { totalTokens: formatNumber($stats.total_input_tokens + $stats.total_output_tokens), totalInputTokens: formatNumber($stats.total_input_tokens), @@ -173,7 +177,7 @@ export const formattedStats = derived(stats, ($stats) => { sessionInputTokens: formatNumber($stats.session_input_tokens), sessionOutputTokens: formatNumber($stats.session_output_tokens), sessionCost: formatCost($stats.session_cost_usd), - model: $stats.model || "No model selected", + model: currentModel, // New formatted fields messagesTotal: formatNumber($stats.messages_exchanged),