//! Quick utility to check Parquet file row count use std::fs::File; fn main() -> Result<(), Box> { let args: Vec = std::env::args().collect(); let path = args.get(1).expect("Usage: check_parquet_rows "); let file = File::open(path)?; let builder = parquet::arrow::arrow_reader::ParquetRecordBatchReaderBuilder::try_new(file)?; let metadata = builder.metadata(); let mut total_rows = 0; for i in 0..metadata.num_row_groups() { total_rows += metadata.row_group(i).num_rows(); } println!("{} rows in {}", total_rows, path); println!("Minimum required: 120 rows (50 warmup + 60 lookback + 10 forecast)"); if total_rows < 120 { println!("❌ INSUFFICIENT DATA"); } else { println!("✅ Sufficient data"); } Ok(()) }