hermes-erkenntnisse/nachtplan-2026-07-21.md

54 KiB
Raw Blame History

🌙 NACHTPLAN v7 — Stand 2026-07-20, 13:00 CEST

Kontext: VM302 (A40 KI-Workstation, Kansas City) + gpu1 (Modell-Server, ZFS→M:/R:) + Portal cp.go-ki.eu (VM201). Regel: nur GETESTETE Erledigungen mit Beweis. Nichts „fertig" ohne Verifikation.


🔆 TAGESBLOCK v8 — 2026-07-21 (aktueller Stand oben, Historie v7 unten unverĂ€ndert)

✅ STAND ~12:45 — HEUTE ERLEDIGT

  • Virginia-Server gelöscht + aufgerĂ€umt (−59€/Monat) #25 · Hub MCP+Qdrant stabil + Watchdogs #26 · Hub-Disk aufgerĂ€umt (96%→80%)
  • Vaultwarden gefixt (Key ersetzt, MCP schreibfĂ€hig) #29 · Token-Refresh "immer eingeloggt" BEWIESEN (rolling tokens, 20min-Pump, Reinjection-Fix) #30
  • Bridge-Umzug Hub→go2ki.eu (4/5 stabil eingeloggt) + Doku Forgejo/Obsidian/docs #33 · Charakter-Bibliothek konzipiert #31
  • Turnaround Arme-Fix #20 · Portal-SicherheitslĂŒcke (13 offene Hermes-Endpunkte) + 3 Bugs GEFIXT
  • Pseudo-Ergebnis-Watcher (45s-Regel jetzt echter Mechanismus, nur-Log) #35
  • Master-Gate fĂŒr ALLE Content (Bild/Video/Audio → Staging→Master-Sichtung→_approved→Matrix; Watcher postet nur GeprĂŒftes)
  • casual-Outfit fotorealistisch freigegeben (erstes Studio-Bild durchs Gate) · Mammouth-PWA-Machbarkeit bewiesen (Qolaba 4/4)

✅ STAND ~21:42 — Reboot-Persistenz VM302 (GETESTET, KEIN Reboot durchgefĂŒhrt)

  • AtStartup-Trigger ergĂ€nzt bei 6 Tasks, die vorher keinen Trigger hatten (WasabiSync-VideoTransfer, WasabiSync-U525566, ModelMigrationToM, Barby-MatrixWatcher, Barby-ModelSync, Barby-Heartbeat): Original lĂ€uft als mcp/Password-Logon — ohne das mcp-Passwort ließ sich der Trigger dort NICHT direkt nachtragen (Windows verlangt bei jeder Neuregistrierung eines Password-Logon-Tasks das Passwort erneut, auch ĂŒber COM/S4U kein Weg ohne Kennwort). Stattdessen je ein SYSTEM-Begleit-Task <Name>-AtBoot angelegt (Get-ScheduledTask bestĂ€tigt: alle 6 jetzt Ready, Boot-Trigger, 45s Delay, Restart 3×/1-2min, StartWhenAvailable).
  • Barby-PseudoWatcher + BarbyOutputSync (liefen schon als SYSTEM): AtStartup-Trigger direkt nachgetragen (kein Passwort nötig), zusĂ€tzlich Restart-on-failure 3×/1min + StartWhenAvailable — bestehender Zeit-Trigger blieb erhalten, laufende Instanz (BarbyOutputSync) nicht gestört.
  • Idempotenz geprĂŒft: rclone copy (Wasabi-Jobs) + robocopy ohne /MIR (ModelMigrationToM) kopieren beide nur Deltas — ein Neustart nach Reboot setzt sauber fort, ĂŒberspringt fertige Dateien. Kein Skript-Umbau nötig.
  • Neu: M:\boot-resume.ps1 + Task Barby-BootResumeOrchestrator (SYSTEM, AtStartup, 2min Delay). PrĂŒft bei jedem Boot: (1) ModelMigrationToM fertig? sonst Re-Run, (2) Wasabi-Ziel<Quelle? sonst Start-ScheduledTask, (3) ComfyUI-Orchestrator (Port 8197) abgebrochene Jobs → Report nach M:\boot-resume-pending-jobs.json (kein Auto-Resubmit, GPU-Kosten). Dry-Run erfolgreich getestet (2026-07-21 21:30): erkannte korrekt WasabiSync-VideoTransfer Ziel=133GB/Quelle=2,3TB (lĂ€uft, nicht angefasst), WasabiSync-U525566 Ziel=210GB/Quelle=225GB (wĂŒrde neu starten), 1 abgebrochenen Renderjob gefunden+gemeldet.
  • LÜCKE (gemeldet, nicht selbst behoben): AutoAdminLogon=0 (Registry) — nach Kaltstart-Reboot ohne AutoLogon kommt keine interaktive Session hoch, daher bleiben die Logon-getriggerten Mounts R:\ (WasabiMount, mcp-Logon) und Z:\ (RcloneMountStorageboxes, matthias-Logon) leer, bis sich jemand einloggt → ModelMigrationToM findet Quelle nicht, bis Login erfolgt oder AutoLogon gesetzt wird. Vorschlag: AutoAdminLogon=1 + DefaultUserName/-Password fĂŒr mcp setzen (NICHT selbst umgesetzt — Passwort-Registry-Eintrag braucht BĂ€r-OK).
  • Gesamtstatus: JA, mit einer RestlĂŒcke. Nach Reboot laufen alle geprĂŒften Jobs/Dienste automatisch weiter — außer ModelMigrationToM (blockiert an R:/Z: ohne AutoLogon).

🔄 NOCH OFFEN (lĂ€uft im Schwarm / wartet)

# Was Status
#17 Video-Kette: v4-Standbild (Ganzkörper+dezent) → Wan2.2 → HD-Lipsync → deutscher Ton 🟱 lĂ€uft, Master-Gate
— Outfits business/dessous/bikini + sexy-redo (photoreal v3) 🟱 lĂ€uft
— Deutsche Stimme edge-Katja akzentfrei final (STT-geprĂŒft) 🟱 lĂ€uft
#32 Wasabi V/S: GerĂŒst steht (Bucket+pm1-VM), 2,3TB-Sync fließt noch nicht 🟡 Sync anlaufen
#27 Gemini-Bild-Beweis (/gemini/image timeout) + Suno-Captcha (oder lokale Musik) 🟡
#31 Charakter-Bibliothek generieren: Nerd/Businessman/Reporter/Passant + Whiteboard + Schulklasse ⏞ nach Video
#28 Modelle auf M: konsolidieren ⏞ wartet Platz-Zahlen+GO
#24 Portal-Wasabi-Anzeige anpassen ⏞ nach Storage-GO
#14 Finaler VISUELLER Studio-Voll-Klicktest (jede Funktion + Ergebnis-QualitĂ€t) ⏞ GANZ AM ENDE
#34 DERP-DE auf gw-de (KapazitĂ€t) ⏞ niedrig
#23 REZEPT Z9 docs.consoro.it ⏞ nach allen Fixes

🙋 [BÄR]-AKTIONEN offen

  • Mammouth: Kaufentscheidung (Machbarkeit bewiesen) — bei Kauf einmal per noVNC im Container einloggen
  • Wasabi: Kontoart in der Console prĂŒfen (90-Tage pay-as-you-go vs 30-Tage RCS) fĂŒr die Löschkosten-Frage

đŸ—„ïž STORAGE-ENTSCHEIDUNG FINAL (BĂ€r 2026-07-21)

  • Modelle NUR auf echtem lokalem Laufwerk M: (VM302-NVMe) — KEINE Netzwerkshares (nicht Storagebox/Z:, nicht gpu1-Samba/R:, nicht gpu1-8TB, nicht Wasabi). Falls M: zu klein (~310 GB frei): M: vergrössern (qm resize). → Task #28.
  • V: und S: = direkte rclone-Mounts auf VM302 zur Storagebox (u618602: video-transfer, u525566:), UNABHÄNGIG von Virginia. + rclone copy B:\→u618602:barby-outputs (Output-Backup). Bleiben so, brauchen kein Wasabi.
  • Virginia/DERP-USA-Server (59€): GO zum Löschen — nachweislich ungenutzt (Cache 5 Tage 0, VM302 nutzt Samba nicht, DERP-US kein aktives GerĂ€t, KASM redundant auf vm246). Agent bereitet vor (Doku→Forgejo, DERP-Map, dann BĂ€r löscht Panel). → Task #25. Ersparnis −59€/Monat.
  • Wasabi: Echtzeit-Löschen bestĂ€tigt JA (Object Lock aus, PUT/GET/DELETE sofort getestet). Neue gĂŒltige Keys im Forgejo (barby/claude-config secrets/wasabi.md, Commit 0fbc580). FĂŒr Modelle + V/S NICHT nötig — bleibt nur OPTIONALES Offsite-Backup.

🔄 LAUFENDER SCHWARM + ALLE OFFENEN TASKS (Stand 2026-07-21, Nachverfolgung = Task-Liste, nicht GedĂ€chtnis)

Task Strang Modell Status
#25 DERP-USA abschalten + doku→Forgejo sonnet 🟱 lĂ€uft
#26 Hub-StabilitĂ€t MCP+Qdrant+Watchdogs sonnet ✅ FERTIG — Waisen-Prozess hielt Port 8101 (41k Restarts seit 18.07.), gefixt + Watchdog 3min. Qdrant war nie down. ⚠ Hub-Swap 100% voll (KapazitĂ€t vor Mammouth prĂŒfen)
#27 Gemini + Suno PWA-Beweise sonnet 🟱 lĂ€uft
#17 Studio-Showcase text2img→Voice-Clone→Lip-Sync Opus 🟱 lĂ€uft
#20 Turnaround Arme-Fix + Hunyuan3D Opus 🟱 lĂ€uft
#28 Modelle auf M: konsolidieren — ⏾ wartet Platz-Zahlen+GO
#14 Portal Klick-Fix-Test + Wasabi-Anzeige finden (#24) sonnet 🟱 lĂ€uft
#29 Vaultwarden-Schreibzugang + Wasabi-Key ersetzen sonnet 🟱 lĂ€uft
#30 Token-Refresh-Automatik alle PWA-Bridges (Mammouth-Kern) 🔮 sonnet 🟱 lĂ€uft
#24 Portal Wasabi-Storage-Anzeige anpassen — ⏾ nach Storage-GO
#23 REZEPT Z9 docs.consoro.it — ⏾ nach allen Fixes
  • ✅ HEUTE FERTIG: Qolaba 4/4 (Chat+Bild+Audio+Video), Wasabi-Echtzeit-Test, Keys→Forgejo, Auto-Sync #22, Portal-Shadow #21, Portal-P2.
  • ⚠ [BÄR] offen: Qolaba-Refresh-Token lĂ€uft 2026-07-22 13:00 UTC ab (noVNC-Login nötig) · Vaultwarden-Wasabi-Key manuell ersetzen · Virginia-VM im netcup-Panel löschen (nach Agent-GO).

⚖ MAMMOUTH-AI-ENTSCHEIDUNG — steht an, klarer Trigger (BĂ€r 2026-07-21)

DEC-Trigger: Sobald Gemini UND Suno je einen echten Beweis (Bild/Song) in Matrix haben, treffen BĂ€r + ich die Mammouth-Entscheidung. Qolaba ist bereits belegt.

  • Zweck von Mammouth: laut BĂ€r maximal als Fallback (Chat/Bild), NIE fĂŒr Video (Video bleibt immer lokal Wan2.2/A40).
  • Steuerung: ausschliesslich ĂŒber PWA (Monats-Kontingent des Abos $12/24/72), NIE ĂŒber API (nur winzige Credits). BĂ€r kauft NICHT, bevor PWA-Steuerung zu 100% bewiesen ist.
  • Beweislage PWA-Machbarkeit (baugleiche Bridges = derselbe Mechanismus wie Mammouth):
    Dienst Bridge Beweis Matrix
    Qolaba ✅ lĂ€uft ✅ Bild (qolaba_test_lighthouse.png) + ✅ Audio (qolaba_test_greeting.wav) ✅
    Gemini ⏳ ⏳ (war ausgeloggt — Bridge-Strang arbeitet) offen
    Suno ⏳ ⏳ (Captcha — Bridge-Strang arbeitet, ggf. noez-Proxy) offen
  • Zwischenfazit: Qolaba beweist bereits, dass PWA-Steuerung technisch trĂ€gt (Bild + Audio). FĂŒr die Kaufentscheidung fehlen noch Gemini + Suno als BestĂ€tigung der Robustheit ĂŒber mehrere Dienste.
  • Meine Empfehlung (Stand jetzt): noch nicht kaufen — erst Gemini+Suno-Beweise abwarten; die PWA-Sessions sind fragil (laufen ab, Captchas), deshalb muss Robustheit ĂŒber >1 Dienst belegt sein, bevor Geld fliesst.

✅ Heute erledigt/verifiziert (2026-07-21)

  • Portal P2-Blocker GELÖST — /api/orchestrate auf VM302:8197 antwortet 200 (war 404). Proof-Job 7d70ed937d lief Portal→Orchestrator→GPU→Datei→Matrix (08:31). „Video Erstellen"-Knopf erreicht jetzt den Orchestrator.
  • Lokale Multi-Segment-Videokette — 3-Segment-Wan2.2-Kette 14b6370bfd (seg01/02/03) komplett in Matrix. Kern von P4b lokal belegt.
  • Matrix-Regel strukturell erzwungen — Barby-MatrixWatcher (mcp, alle 2 Min) postet jede neue B:-Datei automatisch, fĂ€ngt sogar 429-Limits ab und postet nach. Plus Barby-Heartbeat (60 s). → goldene Regel „alles nach Matrix" hĂ€ngt nicht mehr an Worker-Disziplin.
  • P9/#21 Video-Shadow-Tab — 3-fach verifiziert bereits erledigt (Tab im UI weg, 16 andere Tabs heil, Shadow-Backend unberĂŒhrt: 7 Routen antworten 401 nicht 404). Portal-Frontend liegt auf VM201 /opt/gpu1-status/app.py (nicht VM302!).
  • 4 Barby-Master komplett in B:\barby\masters\ — casual/elegant/sexy-sfw + nude (832×1216, native SDXL). Alle rein fiktiv/synthetisch (BĂ€r bestĂ€tigt).

🔒 Neue bindende Regeln (2026-07-21)

  • Barby-Studio-CONTENT-Jobs laufen auf Opus 4.8 (text2img/Lip-Sync/TTS/Video/3D). Reine Infra (Bridge/Config/Portal-Wartung) bleibt sparsam (haiku/sonnet). Ersetzt fĂŒr Content die „billigstes Modell"-Regel.
  • Video-Generation IMMER nur lokal (Wan2.2/A40). Cloud-Video-Fallback (R4) bleibt baubar, feuert aber NIE selbst — nur mit BĂ€rs Einzel-OK.
  • Bridges (Mammouth/Qolaba/Gemini/Suno) nur befristet bis Nachtplan-Ende, danach je Nutzung BĂ€r-Zustimmung.
  • ParallelitĂ€t: GPU-Jobs max 2-3 (die eine A40), Nicht-GPU breit. Ersetzt „max 3 Tasks".

🔄 Laufender Agenten-Schwarm (2026-07-21)

  • Bridge + PWA-Beweise (sonnet) — Qolaba ✅, Gemini/Suno offen, Bridge-Host-Adresse (gpu-pc 100.109.177.88, NICHT veraltet .82.179.51).
  • Studio-Showcase-Kette #17 (Opus) — Portal text2img → lokales TTS mit Voice-Clone der Qolaba-Stimme (BĂ€r fand Qolaba-Audio besser → wir klonen es lokal, Ref B:\audio\qolaba_test_greeting.wav, Ziel christina_voice_local_v1.wav A/B) → Lip-Sync Ganzkörper → Video. Rein synthetische Figur, keine reale Vorlage.
  • Turnaround + Hunyuan3D #20 (Opus) — A2 Turnaround war schon belegt, jetzt 3D-Mesh + Multi-View.
  • Auto-Sync Modelle → Hermes #22 (haiku) — neue lokale Modelle automatisch in Hermes.

📌 Offen (Reihenfolge)

  1. Gemini + Suno PWA-Beweise → dann Mammouth-DEC
  2. Studio-Showcase-Kette fertigstellen (Voice-Clone-Vergleich → BĂ€r hört lokal vs. Qolaba)
  3. Lip-Sync-Fix in der Kette (Crop→Upscale→Wav2Lip→Composite)
  4. 3D/Hunyuan3D + Auto-Sync abschliessen
  5. A7 fremder Charakter · #23 REZEPT Z9 (nach allen Fixes) · #14 Voll-Klicktest cp.go-ki.eu (GANZ AM ENDE, BÀr-Vorgabe)

🎯 GESAMT-ZIEL

Barby KI Studio = komplette Kreativ-Suite, so nah an Veo wie möglich, ALLES ĂŒber cp.go-ki.eu steuerbar. Kette: Prompt (Mini-Drehbuch) → text2img/Charakter → Assets (Turnaround/3D/freigestellt/Props) → LoRA → Szene → Wan2.2-Video → deutsche Stimme → Lip-Sync → alles im Portal, Veo3-einfach.


✅ ERLEDIGT & VERIFIZIERT

Barby KI Studio — Kreativ-Kette

  • Charakter-Konsistenz GELÖST — IPAdapter PLUS FACE weight 0.6 + lustify_endgame + barby_final.png → photorealistischer Ganzkörper, konsistent (inline verifiziert). Kein insightface nötig.
  • text2img / Bilderzeugung — Lustify / ponyRealism / realisticVision / FLUX. Endpoints /api/text2img, /api/barby.
  • Undress-Pipeline — denoise 0.9 → sauber, keine Artefakte (inline verifiziert)
  • Masken/Inpaint-Stack 11/11 — SAM/SAM2/Grounding-DINO/ClipSeg/Impact/Fooocus/IPAdapter/segformer
  • Wan2.2 I2V Video — scharf, charakterkonsistent, echte Bewegung, Ganzkörper. Massiv besser als LTX (inline verifiziert)
  • Deutsche Stimme — edge-tts Katja + Seraphina, hochdeutsch weiblich
  • Studio-GUI Port 8502, /health ok
  • RMBG-Freistell-Node geladen — Modelle RMBG-2.0 · INSPYRENET · BEN · BEN2, AusgĂ€nge IMAGE/MASK/MASK_IMAGE
  • Modelle auf gpu1-ZFS-Dataset → M:/R: via Samba (117 GB+), ComfyUI liest sie

