feat(chat-share): Tabs des Browser-Panels gelangen mit dem geteilten Chat auf den anderen Rechner #328
Labels
No labels
herkunft/alpha-feedback
status
blockiert
status
zu-testen
typ
bug
typ
docs
typ
enhancement
typ
feature
typ
idea
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
iris/Iris#328
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Befund
Sind im Browser-Panel (rechtes Seitenpanel) Tabs geöffnet, erscheinen sie nach dem Teilen des Chats nicht auf dem anderen Rechner. Die Tabs liegen nur im
state.jsondes Pluginsiris-browserauf dem Rechner des Servers, geschlüsselt mit der lokalen Chat-ID (bei importierten Chats eine andere als auf dem Ursprungsrechner). Ein geteilter Chat überträgt nur Manifest, Verlauf und Workspace.Entscheidung (mit Alf)
Synchronisiert wird die Tab-Liste (URLs, Titel, aktiver Tab); auf dem anderen Rechner stehen die Tabs geparkt und laden beim Fortsetzen neu. Seiteninhalt, Logins, Formulare wandern nie mit. Der neuere Stand gewinnt. Export bei jeder Änderung, entprellt.
Umsetzung
Das Plugin legt die Tab-Liste als
.iris-browser-tabs.jsonim Workspace des Chats ab (panel_api.py, läuft auf dem Server-Host; der Browser-Dienst im eigenen Container auf dem Linux-Server hat keinen Zugriff auf/workspaces). Der bestehende Workspace-Sync (iris/Iris#326) trägt die Datei. Auf dem anderen Rechner übernimmt das Panel sie beim nächsten Aufruf über den neuen Dienstbefehl--adopt-tabs. Meldet eine Panel-Antwortworkspace_changed: true, stößt der Server den Export an.Anteil dieses Repos: Mac-Server stößt nach
workspace_changedden Export an (handlePluginPanelAPI). Plugin: iris/iris-plugins, Linux: iris/iris-linux-server.PR #329 gemergt: feat(chat-share): Export nach workspace_changed der Panel-API, Tabs des Browser-Plugins (iris/Iris#328)
http://docker:3000/iris/Iris/pulls/329
Commits:
Stand
Anteil dieses Repos: Mac-Server (
handlePluginPanelAPI) stößtChatShareManager.workspaceMayHaveChanged()an, wenn die Antwort einespanel_api-Befehlsworkspace_changed: truemeldet. Das Plugin iris-browser 0.5.3 (iris/iris-plugins#347) schreibt die Tab-Liste als.iris-browser-tabs.jsonin den Workspace des Chats; der Workspace-Sync aus #326 trägt sie, das Panel auf der Gegenseite übernimmt sie (Tabs geparkt, neuerer Stand gewinnt). Linux: iris/iris-linux-server#143.Geprüft: Plugin: 22 Unit-Tests und Rauchtest gegen echten Chromium (Details im Kommentar in iris-plugins#347). Server-Auslöser: Linux-Test grün.
Nicht geprüft: Kein Xcode-Build der App, die Änderung in
IrisRemoteServer.swiftist nicht übersetzt. Nicht zwischen Mac Studio und Mac-VM ausprobiert.Offen: Probe: Tab im Browser-Panel der VM öffnen, ~5 s warten, VM und dann Studio synchronisieren, Browser-Panel des Chats auf dem Studio öffnen (Tabs erscheinen geparkt, „Fortsetzen“ lädt sie).
PR #154 gemergt: docs(wire): workspace_changed der Panel-API löst den Export geteilter Chats aus (iris/Iris#328)
http://docker:3000/alf/2ndbrain/pulls/154
Commits: