From ff3e358e2795e423f2c35f02ee039b77a82bc18f Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Mon, 21 Sep 2026 17:13:00 +0000 Subject: [PATCH] Move group conversation start out of Projekte sidebar section Group chats are not project actions. Start a group conversation is now a top-level sidebar row between Heute and Projekte; Projekte empty state and header plus focus on creating projects instead. Co-authored-by: cynarAI --- apps/web/e2e/group-chats.spec.ts | 16 ++++++++++++ apps/web/scripts/translations-de.json | 4 +++ apps/web/src/locales/de/messages.po | 14 +++++++++++ apps/web/src/locales/en/messages.po | 13 ++++++++++ apps/web/src/pages/Shell.tsx | 36 +++++++++++++++++---------- 5 files changed, 70 insertions(+), 13 deletions(-) diff --git a/apps/web/e2e/group-chats.spec.ts b/apps/web/e2e/group-chats.spec.ts index 1e00cf2..d66c5a4 100644 --- a/apps/web/e2e/group-chats.spec.ts +++ b/apps/web/e2e/group-chats.spec.ts @@ -12,6 +12,22 @@ async function createBot(page: Page, name: string) { return createNamedBot(page, name); } +test("start group conversation is top-level, not inside Projekte", async ({ page }) => { + const stamp = Date.now(); + await signup(page, `group-ia-${stamp}@rakazo.test`, "password12", "Group IA"); + await completeOnboarding(page); + await page.goto("/app"); + await page.waitForURL(/\/app\/[^/]+$/); + + const startGroup = page.getByTestId("start-group-conversation"); + await expect(startGroup).toBeVisible(); + await expect(page.locator(".sidebar-projekte").getByTestId("start-group-conversation")).toHaveCount( + 0, + ); + await expect(page.locator(".sidebar-projekte")).toContainText("Projekte"); + await expect(page.locator(".sidebar-projekte")).not.toContainText("Start a group conversation"); +}); + test("create group from + and see two bots in one transcript", async ({ page }, testInfo) => { const stamp = Date.now(); await signup(page, `group-${stamp}@rakazo.test`, "password12", "Group E2E"); diff --git a/apps/web/scripts/translations-de.json b/apps/web/scripts/translations-de.json index 48f3540..008696c 100644 --- a/apps/web/scripts/translations-de.json +++ b/apps/web/scripts/translations-de.json @@ -477,6 +477,10 @@ "Server URL": "Server-URL", "Set up voice to call": "Stimme für Anrufe einrichten", "Settings": "Einstellungen", + "Start a group conversation": "Gruppengespräch starten", + "No projects yet.": "Noch keine Projekte.", + "Create a project": "Projekt erstellen", + "Threads by topic · folders": "Threads nach Thema · Ordner", "Discover now": "Jetzt entdecken", "Live Trading": "Live Trading", "Close integrations settings": "Integrationen-Einstellungen schließen", diff --git a/apps/web/src/locales/de/messages.po b/apps/web/src/locales/de/messages.po index e005369..6cfc2c1 100644 --- a/apps/web/src/locales/de/messages.po +++ b/apps/web/src/locales/de/messages.po @@ -1427,6 +1427,10 @@ msgstr "Neue Gruppe erstellen" msgid "Create new Space" msgstr "Neuen Space erstellen" +#: src/pages/Shell.tsx:3093 +msgid "Create a project" +msgstr "Projekt erstellen" + #: src/pages/RoutineEditor.tsx:122 #: src/pages/RoutineEditor.tsx:123 msgid "Create Routine" @@ -2531,6 +2535,10 @@ msgstr "Noch keine Nachrichten mit {peerBotName}." msgid "No model catalog is available." msgstr "Kein Modellkatalog verfügbar." +#: src/pages/Shell.tsx:3086 +msgid "No projects yet." +msgstr "Noch keine Projekte." + #: src/pages/ModelSettingsOverlay.tsx:453 msgid "No providers found." msgstr "Keine Anbieter gefunden." @@ -3411,6 +3419,9 @@ msgid "Speaking…" msgstr "Spricht…" #: src/components/teach/TeachComputerOverlay.tsx:250 +msgid "Start a group conversation" +msgstr "Gruppengespräch starten" + msgid "Start recording" msgstr "Aufnahme starten" @@ -3604,6 +3615,9 @@ msgid "To:" msgstr "An:" #: src/pages/PluginsOverlay.tsx:1111 +msgid "Threads by topic · folders" +msgstr "Threads nach Thema · Ordner" + msgid "Tool sources" msgstr "Toolquellen" diff --git a/apps/web/src/locales/en/messages.po b/apps/web/src/locales/en/messages.po index 399dc1c..2bdc259 100644 --- a/apps/web/src/locales/en/messages.po +++ b/apps/web/src/locales/en/messages.po @@ -1426,6 +1426,10 @@ msgstr "Create new Group" msgid "Create new Space" msgstr "Create new Space" +#: src/pages/Shell.tsx:3093 +msgid "Create a project" +msgstr "Create a project" + #: src/pages/RoutineEditor.tsx:122 #: src/pages/RoutineEditor.tsx:123 msgid "Create Routine" @@ -2531,6 +2535,9 @@ msgid "No model catalog is available." msgstr "No model catalog is available." #: src/pages/ModelSettingsOverlay.tsx:453 +msgid "No projects yet." +msgstr "No projects yet." + msgid "No providers found." msgstr "No providers found." @@ -3410,6 +3417,9 @@ msgid "Speaking…" msgstr "Speaking…" #: src/components/teach/TeachComputerOverlay.tsx:250 +msgid "Start a group conversation" +msgstr "Start a group conversation" + msgid "Start recording" msgstr "Start recording" @@ -3603,6 +3613,9 @@ msgid "To:" msgstr "To:" #: src/pages/PluginsOverlay.tsx:1111 +msgid "Threads by topic · folders" +msgstr "Threads by topic · folders" + msgid "Tool sources" msgstr "Tool sources" diff --git a/apps/web/src/pages/Shell.tsx b/apps/web/src/pages/Shell.tsx index 1535989..045a44d 100644 --- a/apps/web/src/pages/Shell.tsx +++ b/apps/web/src/pages/Shell.tsx @@ -115,6 +115,7 @@ import { Square, TextQuote, Trash2, + Users, Volume2, X, } from "lucide-react"; @@ -3037,27 +3038,36 @@ export function ShellPage() { +
{/* PROJEKTE SECTION */}
{t`Projekte`}

- {t`Group conversations · folders`} + {t`Threads by topic · folders`}

-
) : null}