@@ -251,7 +251,12 @@ export function getModelUsageSummary(data: CopilotUsageData[]): ModelUsageSummar
251251 }
252252
253253 // Calculate excess cost
254- groupedSummary [ key ] . excessCost = groupedSummary [ key ] . exceedingRequests * groupedSummary [ key ] . multiplier * EXCESS_REQUEST_COST ;
254+ // Free models (multiplier = 0) have no excess cost
255+ if ( groupedSummary [ key ] . multiplier === 0 ) {
256+ groupedSummary [ key ] . excessCost = 0 ;
257+ } else {
258+ groupedSummary [ key ] . excessCost = groupedSummary [ key ] . exceedingRequests * EXCESS_REQUEST_COST ;
259+ }
255260 } ) ;
256261
257262 // Convert to array and sort by total requests (descending)
@@ -396,7 +401,7 @@ export const MODEL_MULTIPLIERS: Record<string, number> = {
396401} ;
397402
398403// Default models that should be grouped
399- export const DEFAULT_MODELS = [ 'GPT-4o' , 'GPT-4.1' , 'gpt-4o-2024-11-20' , 'gpt-4.1-2025-04-14' ] ;
404+ export const DEFAULT_MODELS = [ 'GPT-4o' , 'GPT-4.1' , 'GPT-5 mini' , ' gpt-4o-2024-11-20', 'gpt-4.1-2025-04-14' ] ;
400405
401406function normalizeModelName ( model : string ) : string {
402407 return model . replace ( / ^ A u t o : \s * / , '' ) . trim ( ) ;
@@ -952,13 +957,13 @@ export function getExpectedExcessCost(data: CopilotUsageData[], plan: string = C
952957
953958 const numDays = datesForAverage . length ;
954959
955- // Project extra requests per model over remaining days and apply cost multiplier
960+ // Project extra requests per model over remaining days
956961 Object . entries ( modelTotals ) . forEach ( ( [ model , total ] ) => {
957962 const multiplier = getModelMultiplier ( model ) ;
958963 if ( multiplier === 0 ) return ; // Free models have no cost
959964 const dailyAvg = total / numDays ;
960965 const projectedExtra = dailyAvg * remainingDays ;
961- totalExpectedCost += projectedExtra * multiplier * EXCESS_REQUEST_COST ;
966+ totalExpectedCost += projectedExtra * EXCESS_REQUEST_COST ;
962967 } ) ;
963968 } ) ;
964969
0 commit comments