@@ -50,9 +50,6 @@ export async function scanUsage(
5050 const endTime = performance . now ( ) ;
5151 scanResult . stats . duration = ( endTime - startTime ) / 1000 ; // Convert to seconds
5252
53- // Recalculate stats after filtering
54- calculateStats ( scanResult ) ;
55-
5653 // If user explicitly passed --example flag, but the file doesn't exist:
5754 if ( printMissingExample ( opts ) ) {
5855 return { exitWithError : true } ;
@@ -128,6 +125,9 @@ export async function scanUsage(
128125 }
129126 }
130127
128+ // Recalculate stats after filtering
129+ calculateStats ( scanResult ) ;
130+
131131 // JSON output
132132 if ( opts . json ) {
133133 const jsonOutput = createJsonOutput (
@@ -237,10 +237,25 @@ function calculateStats(scanResult: ScanResult): ScanResult {
237237 scanResult . used . map ( ( u : EnvUsage ) => u . variable ) ,
238238 ) . size ;
239239
240+ const warningsCount =
241+ ( scanResult . frameworkWarnings ?. length ?? 0 ) +
242+ ( scanResult . exampleWarnings ?. length ?? 0 ) +
243+ ( scanResult . t3EnvWarnings ?. length ?? 0 ) +
244+ ( scanResult . logged ?. length ?? 0 ) +
245+ ( scanResult . uppercaseWarnings ?. length ?? 0 ) +
246+ ( scanResult . expireWarnings ?. length ?? 0 ) +
247+ ( scanResult . inconsistentNamingWarnings ?. length ?? 0 ) +
248+ ( scanResult . secrets ?. length ?? 0 ) +
249+ ( scanResult . missing . length ?? 0 ) +
250+ ( scanResult . unused . length ?? 0 ) +
251+ ( scanResult . duplicates ?. env ?. length ?? 0 ) +
252+ ( scanResult . duplicates ?. example ?. length ?? 0 ) ;
253+
240254 scanResult . stats = {
241255 filesScanned : scanResult . stats . filesScanned ,
242256 totalUsages : scanResult . used . length ,
243257 uniqueVariables,
258+ warningsCount : warningsCount ,
244259 duration : scanResult . stats . duration ,
245260 } ;
246261
0 commit comments