Skip to content

Commit afa8f46

Browse files
committed
upgradinatorr addition
1 parent 2f5317b commit afa8f46

File tree

15 files changed

+910
-50
lines changed

15 files changed

+910
-50
lines changed

docs/apps/lidarr.html

Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -153,6 +153,107 @@ <h3 id="upgrade-mode"><i class="fas fa-arrow-up" style="margin-right: 10px; colo
153153
<li><strong>Artists:</strong> Upgrades at the artist level for consistent quality across discography</li>
154154
</ul>
155155

156+
<h3 id="upgrade-selection-method"><i class="fas fa-list-check" style="margin-right: 10px; color: #2ecc71;"></i>Upgrade Selection Method</h3>
157+
<p>You can choose how Huntarr selects which artists to consider for upgrades:</p>
158+
<ul>
159+
<li><strong>Cutoff unmet (default):</strong> Uses Lidarr's <strong>Wanted → Cutoff Unmet</strong> list. Only albums that don't meet your quality/custom-format cutoff are eligible. Same behavior as before.</li>
160+
<li><strong>Tags (Upgradinatorr-style):</strong> Huntarr finds artists that <strong>DON'T</strong> have your specified tag (e.g. <code>upgradinatorr</code>), searches their albums for upgrades, then <strong>ADDS</strong> the tag to the artist after processing to mark them as complete. This matches <a href="https://github.com/angrycuban13/Just-A-Bunch-Of-Starr-Scripts/blob/main/Upgradinatorr/README.md" target="_blank" rel="noopener">Upgradinatorr's</a> behavior: the tag tracks which artists have already been processed, not which ones to search. The tag is automatically created in Lidarr if it doesn't exist.</li>
161+
</ul>
162+
<p>In both cases, Huntarr triggers <strong>AlbumSearch</strong> for the selected albums; Lidarr still decides what to grab based on your quality profile and custom format scores.</p>
163+
164+
<div class="alert alert-success">
165+
<strong>💡 Tip:</strong> See <a href="https://trash-guides.info/" target="_blank" rel="noopener">TrashGuides</a> for comprehensive custom format scoring guides and best practices for quality upgrades.
166+
</div>
167+
168+
<h4 id="upgrade-mode-comparison"><i class="fas fa-balance-scale" style="margin-right: 10px; color: #9b59b6;"></i>Cutoff Unmet vs Tags: Which Should I Use?</h4>
169+
<p>Understanding the difference between these two modes will help you choose the right approach for your library:</p>
170+
171+
<table>
172+
<tr>
173+
<th>Feature</th>
174+
<th>Cutoff Unmet (Huntarr Standard)</th>
175+
<th>Tags (Upgradinatorr-style)</th>
176+
</tr>
177+
<tr>
178+
<td><strong>How It Works</strong></td>
179+
<td>Queries Lidarr's <code>Wanted → Cutoff Unmet</code> list every cycle</td>
180+
<td>Searches albums by artists WITHOUT the tag, then ADDS tag to artist after processing</td>
181+
</tr>
182+
<tr>
183+
<td><strong>Re-processing</strong></td>
184+
<td>Same albums appear in every cycle until they meet cutoff</td>
185+
<td>Once tagged, artist's albums are NEVER searched again (unless you manually remove tag)</td>
186+
</tr>
187+
<tr>
188+
<td><strong>Best For</strong></td>
189+
<td>Dynamic quality targets - continuously searching until perfect quality is found</td>
190+
<td>One-time library upgrade - systematically process entire library once</td>
191+
</tr>
192+
<tr>
193+
<td><strong>Indexer Impact</strong></td>
194+
<td>Higher - searches same albums repeatedly if upgrades not found</td>
195+
<td>Lower - each artist's albums searched once, then marked complete</td>
196+
</tr>
197+
<tr>
198+
<td><strong>Progress Tracking</strong></td>
199+
<td>Based on cutoff status - albums drop off list when upgraded</td>
200+
<td>Visual tags in Lidarr UI - see which artists have been processed</td>
201+
</tr>
202+
<tr>
203+
<td><strong>Use Case Example</strong></td>
204+
<td>"Keep searching until every album reaches my quality target"</td>
205+
<td>"I just set up TRaSH guides - process my entire 1000 artist library once"</td>
206+
</tr>
207+
<tr>
208+
<td><strong>Stops When</strong></td>
209+
<td>Albums meet quality cutoff or custom format score threshold</td>
210+
<td>Tag is applied to artist (regardless of whether upgrades were found)</td>
211+
</tr>
212+
</table>
213+
214+
<div class="alert alert-info">
215+
<strong>📊 Example Scenario:</strong><br>
216+
<strong>Cutoff Unmet:</strong> You have 200 albums below cutoff from 50 artists. Huntarr searches 5 albums per cycle, finds upgrades for 3. Next cycle, those 3 are gone (met cutoff), but the other 2 appear again along with 3 new ones from the remaining 195. This continues until all 200 meet cutoff or no more upgrades exist.<br><br>
217+
<strong>Tags:</strong> You have 1000 artists with no <code>upgradinatorr</code> tag. Huntarr searches 5 albums per cycle (from different artists), tags those artists after processing (whether upgrades found or not). Next cycle searches albums from 5 different artists. Eventually all 1000 artists have been processed once and tagged - done forever.
218+
</div>
219+
220+
<div class="alert alert-warning">
221+
<strong>⚠️ Important:</strong> With <strong>Tags mode</strong>, artists are marked as "processed" even if no upgrades were found for their albums. If you want to re-process artists later (e.g., after adding new indexers), you must manually remove the tag in Lidarr.
222+
</div>
223+
224+
<h3 id="custom-format-scores"><i class="fas fa-star" style="margin-right: 10px; color: #f1c40f;"></i>Custom Format Scores & Quality Upgrades</h3>
225+
226+
<div class="alert alert-info">
227+
<strong>📋 Lidarr Configuration Required:</strong>
228+
<ul style="margin-bottom: 0;">
229+
<li><strong>Lidarr → Settings → Profiles → Quality Profile → Upgrade Until Custom Format Score</strong></li>
230+
<li>Set <strong>Upgrade Until Custom Format Score</strong> to at least <code>10000</code></li>
231+
</ul>
232+
</div>
233+
234+
<h4>Why Custom Format Scores Matter</h4>
235+
<p><strong>Huntarr does not decide what to upgrade—Lidarr does.</strong> When Huntarr triggers a search for upgrades, Lidarr evaluates the search results using your configured quality profile and custom format scores to determine whether a release is an upgrade worth grabbing.</p>
236+
237+
<p><strong>Key Points:</strong></p>
238+
<ul>
239+
<li><strong>Quality Cutoff:</strong> The minimum quality level you're willing to accept (e.g., MP3-320, FLAC)</li>
240+
<li><strong>Custom Formats:</strong> Additional scoring criteria beyond basic quality (e.g., preferred release groups, audio codec preferences, edition types)</li>
241+
<li><strong>Upgrade Until Custom Format Score:</strong> The score threshold at which Lidarr stops considering upgrades. Setting this to 10000 (or higher) ensures Lidarr will continue upgrading as long as better-scoring releases are found</li>
242+
</ul>
243+
244+
<p><strong>How It Works:</strong></p>
245+
<ol>
246+
<li>Huntarr identifies albums eligible for upgrade (based on your chosen upgrade selection method)</li>
247+
<li>Huntarr triggers an <strong>AlbumSearch</strong> command in Lidarr</li>
248+
<li>Lidarr searches indexers and scores each result using your quality profile + custom formats</li>
249+
<li>Lidarr automatically grabs releases that score higher than your current file (up to your "Upgrade Until" threshold)</li>
250+
<li>Without proper custom format scoring configured, Lidarr may not grab upgrades even when better releases are available</li>
251+
</ol>
252+
253+
<div class="alert alert-success">
254+
<strong>💡 Tip:</strong> See <a href="https://trash-guides.info/" target="_blank" rel="noopener">TrashGuides</a> for comprehensive custom format scoring guides, recommended release group scores, and best practices for quality upgrades in Lidarr.
255+
</div>
256+
156257
<h3 id="search-limits"><i class="fas fa-sliders-h" style="margin-right: 10px; color: #f39c12;"></i>Search Limits</h3>
157258
<p>Control how many items Huntarr processes per cycle to avoid overwhelming your indexers:</p>
158259

