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
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:
@@ -400,7 +400,7 @@
|
||||
"transformError": "Error during transformation",
|
||||
"convertToRichtext": "Converti in Rich Text",
|
||||
"convertingToRichtext": "Conversione...",
|
||||
"assistant": "AI Assistant",
|
||||
"assistant": "AI Note",
|
||||
"generating": "Generating...",
|
||||
"generateTitles": "Generate titles",
|
||||
"reformulateText": "Reformulate text",
|
||||
@@ -890,7 +890,7 @@
|
||||
"recentNotesUpdateFailed": "Failed to update recent notes setting"
|
||||
},
|
||||
"aiSettings": {
|
||||
"title": "Impostazioni AI",
|
||||
"title": "AI",
|
||||
"description": "Configura le funzionalità AI e le preferenze",
|
||||
"features": "Funzionalità AI",
|
||||
"provider": "Provider AI",
|
||||
@@ -917,7 +917,8 @@
|
||||
"autoLabeling": "Suggerimenti per le etichette",
|
||||
"autoLabelingDesc": "Suggerisce e applica automaticamente le etichette alle tue note",
|
||||
"noteHistory": "Nota la storia",
|
||||
"noteHistoryDesc": "Abilita gli snapshot della versione e il ripristino dalla cronologia"
|
||||
"noteHistoryDesc": "Abilita gli snapshot della versione e il ripristino dalla cronologia",
|
||||
"titleSuggestions": "Suggerimento titoli"
|
||||
},
|
||||
"general": {
|
||||
"loading": "Caricamento...",
|
||||
@@ -1115,7 +1116,13 @@
|
||||
"languageDetection": "Rilevamento lingua",
|
||||
"languageDetectionDesc": "Rileva automaticamente la lingua di ogni nota",
|
||||
"autoLabeling": "Etichettatura automatica",
|
||||
"autoLabelingDesc": "Suggerisce e applica etichette automaticamente"
|
||||
"autoLabelingDesc": "Suggerisce e applica etichette automaticamente",
|
||||
"fallbackSectionTitle": "Provider di riserva (opzionale)",
|
||||
"fallbackSectionDescription": "Usato automaticamente in caso di errori del provider (429, 5xx). Un solo nuovo tentativo entro 1,5 s.",
|
||||
"fallbackProvider": "Provider di riserva",
|
||||
"fallbackModel": "Modello di riserva",
|
||||
"fallbackNone": "Nessuno (disattivato)",
|
||||
"fallbackModelPlaceholder": "es. gpt-4o-mini"
|
||||
},
|
||||
"resend": {
|
||||
"title": "Resend (Consigliato)",
|
||||
@@ -1173,6 +1180,8 @@
|
||||
"deleteFailed": "Failed to delete",
|
||||
"roleUpdateSuccess": "User role updated to {role}",
|
||||
"roleUpdateFailed": "Failed to update role",
|
||||
"tierUpdateSuccess": "Subscription updated to {tier}",
|
||||
"tierUpdateFailed": "Failed to update subscription",
|
||||
"demote": "Declassa",
|
||||
"promote": "Promuovi",
|
||||
"confirmDelete": "Sei sicuro di voler eliminare questo utente?",
|
||||
@@ -1180,6 +1189,7 @@
|
||||
"name": "Name",
|
||||
"email": "Email",
|
||||
"role": "Role",
|
||||
"subscription": "Subscription",
|
||||
"createdAt": "Created At",
|
||||
"actions": "Actions"
|
||||
},
|
||||
@@ -1371,7 +1381,7 @@
|
||||
"loading": "Caricamento..."
|
||||
},
|
||||
"dataManagement": {
|
||||
"title": "Data Management",
|
||||
"title": "Data",
|
||||
"toolsDescription": "Tools to maintain your database health",
|
||||
"exporting": "Esportazione in corso...",
|
||||
"importing": "Importazione in corso...",
|
||||
@@ -1436,7 +1446,7 @@
|
||||
"fontJetBrainsMono": "JetBrains Mono"
|
||||
},
|
||||
"generalSettings": {
|
||||
"title": "Impostazioni generali",
|
||||
"title": "General",
|
||||
"description": "Impostazioni generali dell'applicazione"
|
||||
},
|
||||
"toast": {
|
||||
@@ -1622,7 +1632,7 @@
|
||||
"collapse": "Comprimi"
|
||||
},
|
||||
"mcpSettings": {
|
||||
"title": "Impostazioni MCP",
|
||||
"title": "MCP",
|
||||
"description": "Gestisci le chiavi API e configura gli strumenti esterni",
|
||||
"whatIsMcp": {
|
||||
"title": "Cos'è MCP?",
|
||||
@@ -2211,7 +2221,9 @@
|
||||
"exportDefaultNoteTitle": "Synthesis",
|
||||
"exportOpening": "Opening…",
|
||||
"ownerBadge": "Owner",
|
||||
"waveBadge": "Wave {wave}"
|
||||
"waveBadge": "Wave {wave}",
|
||||
"quotaGuest": "L'host della sessione ha raggiunto il limite IA. Chiedigli di aggiornare il piano.",
|
||||
"quotaHost": "Hai raggiunto il limite IA per questo brainstorm. Passa a un piano superiore per continuare."
|
||||
},
|
||||
"usageMeter": {
|
||||
"packName": "AI Discovery Pack",
|
||||
@@ -2323,6 +2335,215 @@
|
||||
"checkoutSuccessBody": "Benvenuto su {tier}. Le tue funzionalità sono ora sbloccate.",
|
||||
"subscriptionType": "subscriptionType",
|
||||
"renewalDate": "renewalDate",
|
||||
"noRenewalDate": "—"
|
||||
"noRenewalDate": "—",
|
||||
"currentUsage": "Utilizzo attuale",
|
||||
"currentPeriod": "Periodo corrente",
|
||||
"aiCredits": "Crediti IA",
|
||||
"used": "utilizzati",
|
||||
"billing": "Fatturazione",
|
||||
"renewal": "Rinnovo",
|
||||
"paidPlanDesc": "Il tuo abbonamento si rinnova automaticamente.",
|
||||
"businessDescription": "Per team e responsabili di prodotto."
|
||||
},
|
||||
"landing": {
|
||||
"nav": {
|
||||
"features": "Funzionalità",
|
||||
"agents": "Agenti IA",
|
||||
"brainstorm": "Brainstorm",
|
||||
"pricing": "Prezzi",
|
||||
"tech": "Architettura",
|
||||
"login": "Accedi",
|
||||
"cta": "Inizia"
|
||||
},
|
||||
"hero": {
|
||||
"badge": "Potenziato dall'intelligenza artificiale",
|
||||
"title1": "Il tuo secondo cervello,",
|
||||
"title2": "finalmente amplificato.",
|
||||
"subtitle": "Momento è più di un'app per appunti. È un ecosistema intelligente che collega, analizza e sviluppa le tue idee in tempo reale con 6 tipi di agenti IA e ricerca semantica all'avanguardia.",
|
||||
"cta": "Registrati ora",
|
||||
"secondary": "Scopri le funzionalità",
|
||||
"memoryEcho": "Memory Echo",
|
||||
"memoryEchoText": "\"Connessione rilevata con il tuo progetto di design sostenibile di marzo 2024...\"",
|
||||
"brainstormLive": "Brainstorm Live",
|
||||
"ideasGenerated": "+12 idee generate"
|
||||
},
|
||||
"features": {
|
||||
"label": "Capacità IA",
|
||||
"title": "Intelligenza fluida,",
|
||||
"title2": "intrecciata in ogni parola.",
|
||||
"desc": "Momento orchestra le tue idee attraverso un'architettura multi-provider.",
|
||||
"f1Title": "Ricerca semantica",
|
||||
"f1Desc": "Smetti di cercare per parole chiave. Trova per concetto. Il nostro motore ibrido Vector + FTS comprende l'intento dietro le tue note.",
|
||||
"f2Title": "Chat RAG contestuale",
|
||||
"f2Desc": "Parla con la tua conoscenza. I nostri agenti leggono le tue note, esplorano il web e analizzano i documenti per rispondere con precisione.",
|
||||
"f3Title": "Scrittura aumentata",
|
||||
"f3Desc": "Riformulazione, suggerimenti di titoli, tagging automatico e riassunti. L'IA lavora in background per strutturare il tuo pensiero."
|
||||
},
|
||||
"agents": {
|
||||
"label": "Agenti specializzati",
|
||||
"title": "Delega il lavoro complesso.",
|
||||
"desc": "6 tipi di agenti IA autonomi per automatizzare ricerche, riassunti e presentazioni.",
|
||||
"scraper": {
|
||||
"title": "Scraper",
|
||||
"desc": "Estrae URL, analizza feed RSS e sintetizza informazioni con posizionamento intelligente delle immagini."
|
||||
},
|
||||
"researcher": {
|
||||
"title": "Researcher",
|
||||
"desc": "Genera query complesse, esplora fonti web e scrive note di ricerca strutturate."
|
||||
},
|
||||
"slideGen": {
|
||||
"title": "Slide Gen",
|
||||
"desc": "Trasforma le tue note in presentazioni PowerPoint professionali o slide HTML interattive."
|
||||
},
|
||||
"monitor": {
|
||||
"title": "Monitor",
|
||||
"desc": "Analizza continuamente i tuoi quaderni per rilevare tendenze e nuovi insight."
|
||||
},
|
||||
"diagramGen": {
|
||||
"title": "Diagram Gen",
|
||||
"desc": "Converte le tue idee in diagrammi Excalidraw fluidi (mappe mentali, flowchart) con auto-layout."
|
||||
},
|
||||
"custom": {
|
||||
"title": "Custom",
|
||||
"desc": "Definisci agenti personalizzati con ruoli e fonti dati specifici."
|
||||
}
|
||||
},
|
||||
"brainstorm": {
|
||||
"label": "Onde di pensiero",
|
||||
"title": "Brainstorming radiale in tempo reale.",
|
||||
"waveGeneration": {
|
||||
"title": "Generazione a onde",
|
||||
"desc": "Variazioni, analogie e poi disruption. L'IA spinge il tuo concetto iniziale ai suoi limiti."
|
||||
},
|
||||
"collaboration": {
|
||||
"title": "Collaborazione nativa",
|
||||
"desc": "Cursori fantasma IA, avatar sincronizzati e spostamento nodi in tempo reale."
|
||||
},
|
||||
"export": {
|
||||
"title": "Export semantico",
|
||||
"desc": "Converti l'intero brainstorming in note strutturate con un clic."
|
||||
},
|
||||
"disruptionLabel": "DISRUPTION",
|
||||
"disruptionText": "Architettura modulare 2.0",
|
||||
"analogyLabel": "ANALOGIA",
|
||||
"analogyText": "Il ciclo delle maree"
|
||||
},
|
||||
"tech": {
|
||||
"label": "Architettura e provider",
|
||||
"title": "Collega il tuo modello IA.",
|
||||
"tags": {
|
||||
"title": "Tags",
|
||||
"desc": "Configurabile indipendentemente con qualsiasi modello."
|
||||
},
|
||||
"embeddings": {
|
||||
"title": "Embeddings",
|
||||
"desc": "Configurabile indipendentemente con qualsiasi modello."
|
||||
},
|
||||
"chatRag": {
|
||||
"title": "Chat RAG",
|
||||
"desc": "Configurabile indipendentemente con qualsiasi modello."
|
||||
}
|
||||
},
|
||||
"pricing": {
|
||||
"label": "Piani e prezzi",
|
||||
"title": "Scegli il tuo livello di amplificazione.",
|
||||
"desc": "Opzioni flessibili per menti creative, dall'uso individuale alle grandi organizzazioni.",
|
||||
"monthly": "Mensile",
|
||||
"annual": "Annuale",
|
||||
"perMonth": "/mese",
|
||||
"perMonthAnnual": "/mese, fatturato annualmente",
|
||||
"perUser": "+ 3.90€/user",
|
||||
"perUserAnnual": "+ 2.90€/user, billed annually",
|
||||
"popular": "Più popolare",
|
||||
"basic": {
|
||||
"name": "Basic",
|
||||
"desc": "Scopri la magia di Momento.",
|
||||
"cta": "Inizia",
|
||||
"feature0": "100 note max",
|
||||
"feature1": "3 quaderni",
|
||||
"feature2": "50 crediti IA (a vita)",
|
||||
"feature3": "Ricerca semantica",
|
||||
"feature4": "Cronologia 7 giorni"
|
||||
},
|
||||
"pro": {
|
||||
"name": "Pro",
|
||||
"desc": "Per consulenti e creatori esigenti.",
|
||||
"cta": "Passa a Pro",
|
||||
"feature0": "Note illimitate",
|
||||
"feature1": "BYOK (OpenAI/Anthropic)",
|
||||
"feature2": "200 ricerche semantiche",
|
||||
"feature3": "Agenti (12 esecuzioni/mese)",
|
||||
"feature4": "Cronologia 30 giorni",
|
||||
"feature5": "Supporto email"
|
||||
},
|
||||
"business": {
|
||||
"name": "Business",
|
||||
"desc": "Per team e product manager.",
|
||||
"cta": "Scegli Business",
|
||||
"feature0": "10 collaboratori inclusi",
|
||||
"feature1": "BYOK (13 provider)",
|
||||
"feature2": "1000 ricerche semantiche",
|
||||
"feature3": "Agenti (60 esecuzioni/mese)",
|
||||
"feature4": "Brainstorm illimitato",
|
||||
"feature5": "Accesso API"
|
||||
},
|
||||
"enterprise": {
|
||||
"name": "Enterprise",
|
||||
"desc": "Memoria organizzativa sicura.",
|
||||
"cta": "Contatta vendite",
|
||||
"feature0": "Tutto Business",
|
||||
"feature1": "Agenti illimitati",
|
||||
"feature2": "SSO / SAML",
|
||||
"feature3": "Audit Logs e SLA",
|
||||
"feature4": "Supporto dedicato",
|
||||
"feature5": "Onboarding live"
|
||||
}
|
||||
},
|
||||
"byok": {
|
||||
"label": "Tecnologia cloud aperta",
|
||||
"title": "La strategia BYOK",
|
||||
"desc": "Hai già chiavi API OpenAI, Anthropic o Google? Collegale direttamente a Momento. Usa l'IA senza limiti di credito imposti, pagando solo ciò che consumi dal tuo provider preferito.",
|
||||
"noLockin": "Nessun lock-in",
|
||||
"noLockinDesc": "Cambia provider in 1 clic.",
|
||||
"cost": "Costi ottimizzati",
|
||||
"costDesc": "Paga il prezzo API diretto.",
|
||||
"configLabel": "Config multi-provider"
|
||||
},
|
||||
"cta": {
|
||||
"title1": "Pronto a liberare il tuo",
|
||||
"title2": "pieno potenziale?",
|
||||
"desc": "Unisciti a migliaia di ricercatori, designer e pensatori che usano già Momento per costruire il loro futuro.",
|
||||
"button": "Avvia Momento"
|
||||
},
|
||||
"footer": {
|
||||
"desc": "Il secondo cervello amplificato dall'IA. Pensato per menti creative.",
|
||||
"product": {
|
||||
"title": "Prodotto",
|
||||
"link0": "Changelog",
|
||||
"link1": "Documentazione",
|
||||
"link2": "Roadmap",
|
||||
"link0Href": "#",
|
||||
"link1Href": "#",
|
||||
"link2Href": "#"
|
||||
},
|
||||
"community": {
|
||||
"title": "Community",
|
||||
"link0": "Discord",
|
||||
"link1": "Twitter / X",
|
||||
"link2": "LinkedIn",
|
||||
"link0Href": "#",
|
||||
"link1Href": "#",
|
||||
"link2Href": "#"
|
||||
},
|
||||
"legal": {
|
||||
"title": "Legale",
|
||||
"link0": "Privacy",
|
||||
"link1": "Termini di servizio",
|
||||
"link2": "Cookie",
|
||||
"link0Href": "#",
|
||||
"link1Href": "#",
|
||||
"link2Href": "#"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user