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

2 hours ago

v1.0.9-beta.064 - feat: overhaul search engine, issue linking, and add full PWA support

This update introduces a completely revamped search and queueing engine to eliminate API rate limits and drastically improve automated download accuracy. Background tasks have been migrated to BullMQ to eliminate worker starvation, and the search engine now utilizes dynamic prioritization, smarter sorting, and precise validation rules to instantly bypass variants and foreign languages without falling back to the manual Stalled queue. Additionally, the web app has been upgraded to a fully installable PWA, allowing users to install Omnibus as a standalone native app on their mobile devices.

✨ Features & Enhancements

  • Full PWA Support: Implemented a minimal Service Worker and updated the web manifest to satisfy strict browser criteria, allowing Omnibus to be installed directly to the home screen/app drawer as a standalone native app.
  • Mobile Viewport Optimization: Added userScalable: false and Apple Web App meta tags to prevent annoying zoom-ins when tapping input fields, cementing the native mobile feel on iOS and Android.
  • BullMQ Queue Migration: Migrated background downloads to BullMQ with dynamic delay tracking to safely process massive multi-issue requests without holding the main thread hostage.
  • Smart Query Prioritization: Refactored the search engine to prioritize short Base Name queries over long subtitles, drastically improving first-try hit rates across all indexers.
  • Dynamic TPB Validation: The validation engine now intelligently forgives missing subtitles on Single Issue uploads, while strictly enforcing the full original name on Graphic Novels/TPBs to prevent false positives.
  • Smarter Variant Sorting: Upgraded variant sorting to prioritize exact year matches and shortest-title lengths (standard editions), effectively automating the selection of the correct file and eliminating false STALLED flags.
  • Expanded Language Filters: Added foreign language exclusion tags (Spanish, French, Italian, German, Portuguese) to GetComics results to prevent short-titled translations from being incorrectly selected as the primary download.
  • Dynamic Naming Variables: Updated the unrecognized files linking route to properly extract and mathematically inject {VolumeYear} and {IssueYear} variables during the physical file renaming process.

🐛 Bug Fixes

  • Queue Deduplication & Ghost Purging: Implemented strict BullMQ job deduplication, added database-level state guards, and introduced ghost job purging during manual retries to completely eliminate duplicate concurrent downloads for the same issue.
  • Metadata Year Extraction: Added strict mathematical sanity checks to the ComicInfo.xml parser and watched folder sync logic to prevent 6-digit ComicVine Volume IDs from being incorrectly saved as the release year and injected into filenames.
  • N×M Query Multiplier: Removed a redundant query multiplier inside the background automation loop, reducing API calls by over 80% per issue and preventing immediate Cloudflare 403 bans.
  • Cloudflare & Tracker Rate Limits: Increased the background GetComics throttle to a safe 4 seconds and added a 2-second protective delay between Prowlarr fallback queries to prevent private tracker API bans.
  • Interactive Search UI: Fixed clipping and overflow issues within the Interactive Search modal so results are properly displayed on all screen sizes.

Resolves #135, Resolves #136, Addresses #133, Addresses #134

Don't miss a new omnibus release

NewReleases is sending notifications on new releases.