From f6762fcf29b03dc247d6f08ba59fbe067c9b7e71 Mon Sep 17 00:00:00 2001 From: Duncan Tourolle Date: Sat, 4 Jul 2026 21:08:59 +0200 Subject: [PATCH] feat: prioritise and blacklist media and overview in setting page of progress in adding info --- .../Configuration/configPage.html | 292 ++++++++++++++++++ .../Controllers/CoverageController.cs | 228 ++++++++++++++ .../Controllers/PolicyController.cs | 76 +++++ .../Controllers/TasksController.cs | 41 ++- .../Models/CoverageBreakdownRow.cs | 22 ++ Jellyfin.Plugin.JRay/Models/CoverageCounts.cs | 41 +++ Jellyfin.Plugin.JRay/Models/CoverageReport.cs | 31 ++ .../Models/MediaPolicyRule.cs | 38 +++ Jellyfin.Plugin.JRay/Models/PickerOption.cs | 23 ++ Jellyfin.Plugin.JRay/Models/PolicyAction.cs | 15 + Jellyfin.Plugin.JRay/Models/PolicyScope.cs | 18 ++ Jellyfin.Plugin.JRay/ServiceRegistrator.cs | 1 + .../Services/Interfaces/IMediaPolicyStore.cs | 34 ++ .../Services/MediaPolicyStore.cs | 139 +++++++++ .../Services/PolicyResolver.cs | 84 +++++ README.md | 41 ++- SPEC.md | 103 +++++- 17 files changed, 1211 insertions(+), 16 deletions(-) create mode 100644 Jellyfin.Plugin.JRay/Controllers/CoverageController.cs create mode 100644 Jellyfin.Plugin.JRay/Controllers/PolicyController.cs create mode 100644 Jellyfin.Plugin.JRay/Models/CoverageBreakdownRow.cs create mode 100644 Jellyfin.Plugin.JRay/Models/CoverageCounts.cs create mode 100644 Jellyfin.Plugin.JRay/Models/CoverageReport.cs create mode 100644 Jellyfin.Plugin.JRay/Models/MediaPolicyRule.cs create mode 100644 Jellyfin.Plugin.JRay/Models/PickerOption.cs create mode 100644 Jellyfin.Plugin.JRay/Models/PolicyAction.cs create mode 100644 Jellyfin.Plugin.JRay/Models/PolicyScope.cs create mode 100644 Jellyfin.Plugin.JRay/Services/Interfaces/IMediaPolicyStore.cs create mode 100644 Jellyfin.Plugin.JRay/Services/MediaPolicyStore.cs create mode 100644 Jellyfin.Plugin.JRay/Services/PolicyResolver.cs diff --git a/Jellyfin.Plugin.JRay/Configuration/configPage.html b/Jellyfin.Plugin.JRay/Configuration/configPage.html index c471ce5..f74e036 100644 --- a/Jellyfin.Plugin.JRay/Configuration/configPage.html +++ b/Jellyfin.Plugin.JRay/Configuration/configPage.html @@ -39,6 +39,66 @@ + +

Coverage

+

+ How much of your library has scene-actor truth data. Ignored items are + excluded from the "to do" total, so blacklisting a genre or series + won't drag your progress down. +

+
Loading…
+
+
+ +
+ By media type +
+
+
+ By genre +
+
+ +

Prioritise / ignore rules

+

+ Shape the work-discovery API (/Plugins/JRay/Tasks/Pending). + Ignore hides matching items from extraction workers; + Prioritise pushes them to the front of the queue. A more + specific rule wins (item > series > genre). Setting a + rule for a target that already has one replaces it, so nothing can be both + prioritised and ignored. +

+ +
+
+ + +
+ +
+ + +
+
+ + +
+ +
+ +