on Valid Times Updated
Called after this layer's timeStrings/timeLongs change (new valid times resolved for the current range): rebuilds the sparse lists, resets staggeredPhase based on useStaggeredDownload, and clears the requested-interval bookkeeping (reqStrings/ reqLongs/reqIsPass2) so stale entries resolved against a previous date range cannot linger and permanently block full-range readiness.