package report import "time" // DashboardData holds all data needed to render the HTML report. type DashboardData struct { GeneratedAt time.Time ProfileName string Date string ShowNav bool Warnings []WarningData RiskLevel string PeakTempC float64 MinNightTempC float64 PoorNightCool bool RiskWindows []RiskWindowData Timeline []TimelineSlotData RoomBudgets []RoomBudgetData CareChecklist []string LLMSummary string LLMDisclaimer string } // WarningData holds a weather warning for display. type WarningData struct { Headline string Severity string Description string Instruction string Onset string Expires string } // RiskWindowData holds a risk window for display. type RiskWindowData struct { StartHour int EndHour int PeakTempC float64 Level string Reason string } // TimelineSlotData holds one hour's data for the timeline. type TimelineSlotData struct { Hour int HourStr string TempC float64 RiskLevel string BudgetStatus string Actions []ActionData } // ActionData holds a single action for display. type ActionData struct { Name string Category string Effort string Impact string Description string } // RoomBudgetData holds a room's heat budget for display. type RoomBudgetData struct { RoomName string InternalGainsW float64 SolarGainW float64 VentGainW float64 TotalGainW float64 TotalGainBTUH float64 ACCapacityBTUH float64 HeadroomBTUH float64 Status string }