legacy-arrflix/processes/README.md
s8n 43f55643be processes/subtitles: v3 Addic7ed fetcher + AD 49/58 subbed
Adds lib/sub-a7d-fetch.py: free, no-daily-cap path via subliminal's
addic7ed provider (anonymous). Uses OpenSubtitles REST search-only (no
quota cost) to translate library S/E to the show's primary catalogue
numbering, then drives subliminal to download from Addic7ed and writes
sidecars direct to nullstone via SSH.

Picker quirks: subliminal series-name matcher is broken by '!' in the
title, so the script strips it before building the synthetic
Video.fromname() string. OS feature_details S/E happens to align with
Addic7ed's indexing for the test show (American Dad).

Recipe README now reflects three paths in cheapest-first order: v3
Addic7ed, v2 OS REST (20/day), v1 plugin. American Dad run log updated
to 49/58 (S01 7/7 v1, S02 16/16 mixed v2/v3, S03 16/19 v3, S04 10/16
v3). 9 misses identified, deferred to next OS REST quota window.
2026-05-09 23:31:10 +01:00

1.2 KiB

processes/ — repeatable acquisition workflows

This folder holds the canonical recipes for acquiring external content for the ARRFLIX library: subtitles, artwork, metadata, episode stills, etc. Internal ops (encoding, importing, theming) stay in bin/ and docs/.

Each process is its own sub-folder with three files:

File Purpose
README.md The canonical recipe. Step-by-step, executable by Claude Code. Always reflects the latest version.
CHANGELOG.md Why the recipe changed, version-by-version. One entry per breakage that forced a revision.
runs/<show>.md Evidence log: what happened when this recipe was applied to a specific show.

Recipes evolve via the iteration model: apply to a show, succeed or break, amend the recipe to handle the new case + every prior case, retry. A recipe that "just works" is one that has survived every show in the library without amendment for a full sweep.

Children

Process Status Last touched
subtitles/ v3 — Addic7ed (free, no daily cap) added as primary, OS REST as fallback. AD 49/58 subbed; remaining 9 land via OS REST after quota reset 2026-05-09