From 0e95f94025ba522bdf6600f6d6535aa5f562d6c8 Mon Sep 17 00:00:00 2001 From: Rephl3x Date: Tue, 27 Jan 2026 12:30:04 +1300 Subject: [PATCH] Fix snapshot title fallback (build 271261228) --- .build_number | 2 +- backend/app/services/snapshot.py | 22 +++++++++++++++++++++- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/.build_number b/.build_number index 03d245c..61cb59f 100644 --- a/.build_number +++ b/.build_number @@ -1 +1 @@ -271261219 +271261228 diff --git a/backend/app/services/snapshot.py b/backend/app/services/snapshot.py index 352fddb..0a2f7d5 100644 --- a/backend/app/services/snapshot.py +++ b/backend/app/services/snapshot.py @@ -11,7 +11,14 @@ from ..clients.radarr import RadarrClient from ..clients.prowlarr import ProwlarrClient from ..clients.qbittorrent import QBittorrentClient from ..runtime import get_runtime_settings -from ..db import save_snapshot, get_request_cache_payload, get_recent_snapshots, get_setting, set_setting +from ..db import ( + save_snapshot, + get_request_cache_payload, + get_request_cache_by_id, + get_recent_snapshots, + get_setting, + set_setting, +) from ..models import ActionOption, NormalizedState, RequestType, Snapshot, TimelineHop logger = logging.getLogger(__name__) @@ -219,6 +226,19 @@ async def build_snapshot(request_id: str) -> Snapshot: logging.getLogger(__name__).debug( "snapshot cache miss: request_id=%s mode=%s", request_id, mode ) + if cached_request is not None: + cache_meta = get_request_cache_by_id(int(request_id)) + cached_title = cache_meta.get("title") if cache_meta else None + if cached_title and isinstance(cached_request, dict): + media = cached_request.get("media") + if not isinstance(media, dict): + media = {} + cached_request["media"] = media + if not media.get("title") and not media.get("name"): + media["title"] = cached_title + media["name"] = cached_title + if not cached_request.get("title") and not cached_request.get("name"): + cached_request["title"] = cached_title allow_remote = mode == "always_js" and jellyseerr.configured() if not jellyseerr.configured() and not cached_request: