This commit is contained in:
2025-09-07 20:58:02 -04:00
parent d3d7e268e5
commit 085e43a37b
2 changed files with 33 additions and 10 deletions
+1 -1
View File
@@ -1 +1 @@
0.0.13
0.0.14
+27 -4
View File
@@ -389,15 +389,38 @@ class RadarrClient:
return None
def earliest_import_event(self, movie_id: int) -> Optional[str]:
# Collect all history pages to ensure we don't miss early import events
all_items = []
page = 1
page_size = 1000
while True:
data = self._get("/api/v3/history/movie", {
"movieId": movie_id, "page": 1, "pageSize": 1000,
"movieId": movie_id, "page": page, "pageSize": page_size,
"sortKey": "date", "sortDirection": "ascending"
})
if not data:
_log("DEBUG", f"No history data returned for movie_id {movie_id}")
return None
break
items = data if isinstance(data, list) else data.get("records") or []
_log("DEBUG", f"Found {len(items)} history items for movie_id {movie_id}")
if not items:
break
all_items.extend(items)
_log("DEBUG", f"Page {page}: Found {len(items)} history items for movie_id {movie_id}")
# If we got less than pageSize, we've reached the end
if len(items) < page_size:
break
page += 1
# Safety valve - don't go crazy with pagination
if page > 10:
_log("WARNING", f"Stopped pagination at page 10 for movie_id {movie_id} - may have missed some history")
break
_log("DEBUG", f"Found {len(all_items)} total history items across {page} pages for movie_id {movie_id}")
items = all_items
first_grab = None
for it in items: