doc 27: status snapshot 2026-05-09 visual

Visual status board: symptoms killed (8/8), roadmap (done /
pending / high / medium / deferred / strategic), library codec
matrix, repo file tree, next-click. Point-in-time after doc-26
incident closed. For ongoing roadmap see ROADMAP.md.
This commit is contained in:
s8n 2026-05-09 02:23:53 +01:00
parent e1720e3cb5
commit f0a2ac6450

View file

@ -0,0 +1,132 @@
# 27 — ARRFLIX status snapshot (2026-05-09 02:15 UTC)
Point-in-time visual status after doc-26 incident. For ongoing roadmap see
`ROADMAP.md`. For incident detail see `docs/26-incident-2026-05-09-...md`.
```
┌─────────────────────────────────────────────────────────────────┐
│ ARRFLIX arrflix.s8n.ru · Jellyfin 10.10.3 · nullstone │
│ HEAD e1720e3 @ git.s8n.ru/s8n/ARRFLIX · 20Mbps cap · 12 users │
└─────────────────────────────────────────────────────────────────┘
```
## Symptoms killed this session (8/8)
```
[✓] Page Unresponsive INC1 index.html drift revert
[✓] No previews INC1 :has() transparent-scope
[✓] Posters black INC1
[✓] Abspielen German INC1 Cineplex CSS content: override
[✓] Backdrops black INC1+INC2+INC3 pin :fixed + sub-section transparent
[✓] Black band carousels INC4 .emby-scroller transparent
[✓] Slow first-frame (4K HDR) INC4 EnableTonemapping=false + 20Mbps cap
[✓] Grey scrollbar strip INC5 ::-webkit-scrollbar themed
[✓] MNS AV1 black INC5 re-encode H.264/AAC sources
[~] MNS fmp4-HLS black again INC6 Clear-Site-Data:"cache" — verify pending
```
## Roadmap
```
┌─ DONE this session ──────────────────────────────────────────────┐
│ ✓ docs/26 incident post-mortem (1500+ lines, 5 iterations) │
│ ✓ bin/headless-test.py + headless-test-v2.py (multi-user+Play) │
│ ✓ bin/apply-26-incident-fixes.sh (idempotent re-apply INC1-5) │
│ ✓ web-overrides/index.html INC5 fmp4=false shim │
│ ✓ branding.xml INC1-5 CustomCss patches │
│ ✓ encoding.xml throttling+segdeletion+tonemapping all off │
│ ✓ 12 user policies @20Mbps cap │
│ ✓ MNS S1E2/E4/E5 AV1→H.264 re-encode (originals @ /tmp .bak) │
│ ✓ 18-item don't-repeat checklist │
└──────────────────────────────────────────────────────────────────┘
┌─ PENDING verification ───────────────────────────────────────────┐
│ ⧗ INC6 Clear-Site-Data wipes user cache → fresh shim → MNS plays │
│ then: remove clear-cache-only middleware │
└──────────────────────────────────────────────────────────────────┘
┌─ HIGH-VALUE OPEN (next session) ─────────────────────────────────┐
│ H1 OpenSubtitles creds (owner sign up at .com) │
│ H2 GPU transcode (nvidia driver + container toolkit + SecureBoot)│
│ → unlocks 4K HDR realtime instead of 0.5x │
│ H3 Off-host backup of /home/docker/jellyfin/config │
└──────────────────────────────────────────────────────────────────┘
┌─ MEDIUM-VALUE OPEN ──────────────────────────────────────────────┐
│ M1 Library AV1 sweep + Sonarr/Radarr penalty so future grabs │
│ don't re-trigger jellyfin#15646 │
│ M2 4K HDR pre-transcode batch (R&M masters → 1080p H.264 SDR) │
│ M3 v2 test allowlist: filter off-viewport (#reactRoot y=-490 │
│ and .mainDrawer x=-320 false-positives) │
│ M4 Promote /tmp/*-av1-original-*.mkv.bak to real archive dir │
│ M5 Per-library themes (Movies=Netflix, Anime=Crunchy, Music=Spo)│
│ M6 PWA manifest bind-mount (kill "Jellyfin" name on Android) │
└──────────────────────────────────────────────────────────────────┘
┌─ DEFERRED (with reason) ─────────────────────────────────────────┐
│ ⊘ Pixel-perfect Netflix/Crunchy/Spotify per-library — needs 3 │
│ separate Jellyfin instances, ~100x maintenance │
│ ⊘ Custom Jellyfin Docker image — bind-mount works │
│ ⊘ 4 TB HDD activation — wait for library > 500 GB │
│ ⊘ Jellyfin-Vue web client — would replace whole UI │
└──────────────────────────────────────────────────────────────────┘
┌─ STRATEGIC (separate planned migrations) ────────────────────────┐
│ ⚑ 10.11.8 upgrade (CVE coverage + TMDB scrape #14922 fix) │
│ Plan: dev first, EF Core DB migration snapshot, theme swap │
│ Cineplex→ElegantFin (10.11 supported), promote prod │
│ ⚑ FlexHub/Forgejo CI: lint compose, shellcheck bin/, render docs │
│ ⚑ ARRFLIX wordmark high-res for splash (currently 235x85 soft) │
└──────────────────────────────────────────────────────────────────┘
```
## Library
```
TV eps codec DirectPlay
Futurama S1-S4 72+9 1080p HEVC transcode→x264
American Dad S1-S4 58 1080p ✓
Rick&Morty S1 11 4K HEVC HDR transcode (slow until M2)
Maul S1 10 1080p ✓
Obi-Wan S1 6+4 1080p ✓
Mike Nolan S1 2-5 1080p H.264 ✓ (just re-encoded INC5)
Mandalorian S1-S3 18/24 - scrape in flight
Movies
Dark Knight 2008 4K HEVC HDR transcode
Hulk 2008 1080p ✓
Idiocracy 2006 1080p ✓
```
## Files in repo
```
ARRFLIX/
├── docker-compose.yml ← jellyfin/jellyfin:10.10.3 + Traefik labels
├── compose-dev/ ← jellyfin-dev sibling
├── web-overrides/
│ ├── index.html ← INC5 enableHlsFmp4=false shim + ARRFLIX brand
│ └── ENGLISH-LOCKDOWN.md
├── bin/
│ ├── add-jellyfin-user.sh ← canonical user creation
│ ├── apply-26-incident-fixes.sh ← idempotent INC1-5 re-apply ★ NEW
│ ├── force-english-all-users.sh ← (now superseded by Cineplex CSS fix)
│ ├── headless-test.py ← v1 smoke test
│ ├── headless-test-v2.py ← v2 multi-user+click-play+bg-sweep ★ NEW
│ └── inject-shim.py
├── docs/
│ ├── 00-overview.md
│ ├── 01..25-*.md ← prior audits + research docs
│ ├── 26-incident-2026-05-09-page-unresponsive-and-playback.md ★ NEW
│ └── 27-status-snapshot-2026-05-09.md ★ THIS DOC
├── ADMIN-GUIDE.md
├── ROADMAP.md
└── README.md
```
## Next click
```
1. Hard-reload browser → MNS S1E4 → confirm plays
2. Tell me: works → I remove INC6 Clear-Site-Data middleware
3. Plan B: 10.11.8 + ElegantFin migration on dev (~45 min)
```