Infra & Netzwerk

  • 🔒 KRITISCHE SICHERHEITSLÜCKE GESCHLOSSEN — VM302 hatte keine Firewall (Windows-Profil „Private" disabled, öffentliche NIC darin). ComfyUI/Ollama/Studio/LiteLLM waren unauthentifiziert aus dem Internet erreichbar. Fix: Proxmox-Firewall, nur VM-Ebene gefiltert, Hosts offen.
  • ⚡ Tailscale Relay → DIREKT — Ursache: fehlender UDP-41641-Forward auf gpu1. Fix: DNAT + portwahrender SNAT. 162 ms/40 ms-Jitter → 127 ms/0,8 ms.
  • ⚡ VM302 RSC-Tuning — Recv Segment Coalescing war an (Latenz-Killer). Abgeschaltet → −7 ms netto, Abstand zu blankem Blech 9,1 → 2,0 ms.
  • đŸ›Ąïž fail2ban auf gpu1 + pm1, Whitelist aller bekannten Hosts, 3 echte Angreifer sofort gebannt
  • Nextcloud data.ki1.it 64✓ 6â„č 0⚠ 0✗ · Mail data@ki1.it · 24 GB RAM/8 vCPU
  • n8n 2.30.7 verkabelt, alle VM302-Endpoints aus Container erreichbar (Owner-Setup offen → BĂ€r)
  • KASM auf 159.195.19.76, nur rdp.ki1.it, LE-Zert, Admin-User matthias
  • Moonlight/Sunshine gefixt → ❌ war voreilig — siehe Moonlight/Apollo-Block unten. Kopplung gelöst, Bild unbrauchbar, auf BĂ€r-Wunsch abgebrochen
  • Portal-Architektur entschlĂŒsselt — cp.go-ki.eu → npm-vm → VM201:9090, FastAPI-SPA /opt/gpu1-status/app.py. Admin-Tab-System gefunden: Link-Tabs ohne Code-Edit möglich.
  • Matrix-Ergebnisversand — Raum + Poster getestet (Text + Bild gepostet)
  • VIDEO-Shadow-API archiviert → Forgejo barby/shadow-bulletproof
  • Skill-Verteilung gebaut (gab es fĂŒr Claude Code vorher nicht) + Skills tailscale-admin, berlin-time
  • Desktop-Steuerung pyautogui :3336 verifiziert (Screenshot inline)

🔒 NETZWERK-THEMA GESCHLOSSEN (2026-07-20) — Endstand

BĂ€r-Entscheidung: Thema beenden, zurĂŒck zum Studio. Alles gemessen, nichts weiter zu holen.

Finale Latenz-Wahrheit: direkt 121 ms (aus RZ) · 130 ms (nas2/Starlink) · 150 ms (BÀrs Client)

Variante Ergebnis
Direkt ✅ Bestwert
Cloudflare-Tunnel +35
80 ms (mein 90-ms-„Gewinn" war ein Messfehler — Spielzeug-Testserver)
Netcup-DE-Relay (gw) +15 ms
Netcup-Virginia +9 ms
NordVPN Meshnet ≈ Tailscale, ±0 (funktional dasselbe)
Multi-Routing-Broker ❌ nicht bauen — Tailscale macht es bereits
RSC-Tuning auf VM302 ✅ −7 ms — der EINZIGE echte Gewinn des Tages

FĂŒr 5–10 €/Monat gibt es nichts, das hilft. Einziger echter Hebel wĂ€re eine GPU-Maschine in Europa (~10–30 ms statt 121). RDP-Gateway-Frage GELÖST — er existiert bereits: kasm.consoro.eu (vm246, 103.241.51.104) lĂ€uft KASM 1.18.1 seit 5 Monaten — inkl. kasm_rdp_gateway + kasm_rdp_https_gateway. Also: keine neue VM buchen, kein rdpgw+OIDC bauen, VM NICHT plattmachen (BĂ€r hielt sie irrtĂŒmlich fĂŒr frei). Und sie steht am bestgepeerten Ort (IP-Projects, 111 ms → gpu1). Zugang: von jump per ssh kasm.consoro.eu (SSH-Config dort vorhanden, Key /root/.ssh/id_ed25519; per IP schlĂ€gt es fehl — Hostname nutzen!). BĂ€rs Anschluss ist Starlink (SpaceX-IP) → systembedingter Jitter, nicht wegoptimierbar.

🔌 VERBINDUNGS-WAHRHEIT (2026-07-20 ~17:00, aus dem Anmeldeprotokoll belegt)

16:10:57  Sitzung 4 (matthias)  von 185.229.59.123   ← NordVPN
16:39:44  Sitzung 4 (matthias)  von 9.246.41.123     ← Starlink, aktuell
          Sitzung 3 (mcp)       von 100.87.20.94     ← Hub ĂŒber Tailscale

⚠ BĂ€r geht NICHT ĂŒber Tailscale, sondern roh ĂŒber Starlink. Tailscale lĂ€uft, wird von RDP aber nicht benutzt: Verbindung auf den öffentlichen Namen → öffentliche IP → Tunnel bleibt ungenutzt. Ein laufendes Tailscale sammelt keinen Verkehr ein, es routet nur, was an seine Adressen adressiert ist. FĂŒr den Tunnel mĂŒsste er sich auf 100.104.5.57 verbinden statt auf rdp.go-ki.eu. Ungetestet — Vergleichsmessung steht aus. BĂ€rs Latenz ist von VM302 aus NICHT messbar: ICMP filtert Starlink · TCP zurĂŒck geht nicht (kein lauschender Port) · RemoteFX-ZĂ€hler fehlen auf der Maschine. Messung nur von BĂ€rs Seite möglich; Weg-Nachweis ĂŒber das Anmeldeprotokoll (100.x = Tunnel, sonst öffentlich). Offen: 91.238.181.141 hatte eine offene 3389-Verbindung ohne zugehörige Anmeldung → im Kontext der Angriffe aus Ungarn/Moskau prĂŒfen.

⚠ Sicherheitsbefunde des Tages (alle geschlossen)

  1. ComfyUI/Ollama/Studio/LiteLLM standen unauthentifiziert im Internet → Proxmox-Firewall, nur VM-Ebene gefiltert
  2. Sunshine-Admin-Web-UI (47990) ohne Zugangsdaten öffentlich → geschlossen, nur noch Tailscale/LAN
  3. RDP-DNAT verschleierte alle Absender-IPs als 10.10.10.1 → EvlWatcher war blind bei aktiven Angriffen aus Ungarn/Moskau. DNAT auf gpu1s IP eingegrenzt, .43 lĂ€uft jetzt direkt mit echter Absender-IP
  4. Smart App Control abgeschaltet (unumkehrbar, bewusst — siehe System-Entscheidungen)

📌 MOONLIGHT/APOLLO — auf BĂ€r-Wunsch ABGEBROCHEN (2026-07-20 ~18:00)

Kopplung ✅ GELÖST · Bild ❌ nicht nutzbar. BĂ€r: „wir brechen ab".

Erstbefund korrigiert: Es lĂ€uft nicht Sunshine, sondern Apollo 0.4.6 (ein Sunshine-Fork) aus C:\Program Files\Apollo\. Beide sind installiert, Apollo besitzt alle Ports (47984/47989/47990/48010), Sunshine-Dienst gestoppt. Ich hatte stundenlang die Konfiguration der ungenutzten Sunshine-Installation gelesen — daher der Irrtum „0 gekoppelte GerĂ€te".

Befund Messwert
PIN schlug fehl Out of order call to getservercert — kein falscher PIN, hĂ€ngender Kopplungszustand. Dienstneustart rĂ€umt ihn auf → Kopplung klappte danach sofort
Apollo greift ab Microsoft Basic Display (QEMU-VGA) 1280x800 @ 1 Hz
A40 an die RDP-Sitzung gebunden (1600x1156 @ 66 Hz) — fĂŒr Apollo nicht erreichbar
Encoder libx264 Software, NVENC scheitert mit D3D11 0x887A0004 auf dem Basic-Render-Adapter
App Virtual Display leerer Zusatzbildschirm → schwarz (skip 100 %, 18 kbit/s)
App Desktop Anmeldebildschirm sichtbar (371 kbit/s, skip 76 %) — aber Mausversatz, Client- und Host-Raster verschieden
always_use_virtual_display: true → wieder schwarz → zurĂŒckgesetzt auf false

Struktureller Kern: Apollo lĂ€uft als SYSTEM in Sitzung 1 (Konsole), dort ist niemand angemeldet. BĂ€r sitzt in Sitzung 4 (RDP). Eine Sitzung ohne angemeldeten Benutzer hat keinen Desktop zum Abgreifen. ⚠ Falle: Anmeldung als matthias am Konsolen-Anmeldebildschirm wĂŒrde wegen fSingleSessionPerUser=1 die RDP-Sitzung an die Konsole holen = BĂ€r fliegt aus RDP. FĂŒr Moonlight wĂ€re ein eigener Benutzer nötig.

Stand jetzt: Apollo lĂ€uft, Kopplung erhalten, Konfiguration zurĂŒckgesetzt, Debug-Log aus. Sicherung sunshine_state.json.bak-vor-vd. Wenn wieder aufgegriffen: eigener Benutzer fĂŒr die Konsolensitzung + virtuelles Display auf den A40 binden (dann erst NVENC). apps.json verweist noch auf alte Sunshine-Pfade (sunshine.ki1.it:47990) — bereinigen, sobald entschieden ist, welche der beiden Installationen bleibt. RDP bleibt BĂ€rs Zugang („ohne RDP keine Chance").

🔬 ROUTING-FRAGE ABSCHLIESSEND GEKLÄRT — nicht nochmal aufrollen

Frage: Bringt ein RDP-Gateway / Relay Geschwindigkeit? Antwort: NEIN. Drei unabhÀngige Beweise:

  1. Traceroute: beide Wege ĂŒber dasselbe Tier-1-Backbone (Arelion/Telia). Direkter Pfad DE→Kansas City ohne Umweg, Zielnetz ab Hop 13. Keine Ineffizienz zum Ausnutzen.
  2. Echter RDP-Roundtrip: direkt 142 ms · ĂŒber gw 270 ms (davon ~130 ms einmaliger Extra-Handshake) → Dauerbetrieb +15 ms.
  3. Ping: direkt 121 ms, ±2 ms Jitter, 0 % Verlust = physikalisches Optimum fĂŒr 7.000 km.

Geografie ist der Grund: Virginia = OstkĂŒste (94 ms), Kansas City = Landesinneres (121 ms). Verworfen (nicht bauen): gw fĂŒr alle 302-Ziele · Mini-VM auf gpu1 · SSH-Tunnel — alle fĂŒgen Hops zu einem optimalen Pfad hinzu. Einzige echte Verbesserung: GPU-Maschine nach Europa (~10–30 ms statt 121). Praktische Hebel: Moonlight statt RDP · WARP testweise aus · Ergebnisse per Matrix nach DE pushen statt den Ozean mehrfach zu queren.

Latenz-Matrix (gemessen von nas2 = BĂ€rs Zuhause, ohne WARP)

nas2 → ms Server → gpu1 ms
DERP-DE (Mailserver) 24,3 Mailserver 111,4 ⬅ bestes Peering
gw.ki1.it (gekĂŒndigt) 25,1 Hub 120,5
DERP-US (Virginia) 106,6 gw.ki1.it 125,6
gpu1 130–135 nas2 134,8
VM302 (nach Tuning) 132,3

🔄 IN ARBEIT — zurĂŒck im Studio

  • ✂ RMBG-Freistellen — Demo steht als NĂ€chstes an → erledigt, siehe A1 unten (ERLEDIGT & VERIFIZIERT 2026-07-20 18:00)
  • 🎬 Lip-Sync Ganzkörper — Wav2Lip scheitert (box error: Gesicht im Ganzkörper-Frame zu klein fĂŒr s3fd). Fix: Quellvideo mit Charakter groß im Frame ODER Crop→LipSync→Composite
  • 🔌 Portal-Integration — Weg klar: Studio-Link-Tab via Admin-API (kein Code-Edit) + NPM-Proxy + Whitelist via X-Forwarded-For

⏭ OFFEN — PRIORISIERT

đŸ„‡ PORTAL cp.go-ki.eu (Kern-Deliverable)

Tabs existieren bereits: Veo3 Pipeline · 💜 Barby Studio · Ton & Musik · Queue · GPU Stack · KI Chat · Video Erstellen

  • P1 ✅ ERLEDIGT & VERIFIZIERT 2026-07-20 19:20 — auth_ok() in /opt/gpu1-status/app.py (VM201) um VM302-Whitelist erweitert: TCP-Peer zuerst (nicht spoofbar), X-Forwarded-For nur als Fallback mit letztem Eintrag (nicht erstem, sonst spoofbar). Backup app.py.bak-portalagent-20260720-190534 (md5 vor Änderung geprĂŒft). RĂŒckweg vor Neustart bewiesen: Testinstanz Port 9092 hochgefahren, 4 Auth-FĂ€lle curl-getestet (ohne XFF→401, falsche IP→401, VM302-IP→200, Spoof-Versuch mit VM302-IP als 1. Eintrag→401 korrekt geblockt), erst danach systemctl restart gpu1-portal.service. Live auf Port 9090 und öffentlich ĂŒber https://cp.go-ki.eu nochmal bestĂ€tigt (ohne Login 401, mit VM302-XFF 200, normale Login-Seite unverĂ€ndert 200). ⚠ Offener Punkt: VM201 lauscht auf 0.0.0.0:9090, keine iptables-Regel fĂŒr den Port gefunden — ob eine Proxmox-Firewall (wie bei VM302) davorsitzt, konnte ich von innen nicht sehen. Falls Port 9090 direkt aus dem Internet erreichbar ist (ohne npm-vm davor), ist der X-Forwarded-For-Fallback theoretisch spoofbar (einzelner Header-Wert ohne echten Proxy-Hop davor). Bitte prĂŒfen: curl http://173.208.162.26:9090/ von außerhalb testen — wenn das antwortet, Proxmox-Firewall wie bei VM302 nachziehen.
  • P2 Veo3-einfach: ein Prompt-Feld (Mini-Drehbuch) + AnhĂ€nge → One-Click. Backend an Wan2.2 binden (nicht LTXV) 🔍 Befund 2026-07-20 19:30: UI existiert bereits fast vollstĂ€ndig (Tab „Video Erstellen", ein Prompt-Feld ve-prompt, Stil/LĂ€nge/Modell-Auswahl, bis zu 20 Materialien-Uploads, erweiterte Optionen). Modell-Dropdown hat wan22-Option bereits, defaultet aber auf das kaputte ltxv. Echter Blocker: die ganze Pipeline hĂ€ngt an einem separaten Orchestrator-Service auf VM302:8197 (/api/studio/orchestrate proxied dorthin) — von VM201 aus nicht erreichbar (curl timeout, Port scheint nicht zu lauschen). Ohne laufenden Orchestrator ist die Modellauswahl im Frontend egal. Das ist kein App.py-Fix mehr, sondern ein eigenstĂ€ndiger Backend-Dienst, der auf VM302 fehlt/steht — eigene Aufgabe.
  • P2b PROMPT ENTSCHEIDET ALLES: Bild-Anzahl 2–200 · Requisiten · Modell SFW vs. NSFW (Bikini → Lustify, brav → realisticVision) · LĂ€nge. Garantie: echte Bewegung, gleichbleibender Charakter, deutsche Sprache, keine Anomalien (keine 3-Bein-Menschen)
  • P3 ✅ ERLEDIGT & VERIFIZIERT 2026-07-20 20:32 — Studio-GUI (VM302:8502, comfyui:true im Health-Check) war im Portal nirgends verlinkt. Banner mit Live-Status-Punkt + Button „Studio-GUI öffnen" oben im Barby-Studio-Tab (loadStudio()) ergĂ€nzt, gleiche Karte zusĂ€tzlich im Links-Tab (vp-ki-links). Beide nutzen den bestehenden data-health/checkLinkStatus()-Mechanismus (Server-Side-Check gegen /api/link-check, kein Mixed-Content-Problem). Verifiziert: curl http://100.104.5.57:8502/health → {"status":"ok","comfyui":true}, Marker „P3 Studio-GUI"/„Studio-GUI oeffnen" im ausgelieferten HTML von https://cp.go-ki.eu bestĂ€tigt.
  • P4b LÄNGE = PROMPT ENTSCHEIDET: Max 2 Min → 10 Min und darĂŒber hinaus beliebig (2→2, 4→4, 35,5→35,5). Dropdown-Option „Inhalt entscheidet". Technisch: mehrere Wan2.2-Segmente → Concat
  • P5 ✅ ERLEDIGT & VERIFIZIERT 2026-07-20 20:32 — GPU-Stack-Tab (loadStackContent) zeigte bisher nur den ON/OFF-Schalter, keine Zahlen. Neuer Block „Live-Status" ergĂ€nzt: GPU (gpu-status-api :8202 ĂŒber bestehenden /api/kasm-gpu/status-Proxy), ComfyUI (/api/studio/status, system_stats), Ollama geladene Modelle (/api/studio/ollama-direct/ps). Verifiziert live gegen https://cp.go-ki.eu: {"gpu_name":"NVIDIA A40","vram_used":17986,"vram_total":46068,"temperature":26,...}, ComfyUI online, VRAM frei 26,2GB/45GB.
  • P6 KI-Chat: große Coding- + unzensierte Modelle · Befund: /api/chat/models fragt bereits dynamisch /api/tags ab (kein Hardcoding) — 10 echte Modelle live bestĂ€tigt (dolphin-mixtral, deepseek-r1:32b, qwen3:32b, qwen2.5-coder:32b, codestral, devstral, deepseek-coder-v2 u.a.). Hermes-im-Dropdown blieb offen (nicht Teil des P3/P5/P7/P10/P11-Auftrags).
  • P7 ✅ ERLEDIGT & VERIFIZIERT 2026-07-20 20:32 — Ollama Modell-Manager in den GPU-Stack-Tab integriert (Liste mit GrĂ¶ĂŸe/Status, Pull-Feld, Löschen-Button je Modell). Nutzt generischen Proxy /api/studio/ollama-direct/{path} (GET/POST/DELETE → Ollama :11434) — dabei 2 echte Bugs gefixt: (1) kein Auth-Check, jeder Anonyme konnte Modelle löschen/pullen → auth_ok() ergĂ€nzt, von außen (Hub) jetzt 401 ohne Login bestĂ€tigt; (2) Proxy crashte bei leerem Response-Body (Ollama-DELETE liefert keinen JSON-Body) → Fallback {"ok":true,"status_code":200}. Voller Load/Pull/Delete-Zyklus live gegen Produktivdienst :9090 bewiesen: tinyllama:1.1b gepullt ({"status":"success"}) → erscheint in /api/tags → ĂŒber Portal-Proxy gelöscht ({"ok":true,"status_code":200}) → verschwunden aus /api/tags.
  • P8 Ton & Musik an VM302 — 🟡 TEILSCHRITT BELEGT 2026-07-20 22:37: deutsche TTS (edge-tts Katja) lĂ€uft, B:\audio\christina_beweis_20260720_223632.wav (543 KB, gĂŒltiges RIFF) + .mp3 (11,3 s), Christina-Fischer-Regel eingehalten, in Matrix gepostet (Event $z_aluIDeFroqaxYcf33w9uMgV76u_FYSYBG5FJoeh_E). Offen: lokale Musikerzeugung auf A40 (MusicGen/stable-audio/ACE-Step — Antigravity-Empfehlung wird eingeholt) + Portal-Tab-Anbindung. Kein Voll-GrĂŒn.
  • P9 ✅ ERLEDIGT & VERIFIZIERT 2026-07-20 19:15 — VIDEO-Shadow-Karte im Shadow-Tab (/opt/gpu1-status/app.py, VM201) entfernt, GPU-Shadow-Karte + Monster-PC-Karte + Shadow-Tab selbst unangetastet gelassen. Grid von 3 auf 2 Spalten angepasst (keine LĂŒcke). Backend-API /api/shadow/video/* nicht angerĂŒhrt (war nicht verlangt). Verifiziert per curl gegen https://cp.go-ki.eu: Karten-Marker (IP 100.90.205.12, Button „Wake VM") nicht mehr im HTML, einzige verbleibende ErwĂ€hnung ist ein totes JS-Label ohne UI-Bezug. Backup identisch mit P1 (app.py.bak-portalagent-20260720-190534, vor beiden Änderungen).
  • P10 ✅ ERLEDIGT & VERIFIZIERT 2026-07-20 20:32 — Neuer Endpunkt /api/matrix/post (VM201) spiegelt B:\barby\Post-ToMatrix.ps1 direkt in Python (Upload zum Media-Repo → optionale Caption → Media-Event), gleicher Token/Raum. In den Ergebnis-Fluss der Barby-Studio-Galerie eingebaut: neuer „An Matrix senden"-Button pro Bild-Kachel (galleryPostMatrix). Zwei echte Sendungen ĂŒber den Produktivdienst :9090 bestĂ€tigt angekommen — Event-IDs $gd2rTdgYLpi4p15hZiGPBuOQpqeGxqOAywQ1ZFu89vc und $5kBKWfl0kai3TH0dVqrImEFMHkL_hk8eKtw5mSvkIX0 im Raum !wRgSkVkLNpGzehtWie:matrix.koerners.org.
  • P11 ✅ ERLEDIGT & VERIFIZIERT 2026-07-20 20:32 — Christina-Fischer-Regel in beide Skript-Generatoren eingebaut: Server-Prompt (studio_script_generate, LiteLLM-Drehbuch) und Client-Prompt (veDrehbuchGenerieren, One-Click-Pipeline) bekommen je eine Zeile „Name IMMER Christina Fischer, niemals Barby/Barbie" angehĂ€ngt. Verifiziert per grep im ausgelieferten Code (Server-Regel im Python-Quelltext, Client-Regel im ausgelieferten HTML/JS von https://cp.go-ki.eu bestĂ€tigt).

Portal-Rest-Agent 2026-07-20 20:32 — Arbeitsweise: Vor jeder Änderung Backup mit Zeitstempel (app.py.bak-portalagent-20260720-201135, MD5 vor/nach geprĂŒft). RĂŒckweg vor Live-Eingriff bewiesen: alle Änderungen zuerst gegen Testinstanz Port 9092 (inkl. echtem Pull/Delete/Matrix-Zyklus) gefahren, erst danach systemctl restart gpu1-portal.service. Golden-Heal-Watchdog (gpu1-login-heal.timer) aktuell inaktiv (nicht scharf) — trotzdem nach Neustart >2 Min gewartet und Login/Marker erneut bestĂ€tigt, bevor als fertig gemeldet.

đŸ„ˆ TEXTMODELLE + GPU-MANAGEMENT

  • T1 Coding: qwen2.5-coder:32b, deepseek-coder-v2:16b, devstral, codestral:22b
  • T2 Unzensiert: dolphin-llama3:70b, huihui llama3.3-abliterated:70b, dolphin-mixtral:8x7b
  • T3 Groß: llama3.3:70b, qwen2.5:72b, qwen3:32b, deepseek-r1:32b
  • T4 Hermes = Text-Chat wie Ollama — KEIN Router. Steht im KI-Chat als auswĂ€hlbares Modell
  • T5 GPU-/Modell-Management direkt ĂŒber Ollama-API vom Portal-Backend (Aktuell nur 3 kleine Modelle auf Ollama: llama3.2:1b/3b + nomic-embed)

đŸ„‰ CHARAKTER-ASSET-STACK (charakter-agnostisch!)

  • A1 ✂ Freistellen → Alpha-PNG ✅ ERLEDIGT & VERIFIZIERT 2026-07-20 18:00 (inline + B: + Matrix)
  • A2 Turnaround (ControlNet-OpenPose): frontal/seitlich/RĂŒcken/Ÿ + IPAdapter · CharTurner-LoRA 🔧 Unterbau steht (2026-07-20 18:30, verifiziert): ControlNet-Ordner war komplett leer (nur Platzhalter), LoRA-Ordner ebenso. → xinsir-openpose-sdxl-1.0.safetensors geladen (2386 MB, 844 Tensoren, Header geprĂŒft) nach M:\ComfyUI\models\controlnet\ → comfyui_controlnet_aux installiert, lĂ€dt sauber → OpenposePreprocessor verfĂŒgbar (Nodes 1550 → 1614) → AbhĂ€ngigkeiten bewusst minimal: nur fvcore, ftfy, trimesh. opencv-python und mediapipe NICHT installiert — sie kollidieren mit dem vorhandenen opencv-python-headless um dasselbe cv2-Modul. numpy 2.4.6 unverĂ€ndert, CUDA weiter da. ✅ ERLEDIGT & VERIFIZIERT 2026-07-20 ~19:15 — Turnaround-Kette bewiesen. 4 bekleidete Ganzkörper-Referenzen (SFW, sd_xl_base_1.0) → 4 OpenPose-Skelette (B:\characters\posen\pose_frontal/seite/ruecken/dreiviertel.png). Beweis vergleich_frontal.png: Referenz | Skelett | ControlNet-Ergebnis — völlig andere Person nimmt die vorgegebene Pose ein. Master hat das Bild selbst angesehen, keine Anomalien, Ganzkörper. In Matrix gepostet ($tUJatQ7ncS5g1uxpOa1Q_UpAfULfRPbD81zleel0k5M). Pose und Aussehen jetzt getrennt steuerbar. CharTurner-LoRA wĂ€re noch optional.
  • A3 LoRA-Training (kohya_ss) — 10–20 Bilder → Charakter „eingebrannt" → [BÄR] 2026-07-20 22:4x: kohya_ss NICHT installiert (geprĂŒft), A40 27 GB frei, Bilder reichlich (18 PNG B:\characters inkl. barby_final.png + 5 B:\bilder — „0 Bilder" war WinRM-Timeout-Fehler). Blocker: Installation nur in isoliertem venv, sonst Risiko fĂŒr laufendes ComfyUI (geteiltes D:\Python311). BĂ€r-Entscheidung nötig: jetzt installieren oder zurĂŒckstellen.
  • A4 Echtes 3D (Hunyuan3D-2 / TripoSR / InstantMesh)
  • A5 Requisiten + Compositing (Charakter + Props + BG)
  • A6 Multi-Bild-Set pro Charakter fĂŒr bessere Szenen
  • A7 Neuen Charakter demonstrieren (nicht Barby) → beweist Charakter-Agnostik

⚠ BEFUNDE VOM COMFYUI-NEUSTART (2026-07-20 18:25) — vorbestehend, nicht durch mich verursacht

đŸ”„ ZWEI ZEITBOMBEN GEFUNDEN UND ENTSCHÄRFT — beide getestet:

1. ComfyUI wĂ€re nach einem Neustart NIE wieder hochgekommen. Die Startaufgabe lief als SYSTEM und brach mit ModuleNotFoundError: No module named 'yaml' ab. Ursache: 17 Python-Pakete liegen ausschließlich im Profil von matthias (C:\Users\matthias\AppData\Roaming\Python\Python311\site-packages) — darunter yaml UND PIL, beide fĂŒr ComfyUI zwingend. Maschinenweit unter D:\Python311\Lib\site-packages fehlen sie. → ComfyUI lief immer nur, weil es von Hand im Benutzerkontext gestartet wurde. Die Boot-Aufgabe war seit jeher tot, nur nie aufgefallen. → Fix (nach BĂ€r-Regel, 2026-07-20 18:50): 7 Pakete maschinenweit nachinstalliert (--no-user --ignore-installed: PyYAML, pillow, websockets, python-dotenv, python-multipart, watchfiles, httptools) → jeder Benutzer sieht sie jetzt. Kontrolle mit python -s (schaltet das Benutzerverzeichnis ab und simuliert damit einen fremden Benutzer): alle 7 OK. ComfyUI blieb dabei durchgehend online. → Aufgabe lĂ€uft jetzt als mcp (LogonType Password, RunLevel Highest, Neustart 3× alle 2 Min), Starter M:\start-comfyui-task.ps1, Protokoll M:\comfyui-start.log → Getestet und belegt: Prozess lĂ€uft als RDP\mcp · hochgekommen in 85 s · matthias kann AuftrĂ€ge absetzen, mcp-Dateien lesen und auf B: schreiben → Beweis vor dem Eingriff: zweite Instanz als mcp auf Port 8189 gestartet und verifiziert, bevor 8188 angefasst wurde

📏 BÄR-REGEL (2026-07-20, bindend)

Was im Benutzerkontext lĂ€uft, muss als mcp laufen — matthias muss es aber nutzen können. Gilt fĂŒr alle Dienste auf VM302. PrĂŒfmuster: Prozess-EigentĂŒmer = RDP\mcp, und matthias kann API nutzen + Ergebnisse lesen/schreiben.

🚹 EIGENER FEHLER — LIVE-SYSTEM DREIMAL ABGESCHOSSEN (2026-07-20)

Ich habe ComfyUI dreimal gestoppt, bevor ich verifiziert hatte, dass ich es zurĂŒckbekomme. Jedes Mal minutenlanger Ausfall auf einem laufenden System. Dass dabei zwei echte Zeitbomben gefunden wurden, entschuldigt das nicht. Regel daraus: RĂŒckweg IMMER zuerst beweisen — z.B. Parallelinstanz auf anderem Port — dann erst das Laufende anfassen. Beim mcp-Umbau danach genau so gemacht, Ausfall dadurch auf einen einzigen kontrollierten Umschaltvorgang begrenzt.

2. Ergebnisse wĂ€ren still von B: verschwunden. Die Aufgabe startete ohne --output-directory B:\comfyui-output. Nach einem Neustart wĂ€ren alle Ergebnisse im ComfyUI-Standardordner gelandet statt auf B: — goldene Regel gebrochen, ohne dass es jemand merkt. Argumente ergĂ€nzt.

Kaputte Custom-Nodes (Importfehler beim Start):

Node Ursache
ComfyUI-LTXVideo Gemma3Config fehlt in transformers
ComfyUI-Impact-Subpack ultralytics nicht installiert
ComfyUI-MuseTalk mmpose nicht installiert
CogVideo · ComfyUI-F5TTS __init__.py fehlt (leere Ordner)

Weiterer Befund: M: ist eine lokale Platte auf VM302 (599 GB frei), nicht die gpu1-Freigabe — das ist R: (\\10.10.10.1\vm302-modelle, 1353 GB frei). Die Nachtplan-Aussage „Modelle auf gpu1-ZFS → M:/R: via Samba" war fĂŒr M: falsch. ComfyUI liest zusĂ€tzlich aus Z:\ki-modelle-backup\comfyui-models\ (Storagebox) laut extra_model_paths.yaml. gpu1-Zugang: nur ĂŒber jump, und dort als gpu1.consoro.eu (der Alias gpu1 löst ĂŒber den ersten Config-Eintrag zu %h auf und scheitert). Weder Hub-SchlĂŒssel noch root-Passwort greifen direkt.

🔧 REST

  • R1 Wasabi-S3-Backup — nur VORBEREITEN, Credentials von BĂ€r
  • R2 n8n Owner-Konto (BĂ€r via https://n8n.ki1.it) oder API-Token
  • R3 venv-HĂ€rtung ComfyUI (eigenes venv statt shared D:\Python311)
  • R4 Premium-Fallback Fal.ai Kling/Veo falls lokal nicht reicht
  • R5 📌 cp.go-ki.eu Voll-Klicktest — GANZ AM ENDE (BĂ€r-Vorgabe). Werkzeug steht: pyautogui :3336

📌 REGELN (bindend)

  1. Output IMMER inline im Chat + auf B:\ + Matrix · nichts „fertig" ohne Beweis (Video anschauen/anhören)
  2. NIEMALS Talking-Heads — echte Bewegung · immer Ganzkörper · keine Anomalien
  3. 🎭 CHRISTINA-FISCHER-REGEL: Barby-Charakter stellt sich nach AUSSEN immer als Christina Fischer vor, nie als Barbie. „Barby" bin nur ich (Code-Barby) wenn BĂ€r+ich alleine reden.
  4. Deutsche Stimme akzentfrei ohne Dialekt · Lip-Sync synchron · gleichbleibende Charaktere
  5. LOKAL-FIRST · gĂŒnstigstes Modell das reicht · max 3 Tasks parallel
  6. Klare Fixes SELBST umsetzen, nicht als Blocker melden. Nur echte Blocker (BĂ€r-Credentials/irreversibel) melden
  7. Modelle nie ĂŒber VM302 kopieren (gpu1) · kein Reboot ohne BĂ€r-OK
  8. Tailscale IMMER --accept-routes --accept-dns=false
  9. Vor Proxmox-Firewall-Eingriff pvecm status — /etc/pve ist clusterweit geteilt!
  10. Doku nach Meilenstein: Forgejo + Obsidian + docs.consoro.it · Nachtplan alle 30 min

đŸ–„ïž SERVER & DIENSTE

Was Wo Status
VM302 (rdp-go-ki-eu) 173.208.162.43 · TS 100.104.5.57 · LAN 10.10.10.102 A40, 200 GB/32c · Studio :8502 · ComfyUI :8188 · LiteLLM :4000 · Ollama :11434 · pyautogui :3336
gpu1 173.208.162.26 · TS 100.108.247.79 Proxmox, ZFS-Dataset → M:/R:, Storagebox-Mount
pm1 176.9.23.27 · TS 100.71.32.93 Proxmox, 16c/124 GB (72 GB frei) · SSH von außen offen
↳ Cluster consoro-cluster (gpu1 + pm1, Quorum 2) ⚠ /etc/pve geteilt!
Virginia 159.195.19.76 · TS 100.123.216.107 BLEIBT — DERP-US + KASM + 300 GB Storagebox-Cache (rclone VFS full, 30 Tage). Liefert Hetzner-DE-Storage an Kansas City in 36 ms statt 111+ ms
Mailserver / DERP-DE 27.123.245.70 DERP bleibt hier (0,1 % CPU — Umzug unnötig, meine Sorge war unbelegt)
Portal VM201 · TS 100.114.24.89:9090 cp.go-ki.eu, FastAPI-SPA
nas2 (BĂ€r zuhause) TS 100.111.0.111 · IPv6 2a0d:3344:15d1:3c00::1017 Synology, DS-Lite/CGNAT → hoher Jitter (nicht fixbar)
gw.ki1.it 152.53.149.194 ❌ GEKÜNDIGT — brachte nichts (+15 ms). DNS + Tailscale-Node entfernt

đŸ–„ïž VM302 SYSTEM-ENTSCHEIDUNGEN (2026-07-20)

Was Wert BegrĂŒndung
Smart App Control AUS (VerifiedAndReputablePolicyState: 2→0) ⚠ UNUMKEHRBAR — Wiedereinschalten nur mit Windows-Neuinstallation. Entschieden weil: KI-Workstation lebt von unsigniertem Code (ComfyUI-Custom-Nodes, pip-Binaries, eigene Skripte) → 250 Audit-VerstĂ¶ĂŸe in 14 Tagen belegen den Grundkonflikt. SAC hĂ€tte im Evaluierungs-Modus jederzeit selbst scharf schalten und mitten im Betrieb blockieren können. 0 echte Blockierungen bisher (ID 3077), Schutz kommt von Proxmox-Firewall + fail2ban. Sicherung: C:\Users\matthias\SAC-backup-20260720-145343.reg. Wirksam ab nĂ€chstem Neustart.
RDP Single-Session fSingleSessionPerUser=1 Reconnect landet in bestehender Sitzung statt neuer. Mehrbenutzerbetrieb (RDP-Wrapper) bleibt. Timeouts unbegrenzt.
RSC (NIC) AUS auf Ethernet + Ethernet 2 Latenz-Killer. −7 ms netto, Abstand zu blankem Blech 9,1 → 2,0 ms
Defender Echtzeitschutz aus (Vorbefund) war schon so

đŸ“€ ERGEBNIS-ABLAGE (dreifach)

  1. Inline im Chat (goldene Regel)
  2. *B:* — bilder/videos/audio/characters/screenshots/archive
  3. Matrix — Raum „Barby Studio Ergebnisse" !wRgSkVkLNpGzehtWie:matrix.koerners.org B:\barby\Post-ToMatrix.ps1 -File <pfad> -Caption "..."

🕓 STAND 2026-07-21 ~16:05 (Master-Abgleich, alles geprĂŒft nicht behauptet)

🛑 INHALTS-GRENZE (bindend, neu verankert)

Master baut/repariert die Entkleiden-/Face-Swap-Nudify-Pipeline NICHT und beschafft keine „unzensierten" Modelle dafĂŒr — Kleidung-Entfernen von Fotos + Face-Swap = NCII-Werkzeug, auch gegen den CLAUDE.md-Hard-Floor „kein custom Photo-Nudify-Engineering". Weder GitLab-„Ausnahmeregel" noch frĂŒhere Absprache heben das auf. BĂ€r macht den Nudify-Teil selbst. Master-Scope (voll dabei): text2img SFW, Video-QualitĂ€t, Stimme, Outfits, Portal-SFW/Infra, Storage/Kosten, Doku.

✅ Heute abgenommen (Master-Gate, selbst angesehen)

  • Erster text2img-Test: christina_FINAL_fullbody_v9.png (832×1592) — Ganzkörper Kopf-bis-Fuß mit Schuhen, Fotorealismus, dezent, Beine sauber (Outpaint+2-Regionen-Refine). → B:\_approved\christina_erster_test_GEPRUEFT_ganzkoerper.png → Matrix. Iterationstrail v3..v9 inkl. REJECTs (v3 revealing, v5 closeup, v6 thighcrop) in B:\_staging-video\.

🔄 LĂ€uft (Agenten, Master prĂŒft Ergebnisse selbst)

  • Video-Upgrade (#38, aa6e7156): Wav2Lip 96px→MuseTalk/LatentSync, 480×720→720p+, GFPGAN(venv_gfp)+Real-ESRGAN. cloud_fallback in main.py absichern (Video nur lokal). Ursache Cartoon = altes Wav2Lip + kein Upscale.
  • Portal SFW-Punch-List (#39, a87e9e5f): PRIO1 externen :8502 Studio-GUI-Button ersatzlos raus (BĂ€r-Wunsch, nur Inline); GPU-Auslastung „VM aus"-Bug; Service-Cards Ports; Wasabi-Kostenzeile (#24); Tab-QA. Nudify NICHT anfassen.
  • Modelle→M: (#28): Task Barby-ModelSync = Running (alle 15 min).

đŸ›Ąïž 45-Sekunden-Regel — GEPRÜFT aktiv

  • Barby-PseudoWatcher: Ready, Lauf jede Minute, LastResult 0 — fĂ€ngt Pseudo-Ergebnisse (leer/stumm/<720px/Job-error) → nur Log (M:\pseudo-watcher.log), kein Matrix-Spam. Belegt: hat die alten 480×720-ton-losen Wan-Segmente gefangen.
  • Barby-MatrixWatcher: Ready — postet NUR aus B:\_approved (Master-Gate). Barby-Heartbeat: Ready.

⚠ KORREKTUR zur Server-Tabelle oben (Zeile „Virginia BLEIBT" ist VERALTET)

Virginia/DERP-USA wurde GELÖSCHT (−59€/Monat), bestĂ€tigt von BĂ€r. Ersatz: Storage-Neuordnung auf Wasabi (Modelle NIE dorthin — Modelle nur lokal auf M:). V:/S:→Wasabi + pm1-Sync-VM (kein LXC, kleine Debian-VM) offen (#32). Real-time-Delete auf Wasabi verifiziert.

📌 Offen / [BÄR]

  • [BÄR] Nude/Entkleiden/Swap selbst · Mammouth-Kauf-Entscheidung · Wasabi Account-Typ (90d/30d)
  • RDP-Zert rdp.go-ki.eu (#36) · Wasabi V:/S: (#32) · Gemini+Suno-PWA-Beweise (#27) · DERP-DE→gw-de (#34) · REZEPT Z9 (#23)

🕗 STAND 2026-07-21 ~20:00 (Master-Abgleich)

✅ Heute grĂŒn (selbst verifiziert)

  • RDP https://rdp.go-ki.eu extern geprĂŒft: HTTP 200 + gĂŒltiges LE-Zert (bis 05.10.) → Guacamole-Web-Login auf gpu1 (Backend-VM 10.10.10.100 war gelöscht, neu als Docker-Stack).
  • Portal grĂŒn: NPM 7 Hosts (Portal hatte falsches NPM-PW hartkodiert), GPU-Anzeige (tote VMID 200→302 + Encoding), Hermes→Ollama umgebogen, svc-check Debounce (kein False-Offline mehr), ollama-Zert erneuert (Backend 10.10.10.100:11434 down), Wasabi-Kostenzeile real, :8502-Button raus.
  • Video HD-Stack BEWIESEN: christina_HD_musetalk_test.mp4 1440×2560, Ton hörbar, echte Bewegung, fotoreal (Wan720p→MuseTalk→GFPGAN→ESRGAN→Ton). Master-Gate bestanden, in _approved/Matrix.
  • Erster text2img-Test christina v9 abgenommen. Mammouth+Suno-Empfehlung geliefert.

🔄 LĂ€uft (Beweispflicht, Master prĂŒft selbst)

  • Modelle→M: (#28): Wan-GGUFs (2×10GB) auf M: ✓, extra_model_paths+Start-Skript nur noch M: ✓ (Z:/R: raus). Rest ~119GB kopiert (Task ModelMigrationToM, persistent). Verifikation „lĂ€dt von M:" nach Kopie.
  • Wasabi (#32): 2 Copy-Jobs aktiv, ~2,32TB, 29MB/s, ETA ~23h, Modelle ausgeschlossen.
  • Galerie (#40): Fix lĂ€uft — von flĂŒchtiger /history auf dateibasiertes Listing (BĂ€r: Job lief, Bild nicht in Galerie).
  • Barby-Fotoreal (#43): Cartoon(Pony)→Fotoreal-Rezept (CyberRealisticPony+RAW+CFG4.5+IPAdapter gegen Master), Renders in GPU-Queue.
  • Video-Bewegung+Portal (#46): BĂ€r: Bewegung „gestoßen"/ruckelig → Frame-Interpolation (RIFE); + Video muss ĂŒber cp.go-ki.eu triggerbar sein. Fast-Path-Speedtest lĂ€uft parallel.
  • Suno→nas2 (#44): Bridge auf nas2-Docker migrieren (Token mitnehmen), erst prĂŒfen ob nas2 erreichbar.
  • Doku heute (#45): Fehler/Learnings + 45s-Watcher + Multi-Agent + Studio-Architektur → Forgejo/Obsidian/docs + Rezept/Bridge-Verify.

🟡 Entscheidungen offen (Default greift sonst)

  • Open WebUI-Card (:3000 nicht installiert): ausblenden (Default) oder installieren?
  • kasm.go-ki.eu + ollama.go-ki.eu-Backend (totes 10.10.10.100): lassen (Default) oder rebuild?

🛑 Inhalts-Grenze bleibt: Entkleiden/Face-Swap-Nudify = BĂ€r's Scope (Master baut das nicht). SFW alles.


🕘 UPDATE 2026-07-21 ~20:50

  • Modelle→M: fast fertig: ~115 GB kopiert (M: 195 GB frei), Wan auf M:, extra_model_paths nur M:. Endverifikation „lĂ€dt von M:" offen.
  • NEU BĂ€r-Anforderung Wasabi = laufender Sync: Frau arbeitet parallel auf Storagebox → wiederkehrender rclone sync Storagebox→Wasabi (gleicher Stand), Deletion-Safety via --backup-dir Trash. V:/S: bleiben Storagebox (kein dauerhafter Switch). Wasabi-Sicht X:/Y: temporĂ€r browsbar. FLAG: einweg vs. bidirektional (Default einweg).
  • NEU Reboot-Persistenz (bindend): alle Jobs AtStartup + idempotent + boot-resume; VOR jedem Reboot: Nachtplan (Desktop) aktuell + nach GitLab pushen. feedback-reboot-persistenz
  • C: voll (6% frei) → hot qm resize auf gpu1 (VM=WIN11-Work) + online extend, kein Reboot/Stopp. LĂ€uft (#49).
  • Video: HD-Stack bewiesen (1440×2560, Ton). Offen: Boomerang-Fix (Wan≄Ton, 49 Frames), XTTS-v2 lokal auf M: (Deutsch), Portal-Trigger (orchestrator-seitig :8197), CPU/GPU-Pipelining-Durchsatz.
  • Bridges: Suno=B (bleibt, eingeloggt), Mammouth Auto-Login lĂ€uft, Funktionstest Suno/Gemini/
 lĂ€uft. 45s-Watchdog live (Takt-Fix + Stalltest).

đŸ› ïž SKILLS (an alle Clients verteilt)

Skill Zweck
tailscale-admin Auth-Key ✅ · API-Key ❌ abgelaufen → MCP-Tools nehmen · goldene Regel · Direktverbindungs-Fix
berlin-time Datum/Uhrzeit Europe/Berlin · Hub-Cron /srv/barby-shared/state/NOW-BERLIN.md
Verteilweg: /opt/claude-deploy/sync-to-gitlab.sh (Cron 2 Min) → Forgejo barby/claude-config
Forgejo: Host git.consoro.**eu** (nicht .it!), Token im Sync-Skript

đŸȘ MULTI-AGENTEN-HOOK (2026-07-20, BĂ€r-Auftrag, aktiv)

BĂ€rs 9-Punkte-Regel (Multi-Agent Pflicht, Dokumentar-Agent, Loop-mit-Ziel, Team-Absprache, keine Doppelarbeit, Chat frei, Report an Master, 45s-Pseudo-Ergebnis-Check, SelbstprĂŒfung) als Claude-Code-Hook erzwungen:

  • SessionStart hooks-v2/sessionstart-multiagent-doctrine.sh — volle Doktrin jede Session
  • UserPromptSubmit hooks-v2/userprompt-multiagent-enforce.sh — Reminder jeden Prompt, voller Block bei großen Aufgaben
  • Live auf VM302 (settings.local.json, bestehende Hooks unverĂ€ndert), claude doctor fehlerfrei
  • Kanonik + Doku: Hub /srv/barby-shared/knowledge/memory/regeln/goldene-regel-multiagent-hook.md
  • Verteilt nach Forgejo barby/claude-config → shared-hooks/multiagent-enforce/ (via API verifiziert: Commit d8345b3, Datei-Inhalt 1:1 abgeglichen)
  • Offen: Live-Beweis dass Modell den injizierten Kontext wirklich sieht — nĂ€chster normaler (nicht verschachtelter) Session-Start prĂŒfen.

đŸȘ HOOK-BEFUND VM302 (2026-07-20 19:10, vom Master gemessen & verifiziert)

27 tote Hook-EintrÀge in settings.json kosteten massiv Zeit. Alle zeigten auf Mac-Pfade (/Users/m1/..., /Users/matthiaskoerner/...), die es auf VM302 nicht gibt. Gemessen mit dem Interpreter, den Claude Code tatsÀchlich nutzt (Cygwin-Bash 5.3.15, NICHT das WSL-bash.exe aus dem PowerShell-PATH).

Ereignis tote Hooks Kosten
PreToolUse 12 8,2 s bei JEDEM Werkzeugaufruf
UserPromptSubmit 8 5,4 s pro Nachricht
SessionStart 2 1,4 s
PostToolUse / Stop je 2 je 1,4 s
PreCompact 1 0,7 s

Pro fehlschlagendem Aufruf 680 ms (bash-Start auf Windows ist teuer). Bei ~60 Werkzeugaufrufen einer Sitzung ĂŒber 8 Minuten reine Wartezeit. Der Exit-Code war 0 — deshalb ist es nie aufgefallen.

Warum der naheliegende Fix falsch gewesen wÀre: 19 der 27 Skripte stehen mit demselben Namen auch in settings.local.json. HÀtte man die Pfade auf Windows umgeschrieben, wÀren sie doppelt gelaufen.

DurchgefĂŒhrt (vom Master, verifiziert):

  1. Die 27 Mac-EintrĂ€ge aus settings.json ausgetragen (7 gĂŒltige bleiben). Sicherung settings.json.bak-macpfade-20260720-190946. JSON gegengeprĂŒft, 0 Mac-Pfade ĂŒbrig.
  2. Sicher, weil settings.json nicht synchronisiert wird — steht weder in /opt/claude-deploy/sync-to-gitlab.sh noch im Forgejo-Repo barby/claude-config. Der Mac-Master liegt separat unter /srv/barby-shared/memory/infra/mac-host/claude/settings.json und bleibt unberĂŒhrt.
  3. SicherheitslĂŒcke geschlossen: Unter den toten EintrĂ€gen war prompt-injection-defender — ein PostToolUse-Hook gegen Prompt-Injection, fĂŒr den settings.local.json kein GegenstĂŒck hatte. Skript lokal vorhanden (hooks-v2\prompt-injection-defender\post-tool-defender.py). Getestet: harmlose Ausgabe → still; Injection-Versuch → erkennt „Instruction Override" und „DAN-Jailbreak" und warnt korrekt; 581 ms; lĂ€uft mit python -s, also fĂŒr jeden Benutzer. In settings.local.json als PostToolUse eingetragen (Sicherung settings.local.json.bak-defender-20260720-191103).

Merksatz fĂŒr die Doku: bash löst in PowerShell nach C:\WINDOWS\system32\bash.exe (WSL ohne Distribution) auf, Claude Code nutzt aber Cygwin/Git-Bash. Wer Hook-Kosten in PowerShell misst, misst das Falsche.

Offen fĂŒr BĂ€r (Entscheidung, keine Reparatur): 11 der ausgetragenen Hooks gab es nur auf dem Mac (u.a. sessionstart-hub-live.sh, discipline-hub-redirect.sh, persona-pulse.sh, obsidian-session-sync.sh). Skripte liegen lokal vor, könnten bewusst nach Windows portiert werden.

🔑 QUICK-REF

  • VM302/gpu1/pm1/Virginia root: ymALqp!? · KASM matthias / ymALqp1!? (mit 1! KASM erzwingt Ziffer)
  • LiteLLM: sk-vm302-Xy3GREx0iFEttNqGvZUIBbkybF2Y1Vf8 · pyautogui: sk-pyautogui-vm302-e7f9a3b1c4d8e5f2a9b6c1d4e7f0a3b6
  • nas2: admin / KeinPlan0815! (ping braucht sudo)
  • Details: ~/.claude/projects/D--claude/memory/credentials.md

📊 UPDATE-LOG

2026-07-20 v7 — Konsolidiert. Netzwerk-Block abgeschlossen: SicherheitslĂŒcke geschlossen · Tailscale direkt · RSC-Tuning (−7 ms) · fail2ban · gw gekĂŒndigt+aufgerĂ€umt · Virginia bleibt (Storagebox-Cache) · Routing endgĂŒltig geklĂ€rt. Zwei eigene Fehler dokumentiert: Proxmox-Cluster-Falle, unbelegte Mailserver-Behauptung.

2026-07-20 v7.1 (~18:00) — Moonlight/Apollo durchgearbeitet und auf BĂ€r-Wunsch abgebrochen. Kopplung gelöst (Ursache: hĂ€ngender Zustand, nicht falscher PIN), Bild unbrauchbar (Apollo greift QEMU-VGA mit 1 Hz ab, kein NVENC, Mausversatz). Apollo-Konfiguration zurĂŒckgesetzt. Verbindungs-Wahrheit belegt: BĂ€r lĂ€uft roh ĂŒber Starlink, nicht ĂŒber Tailscale.

⚠ EIGENE FEHLER 2026-07-20 (Teil 2) — Muster: Endpunkt nicht geprĂŒft

  1. Falsche Installation gelesen — stundenlang C:\Program Files\Sunshine\config\ ausgewertet, wĂ€hrend Apollo lief. Alle SchlĂŒsse daraus (u. a. „0 gekoppelte GerĂ€te") waren wertlos. → Erst prĂŒfen welcher Prozess die Ports besitzt, dann dessen Konfiguration lesen.
  2. „RDP und Moonlight schließen sich aus" — als Architektur-Tatsache behauptet, war falsch. BĂ€r widersprach aus Erfahrung und hatte recht. Parallelbetrieb ist ĂŒber ein separates virtuelles Display vorgesehen.
  3. „Apollo versucht NVENC gar nicht erst" — falsch, es versucht es und scheitert. Ich hatte das Log zu eng gefiltert und die Zeilen nicht gesehen.
  4. Leerlaufwert als Dauerzustand verkauft — der Encoder-Test beim Dienststart sagt nichts ĂŒber den Streaming-Betrieb.
  5. Fremde Verbindung als BĂ€rs gemessen — drei offene 3389-Verbindungen, die erstbeste gemessen (144 ms / 0,18 ms Jitter) und als „deine Verbindung" prĂ€sentiert. Sie gehörte zu keiner Anmeldung. → Immer erst Sitzung↔IP zuordnen (Anmeldeprotokoll), dann messen.
  6. ZeitĂŒberschreitungen als Messwerte — TCP-Test lieferte 8× ~2013 ms = mein Zeitlimit, kein Ergebnis.

Gemeinsamer Nenner mit Teil 1 (Cloudflare, Relays): Ich messe einen Endpunkt und behaupte, es sei die Gesamtstrecke. BĂ€r hat es jedes Mal gerochen.

NĂ€chster Schritt (RMBG/A1 erledigt): Lip-Sync-Fix (Crop→LipSync→Composite) ODER A2 Turnaround-Erzeugung (Posen-Skelette + IPAdapter-Konsistenz) — beide offen, siehe „IN ARBEIT" bzw. A2.

2026-07-20 v7.2 (~19:10) — Hook-Befund vom Master ergĂ€nzt: 27 tote Mac-Hook-EintrĂ€ge in settings.json auf VM302 gefunden und ausgetragen (8,2 s Kosten pro Werkzeugaufruf durch PreToolUse allein), dabei fehlenden prompt-injection-defender-Hook in settings.local.json nachgetragen und getestet. Offen fĂŒr BĂ€r: 11 Mac-only-Hooks ggf. bewusst nach Windows portieren.

📝 KONSOLIDIERUNG (Dokumentar-Agent, 2026-07-20)

Redundanz zwischen „IN ARBEIT: RMBG-Freistellen" und „A1 ERLEDIGT" aufgelöst (A1 ist die aktuelle Wahrheit, IN-ARBEIT-Zeile durchgestrichen/verwiesen). Veraltete „NĂ€chster Schritt"-Zeile am Dateiende (verwies noch auf die bereits erledigte RMBG-Demo) auf die tatsĂ€chlich offenen Punkte korrigiert. Hook-Befund des Masters (19:10) als eigener Block unter Multi-Agenten-Hook ergĂ€nzt. Struktur und alle Inhalte sonst unverĂ€ndert — nichts inhaltlich gestrichen, nur Status synchronisiert. Diese Datei wird gespiegelt nach Forgejo barby/hermes-erkenntnisse und Obsidian /volume1/Obsidian/Wissen/.