Twitch-VOD-Manager/README_AI_RELEASE.md
2026-03-05 01:04:18 +01:00

3.1 KiB

AI Release Guide (Gitea)

Diese Datei ist die verbindliche Anleitung fuer KI-Agenten, um Releases fuer dieses Projekt zu erstellen.

Zielsystem

  • Git Host: https://git.24-music.de
  • Repo: Administrator/Twitch-VOD-Manager
  • Default Branch: main
  • Release-Assets muessen auf Gitea liegen, nicht auf GitHub/Codeberg.

Sicherheitsregeln

  • Token niemals in Dateien committen.
  • Token niemals in Logs, README oder Code schreiben.
  • Nur als Environment Variable nutzen:
    • PowerShell: $env:GITEA_TOKEN="<token>"
  • Wenn Token kompromittiert wirkt: sofort rotieren.

Voraussetzungen vor Release

  1. origin muss auf Gitea zeigen:
    • https://git.24-music.de/Administrator/Twitch-VOD-Manager.git
  2. Working Tree darf keine ungewollten Aenderungen enthalten.
  3. DNS fuer git.24-music.de muss auf 159.195.45.29 aufloesen.
  4. Die App verwendet Gitea-Updater-URLs:
    • In src/main.ts via GITEA_* Konstanten/API.
    • In package.json:
      • "build.publish.url": "https://git.24-music.de/Administrator/Twitch-VOD-Manager/releases/download/v${version}/"

Standardablauf fuer neues Release

Beispiel fuer 4.2.2.

  1. Version setzen:
    • npm version 4.2.2 --no-git-tag-version
  2. Build + Schnelltest:
    • npm run build
    • npm run test:e2e:update-logic
  3. Windows Installer bauen:
    • npx electron-builder --win
  4. Pruefen, dass Dateien existieren:
    • release/Twitch-VOD-Manager-Setup-4.2.2.exe
    • release/Twitch-VOD-Manager-Setup-4.2.2.exe.blockmap
    • release/latest.yml
  5. Commit + Tag:
    • git add package.json package-lock.json
    • git commit -m "release: 4.2.2"
    • git tag v4.2.2
  6. Push:
    • git push origin main
    • git push origin v4.2.2
  7. Release auf Gitea anlegen und Assets hochladen (API):
    • Endpoint: POST /api/v1/repos/Administrator/Twitch-VOD-Manager/releases
    • Endpoint: POST /api/v1/repos/Administrator/Twitch-VOD-Manager/releases/{id}/assets?name=<file>
  8. Verifikation:
    • GET /api/v1/repos/Administrator/Twitch-VOD-Manager/releases/latest muss v4.2.2 liefern.
    • Download-Links muessen 200 geben:
      • /releases/download/v4.2.2/latest.yml
      • /releases/download/v4.2.2/Twitch-VOD-Manager-Setup-4.2.2.exe

Verbindliche Asset-Regel

Pro aktuellem Release muessen mindestens diese 3 Dateien vorhanden sein:

  • Twitch-VOD-Manager-Setup-<version>.exe
  • Twitch-VOD-Manager-Setup-<version>.exe.blockmap
  • latest.yml

Ohne diese Dateien funktioniert der Auto-Updater nicht zuverlaessig.

Script-Hinweis

Es gibt ein Script: scripts/release_gitea.mjs (npm: release:gitea).

  • Vor Nutzung sicherstellen, dass:
    • GITEA_TOKEN gesetzt ist.
    • origin korrekt ist.
    • der Tag existiert oder der Workflow diesen sauber erstellt.

Wenn das Script fehlschlaegt, immer auf den manuellen Standardablauf oben zurueckfallen.

DNS/Netzwerk Fallback (nur wenn lokal noetig)

Wenn lokales DNS noch alt cached und Requests fehlschlagen, HTTP-Tests mit erzwungener Aufloesung:

  • curl --resolve git.24-music.de:443:159.195.45.29 https://git.24-music.de/api/v1/version

Nur fuer Tests nutzen, nicht als dauerhaften Workaround.