github hankscafe/omnibus v1.0.9-beta.037
Omnibus v1.0.9-beta.037

6 hours ago

v1.0.9-beta.037 - feat(search): implement composite titles, hoster-aware routing, and indexer recovery

This commit introduces a major overhaul to how Omnibus handles highly specific issue titles, intelligently routes searches based on administrator hoster settings, and recovers failed indexer requests.

  • Smart Composite Titles: Updated issue-details and series-issues APIs to construct highly descriptive strings (e.g., Volume Name #Num: Subtitle). The main UI, along with the Release Calendar and Reading Lists, now natively display these full titles. Furthermore, all request triggers safely extract and pass the isolated issue number to the backend, preventing mangled search queries (e.g., Title 12 1).
  • Search Engine Subtitle Parsing: Upgraded the fuzzy search generator in search-engine.ts to intelligently isolate the main title from the subtitle. It now safely pivots on colons or spaced-hyphens that appear after the issue number, ensuring reliable fallback queries for indexers if uploaders omit the subtitle.
  • Hoster-Aware Search Routing & Automation Fixes: Search pipelines and background automation (�utomation.ts,
    etry, and manual/route.ts) now strictly enforce hoster_priority settings to prevent the Automation Bypass Bug:
    • If all file hosters are disabled, Omnibus completely skips the GetComics search phase and routes directly to indexers (Prowlarr).
    • If GetComics (Direct) is disabled but other hosters (e.g., MediaFire, Mega) are enabled, GetComics is still utilized solely as a search engine. Omnibus will scrape the page looking only for links matching the enabled hosters.
    • Automation (like the New Issue Monitor) will no longer inappropriately dump failed hoster links into the MANUAL_DDL queue if GetComics is explicitly disabled, safely marking them as STALLED instead.
  • Stalled Indexer Recovery UI: Added custom stalled detection to the request dashboards. Stalled torrent/usenet requests now display a PERFORM INTERACTIVE SEARCH badge alongside a new search button.
  • Seamless Request Updating: Upgraded /api/request/manual/route.ts and the Interactive Search modal to accept a
    equestId. When an admin manually finds a release for a stalled request, the backend now updates and resumes the original database record instead of creating a duplicate request.
  • Test Suite Updates: Updated search-engine.test.ts to validate the new subtitle isolation logic (ensuring issue numbers are preserved in main queries) and expanded automation.test.ts to rigorously test the new hoster bypass and fallback routing rules.

Resolves #101

Don't miss a new omnibus release

NewReleases is sending notifications on new releases.