server: infer archive collected_at from source events

This commit is contained in:
2026-02-28 22:18:47 +03:00
parent 0252264ddc
commit 736b77f055
3 changed files with 90 additions and 1 deletions

View File

@@ -1589,7 +1589,29 @@ func applyArchiveSourceMetadata(result *models.AnalysisResult) {
result.SourceType = models.SourceTypeArchive
result.Protocol = ""
result.TargetHost = ""
result.CollectedAt = time.Now().UTC()
if result.CollectedAt.IsZero() {
result.CollectedAt = inferArchiveCollectedAt(result)
}
}
func inferArchiveCollectedAt(result *models.AnalysisResult) time.Time {
if result == nil {
return time.Now().UTC()
}
var latest time.Time
for _, event := range result.Events {
if event.Timestamp.IsZero() {
continue
}
if latest.IsZero() || event.Timestamp.After(latest) {
latest = event.Timestamp
}
}
if !latest.IsZero() {
return latest.UTC()
}
return time.Now().UTC()
}
func applyCollectSourceMetadata(result *models.AnalysisResult, req CollectRequest) {