Compare commits

...

2 Commits

Author SHA1 Message Date
sbcrumb ace671ab08 Merge pull request 'Add comprehensive rename event debugging' (#38) from sonarrissues into dev
Local Docker Build (Dev) / build-dev (push) Successful in 4s
Reviewed-on: #38
2025-10-10 14:11:53 -04:00
sbcrumb e03249bb36 Add comprehensive rename event debugging
Local Docker Build (Dev) / build-dev (pull_request) Successful in 4s
Enhanced debugging for Sonarr rename events to understand the actual structure of episodeFileRenamed history records. Added checks for episode data in multiple possible locations (episode, episodeFile, data objects) to identify why season/episode information is missing.

🤖 Generated with [Claude Code](https://claude.ai/code)
2025-10-10 14:11:07 -04:00
2 changed files with 40 additions and 6 deletions
+1 -1
View File
@@ -1 +1 @@
2.0.17 2.0.18
+39 -5
View File
@@ -152,20 +152,54 @@ async def sonarr_webhook(request: Request, background_tasks: BackgroundTasks, de
if recent_renames: if recent_renames:
# Take the most recent rename event # Take the most recent rename event
latest_rename = recent_renames[0] latest_rename = recent_renames[0]
print(f"DEBUG: Latest rename event keys: {list(latest_rename.keys())}")
print(f"DEBUG: Latest rename event full structure: {latest_rename}")
# Try different possible episode data locations
episode_info = latest_rename.get("episode", {}) episode_info = latest_rename.get("episode", {})
season_num = episode_info.get("seasonNumber") episode_file_info = latest_rename.get("episodeFile", {})
episode_num = episode_info.get("episodeNumber") data_info = latest_rename.get("data", {})
print(f"DEBUG: Episode info: {episode_info}")
print(f"DEBUG: EpisodeFile info: {episode_file_info}")
print(f"DEBUG: Data info: {data_info}")
# Try to extract episode info from any available source
season_num = None
episode_num = None
episode_id = None
episode_title = None
# Check episode object first
if episode_info:
season_num = episode_info.get("seasonNumber")
episode_num = episode_info.get("episodeNumber")
episode_id = episode_info.get("id")
episode_title = episode_info.get("title")
# Check episodeFile object
if not season_num and episode_file_info:
season_num = episode_file_info.get("seasonNumber")
episode_num = episode_file_info.get("episodeNumber")
episode_id = episode_file_info.get("episodeId") or episode_file_info.get("id")
# Check data object
if not season_num and data_info:
season_num = data_info.get("seasonNumber")
episode_num = data_info.get("episodeNumber")
print(f"DEBUG: Extracted - Season: {season_num}, Episode: {episode_num}, ID: {episode_id}")
if season_num and episode_num: if season_num and episode_num:
episodes_data = [{ episodes_data = [{
"seasonNumber": season_num, "seasonNumber": season_num,
"episodeNumber": episode_num, "episodeNumber": episode_num,
"id": episode_info.get("id"), "id": episode_id,
"title": episode_info.get("title") "title": episode_title
}] }]
print(f"INFO: Found recently renamed episode from history: S{season_num:02d}E{episode_num:02d}") print(f"INFO: Found recently renamed episode from history: S{season_num:02d}E{episode_num:02d}")
else: else:
print(f"DEBUG: Recent rename event missing season/episode data") print(f"DEBUG: Could not extract episode data from rename event")
else: else:
print(f"DEBUG: No recent rename events found in last hour") print(f"DEBUG: No recent rename events found in last hour")
else: else: