fix: brainstorm infinite loop, ghost cursor, embedding ::vector cast, semantic search, billing stats, usage meter accordion
All checks were successful
Deploy to Production / Build and Deploy (push) Successful in 5s

- Fix useBrainstormSocket: stable guestId via useRef, remove setState in cleanup
- Fix GhostCursor: direct DOM manipulation via refs, no useState re-renders
- Fix all SQL embedding queries: add ::vector cast on text columns
- Fix embedding truncation to 15000 chars (under 8192 token limit)
- Fix NoteEmbedding INSERT: remove non-existent updatedAt column
- Fix billing page: show all quota stats in grid instead of single metric
- Fix usage meter: accordion expand/collapse, per-feature detail
- Fix semantic search: rebuild 103 note embeddings, ::vector cast on vectorSearch
- Fix brainstorm expand/manual-idea/create: ::vector cast on embedding SQL
This commit is contained in:
Antigravity
2026-05-16 18:50:34 +00:00
parent ee8e2bda59
commit 8c7ca69640
117 changed files with 11732 additions and 834 deletions

View File

@@ -890,7 +890,7 @@
"recentNotesUpdateFailed": "Failed to update recent notes setting"
},
"aiSettings": {
"title": "KI-Einstellungen",
"title": "AI",
"description": "Konfigurieren Sie Ihre KI-gesteuerten Funktionen und Präferenzen",
"features": "KI-Funktionen",
"provider": "KI-Anbieter",
@@ -917,7 +917,8 @@
"autoLabeling": "Etikettenvorschläge",
"autoLabelingDesc": "Schlagt automatisch Beschriftungen für Ihre Notizen vor und wendet diese an",
"noteHistory": "Notizverlauf",
"noteHistoryDesc": "Aktivieren Sie Versions-Snapshots und die Wiederherstellung aus dem Verlauf"
"noteHistoryDesc": "Aktivieren Sie Versions-Snapshots und die Wiederherstellung aus dem Verlauf",
"titleSuggestions": "Titelvorschläge"
},
"general": {
"loading": "Wird geladen...",
@@ -1115,7 +1116,13 @@
"languageDetection": "Spracherkennung",
"languageDetectionDesc": "Erkennt automatisch die Sprache jeder Notiz",
"autoLabeling": "Automatische Beschriftung",
"autoLabelingDesc": "Schlägt Labels vor und wendet sie automatisch an"
"autoLabelingDesc": "Schlägt Labels vor und wendet sie automatisch an",
"fallbackSectionTitle": "Ausweich-Anbieter (optional)",
"fallbackSectionDescription": "Wird bei Anbieterfehlern automatisch genutzt (429, 5xx). Ein erneuter Versuch innerhalb von 1,5 s.",
"fallbackProvider": "Ausweich-Anbieter",
"fallbackModel": "Ausweich-Modell",
"fallbackNone": "Keiner (deaktiviert)",
"fallbackModelPlaceholder": "z. B. gpt-4o-mini"
},
"resend": {
"title": "Resend (Empfohlen)",
@@ -1173,6 +1180,8 @@
"deleteFailed": "Fehler beim Löschen",
"roleUpdateSuccess": "Benutzerrolle zu {role} aktualisiert",
"roleUpdateFailed": "Fehler beim Aktualisieren der Rolle",
"tierUpdateSuccess": "Subscription updated to {tier}",
"tierUpdateFailed": "Failed to update subscription",
"demote": "Zurückstufen",
"promote": "Befördern",
"confirmDelete": "Möchten Sie diesen Benutzer wirklich löschen?",
@@ -1180,6 +1189,7 @@
"name": "Name",
"email": "E-Mail",
"role": "Rolle",
"subscription": "Subscription",
"createdAt": "Erstellt am",
"actions": "Aktionen"
},
@@ -1371,7 +1381,7 @@
"loading": "Wird geladen..."
},
"dataManagement": {
"title": "Datenverwaltung",
"title": "Data",
"toolsDescription": "Werkzeuge zur Pflege Ihrer Datenbankgesundheit",
"exporting": "Wird exportiert...",
"importing": "Wird importiert...",
@@ -1436,7 +1446,7 @@
"fontJetBrainsMono": "JetBrains Mono"
},
"generalSettings": {
"title": "Allgemeine Einstellungen",
"title": "General",
"description": "Allgemeine Anwendungseinstellungen"
},
"toast": {
@@ -1622,7 +1632,7 @@
"collapse": "Zusammenklappen"
},
"mcpSettings": {
"title": "MCP-Einstellungen",
"title": "MCP",
"description": "API-Schlüssel verwalten und externe Tools konfigurieren",
"whatIsMcp": {
"title": "Was ist MCP?",
@@ -2211,7 +2221,9 @@
"exportDefaultNoteTitle": "Synthesis",
"exportOpening": "Opening…",
"ownerBadge": "Owner",
"waveBadge": "Wave {wave}"
"waveBadge": "Wave {wave}",
"quotaGuest": "Der Gastgeber der Sitzung hat sein KI-Kontingent aufgebraucht. Bitte ihn, seinen Tarif zu erweitern.",
"quotaHost": "Sie haben Ihr KI-Kontingent für dieses Brainstorming erreicht. Wechseln Sie den Tarif, um fortzufahren."
},
"usageMeter": {
"packName": "AI Discovery Pack",
@@ -2323,6 +2335,215 @@
"checkoutSuccessBody": "Willkommen bei {tier}. Ihre Funktionen sind jetzt freigeschaltet.",
"subscriptionType": "subscriptionType",
"renewalDate": "renewalDate",
"noRenewalDate": "—"
"noRenewalDate": "—",
"currentUsage": "Aktuelle Nutzung",
"currentPeriod": "Aktueller Zeitraum",
"aiCredits": "KI-Guthaben",
"used": "verwendet",
"billing": "Abrechnung",
"renewal": "Verlängerung",
"paidPlanDesc": "Ihr Abonnement verlängert sich automatisch.",
"businessDescription": "Für Teams und Produktverantwortliche."
},
"landing": {
"nav": {
"features": "Funktionen",
"agents": "KI-Agenten",
"brainstorm": "Brainstorm",
"pricing": "Preise",
"tech": "Architektur",
"login": "Anmelden",
"cta": "Jetzt starten"
},
"hero": {
"badge": "Angetrieben von Künstlicher Intelligenz",
"title1": "Ihr zweites Gehirn,",
"title2": "endlich verstärkt.",
"subtitle": "Momento ist mehr als eine Notizen-App. Es ist ein intelligentes Ökosystem, das Ihre Ideen in Echtzeit verbindet, analysiert und weiterentwickelt mit 6 Arten von KI-Agenten und modernster semantischer Suche.",
"cta": "Jetzt registrieren",
"secondary": "Funktionen ansehen",
"memoryEcho": "Memory Echo",
"memoryEchoText": "\"Verbindung erkannt mit Ihrem Nachhaltigkeitsdesign-Projekt von März 2024...\"",
"brainstormLive": "Brainstorm Live",
"ideasGenerated": "+12 Ideen generiert"
},
"features": {
"label": "KI-Fähigkeiten",
"title": "Fließende Intelligenz,",
"title2": "in jedes Wort eingewoben.",
"desc": "Momento orchestriert Ihre Ideen über eine Multi-Provider-Architektur.",
"f1Title": "Semantische Suche",
"f1Desc": "Schluss mit der Stichwortsuche. Finden Sie nach Konzept. Unsere hybride Vector- und FTS-Engine versteht die Absicht hinter Ihren Notizen.",
"f2Title": "Kontextueller RAG-Chat",
"f2Desc": "Sprechen Sie mit Ihrem Wissen. Unsere Agenten lesen Ihre Notizen, erkunden das Web und analysieren Ihre Dokumente für präzise Antworten.",
"f3Title": "Erweitertes Schreiben",
"f3Desc": "Umformulierung, Titelvorschläge, automatisches Tagging und Zusammenfassungen. Die KI strukturiert Ihr Denken im Hintergrund."
},
"agents": {
"label": "Spezialisierte Agenten",
"title": "Delegieren Sie die komplexe Arbeit.",
"desc": "6 Arten autonomer KI-Agenten für Recherche, Zusammenfassungen und Präsentationen.",
"scraper": {
"title": "Scraper",
"desc": "Erfasst URLs, parst RSS-Feeds und fasst Informationen mit intelligentem Bild-Layout zusammen."
},
"researcher": {
"title": "Researcher",
"desc": "Erstellt komplexe Abfragen, erkundet Webquellen und schreibt strukturierte Recherchenotizen."
},
"slideGen": {
"title": "Slide Gen",
"desc": "Verwandelt Ihre Notizen in professionelle PowerPoint-Präsentationen oder interaktive HTML-Slides."
},
"monitor": {
"title": "Monitor",
"desc": "Analysiert Ihre Notizbücher fortlaufend, um Trends und neue Erkenntnisse zu erkennen."
},
"diagramGen": {
"title": "Diagram Gen",
"desc": "Wandelt Ideen in flüssige Excalidraw-Diagramme (Mindmaps, Flowcharts) mit Auto-Layout um."
},
"custom": {
"title": "Custom",
"desc": "Definieren Sie eigene Agenten mit spezifischen Rollen und Datenquellen."
}
},
"brainstorm": {
"label": "Gedankenwellen",
"title": "Radiales Brainstorming in Echtzeit.",
"waveGeneration": {
"title": "Wellengenerierung",
"desc": "Variationen, Analogien, dann Disruptionen. Die KI treibt Ihr Ausgangskonzept an seine Grenzen."
},
"collaboration": {
"title": "Native Zusammenarbeit",
"desc": "KI-Geistercursor, synchronisierte Avatare und Knotenbewegung in Echtzeit."
},
"export": {
"title": "Semantischer Export",
"desc": "Wandeln Sie Ihr gesamtes Brainstorming mit einem Klick in strukturierte Notizen um."
},
"disruptionLabel": "DISRUPTION",
"disruptionText": "Modulare Architektur 2.0",
"analogyLabel": "ANALOGIE",
"analogyText": "Der Gezeitenzyklus"
},
"tech": {
"label": "Architektur & Anbieter",
"title": "Verbinden Sie Ihr eigenes KI-Modell.",
"tags": {
"title": "Tags",
"desc": "Unabhängig mit jedem Modell konfigurierbar."
},
"embeddings": {
"title": "Embeddings",
"desc": "Unabhängig mit jedem Modell konfigurierbar."
},
"chatRag": {
"title": "Chat RAG",
"desc": "Unabhängig mit jedem Modell konfigurierbar."
}
},
"pricing": {
"label": "Pläne & Preise",
"title": "Wählen Sie Ihr Verstärkungsniveau.",
"desc": "Flexible Optionen für kreative Köpfe vom Einzelgebrauch bis zu großen Organisationen.",
"monthly": "Monatlich",
"annual": "Jährlich",
"perMonth": "/Monat",
"perMonthAnnual": "/Monat, jährlich abgerechnet",
"perUser": "+ 3.90€/user",
"perUserAnnual": "+ 2.90€/user, billed annually",
"popular": "Am beliebtesten",
"basic": {
"name": "Basic",
"desc": "Entdecken Sie die Magie von Momento.",
"cta": "Loslegen",
"feature0": "Max. 100 Notizen",
"feature1": "3 Notizbücher",
"feature2": "50 KI-Credits (lebenslang)",
"feature3": "Semantische Suche",
"feature4": "7-Tage-Verlauf"
},
"pro": {
"name": "Pro",
"desc": "Für anspruchsvolle Berater und Kreative.",
"cta": "Auf Pro upgraden",
"feature0": "Unbegrenzte Notizen",
"feature1": "BYOK (OpenAI/Anthropic)",
"feature2": "200 semantische Suchen",
"feature3": "Agenten (12 Läufe/Monat)",
"feature4": "30-Tage-Verlauf",
"feature5": "E-Mail-Support"
},
"business": {
"name": "Business",
"desc": "Für Teams und Produktmanager.",
"cta": "Business wählen",
"feature0": "10 Mitarbeitende inklusive",
"feature1": "BYOK (13 Anbieter)",
"feature2": "1000 semantische Suchen",
"feature3": "Agenten (60 Läufe/Monat)",
"feature4": "Unbegrenztes Brainstorming",
"feature5": "API-Zugang"
},
"enterprise": {
"name": "Enterprise",
"desc": "Sicheres organisationales Gedächtnis.",
"cta": "Vertrieb kontaktieren",
"feature0": "Alles aus Business",
"feature1": "Unbegrenzte Agenten",
"feature2": "SSO / SAML",
"feature3": "Audit-Logs & SLA",
"feature4": "Dedizierter Support",
"feature5": "Live-Onboarding"
}
},
"byok": {
"label": "Offene Cloud-Technologie",
"title": "Die BYOK-Strategie",
"desc": "Sie haben bereits API-Schlüssel von OpenAI, Anthropic oder Google? Verbinden Sie sie direkt mit Momento. Nutzen Sie KI ohne erzwungene Credit-Limits und zahlen Sie nur, was Sie beim Anbieter Ihrer Wahl tatsächlich verbrauchen.",
"noLockin": "Kein Lock-in",
"noLockinDesc": "Anbieter mit einem Klick wechseln.",
"cost": "Optimierte Kosten",
"costDesc": "Zahlen Sie den direkten API-Preis.",
"configLabel": "Multi-Provider-Konfiguration"
},
"cta": {
"title1": "Bereit, Ihr",
"title2": "volles Potenzial freizusetzen?",
"desc": "Schließen Sie sich Tausenden von Forschern, Designern und Denkern an, die Momento bereits nutzen, um ihre Zukunft zu gestalten.",
"button": "Momento starten"
},
"footer": {
"desc": "Das KI-verstärkte zweite Gehirn. Für kreative Köpfe entwickelt.",
"product": {
"title": "Produkt",
"link0": "Changelog",
"link1": "Dokumentation",
"link2": "Roadmap",
"link0Href": "#",
"link1Href": "#",
"link2Href": "#"
},
"community": {
"title": "Community",
"link0": "Discord",
"link1": "Twitter / X",
"link2": "LinkedIn",
"link0Href": "#",
"link1Href": "#",
"link2Href": "#"
},
"legal": {
"title": "Rechtliches",
"link0": "Datenschutz",
"link1": "Nutzungsbedingungen",
"link2": "Cookie-Richtlinie",
"link0Href": "#",
"link1Href": "#",
"link2Href": "#"
}
}
}
}
}