docs/apps/radarr.html

Lines changed: 99 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -152,13 +152,107 @@ <h3 id="upgrade-mode"><i class="fas fa-arrow-up" style="margin-right: 10px; colo
152152
</ul>
153153

154154
<h3 id="custom-format-scores"><i class="fas fa-star" style="margin-right: 10px; color: #f1c40f;"></i>Custom Format Scores (TRaSH / Upgrade Until Score)</h3>
155-
<p><strong>Huntarr does not decide what to upgrade—Radarr does.</strong> Huntarr gets the list of movies that don't meet your cutoff from Radarr's <strong>Wanted → Cutoff Unmet</strong> API, then triggers the same <strong>MoviesSearch</strong> command as a manual search. Radarr runs the search, scores results with your quality profile (including custom formats), and grabs upgrades. So your quality profile and custom format scores are fully respected.</p>
156-
<p>For <a href="https://trash-guides.info/Radarr/radarr-setup-quality-profiles/" target="_blank" rel="noopener">TRaSH Guides</a> and custom-format–based upgrades:</p>
155+
156+
<div class="alert alert-info">
157+
<strong>📋 Radarr Configuration Required:</strong>
158+
<ul style="margin-bottom: 0;">
159+
<li><strong>Radarr → Settings → Profiles → Quality Profile → Upgrade Until Custom Format Score</strong></li>
160+
<li>Set <strong>Upgrade Until Custom Format Score</strong> to at least <code>10000</code></li>
161+
</ul>
162+
</div>
163+
164+
<h4>Why Custom Format Scores Matter</h4>
165+
<p><strong>Huntarr does not decide what to upgrade—Radarr does.</strong> When Huntarr triggers a search for upgrades, Radarr evaluates the search results using your configured quality profile and custom format scores to determine whether a release is an upgrade worth grabbing.</p>
166+
167+
<p><strong>Key Points:</strong></p>
168+
<ul>
169+
<li><strong>Quality Cutoff:</strong> The minimum quality level you're willing to accept (e.g., 1080p Bluray, 2160p WEB-DL)</li>
170+
<li><strong>Custom Formats:</strong> Additional scoring criteria beyond basic quality (e.g., HDR formats, audio codecs, preferred release groups, streaming service tiers)</li>
171+
<li><strong>Upgrade Until Custom Format Score:</strong> The score threshold at which Radarr stops considering upgrades. Setting this to 10000 (or higher) ensures Radarr will continue upgrading as long as better-scoring releases are found</li>
172+
</ul>
173+
174+
<p><strong>How It Works:</strong></p>
175+
<ol>
176+
<li>Huntarr retrieves movies from Radarr's <strong>Wanted → Cutoff Unmet</strong> API (movies below your quality cutoff or custom format score threshold)</li>
177+
<li>Huntarr triggers a <strong>MoviesSearch</strong> command in Radarr (same as a manual search)</li>
178+
<li>Radarr searches indexers and scores each result using your quality profile + custom formats</li>
179+
<li>Radarr automatically grabs releases that score higher than your current file (up to your "Upgrade Until" threshold)</li>
180+
<li>Without proper custom format scoring configured, Radarr may not grab upgrades even when better releases are available</li>
181+
</ol>
182+
183+
<p>Same requirement as tools like <a href="https://github.com/angrycuban13/Just-A-Bunch-Of-Starr-Scripts/blob/main/Upgradinatorr/README.md" target="_blank" rel="noopener">Upgradinatorr</a>: the *arr app must have this configured so it knows to upgrade by custom format score. Huntarr only triggers the search; Radarr applies your scores and picks the release.</p>
184+
185+
<div class="alert alert-success">
186+
<strong>💡 Tip:</strong> See <a href="https://trash-guides.info/Radarr/radarr-setup-quality-profiles/" target="_blank" rel="noopener">TrashGuides</a> for comprehensive custom format scoring guides, recommended scores for HDR formats, DV, audio codecs, and best practices for quality upgrades in Radarr.
187+
</div>
188+
189+
<h3 id="upgrade-selection-method"><i class="fas fa-list-check" style="margin-right: 10px; color: #2ecc71;"></i>Upgrade Selection Method</h3>
190+
<p>You can choose how Huntarr selects which movies to consider for upgrades:</p>
157191
<ul>
158-
<li>In Radarr go to <strong>SettingsProfiles → Quality Profile</strong></li>
159-
<li>Set <strong>Upgrade Until Custom Format Score</strong> to at least <strong>10000</strong> (or your target). Radarr will then treat "cutoff unmet" as "below this custom format score" and include those movies in Wanted → Cutoff Unmet.</li>
192+
<li><strong>Cutoff unmet (default):</strong> Uses Radarr's <strong>WantedCutoff Unmet</strong> list. Only movies that don't meet your quality/custom-format cutoff are eligible. Same behavior as before.</li>
193+
<li><strong>Tags (Upgradinatorr-style):</strong> Huntarr finds movies that <strong>DON'T</strong> have your specified tag (e.g. <code>upgradinatorr</code>), searches for upgrades, then <strong>ADDS</strong> the tag after processing to mark them as complete. This matches <a href="https://github.com/angrycuban13/Just-A-Bunch-Of-Starr-Scripts/blob/main/Upgradinatorr/README.md" target="_blank" rel="noopener">Upgradinatorr's</a> behavior: the tag tracks which movies have already been processed, not which ones to search. The tag is automatically created in Radarr if it doesn't exist.</li>
160194
</ul>
161-
<p>Same requirement as tools like <a href="https://github.com/angrycuban13/Just-A-Bunch-Of-Starr-Scripts/blob/main/Upgradinatorr/README.md" target="_blank" rel="noopener">Upgradinatorr</a>: the *arr app must have this set so it knows to upgrade by custom format score. Huntarr only triggers the search; Radarr applies your scores and picks the release.</p>
195+
<p>In both cases, Huntarr triggers <strong>MoviesSearch</strong> for the selected movies; Radarr still decides what to grab based on your quality profile and custom format scores.</p>
196+
197+
<div class="alert alert-success">
198+
<strong>💡 Tip:</strong> See <a href="https://trash-guides.info/" target="_blank" rel="noopener">TrashGuides</a> for comprehensive custom format scoring guides and best practices for quality upgrades.
199+
</div>
200+
201+
<h4 id="upgrade-mode-comparison"><i class="fas fa-balance-scale" style="margin-right: 10px; color: #9b59b6;"></i>Cutoff Unmet vs Tags: Which Should I Use?</h4>
202+
<p>Understanding the difference between these two modes will help you choose the right approach for your library:</p>
203+
204+
<table>
205+
<tr>
206+
<th>Feature</th>
207+
<th>Cutoff Unmet (Huntarr Standard)</th>
208+
<th>Tags (Upgradinatorr-style)</th>
209+
</tr>
210+
<tr>
211+
<td><strong>How It Works</strong></td>
212+
<td>Queries Radarr's <code>Wanted → Cutoff Unmet</code> list every cycle</td>
213+
<td>Searches movies WITHOUT the tag, then ADDS tag after processing</td>
214+
</tr>
215+
<tr>
216+
<td><strong>Re-processing</strong></td>
217+
<td>Same movies appear in every cycle until they meet cutoff</td>
218+
<td>Once tagged, movies are NEVER searched again (unless you manually remove tag)</td>
219+
</tr>
220+
<tr>
221+
<td><strong>Best For</strong></td>
222+
<td>Dynamic quality targets - continuously searching until perfect quality is found</td>
223+
<td>One-time library upgrade - systematically process entire library once</td>
224+
</tr>
225+
<tr>
226+
<td><strong>Indexer Impact</strong></td>
227+
<td>Higher - searches same movies repeatedly if upgrades not found</td>
228+
<td>Lower - each movie searched once, then marked complete</td>
229+
</tr>
230+
<tr>
231+
<td><strong>Progress Tracking</strong></td>
232+
<td>Based on cutoff status - movies drop off list when upgraded</td>
233+
<td>Visual tags in Radarr UI - see which movies have been processed</td>
234+
</tr>
235+
<tr>
236+
<td><strong>Use Case Example</strong></td>
237+
<td>"Keep searching until every movie reaches my quality target"</td>
238+
<td>"I just set up TRaSH guides - process my entire 2000 movie library once"</td>
239+
</tr>
240+
<tr>
241+
<td><strong>Stops When</strong></td>
242+
<td>Movie meets quality cutoff or custom format score threshold</td>
243+
<td>Tag is applied (regardless of whether upgrade was found)</td>
244+
</tr>
245+
</table>
246+
247+
<div class="alert alert-info">
248+
<strong>📊 Example Scenario:</strong><br>
249+
<strong>Cutoff Unmet:</strong> You have 100 movies below cutoff. Huntarr searches 5 per cycle, finds upgrades for 3. Next cycle, those 3 are gone (met cutoff), but the other 2 appear again along with 3 new ones from the remaining 95. This continues until all 100 meet cutoff or no more upgrades exist.<br><br>
250+
<strong>Tags:</strong> You have 2000 movies with no <code>upgradinatorr</code> tag. Huntarr searches 5 per cycle, tags all 5 (whether upgrades found or not). Next cycle searches 5 different movies. After 400 cycles, all 2000 movies have been searched once and tagged - done forever.
251+
</div>
252+
253+
<div class="alert alert-warning">
254+
<strong>⚠️ Important:</strong> With <strong>Tags mode</strong>, movies are marked as "processed" even if no upgrade was found. If you want to re-process movies later (e.g., after adding new indexers), you must manually remove the tag in Radarr.
255+
</div>
162256

163257
<h3 id="search-limits"><i class="fas fa-sliders-h" style="margin-right: 10px; color: #f39c12;"></i>Search Limits</h3>
164258
<p>Control how many items Huntarr processes per cycle to avoid overwhelming your indexers:</p>

0 commit comments

Comments
 (0)