fix: redirect to /setup/unresolved after series scan completes
- Add 'system_progress' event type to loading page redirect condition - Add checkUnresolvedAndRedirect() for phase=initial to handle race condition where backend initialization completes before WebSocket connects - Backend now emits series_sync progress events during initial setup - Loading page checks /api/setup/unresolved immediately on load for phase=initial - Fixes users getting stuck on loading page after setup
This commit is contained in:
@@ -267,7 +267,7 @@ class SetupService:
|
||||
)
|
||||
|
||||
@classmethod
|
||||
async def run(cls) -> int:
|
||||
async def run(cls) -> tuple[int, int]:
|
||||
"""Run the setup service.
|
||||
|
||||
Scans anime folders, creates AnimeSeries records, and resolves
|
||||
@@ -275,11 +275,11 @@ class SetupService:
|
||||
that initial scan hasn't been completed yet (via _check_initial_scan_status).
|
||||
|
||||
Returns:
|
||||
Number of new series created
|
||||
Tuple of (number of new series created, number of unresolved folders)
|
||||
"""
|
||||
if not settings.anime_directory:
|
||||
logger.info("Anime directory not configured, skipping setup")
|
||||
return 0
|
||||
return 0, 0
|
||||
|
||||
anime_dir = Path(settings.anime_directory)
|
||||
if not anime_dir.is_dir():
|
||||
@@ -287,7 +287,7 @@ class SetupService:
|
||||
"Anime directory does not exist, skipping setup: %s",
|
||||
anime_dir
|
||||
)
|
||||
return 0
|
||||
return 0, 0
|
||||
|
||||
logger.info("Running setup service...")
|
||||
|
||||
@@ -385,6 +385,7 @@ class SetupService:
|
||||
"Could not resolve series key for folder, tracking as unresolved: %s",
|
||||
folder_name
|
||||
)
|
||||
unresolved_count += 1
|
||||
continue
|
||||
|
||||
# Also check if a series with this key already exists (different folder, same anime)
|
||||
@@ -445,6 +446,6 @@ class SetupService:
|
||||
error=str(e),
|
||||
exc_info=True
|
||||
)
|
||||
return created_count
|
||||
return created_count, unresolved_count
|
||||
|
||||
return created_count
|
||||
return created_count, unresolved_count
|
||||
Reference in New Issue
Block a user