fix: rename and airdate fixes
Local Docker Build (Dev) / build-dev (push) Successful in 4s

This commit is contained in:
2025-10-25 12:30:44 -04:00
parent 2811d30352
commit 4c4a805c5d
+9 -7
View File
@@ -222,7 +222,7 @@ class SonarrClient:
import_date = earliest_import["date"]
_log("INFO", f"Found import date: {import_date} for episode {episode_id}")
# Check if this import is likely a recent re-download/upgrade
# Check chronological order of events
if rename_events:
earliest_rename = min(rename_events, key=lambda x: x["date"])
rename_date = earliest_rename["date"]
@@ -230,13 +230,15 @@ class SonarrClient:
try:
import_dt = datetime.fromisoformat(import_date.replace("Z", "+00:00"))
rename_dt = datetime.fromisoformat(rename_date.replace("Z", "+00:00"))
days_diff = (import_dt - rename_dt).days
# If import is significantly after rename, this is likely a re-download
# The original import likely happened much earlier (possibly lost from history)
# Return None to trigger aired date fallback instead of using rename date
if days_diff > 30:
_log("WARNING", f"Import {import_date} is {days_diff} days after rename {rename_date} - this looks like a re-download, using aired date fallback")
# If import happened BEFORE rename, it's valid original import
if import_dt <= rename_dt:
_log("INFO", f"Import {import_date} happened before/during rename {rename_date} - using import date")
return import_date
# If rename happened BEFORE import - always use aired date fallback
else:
_log("WARNING", f"Rename {rename_date} happened before import {import_date} - using aired date fallback")
return None # Trigger aired date fallback
except Exception as e: