Fix frame deduplication and chronological ordering in time series endpoint

- Fix scraping to wait for display label to change after step forward, preventing duplicate minutesAgo values within same folder
- Add hashset-based deduplication by AbsoluteObservationTime across cache folders
- Filter frames that are too close together (< 4 minutes apart)
- Preserve original folder structure while pruning filtered frames
- Sort folders by earliest frame time to maintain chronological order
- Add validation to detect folder overlaps that could cause out-of-order frames
This commit is contained in:
2025-12-08 01:20:09 +10:00
parent d7bdbdaebb
commit 2d9d45d430
18 changed files with 2734 additions and 366 deletions
+1
View File
@@ -50,6 +50,7 @@ public class CacheUpdateStatus
/// - "Cache is valid, no update needed" - Cache exists and is still fresh
/// - "Cache is stale, update triggered" - Cache exists but expired, update initiated
/// - "No cache exists, update triggered" - No cache found, update initiated
/// - "Cache update already in progress" - An update is currently running
/// </summary>
public string? Message { get; set; }
}