Spaces:
Running
Running
Commit History
25 days ago
-
fix: eliminate duplicate movie entries, prevent moving dubbed releases across language folders, and enable dynamic backdrop rotation in spotlight Running
Hermes Agentaade177 -
Add permanent deletion handling: on_deleted_messages, /delete command, and Jellyfin Web deletion persistence
Hermes Agent5955a8b -
Fix Kattalan resolution, MMAX tagging, and purge Ms.Rose from plugin databases
Hermes Agent2cd8606 -
fix(deps): add Pillow for 1080p backdrop fallback and ensure cache dir exists on save
Hermes Agent05f4e55 -
feat(ai): add Omniroute AI candidate disambiguation with automated hardcoded fallback
Hermes Agentec8cd47 -
fix(metadata): purge unwanted Ms.Rose & Mr.Cane and resolve Obsession to official 2026 Curry Barker release
Hermes Agent5ff93ff -
feat(ui): include series thumbnails, backdrops, and details in homepage top spotlight
Hermes Agent780f7a9
26 days ago
-
fix(playback): enable video encoding to eliminate black screen during video playback and fix _search_candidates import
Hermes Agent9f9c93c -
feat: inject 1080p HD thumbnails and randomize homepage spotlight movies on each restart
Hermes Agent415ebcc -
feat(streamer): auto-upgrade artwork to HD TMDB originals on re-enrich and at startup
Hermes Agent7470637 -
fix(tmdb): strictly prevent old English movies from matching modern Indian releases like Patriot 2026
Hermes Agent6a4197a -
fix(tmdb): fix mismatched movie thumbnails and ensure HD backdrops and posters
Hermes Agent341e7f3 -
fix(streamer): restore aiohttp web import in tg_streamer.py
Hermes Agent52f3f35 -
fix(metadata): improve TMDB matching accuracy, upgrade HD backdrops & logos, purge TV English folder and blacklist demo episodes
Hermes Agentd4c144c -
feat(ui): serve uncompressed 4K original backdrops in Spotlight and auto-upgrade low-res backdrops
Hermes Agent53866e0 -
fix(library): eliminate 2-minute reindex churn and auto-repair library collection paths on startup
Hermes Agent33f1c4e -
fix(ops): library rows Path must equal DefaultUserViewsPath dir; restore PhysicalFolderIds
Hermes Agent8c478da -
feat(perf): implement direct-play bypass, HD artwork pipeline, multi-bot pooling, WAL checkpoints and read-ahead buffering
Hermes Agent2bc80a8 -
feat(ops): surgical repair of library CollectionFolder paths
Hermes Agent37a6b13 -
fix(streamer): resolve fatal player error by correcting inverted msg_id/chat_id in ingestion, cache lookup, and stream routes
Hermes Agentc52a48e -
feat(ops): read-only jellyfin.db introspection endpoint
Hermes Agenta885b89 -
fix(ui): polish input bars, eliminate MUI underlines, fix header top clearance
Hermes Agent253aeb7 -
fix(ui): apply 100% Abyss theme to MUI dashboard, fix header collisions and 100vh gap
Hermes Agent52626f7 -
feat(auth): built-in /session-login web interface to generate and activate user session on HF space
Hermes Agentda44189 -
feat(sync): increase history sync limit to 1000 when user session client is active
Hermes Agent5712326 -
feat(streamer): add multi-client fallback on expired references and batch ID range scanning for old messages
Hermes Agent81c25f6 -
feat(ui): unified 100% Pure Abyss theme across entire app and Android
Hermes Agentbafb3f8 -
fix(ui): revert settings and dashboard UI to default Jellyfin layout
Hermes Agent964e7f6 -
fix(ui): rename server to Apex, polish settings drawer, and enhance image clarity
Hermes Agentbcf7f1a -
feat(ui): integrate Abyss theme and Spotlight hero banner
Hermes Agent8ca1a05 -
fix(gateway): route Jellyfin plugin endpoints and referer requests to Jellyfin instead of fallback 404
Hermes Agent7c02102 -
feat(ui): reset Jellyfin branding and web assets to stock default
Hermes Agent5cabfcf -
feat(ui): restore original clean Jellyfin layout with pure OLED pitch black theme
Hermes Agentd080af5 -
fix(ops): accept PUT on jellyfin passthrough + ensure plugin repo at startup
Hermes Agent6529dfd -
fix ops: jellyfin api passthrough accepts POST/PUT verbs and JSON bodies
Hermes Agent1275920 -
fix(ops): write plugin repositories to system.xml + space restart
Hermes AgentHardened Jellyfin builds strip POST /Repositories (and most admin POSTs -> 405), which crashes the web UI's add-repository dialog (r.map is not a function). Add /apex/ops/jellyfin/repositories to write the repo list directly into <PluginRepositories> in system.xml on the /data volume, and /apex/ops/space/restart to reload the server without a rebuild.6ab6e45 -
fix(ops): prune stale-language strm copies + patch cache entries
Hermes Agent- ops: /apex/ops/jellyfin/cache/patch edits a single file_ids.json entry (atomic tmp+replace, /data/jellyfin path guards) - ops: cleanup now removes our-streamer .strm files before rmtree so stale English copies left by relocations are cleared, not just empty dirs - streamer: organize always repoints strm_path/target_dir to the canonical (TMDB) language folder even when the old .strm was missing, and mirrors organize-time fields onto the persisted cache entry so a later restore cannot recreate the stale-language copy9b9ef62 -
feat(ops): passthrough POST/DELETE + ghost library cleanup
Hermes Agent- /apex/ops/jellyfin/api now supports method=GET|POST|DELETE and body=json so plugin-repository and item-deletion calls can be made server-side. - /apex/ops/jellyfin/cleanup removes empty ghost folders (guarded to /data/jellyfin and empty-only) and purges orphaned Jellyfin items via DELETE /Items/{id}.adea24e -
feat(ops): admin-gated Jellyfin API passthrough for diagnostics
Hermes Agent4edc067 -
fix(ops): use Jellyfin branding endpoint for custom css
Hermes AgentJellyfin 10.11+ dropped the legacy SystemConfiguration.CustomCss field. Route the theme through POST /System/Configuration/Branding (persisted to branding.xml on the /data volume) and confirm via GET /Branding/Configuration.54e2f76 -
feat(ops): Jellyfin JellyFlix Netflix skin endpoint
Hermes AgentPOST /apex/ops/jellyfin/theme applies the JellyFlix community skin (Netflix-style red accents, hero banners, custom logo) server-wide by writing the server's own System/Configuration CustomCss field through the Jellyfin API, so it persists on the /data/jellyfin/config volume across restarts. Supports clear (empty css) and status (action=status) modes with post-write confirmation.b485092 -
feat(apex): robust any-title TMDB resolution
Hermes Agent- Tier-0: embedded IMDb ids (Radarr-style {imdb-tt...}, [tt...]) resolve deterministically via TMDB /find, bypassing fuzzy text search entirely. - best_tmdb_match: merge original_title/original_name tokens so non-Latin primary titles still match transliterated queries; year is now a soft proximity signal (exact +0.3, +/-1 +0.15, far -0.15); original_language affinity bonus; roman-numeral normalization (III -> 3). - Language-biased search: detected release language (ISO 639-1) is passed to TMDB search, with a dedicated retry in the native language when English search misses. - Diagnostics: no-match warning now logs candidates + lang tried. - Repair sweep: restored cache entries that never resolved are re-enriched once with the improved matcher (bounded, skips tmdb_id/tmdb_title entries). - 12 new unit tests (58 total in module).541097d -
chore(ops): remove temporary jellyfin items diagnostic
Hermes Agent1fb1644 -
chore(ops): temporary jellyfin items diagnostic (server-side auth)
Hermes Agent142616d -
chore(ops): remove temporary tmdb_probe diagnostic
Hermes Agent83c5235 -
chore(ops): deeper tmdb_probe - manual utf-8 decode vs aiohttp json()
Hermes Agent5287972 -
chore(ops): temporary tmdb_probe diagnostic endpoint
Hermes Agentf800904 -
fix(meta): self-heal stale NFOs with ASCII-mangled original titles
Hermes AgentNon-ASCII original titles (Malayalam/Tamil/Hindi scripts) were written as a run of '?' by an earlier writer and never repaired: the enrichment idempotency gate treated any existing NFO as cached and the movie/episode NFO writes were guarded by os.path.exists. Now: - nfo_needs_repair() flags any NFO whose originaltitle/original_name is a run of '?'); such NFOs are excluded from the idempotency gate and are rewritten on the next enrich pass - movie/episode NFO writes are unconditional when a fresh detail was fetched (self-healing), tvshow.nfo rewrites when malformed - streamer launched with PYTHONUTF8=1 PYTHONIOENCODING=utf-8701239e -
fix(streamer): resolve Jellyfin items moved by TMDB organuize
Hermes Agentrefresh_jellyfin_item_by_path now polls with a longer window (12x5s), matches the pre-move path as an alias, falls back to .strm basename matching, and nudges a library scan every few attempts so items that were moved to their language folder get indexed before refresh.6231a0a -
fix(meta): channel-marker junk + AI web-title resolution
Hermes Agent- tmdb_meta: drop '6CH'/'5.1ch' channel markers from search queries so 'Obsession.2025...6CH.x265...' searches 'obsession' (was 'obsession 6ch' which returns 0 TMDB results) instead of No-Match. - tg_streamer: AI-title prompt now resolves the REAL official title from model knowledge (Indian + international OTT incl. Malayalam), verified live: 'Mollywood.Times...JHS...' -> 'Mollywood Times' (2026). - tg_streamer: AI tier-2 retries TMDB single-type then /search/multi, dropping year if filtered search is empty; new AI-tier-3 publishes a minimal canonical-title NFO when TMDB has no record, so Jellyfin never keeps a release-junk folder name.4a485e9