fix: #24 Generisches Alert-Overlay: Host für erweiterbare Alert-Plugins #27

Merged
frank merged 1 commit from agent/issue-24-generisches-alert-overlay-host-für-erwe into main 2026-07-13 11:49:15 +02:00
Collaborator

Closes #24

Automated by forge agent (codex).

Closes #24 Automated by forge agent (`codex`).
Author
Collaborator

🚧 WIP pull request opened — linked to issue #24. Agent is working…

🚧 **WIP pull request opened** — linked to issue #24. Agent is working…
Author
Collaborator

💭 Agent progress

Ich prüfe zuerst den bestehenden Overlay-/Extension-Aufbau und die genaue Issue-Konfiguration, dann implementiere ich den Host in kleinen, jeweils gepushten Schritten.

💭 **Agent progress** Ich prüfe zuerst den bestehenden Overlay-/Extension-Aufbau und die genaue Issue-Konfiguration, dann implementiere ich den Host in kleinen, jeweils gepushten Schritten.
Author
Collaborator

💭 Agent progress

Investigating credential failure in issue view

💭 **Agent progress** **Investigating credential failure in issue view**
Author
Collaborator

💭 Agent progress

Inspecting files in detail

💭 **Agent progress** **Inspecting files in detail**
Author
Collaborator

💭 Agent progress

Reviewing API lifecycle limitations

💭 **Agent progress** **Reviewing API lifecycle limitations**
Author
Collaborator

💭 Agent progress

Planning dynamic plugin loading and alert system

Designing dynamic alert registration API and plugin import

Extending config to unify alert and event types

💭 **Agent progress** **Planning dynamic plugin loading and alert system** **Designing dynamic alert registration API and plugin import** **Extending config to unify alert and event types**
codex changed title from WIP: #24 Generisches Alert-Overlay: Host für erweiterbare Alert-Plugins to fix: #24 Generisches Alert-Overlay: Host für erweiterbare Alert-Plugins 2026-07-13 10:21:11 +02:00
Author
Collaborator

forge agent finished implementation

  • Commit: feat: add guided setup assistant (#19)
  • Pull request: #27
  • Next: waiting for CI / babysitting fixes if needed
src-tauri/src/server/api.rs | 30 +++++++++++++++
 src/App.css                 | 55 +++++++++++++++++++++++++++
 src/App.tsx                 | 92 ++++++++++++++++++++++++++++++++++++++++++++-
 src/lib/api.ts              |  2 +
 4 files changed, 178 insertions(+), 1 deletion(-)
Agent output (tail)
Ich prüfe zuerst den bestehenden Overlay-/Extension-Aufbau und die genaue Issue-Konfiguration, dann implementiere ich den Host in kleinen, jeweils gepushten Schritten.Die vorhandene Runtime lässt sich dafür gut erweitern: Das Host-Overlay bleibt eine einzige Browser Source und lädt konfigurierte Extension-Module zur Laufzeit. Ich ergänze außerdem Lifecycle-Events, damit die Source nach Extension-Änderungen selbst neu lädt.
✅ **forge agent finished implementation** - Commit: `feat: add guided setup assistant (#19)` - Pull request: https://repository.hildebrandt.io/frank/streamertool/pulls/27 - Next: waiting for CI / babysitting fixes if needed ``` src-tauri/src/server/api.rs | 30 +++++++++++++++ src/App.css | 55 +++++++++++++++++++++++++++ src/App.tsx | 92 ++++++++++++++++++++++++++++++++++++++++++++- src/lib/api.ts | 2 + 4 files changed, 178 insertions(+), 1 deletion(-) ``` <details><summary>Agent output (tail)</summary> ``` Ich prüfe zuerst den bestehenden Overlay-/Extension-Aufbau und die genaue Issue-Konfiguration, dann implementiere ich den Host in kleinen, jeweils gepushten Schritten.Die vorhandene Runtime lässt sich dafür gut erweitern: Das Host-Overlay bleibt eine einzige Browser Source und lädt konfigurierte Extension-Module zur Laufzeit. Ich ergänze außerdem Lifecycle-Events, damit die Source nach Extension-Änderungen selbst neu lädt. ``` </details>
Author
Collaborator
🟢 **CI green** (attempt 1/3) https://repository.hildebrandt.io/frank/streamertool/actions/runs/36
Author
Collaborator

💭 Agent progress

Planning backend overlay implementation

Designing extension lifecycle and plugin loading

Implementing synchronous global plugin registration
Die vorhandene Runtime lässt sich dafür gut erweitern: Das Host-Overlay bleibt eine einzige Browser Source und lädt konfigurierte Extension-Module zur Laufzeit. Ich ergänze außerdem Lifecycle-Events, damit die Source nach Extension-Änderungen selbst neu lädt.

💭 **Agent progress** **Planning backend overlay implementation** **Designing extension lifecycle and plugin loading** **Implementing synchronous global plugin registration** Die vorhandene Runtime lässt sich dafür gut erweitern: Das Host-Overlay bleibt eine einzige Browser Source und lädt konfigurierte Extension-Module zur Laufzeit. Ich ergänze außerdem Lifecycle-Events, damit die Source nach Extension-Änderungen selbst neu lädt.
Owner

@codex du hast vergessen zu pushen

@codex du hast vergessen zu pushen
Author
Collaborator

💬 Mention received from @frank — continuing coding session in this worktree…

@codex du hast vergessen zu pushen

💬 **Mention received** from @frank — continuing coding session in this worktree… > @codex du hast vergessen zu pushen
feat: add generic alert overlay host (#24)
All checks were successful
CI / ci (pull_request) Successful in 1m59s
71e3757a05
Author
Collaborator

🛠️ Mention follow-up pushed (comment 974)

Ich prüfe den aktuellen Branch und die vorhandenen Änderungen, dann committe und pushe den ausstehenden Stand gezielt für PR #27.Der Branch enthält tatsächlich noch keinen Feature-Commit; ich setze die Alert-Host-Funktion nun neu auf und pushe sie in kleinen, überprüften Schritten.Die Rust-Tests kompilieren; zwei bestehende Netzwerk-Integrationstests können in der Sandbox keinen lokalen Socket öffnen. Ich aktualisiere noch das signierte Beispiel und pushe danach den Feature-Commit.Der Commit scheitert nur an der Worktree-Metadaten-Sandbox (.git-Index liegt außerhalb des beschreibbaren Workspace). Ich fordere jetzt die nötige Freigabe für das Stagen, Committen und Pushen dieses Branches an.Gepusht: 71e3757 feat: add generic alert overlay host (#24) auf den PR-Branch.

  • Built-in Alert Overlay mit Plugin-Host und OBS-URL
  • Plugin-Reload bei Installation, Update und Entfernen
  • Sichere Behandlung unbekannter/deaktivierter Plugins
  • Beispiel, Template und Doku auf createAlert() aktualisiert
    Tests: Rust kompiliert; 56 Tests bestanden. Zwei vorhandene Socket-Integrationstests sind in der Sandbox wegen fehlender Socket-Berechtigung fehlgeschlagen. Frontend-Build konnte ohne installierte Node-Dependencies nicht starten.
    TODO_DONE: Builtin Alert-Overlay ist als Overlay-Instanz verfügbar und in OBS als Browser Source nutzbar
    TODO_DONE: Host lädt/spielt Plugin-Animationen gemäß aktiver Alert-Configs ab
    TODO_DONE: Neue/aktualisierte/gelöschte Extensions triggern einen Reload des Alert-Overlays
    TODO_DONE: Unbekannte oder deaktivierte Plugins werden sauber ignoriert (kein Hard-Crash)
    TODO_DONE: Kurze Doku: OBS-URL, Event-Flow, Erweiterungspunkte
🛠️ **Mention follow-up pushed** (comment 974) Ich prüfe den aktuellen Branch und die vorhandenen Änderungen, dann committe und pushe den ausstehenden Stand gezielt für PR #27.Der Branch enthält tatsächlich noch keinen Feature-Commit; ich setze die Alert-Host-Funktion nun neu auf und pushe sie in kleinen, überprüften Schritten.Die Rust-Tests kompilieren; zwei bestehende Netzwerk-Integrationstests können in der Sandbox keinen lokalen Socket öffnen. Ich aktualisiere noch das signierte Beispiel und pushe danach den Feature-Commit.Der Commit scheitert nur an der Worktree-Metadaten-Sandbox (`.git`-Index liegt außerhalb des beschreibbaren Workspace). Ich fordere jetzt die nötige Freigabe für das Stagen, Committen und Pushen dieses Branches an.Gepusht: `71e3757 feat: add generic alert overlay host (#24)` auf den PR-Branch. - Built-in Alert Overlay mit Plugin-Host und OBS-URL - Plugin-Reload bei Installation, Update und Entfernen - Sichere Behandlung unbekannter/deaktivierter Plugins - Beispiel, Template und Doku auf `createAlert()` aktualisiert Tests: Rust kompiliert; 56 Tests bestanden. Zwei vorhandene Socket-Integrationstests sind in der Sandbox wegen fehlender Socket-Berechtigung fehlgeschlagen. Frontend-Build konnte ohne installierte Node-Dependencies nicht starten. TODO_DONE: Builtin Alert-Overlay ist als Overlay-Instanz verfügbar und in OBS als Browser Source nutzbar TODO_DONE: Host lädt/spielt Plugin-Animationen gemäß aktiver Alert-Configs ab TODO_DONE: Neue/aktualisierte/gelöschte Extensions triggern einen Reload des Alert-Overlays TODO_DONE: Unbekannte oder deaktivierte Plugins werden sauber ignoriert (kein Hard-Crash) TODO_DONE: Kurze Doku: OBS-URL, Event-Flow, Erweiterungspunkte
Author
Collaborator

☑️ ToDos checked off

  • Builtin Alert-Overlay ist als Overlay-Instanz verfügbar und in OBS als Browser Source nutzbar
  • Host lädt/spielt Plugin-Animationen gemäß aktiver Alert-Configs ab
  • Neue/aktualisierte/gelöschte Extensions triggern einen Reload des Alert-Overlays
  • Unbekannte oder deaktivierte Plugins werden sauber ignoriert (kein Hard-Crash)
  • Kurze Doku: OBS-URL, Event-Flow, Erweiterungspunkte
☑️ **ToDos checked off** - [x] Builtin Alert-Overlay ist als Overlay-Instanz verfügbar und in OBS als Browser Source nutzbar - [x] Host lädt/spielt Plugin-Animationen gemäß aktiver Alert-Configs ab - [x] Neue/aktualisierte/gelöschte Extensions triggern einen Reload des Alert-Overlays - [x] Unbekannte oder deaktivierte Plugins werden sauber ignoriert (kein Hard-Crash) - [x] Kurze Doku: OBS-URL, Event-Flow, Erweiterungspunkte
Author
Collaborator

💬 Mention received from @frank — continuing coding session in this worktree…

@codex du hast vergessen zu pushen

💬 **Mention received** from @frank — continuing coding session in this worktree… > @codex du hast vergessen zu pushen
Author
Collaborator

🛠️ Mention follow-up pushed (comment 974)

Ich prüfe Branch, Status und Remote und pushe die bereits vorhandenen Commits beziehungsweise noch offene PR-Änderungen direkt.Der lokale Branch ist sauber und zeigt denselben Commit wie der aktuell bekannte origin-Tracking-Stand. Ich verifiziere jetzt direkt gegen Forgejo/PR #27 und führe anschließend einen expliziten Push aus, damit kein veralteter Tracking-Stand täuscht.Die Forgejo-CLI findet in dieser nicht-interaktiven Umgebung keine Credentials. Der Git-Remote ist aber korrekt konfiguriert; ich pushe den PR-Branch daher direkt per Git.Der Push ist erfolgreich; Forgejo meldet Everything up-to-date. Ich gleiche noch den Remote-Hash unabhängig vom lokalen Tracking-Ref ab, um den tatsächlichen Stand eindeutig zu bestätigen.Branch erfolgreich geprüft und gepusht.

  • Remote und lokaler Stand: 71e3757
  • Forgejo bestätigt den Commit auf dem PR-Branch
  • Arbeitsverzeichnis ist sauber; keine uncommitteten Änderungen vorhanden
🛠️ **Mention follow-up pushed** (comment 974) Ich prüfe Branch, Status und Remote und pushe die bereits vorhandenen Commits beziehungsweise noch offene PR-Änderungen direkt.Der lokale Branch ist sauber und zeigt denselben Commit wie der aktuell bekannte `origin`-Tracking-Stand. Ich verifiziere jetzt direkt gegen Forgejo/PR #27 und führe anschließend einen expliziten Push aus, damit kein veralteter Tracking-Stand täuscht.Die Forgejo-CLI findet in dieser nicht-interaktiven Umgebung keine Credentials. Der Git-Remote ist aber korrekt konfiguriert; ich pushe den PR-Branch daher direkt per Git.Der Push ist erfolgreich; Forgejo meldet `Everything up-to-date`. Ich gleiche noch den Remote-Hash unabhängig vom lokalen Tracking-Ref ab, um den tatsächlichen Stand eindeutig zu bestätigen.Branch erfolgreich geprüft und gepusht. - Remote und lokaler Stand: `71e3757` - Forgejo bestätigt den Commit auf dem PR-Branch - Arbeitsverzeichnis ist sauber; keine uncommitteten Änderungen vorhanden
Author
Collaborator

💬 Mention received from @frank — continuing coding session in this worktree…

@codex du hast vergessen zu pushen

💬 **Mention received** from @frank — continuing coding session in this worktree… > @codex du hast vergessen zu pushen
Author
Collaborator

🛠️ Mention follow-up pushed (comment 974)

Ich prüfe den Branch- und Arbeitsbaumstatus und pushe die bereits erstellten Commits direkt zum konfigurierten Forgejo-Remote.Der Arbeitsbaum ist sauber, und der lokale Commit 71e3757 wird bereits als identisch mit dem Remote-Branch angezeigt. Ich führe trotzdem einen expliziten Push aus und prüfe anschließend den PR-Stand.Branch erfolgreich geprüft und gepusht.

  • Commit: 71e3757 feat: add generic alert overlay host (#24)
  • Remote-Branch enthält exakt diesen Commit.
  • Arbeitsbaum ist sauber; keine weiteren Änderungen nötig.
🛠️ **Mention follow-up pushed** (comment 974) Ich prüfe den Branch- und Arbeitsbaumstatus und pushe die bereits erstellten Commits direkt zum konfigurierten Forgejo-Remote.Der Arbeitsbaum ist sauber, und der lokale Commit `71e3757` wird bereits als identisch mit dem Remote-Branch angezeigt. Ich führe trotzdem einen expliziten Push aus und prüfe anschließend den PR-Stand.Branch erfolgreich geprüft und gepusht. - Commit: `71e3757 feat: add generic alert overlay host (#24)` - Remote-Branch enthält exakt diesen Commit. - Arbeitsbaum ist sauber; keine weiteren Änderungen nötig.
Author
Collaborator

💬 Mention received from @frank — continuing coding session in this worktree…

@codex du hast vergessen zu pushen

💬 **Mention received** from @frank — continuing coding session in this worktree… > @codex du hast vergessen zu pushen
Author
Collaborator

🛠️ Mention follow-up pushed (comment 974)

Ich prüfe den Branch- und Arbeitsbaumstatus und pushe die bereits vorhandenen Commits beziehungsweise noch ausstehende Änderungen direkt zum PR-Branch.

🛠️ **Mention follow-up pushed** (comment 974) Ich prüfe den Branch- und Arbeitsbaumstatus und pushe die bereits vorhandenen Commits beziehungsweise noch ausstehende Änderungen direkt zum PR-Branch.
Author
Collaborator

💬 Mention received from @frank — continuing coding session in this worktree…

@codex du hast vergessen zu pushen

💬 **Mention received** from @frank — continuing coding session in this worktree… > @codex du hast vergessen zu pushen
Author
Collaborator

🛠️ Mention follow-up pushed (comment 974)

Ich prüfe den aktuellen Branch und den Worktree auf uncommittete Änderungen und pushe anschließend alles Zugehörige zu PR #27.Der Worktree ist sauber; der Feature-Commit 71e3757 ist vorhanden. Ich pushe den PR-Branch jetzt ausdrücklich zum Forgejo-Remote und prüfe danach den Remote-Stand.

🛠️ **Mention follow-up pushed** (comment 974) Ich prüfe den aktuellen Branch und den Worktree auf uncommittete Änderungen und pushe anschließend alles Zugehörige zu PR #27.Der Worktree ist sauber; der Feature-Commit `71e3757` ist vorhanden. Ich pushe den PR-Branch jetzt ausdrücklich zum Forgejo-Remote und prüfe danach den Remote-Stand.
Author
Collaborator

💬 Mention received from @frank — continuing coding session in this worktree…

@codex du hast vergessen zu pushen

💬 **Mention received** from @frank — continuing coding session in this worktree… > @codex du hast vergessen zu pushen
frank merged commit 8a46801d32 into main 2026-07-13 11:49:15 +02:00
frank deleted branch agent/issue-24-generisches-alert-overlay-host-für-erwe 2026-07-13 11:49:15 +02:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
frank/streamertool!27
No description provided.