package supply // Valid checks only telemetry. Callers must degrade invalid observations without // rejecting the business run or its archive. func (s Snapshot) Valid() bool { if s.SchemaVersion != 1 || s.ResolutionMS != 1000 || s.Summary.Targets < 0 || s.Summary.Valid < 0 || s.Summary.Valid > s.Summary.Targets || s.Summary.Confirmed < 0 || s.Summary.Confirmed > s.Summary.Targets || s.Summary.Unknown < 0 || s.Summary.Unknown > s.Summary.Targets || s.Summary.TotalMS < 0 || s.Summary.LongestMS < 0 || s.Summary.UnknownMS < 0 || s.Summary.UnconfirmedMS < 0 || s.Summary.ConsumerMS < 0 { return false } seen := make(map[string]bool, len(s.Channels)) for _, c := range s.Channels { if c.Key == "" || seen[c.Key] || c.ValidSamples < 0 || c.MissingSamples < 0 || c.UnknownMS < 0 { return false } seen[c.Key] = true for _, w := range []Wait{c.Startup, c.Confirmed, c.Unconfirmed, c.Consumer} { if w.Count < 0 || w.TotalMS < 0 || w.LongestMS < 0 || w.LongestMS > w.TotalMS { return false } } for _, v := range c.Stages { if v < 0 { return false } } } return len(s.Channels) <= s.Summary.Targets }