{
  "_hinweis": "Welche Quelle steckt in der ausgelieferten exe? Ohne diesen Zettel driften .ps1 und .exe auseinander — genau das war am 10.09.2026 passiert: Die exe wurde auf 3.8 getauscht, die .ps1 daneben blieb auf 3.7 liegen und niemand sah es.",
  "marker": "AVIMOD-V1 · FERNSTEUER-V1",
  "_kein_versatz": "09.10.2026 18:43 kompiliert — .ps1 und .exe stehen beide auf 3.9. Geprueft wurde nicht nur das Datum: Im Binaerinhalt der exe stehen $Version = '3.9', $VersionDatum = '09.10.2026' und die Fernsteuer-Funktionen (Lies-Befehl, Fuehre-PfadeAus, Schreib-Quittung, Entferne-Befehl). Das Dateidatum allein waere kein Beleg — eine alte Quelle laesst sich jederzeit neu kompilieren.",
  "stand": "10.10.2026",
  "version": "4.2",
  "versionsdatum": "10.10.2026",
  "quelle": {
    "datei": "quelle/AVI-Mover.ps1",
    "sha256": "7a503d3319c6a678",
    "groesse": 112354,
    "_kurz": "Nur die ersten 16 Zeichen — zum Wiedererkennen genügt das, und der ganze Hash wäre in der Anzeige nur Lärm."
  },
  "freigabe": {
    "_abgeloest": "10.10.2026 (OHNEEXE-V2): Hier lag bis zuletzt AVI-Mover.exe (3.9). Sie ging in KEIN Paket mehr — nachgemessen an allen 22 OBS-ZIPs und am Standalone-Buendel: null Treffer. Trotzdem beiseitegelegt als AVI-Mover.exe.abgeloest_20261010_025602, damit sie niemand versehentlich wieder einspeist. Nicht geloescht, umbenannt.",
    "_kompiliert_wird_nicht_mehr": "Der Arbeitsgang unten endet jetzt bei Schritt 1: quelle/AVI-Mover.ps1 aendern und $Version hochzaehlen. Ausgeliefert wird die .ps1 mit AVI-Mover.cmd als Starter."
  },
  "server_vorlage": {
    "_hinweis": "Der Teil des AVI-Movers, der NICHT auf dem Mattenrechner läuft, sondern im Webordner des Abyss liegt (D:\\www-root\\avi-mover). Diese Liste steht hier an EINER Stelle und wird von zwei Seiten gelesen: vom Paketbau (landet als AVI-Mover/Server-Vorlage/ im OBS-Paket) und vom www-root-Baukasten (Bündel 'avimover' in wwwroot/paket.json, Bauart liste_aus_json). Wird hier etwas ergänzt, wandert es automatisch in beide Wege. Wohin im Webordner, steht im Bündel — nicht hier, sonst wäre es wieder zweimal gepflegt.",
    "dateien": [
      "Status.html",
      "Zentrale.php",
      "Archiv.php",
      "off-mover.png",
      "on-mover.png",
      "Pocessing.gif"
    ],
    "_nicht_dabei": {
      "status.json": "Reines Laufzeitdatum — den Zustand schreibt der AVI-Mover selbst. Würde er mitgeliefert, überschriebe jede Verteilung den laufenden Stand.",
      "Turnier-Logs": "Entstehen im Betrieb je Matte.",
      "Status-Dock.html / Status-Dock.konfig.js": "Dock-Thema, wird neu organisiert (08.10.2026) — siehe offen_docks."
    },
    "_archiv_php": "ARCHIV-V1 (09.10.2026): Die Nachlese. Sammelt nach dem Event ein, was der Mover aufgenommen und was die Regie behalten hat, und verwahrt es unter _archiv\\ — der Ordner steht im Spiegel-Schutz des Updaters, ein robocopy /MIR raeumt ihn also nicht weg. Von dort geht es als JSON-Datei oder direkt an den Reporter."
  },
  "obs_pakete": {
    "ordner": "/var/www/apps/jtfo/OBS",
    "anzahl": 22,
    "stand_geprueft": "10.10.2026",
    "exe_einheitlich": false,
    "bereinigt": "08.10.2026",
    "entfernt": [
      "AVI-Mover/AVI-Mover.ps1 — 22/22, Version 3.7, nie gebraucht (es läuft die exe)",
      "AVI-Mover/status.json — 16/22, Laufzeitdatum",
      "AVI-Mover/Logs/Einrichtung.log — 16/22, Laufzeitdatum"
    ],
    "_logs_ordner": "Der leere Logs/-Ordner bleibt in allen 16 Paketen stehen — der AVI-Mover schreibt dort hinein.",
    "_nicht_angefasst": {
      "AVI-Mover.ini": "16 Fassungen — das ist KEINE Drift, sondern die Konfiguration je Matte. Die 7 Infokanäle teilen sich eine.",
      "Status.html / Status-Dock.html / Status-Dock.konfig.js": "je 3 Fassungen entlang Austria-Cup / Sport-Matten / Infokanal — siehe offene Frage unten."
    },
    "offen_docks": "Die drei Status-/Dock-Dateien liegen in je drei Fassungen über die Pakete. Gernot: Dock-Thema wird neu organisiert — bis dahin nicht anfassen.",
    "_ohneexe_v2": "10.10.2026 (OHNEEXE-V2): Die AVI-Mover.exe ist aus allen 22 Paketen ENTFERNT. Darin liegen jetzt AVI-Mover.ps1 (4.0) und AVI-Mover.cmd als Starter. Dazu musste der OBS-Autostart mit: Das Lua-Skript autostarter.lua startet den Mover ueber execPaths in der Szenendatei, und dort stand der Pfad auf die .exe — 15 der 22 Pakete waren betroffen (die Infokanaele haben keinen Mover-Autostart). Umgestellt mit obs_autostart_umstellen.php. Haette man das vergessen, waere der Stream gelaufen und der Mover nicht, und es waere erst aufgefallen, wenn nach dem ersten Kampf kein Replay ankommt.",
    "_exe_entfernt": "10.10.2026"
  },
  "arbeitsgang": [
    "1. quelle/AVI-Mover.ps1 aendern, $Version und $VersionDatum hochzaehlen",
    "2. php /var/www/apps/jtfo/obs_avimover_tauschen.php --datei=AVI-Mover.ps1 --quelle=.../quelle/AVI-Mover.ps1 --schreiben",
    "3. php /var/www/apps/jtfo/obs_index_bauen.php — sonst nennt die Instanzliste alte Pruefsummen",
    "4. Werkzeuge-Baukasten: fassung in streamtools/paket.json hochzaehlen (holt die Datei selbst)"
  ],
  "_was_neu_4_0": "MESSWERTE-V1: Das Ergebnis-Log traegt jetzt bytes und dauer_s je Aufnahme — die Groesse lag ohnehin vor (Stabilitaetspruefung), die Laufzeit holt Windows selbst ueber die Shell-Eigenschaft 27, ohne ffprobe. Misslingt das dreimal, wird es nicht mehr versucht. LOGHOLEN-V1: neuer Fernsteuerbefehl, legt das Laufzeit-Protokoll als lauf_<Kanal>_<Datum>.log in den Statusordner — damit sieht man aus der Zentrale, was auf einer Matte schieflief, ohne hinzulaufen.",
  "_standalone_v1": "STANDALONE-V1 (10.10.2026): Derselbe Mover geht jetzt zwei Wege. (1) OBS-Pakete über den Lotsen — der geplante Weg, OBS startet ihn beim Hochfahren. (2) Werkzeug-Baukasten nach D:\\Stream Tools\\AVI-Mover, Bündel \"avimover\" in streamtools/paket.json — der kurze Weg für spontane Sessions, gestartet über eine Desktop-Verknüpfung. Beide ohne kompilierte Fassung. Geändert wird IMMER in quelle/, danach BEIDE Wege nachziehen: obs_avimover_tauschen.php für die Pakete, der Baukasten holt sich die Werkzeuge von selbst.",
  "_zeilenende_v1": "ZEILENENDE-V1 (10.10.2026). Gernot: „Das Script ist so schnell, dass es nicht sichtbar ist.\" Es lief gar nicht: Jede .cmd ging mit LF-Zeilenenden hinaus. cmd.exe liest Zeile fuer Zeile und erwartet CRLF — ein mehrzeiliger Klammerblock verschmilzt sonst zu einer Zeile, cmd bricht ab, das Fenster schliesst sich sofort. Betroffen waren AVI-Mover.cmd in allen 22 OBS-Paketen und AVI-Mover-Verknuepfung.cmd im Standalone-Buendel. Hergestellt wird es jetzt BEIM PACKEN in stream/werkzeuge/auslieferform.php — benutzt von beiden Baukaesten, vom Selbstupdate und von obs_avimover_tauschen.php. Eine Regel, die man beim Schreiben einhalten muss, wird vergessen.",
  "_was_neu_4_1": "PFADPRUEF-V1 (10.10.2026): Pruef-Knopf jetzt an ALLEN drei Ordnerzeilen im Setup, nicht nur am Statusordner. Alle drei pruefen auch das Schreibrecht — auch die Quelle, denn Verschieben heisst dort loeschen; eine nur lesbare Quelle laeuft zu, bis die Platte voll ist. Dazu freier Platz und, bei der Quelle, wie viele Aufnahmen schon drinliegen. Ohne Bewertung.",
  "_was_neu_4_2": "FERNPRUEF-V1 (10.10.2026). Gernot: „Die Pfadpruefung soll im AVI-Mover-Dashboard bei den globalen Einstellungen / Pfade funktionieren.\" Neuer Fernsteuerbefehl „pruefen\": prueft die uebergebenen Pfade mit demselben Code wie der Knopf im Setup und aendert NICHTS. Die Zentrale hat im Modal „Pfade zentral aendern\" den Knopf „Pfade pruefen lassen\" — er schickt die gerechneten Pfade an alle Instanzen, sammelt die Quittungen ueber deren id ein (eine Quittung von vorhin saehe sonst aus wie eine Antwort) und haengt den Befund als Spalte an die Vorschau. Pruefen kann nur, wer danebensteht: Die Zentrale laeuft auf dem Abyss, und D:\\Replay Aufnahmen gibt es dort nicht."
}