- workload_accounts: gn-media (GID 970), gn-download (983), gn-dashboard (984);
gn-media als primäre Gruppe der Pipeline-Konten — AUTH_SYS ueber NFSv4 wirkte
serverseitig nicht mit Supplementary-Gruppen (Betriebsbefund 30.10.2026);
Sudoers des Deploy-Kontos auf (ALL:ALL) verbreitert (become_user)
- video_encoding: NFS-Client, Mount-Unit und Pipeline-Layout auf dem Export
(10.0.0.2:/media/datenhdd3/Encoding -> /var/lib/ghostnet-pipeline, ausserhalb
der Homes); Layout-Anlage als Dienstkonten wegen root_squash; Verifikation
der Verzeichnisrechte als gn-encoding (2777/2770/0750/2750, Gruppe 970)
- pve_media_cron: Legacy-Crontab (chown root:root + chmod -R 0777 auf allen
Medienplatten, alle 10 min) entfernt — haette jedes echte Berechtigungsmodell
plattgewalzt; Backup unter /var/backups/ghostnet/pve/; verify-production
prueft das Fehlen ab
- verify-pipeline-handover.yml: Handover-Simulation über alle Identitaeten
(CT-101-.dlc-Drop -> gn-download -> queue -> gn-encoding -> output/state ->
gn-dashboard); einmal vollstaendig bestanden (30.10.2026)
- Doku: GNENC-000/001/002, GNAI-017 (6.10/6.11), GNMON-001 auf Stand gebracht
Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
Drei HandBrake-Presets (SVT-AV1 10-bit, MKV, Audio-Passthrough) versioniert
unter llm-server/encoding/profiles/; Profilwahl ueber gleichnamige Ordner
unter input/. Gemeinsamer NFS-Mount mit input/- und output/-Unterverzeichnissen.
Input-Loeschung nach Encoding und Validierung, Output bis Abholung, work/ pro
Lauf. Dashboard-Endpunkte fuer Fortschritt und Ressourcen als Statusanzeige.
Eigene Programme liegen kuenftig unter llm-server/encoding/scripts/.
GNENC-000/001 aktualisiert.
Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
llm-server/encoding/ansible/ verwaltet mit video-encoding.yml und der Rolle
video_encoding den CPU-Only-Grundzustand des gesperrten Kontos gn-encoding
(UID/GID 982): Konto-Identität und Passwortsperre, subordinate ID-Bereiche,
Verzeichnisstruktur, Quadlet-Verzeichnis, Linger, getrennter rootless
Podman-Store sowie verwehrter GPU-Zugriff (keine render/video-Gruppe, kein
Lesezugriff auf /dev/kfd oder DRM-Render-Nodes). Ohne beschlossene
Encoder-Entscheidungen stellt die Rolle sicher, dass kein Workload definiert
ist. Check-Mode und zwei Läufe auf ghostnet-ki: jeweils ok=30 changed=0
failed=0. Preflight, host.yml (2x ok=55 changed=0) und ROCm-Probe
(ok=33 changed=0) nach der Projekt-Aufteilung erneut bestanden.
GNENC-000/001, GNAI-000 und GNAI-013 aktualisiert.
Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>