Search & Media Intake

Search series across TheTVDB or movies across torrent indexers to trigger download

Search to Queue Media

Search TV series from TheTVDB or movies from swarm indexers to trigger automated intake.

Queue & Intake Pipeline

Torrents queued for download, waiting for available seeds, or stalled

0
Total Queued
0
Stalled (0 Seeds)
0
Paused Downloads
Title / Payload Queue Status Size Seeds / Peers Manage

Active Downloads

Real-time transferring downloads. Completed downloads automatically advance to QA.

Title / Swarm Payload Progress & Size Seeds / Peers Speed / ETA Manage

Media QA & Ingestion Integrity

Duration verification, English/Mandarin audio policy, Track 1 promotion, SubRip extraction, and category hygiene audits

Ingestion Issues & Blocked Imports (0)

Series / Episode Flagged Warning Quality / Size Action

Library Health, Language Policy & Audio Integrity

Library Hygiene Sentinel

Verifying hygiene status...

Language & Audio Policy

English & Mandarin Enforced
Foreign audio without English/Mandarin is rejected before transcoding. Track 1 promoted to primary.

Jellyfin Auto-Sync Sentinel

Operational (Automated Ingestion)
Every completed download triggers instant background indexing. Monitored for scan errors.

Flagged Stream Warnings

No critical media errors or corrupted streams detected.

Pipeline QA Activity Log (/arr/pipeline.log)

Loading pipeline logs...

Universal 8-Bit Transcoding Line

Scheduled hardware conversions (1:00 AM – 9:00 AM) to guarantee Roku TV & browser Direct Play (10-bit HEVC ➔ 8-bit H.264)

Nightly Transcode Schedule: 1:00 AM – 9:00 AM off-peak window. Only runs after all duration, resolution, language, and audio QA checks have passed.
Media File Category Size Source Codec Transcode Status

Completed Conversions & Codec Worker Log

Recent Completed Batches

Loading conversion records...

Transcoder Worker Log (/arr/convert.log)

Loading transcode logs...

Clean Up & Swarm Maintenance

Clear completed seeds from qBittorrent, purge missing/dead torrents, and manage watched episode retention

Completed Downloads Seeding in Swarm

These downloads have reached 100% and have been imported into your media library. Clearing them removes them from qBittorrent while safely leaving media files intact on disk for Jellyfin.

Title / Media File Size Upload Ratio State Action

Complete (Jellyfin Library)

Fully ingested, post-processed series and movies available in Jellyfin

Loading library metadata from Sonarr & Jellyfin...

Wex Production Operations Manual

Deterministic runbook for media intake, queue management, self-healing automations, and TV playback.

00. Autonomous Media Lifecycle Pipeline

Architecture Spec

Wex operates as an autonomous, self-healing home appliance. Search and trigger downloads on your computer workstation via Quark; the downstream ingestion pipeline, audio verification, universal 8-bit transcoding, TMDb poster caching, and Jellyfin cataloging run headless with zero prompt babysitting.

[01] INTAKE Search Title English or Chinese title in Quark search bar
[02] TRIGGER 1-Click Action + Add Movie or ⚡ Auto-Grab for season packs
[03] QA SENTINEL Integrity Checks Duration QA, language verification, Track 1 remux
[04] TRANSCODE Universal H.264 10-bit HEVC converted to 8-bit only after QA passes
[05] PLAYBACK Direct Play 0ms instant start on Living Room Roku TV
QA Precedes Transcoding: Duration, resolution, and language policy checks (Mandarin/English) are strictly validated first. If a file is incomplete, corrupt, or foreign language, it is rejected immediately before burning CPU/GPU transcoding cycles.

01. Adding Feature Films, Kids Movies & Disney

Movies

Quark queries multiple tracker indexers concurrently through Proton VPN WireGuard, filters CAM/telesync releases, groups duplicate variants, and scores 1080p FHD releases by seed health.

Category Directory Target Content Ingestion Standard
/media/movies General Hollywood & International feature films 1080p FHD, universal AAC/AC-3 audio
/media/kids_movies Non-Disney animated & family films (Illumination, DreamWorks) English or Mandarin audio mandatory
/media/disney_movies Disney & Pixar animated classics Permanent landscape cover, clean metadata
Automated Pipeline: When qBittorrent finishes the transfer, autonomous_media_pipeline.py verifies duration (>45 min), validates audio (auto-promotes English or Mandarin to Track 1), transcodes 10-bit HEVC to universal 8-bit H.264, fetches high-res artwork, hardlinks to storage, and notifies Jellyfin.

02. Adding Chinese TV Dramas (CDramas)

Chinese TV

Standard Sonarr frequently fails on Chinese tracker releases due to CJK titling and non-standard season tags (e.g. 全30集). Quark uses a dedicated scoring engine triggered via the ⚡ Auto-Grab button.

Engine Parameter Configuration Value Operational Purpose
Title Search CJK Parser + TITLE_MAP Searches both Chinese and English titles concurrently
Pack Scoring +5,000 Complete Season Bonus Prioritizes full season packs over loose daily episodes
Target Isolation /media/chinese_tv only Prevents Chinese shows from cross-pollinating into Western /tv
Single-Category Rule: Chinese dramas belong strictly in /media/chinese_tv. The nightly hygiene sentinel purges duplicate folders if accidentally added to /tv.

03. Adding Western TV Shows & Kids Cartoons

Television

Select between two deterministic pathways depending on whether the series is fully released or actively airing:

Method Best Used For Workflow Steps
⚡ Auto-Grab Pack Concluded seasons, classic series, full cartoon packs Click ⚡ Auto-Grab -> Select /tv or /kids_tv -> Confirm. Grabs complete season pack in 1 shot.
+ Sonarr Monitoring Ongoing weekly broadcast episodes Click + Sonarr -> Select Quality Profile -> Check immediate search -> Confirm. Sonarr tracks weekly releases.
Season Folder Standard: Episodes must reside in dedicated Season XX/ subfolders. The hygiene sentinel auto-corrects loose root files and single-season bundles nightly.

04. Watch History Protection & Duplication Guards

Database Guard

Wex maintains an authoritative, persistent SQLite database (watch_history.db) via the Geordi Series Manager. Every ingestion action verifies existing status to prevent quota exhaustion:

Status Flag State Meaning System Protection Action
WATCHED User finished watching on Roku TV Returns HTTP 409 Conflict; requires explicit confirmation to re-download
SKIPPED User skipped / disliked series on TV Scheduled for 30-day auto-purge; blocks accidental re-download
IN LIBRARY Files currently exist on 1TB or 4TB drive Prevents redundant download; shows active location
DELETED Media previously purged to free disk space Preserves watch record for library hygiene audits
Intentional Override: If Quark flags a 409 conflict on a title you purposely want to re-watch, click OK on the browser confirmation prompt to bypass the guard.

05. Swarm Telemetry & Dead-Torrent Auto-Failover

Queue Manager

The autonomous supervisor queue_manager.py runs as a systemd user daemon on Wex, enforcing bandwidth rules and healing dead torrent swarms:

Heuristic Trigger Threshold Autonomous Action
Bandwidth Guard >8 Active Torrents / >15 Connections Queues excess torrents to prevent disk I/O thrashing
Stall Rotation Speed < 5 KB/s for 180 seconds Demotes stalled torrent to end of queue to unblock healthy swarms
Dead-Swarm Failover 0 Seeds for >90 minutes, progress < 20% Queries Prowlarr for seeded replacement (≥3 seeds), deletes dead torrent, and injects healthy swarm
Auto-Pause Guard Dead swarm with zero indexer alternatives Pauses dead torrent automatically so other queued items can download

06. Roku TV Living Room Direct Play Standards

Living Room Standard

The Living Room Roku TV runs the official Jellyfin Roku app (v3.2.4+). All Wex media is pre-conditioned to guarantee instant playback with zero server-side video transcoding:

Media Component Direct Play Specification Failure Mitigation
Video Codec 8-bit H.264 (AVC) in MP4 or MKV Incompatible 10-bit HEVC auto-transcoded before ingestion
Audio Track 1 Stereo or 5.1 AAC / AC-3 in Mandarin or English DTS-HD/TrueHD sole tracks converted to secondary AAC fallback
Subtitles Default OFF (disposition:s 0) ASS/SSA vector subtitles converted to SubRip .srt to prevent Roku burn-in freezes
Category Artwork Permanent 16:9 Landscape (960x540 PNG) category_cover_guardian.py self-heals missing covers from backdrops

07. Master CLI Tool Reference (manage.sh)

Terminal Standard

The single management CLI manage.sh is available locally on your Mac (~/Documents/Wex/manage.sh) and directly on the Wex server (/media/wex/Storage1TB/services/manage.sh):

Command Functionality Typical Frequency
./manage.sh status 1-shot dashboard of disk mounts, core containers, daemons, and swarms Daily / checkup
./manage.sh doctor 8-point self-healing diagnostic audit (mounts, vpn, database, covers, hygiene) Weekly / post-incident
./manage.sh clean Reclaims boot drive space (vacuums systemd journal, prunes build cache) As needed / auto at ≥85%
./manage.sh backup Executes verified 3-tier backup to 4TB drive with 14-day retention rotation Weekly / before upgrades
./manage.sh deploy Lints script syntax, rsyncs local changes to Wex, and restarts services Development to production
./manage.sh logs [svc] Tails live logs (watchdog, pipeline, hygiene, quark, queue) Debugging / audit