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:
@@ -890,7 +890,7 @@
|
||||
"recentNotesUpdateFailed": "Не удалось обновить настройку недавних заметок"
|
||||
},
|
||||
"aiSettings": {
|
||||
"title": "Настройки ИИ",
|
||||
"title": "AI",
|
||||
"description": "Настройте функции и предпочтения на базе ИИ",
|
||||
"features": "Функции ИИ",
|
||||
"provider": "Провайдер ИИ",
|
||||
@@ -917,7 +917,8 @@
|
||||
"autoLabeling": "Предложения по ярлыкам",
|
||||
"autoLabelingDesc": "Автоматически предлагает и применяет ярлыки к вашим заметкам.",
|
||||
"noteHistory": "История заметок",
|
||||
"noteHistoryDesc": "Включить снимки версий и восстановление из истории"
|
||||
"noteHistoryDesc": "Включить снимки версий и восстановление из истории",
|
||||
"titleSuggestions": "Предложения заголовков"
|
||||
},
|
||||
"general": {
|
||||
"loading": "Загрузка...",
|
||||
@@ -1115,7 +1116,13 @@
|
||||
"languageDetection": "Определение языка",
|
||||
"languageDetectionDesc": "Автоопределение языка каждой заметки",
|
||||
"autoLabeling": "Автомаркировка",
|
||||
"autoLabelingDesc": "Автопредложение и применение меток"
|
||||
"autoLabelingDesc": "Автопредложение и применение меток",
|
||||
"fallbackSectionTitle": "Резервный провайдер (необязательно)",
|
||||
"fallbackSectionDescription": "Используется автоматически при ошибках провайдера (429, 5xx). Одна повторная попытка за 1,5 с.",
|
||||
"fallbackProvider": "Резервный провайдер",
|
||||
"fallbackModel": "Резервная модель",
|
||||
"fallbackNone": "Нет (отключено)",
|
||||
"fallbackModelPlaceholder": "напр. gpt-4o-mini"
|
||||
},
|
||||
"resend": {
|
||||
"title": "Resend (Рекомендуется)",
|
||||
@@ -1173,6 +1180,8 @@
|
||||
"deleteFailed": "Не удалось удалить",
|
||||
"roleUpdateSuccess": "Роль пользователя обновлена на {role}",
|
||||
"roleUpdateFailed": "Не удалось обновить роль",
|
||||
"tierUpdateSuccess": "Subscription updated to {tier}",
|
||||
"tierUpdateFailed": "Failed to update subscription",
|
||||
"demote": "Понизить",
|
||||
"promote": "Повысить",
|
||||
"confirmDelete": "Вы уверены, что хотите удалить этого пользователя?",
|
||||
@@ -1180,6 +1189,7 @@
|
||||
"name": "Имя",
|
||||
"email": "Эл. почта",
|
||||
"role": "Роль",
|
||||
"subscription": "Subscription",
|
||||
"createdAt": "Дата создания",
|
||||
"actions": "Действия"
|
||||
},
|
||||
@@ -1371,7 +1381,7 @@
|
||||
"loading": "Загрузка..."
|
||||
},
|
||||
"dataManagement": {
|
||||
"title": "Управление данными",
|
||||
"title": "Data",
|
||||
"toolsDescription": "Инструменты для поддержания базы данных в рабочем состоянии",
|
||||
"exporting": "Экспорт...",
|
||||
"importing": "Импорт...",
|
||||
@@ -1436,7 +1446,7 @@
|
||||
"fontJetBrainsMono": "JetBrains Mono"
|
||||
},
|
||||
"generalSettings": {
|
||||
"title": "Общие настройки",
|
||||
"title": "General",
|
||||
"description": "Общие настройки приложения"
|
||||
},
|
||||
"toast": {
|
||||
@@ -1622,7 +1632,7 @@
|
||||
"collapse": "Свернуть"
|
||||
},
|
||||
"mcpSettings": {
|
||||
"title": "Настройки MCP",
|
||||
"title": "MCP",
|
||||
"description": "Управление ключами API и настройка внешних инструментов",
|
||||
"whatIsMcp": {
|
||||
"title": "Что такое MCP?",
|
||||
@@ -2211,7 +2221,9 @@
|
||||
"exportDefaultNoteTitle": "Synthesis",
|
||||
"exportOpening": "Opening…",
|
||||
"ownerBadge": "Owner",
|
||||
"waveBadge": "Wave {wave}"
|
||||
"waveBadge": "Wave {wave}",
|
||||
"quotaGuest": "Организатор сессии исчерпал лимит ИИ. Попросите его обновить тариф.",
|
||||
"quotaHost": "Вы исчерпали лимит ИИ для этого мозгового штурма. Обновите тариф, чтобы продолжить."
|
||||
},
|
||||
"usageMeter": {
|
||||
"packName": "AI Discovery Pack",
|
||||
@@ -2323,6 +2335,215 @@
|
||||
"checkoutSuccessBody": "Добро пожаловать в {tier}. Ваши функции теперь доступны.",
|
||||
"subscriptionType": "subscriptionType",
|
||||
"renewalDate": "renewalDate",
|
||||
"noRenewalDate": "—"
|
||||
"noRenewalDate": "—",
|
||||
"currentUsage": "Текущее использование",
|
||||
"currentPeriod": "Текущий период",
|
||||
"aiCredits": "ИИ-кредиты",
|
||||
"used": "использовано",
|
||||
"billing": "Оплата",
|
||||
"renewal": "Продление",
|
||||
"paidPlanDesc": "Ваша подписка продлевается автоматически.",
|
||||
"businessDescription": "Для команд и руководителей продуктов."
|
||||
},
|
||||
"landing": {
|
||||
"nav": {
|
||||
"features": "Возможности",
|
||||
"agents": "ИИ-агенты",
|
||||
"brainstorm": "Brainstorm",
|
||||
"pricing": "Тарифы",
|
||||
"tech": "Архитектура",
|
||||
"login": "Войти",
|
||||
"cta": "Начать"
|
||||
},
|
||||
"hero": {
|
||||
"badge": "На базе искусственного интеллекта",
|
||||
"title1": "Ваш второй мозг,",
|
||||
"title2": "наконец усиленный.",
|
||||
"subtitle": "Momento — это больше, чем приложение для заметок. Это интеллектуальная экосистема, которая связывает, анализирует и развивает ваши идеи в реальном времени с 6 типами ИИ-агентов и передовым семантическим поиском.",
|
||||
"cta": "Зарегистрироваться",
|
||||
"secondary": "Смотреть возможности",
|
||||
"memoryEcho": "Memory Echo",
|
||||
"memoryEchoText": "\"Обнаружена связь с вашим проектом устойчивого дизайна от марта 2024...\"",
|
||||
"brainstormLive": "Brainstorm Live",
|
||||
"ideasGenerated": "+12 идей сгенерировано"
|
||||
},
|
||||
"features": {
|
||||
"label": "Возможности ИИ",
|
||||
"title": "Плавный интеллект,",
|
||||
"title2": "в каждом слове.",
|
||||
"desc": "Momento управляет вашими идеями через мультипровайдерную архитектуру.",
|
||||
"f1Title": "Семантический поиск",
|
||||
"f1Desc": "Хватит искать по ключевым словам. Ищите по смыслу. Наш гибридный движок Vector + FTS понимает намерение за вашими заметками.",
|
||||
"f2Title": "Контекстный RAG-чат",
|
||||
"f2Desc": "Общайтесь со своими знаниями. Агенты читают заметки, исследуют веб и анализируют документы для точных ответов.",
|
||||
"f3Title": "Усиленное письмо",
|
||||
"f3Desc": "Переформулировка, предложения заголовков, автотеги и резюме. ИИ структурирует ваше мышление в фоне."
|
||||
},
|
||||
"agents": {
|
||||
"label": "Специализированные агенты",
|
||||
"title": "Делегируйте сложную работу.",
|
||||
"desc": "6 типов автономных ИИ-агентов для автоматизации исследований, резюме и презентаций.",
|
||||
"scraper": {
|
||||
"title": "Scraper",
|
||||
"desc": "Собирает URL, парсит RSS-ленты и синтезирует информацию с умным размещением изображений."
|
||||
},
|
||||
"researcher": {
|
||||
"title": "Researcher",
|
||||
"desc": "Генерирует сложные запросы, исследует веб-источники и пишет структурированные исследовательские заметки."
|
||||
},
|
||||
"slideGen": {
|
||||
"title": "Slide Gen",
|
||||
"desc": "Превращает заметки в профессиональные презентации PowerPoint или интерактивные HTML-слайды."
|
||||
},
|
||||
"monitor": {
|
||||
"title": "Monitor",
|
||||
"desc": "Непрерывно анализирует блокноты для выявления трендов и новых инсайтов."
|
||||
},
|
||||
"diagramGen": {
|
||||
"title": "Diagram Gen",
|
||||
"desc": "Превращает идеи в плавные диаграммы Excalidraw (майндмэпы, блок-схемы) с авто-раскладкой."
|
||||
},
|
||||
"custom": {
|
||||
"title": "Custom",
|
||||
"desc": "Создавайте собственных агентов с нужными ролями и источниками данных."
|
||||
}
|
||||
},
|
||||
"brainstorm": {
|
||||
"label": "Волны мысли",
|
||||
"title": "Радиальный мозговой штурм в реальном времени.",
|
||||
"waveGeneration": {
|
||||
"title": "Волновая генерация",
|
||||
"desc": "Вариации, аналогии, затем дисрапции. ИИ доводит начальную концепцию до предела."
|
||||
},
|
||||
"collaboration": {
|
||||
"title": "Нативная коллаборация",
|
||||
"desc": "Призрачные курсоры ИИ, синхронизированные аватары и движение узлов в реальном времени."
|
||||
},
|
||||
"export": {
|
||||
"title": "Семантический экспорт",
|
||||
"desc": "Превратите весь мозговой штурм в структурированные заметки одним кликом."
|
||||
},
|
||||
"disruptionLabel": "ДИСРАПЦИЯ",
|
||||
"disruptionText": "Модульная архитектура 2.0",
|
||||
"analogyLabel": "АНАЛОГИЯ",
|
||||
"analogyText": "Цикл приливов"
|
||||
},
|
||||
"tech": {
|
||||
"label": "Архитектура и провайдеры",
|
||||
"title": "Подключите свою модель ИИ.",
|
||||
"tags": {
|
||||
"title": "Теги",
|
||||
"desc": "Независимо настраивается с любой моделью."
|
||||
},
|
||||
"embeddings": {
|
||||
"title": "Embeddings",
|
||||
"desc": "Независимо настраивается с любой моделью."
|
||||
},
|
||||
"chatRag": {
|
||||
"title": "Chat RAG",
|
||||
"desc": "Независимо настраивается с любой моделью."
|
||||
}
|
||||
},
|
||||
"pricing": {
|
||||
"label": "Тарифы и цены",
|
||||
"title": "Выберите уровень усиления.",
|
||||
"desc": "Гибкие варианты для творческих умов — от личного использования до крупных организаций.",
|
||||
"monthly": "Ежемесячно",
|
||||
"annual": "Ежегодно",
|
||||
"perMonth": "/мес.",
|
||||
"perMonthAnnual": "/мес., оплата раз в год",
|
||||
"perUser": "+ 3.90€/user",
|
||||
"perUserAnnual": "+ 2.90€/user, billed annually",
|
||||
"popular": "Самый популярный",
|
||||
"basic": {
|
||||
"name": "Basic",
|
||||
"desc": "Откройте магию Momento.",
|
||||
"cta": "Начать",
|
||||
"feature0": "До 100 заметок",
|
||||
"feature1": "3 блокнота",
|
||||
"feature2": "50 ИИ-кредитов (навсегда)",
|
||||
"feature3": "Семантический поиск",
|
||||
"feature4": "История 7 дней"
|
||||
},
|
||||
"pro": {
|
||||
"name": "Pro",
|
||||
"desc": "Для требовательных консультантов и авторов.",
|
||||
"cta": "Перейти на Pro",
|
||||
"feature0": "Безлимитные заметки",
|
||||
"feature1": "BYOK (OpenAI/Anthropic)",
|
||||
"feature2": "200 семантических поисков",
|
||||
"feature3": "Агенты (12 запусков/мес.)",
|
||||
"feature4": "История 30 дней",
|
||||
"feature5": "Поддержка по email"
|
||||
},
|
||||
"business": {
|
||||
"name": "Business",
|
||||
"desc": "Для команд и продакт-менеджеров.",
|
||||
"cta": "Выбрать Business",
|
||||
"feature0": "10 участников включено",
|
||||
"feature1": "BYOK (13 провайдеров)",
|
||||
"feature2": "1000 семантических поисков",
|
||||
"feature3": "Агенты (60 запусков/мес.)",
|
||||
"feature4": "Безлимитный brainstorm",
|
||||
"feature5": "Доступ к API"
|
||||
},
|
||||
"enterprise": {
|
||||
"name": "Enterprise",
|
||||
"desc": "Безопасная организационная память.",
|
||||
"cta": "Связаться с продажами",
|
||||
"feature0": "Всё из Business",
|
||||
"feature1": "Безлимитные агенты",
|
||||
"feature2": "SSO / SAML",
|
||||
"feature3": "Audit Logs и SLA",
|
||||
"feature4": "Выделенная поддержка",
|
||||
"feature5": "Живой onboarding"
|
||||
}
|
||||
},
|
||||
"byok": {
|
||||
"label": "Открытая облачная технология",
|
||||
"title": "Стратегия BYOK",
|
||||
"desc": "Уже есть API-ключи OpenAI, Anthropic или Google? Подключите их напрямую к Momento. Используйте ИИ без навязанных лимитов кредитов, платя только за фактическое потребление у любимого провайдера.",
|
||||
"noLockin": "Без lock-in",
|
||||
"noLockinDesc": "Смените провайдера в 1 клик.",
|
||||
"cost": "Оптимизированные расходы",
|
||||
"costDesc": "Платите прямую цену API.",
|
||||
"configLabel": "Мультипровайдерная настройка"
|
||||
},
|
||||
"cta": {
|
||||
"title1": "Готовы раскрыть свой",
|
||||
"title2": "полный потенциал?",
|
||||
"desc": "Присоединяйтесь к тысячам исследователей, дизайнеров и мыслителей, которые уже строят будущее с Momento.",
|
||||
"button": "Запустить Momento"
|
||||
},
|
||||
"footer": {
|
||||
"desc": "Второй мозг, усиленный ИИ. Создан для творческих умов.",
|
||||
"product": {
|
||||
"title": "Продукт",
|
||||
"link0": "Changelog",
|
||||
"link1": "Документация",
|
||||
"link2": "Roadmap",
|
||||
"link0Href": "#",
|
||||
"link1Href": "#",
|
||||
"link2Href": "#"
|
||||
},
|
||||
"community": {
|
||||
"title": "Сообщество",
|
||||
"link0": "Discord",
|
||||
"link1": "Twitter / X",
|
||||
"link2": "LinkedIn",
|
||||
"link0Href": "#",
|
||||
"link1Href": "#",
|
||||
"link2Href": "#"
|
||||
},
|
||||
"legal": {
|
||||
"title": "Правовая информация",
|
||||
"link0": "Конфиденциальность",
|
||||
"link1": "Условия использования",
|
||||
"link2": "Cookies",
|
||||
"link0Href": "#",
|
||||
"link1Href": "#",
|
||||
"link2Href": "#"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user