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": "最近のノート設定の更新に失敗しました"
},
"aiSettings": {
"title": "AI設定",
"title": "AI",
"description": "AI機能と設定を構成",
"features": "AI機能",
"provider": "AIプロバイダー",
@@ -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秒以内に1回再試行。",
"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": "セッションのホストがAI利用上限に達しました。プランのアップグレードを依頼してください。",
"quotaHost": "このブレインストームのAI上限に達しました。続けるにはプランをアップグレードしてください。"
},
"usageMeter": {
"packName": "AI Discovery Pack",
@@ -2323,6 +2335,215 @@
"checkoutSuccessBody": "{tier}へようこそ。機能が解放されました。",
"subscriptionType": "subscriptionType",
"renewalDate": "renewalDate",
"noRenewalDate": "—"
"noRenewalDate": "—",
"currentUsage": "現在の使用量",
"currentPeriod": "現在の期間",
"aiCredits": "AIクレジット",
"used": "使用済み",
"billing": "請求",
"renewal": "更新",
"paidPlanDesc": "サブスクリプションは自動更新されます。",
"businessDescription": "チームとプロダクトリーダー向け。"
},
"landing": {
"nav": {
"features": "機能",
"agents": "AIエージェント",
"brainstorm": "Brainstorm",
"pricing": "料金",
"tech": "アーキテクチャ",
"login": "ログイン",
"cta": "はじめる"
},
"hero": {
"badge": "人工知能で強化",
"title1": "あなたの第二の脳、",
"title2": "ついに増幅される。",
"subtitle": "Momentoは単なるメモアプリではありません。6種類のAIエージェントと最先端のセマンティック検索で、アイデアをリアルタイムに接続・分析・発展させるインテリジェントなエコシステムです。",
"cta": "今すぐ登録",
"secondary": "機能を見る",
"memoryEcho": "Memory Echo",
"memoryEchoText": "「2024年3月のサステナブルデザインプロジェクトとの関連を検出しました...」",
"brainstormLive": "Brainstorm Live",
"ideasGenerated": "+12件のアイデアを生成"
},
"features": {
"label": "AI機能",
"title": "流れるような知性、",
"title2": "言葉のひとつひとつに織り込まれる。",
"desc": "Momentoはマルチプロバイダーアーキテクチャでアイデアを統合します。",
"f1Title": "セマンティック検索",
"f1Desc": "キーワード検索はもう不要。概念で探せます。ハイブリッドのVector + FTSエンジンがートの意図を理解します。",
"f2Title": "コンテキストRAGチャット",
"f2Desc": "知識と対話できます。エージェントがートを読み、Webを探索し、文書を分析して正確に回答します。",
"f3Title": "拡張ライティング",
"f3Desc": "言い換え、タイトル提案、自動タグ付け、要約。AIがバックグラウンドで思考を整理します。"
},
"agents": {
"label": "専門エージェント",
"title": "複雑な作業を任せましょう。",
"desc": "調査・要約・プレゼンを自動化する6種類の自律型AIエージェント。",
"scraper": {
"title": "Scraper",
"desc": "URLを取得しRSSを解析、画像配置も賢く情報を統合します。"
},
"researcher": {
"title": "Researcher",
"desc": "複雑なクエリを生成しWebソースを探索、構造化された調査ートを作成します。"
},
"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": "バリエーション、アナロジー、そしてディスラプション。AIが初期コンセプトを限界まで押し広げます。"
},
"collaboration": {
"title": "ネイティブコラボレーション",
"desc": "AIゴーストカーソル、同期アバター、ードのリアルタイム移動。"
},
"export": {
"title": "セマンティックエクスポート",
"desc": "ブレインストーム全体をワンクリックで構造化ノートに変換。"
},
"disruptionLabel": "ディスラプション",
"disruptionText": "モジュラーアーキテクチャ 2.0",
"analogyLabel": "アナロジー",
"analogyText": "潮汐のサイクル"
},
"tech": {
"label": "アーキテクチャとプロバイダー",
"title": "独自のAIモデルを接続。",
"tags": {
"title": "Tags",
"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": "AIクレジット50生涯",
"feature3": "セマンティック検索",
"feature4": "7日間の履歴"
},
"pro": {
"name": "Pro",
"desc": "高い要求を持つコンサル・クリエイター向け。",
"cta": "Proにアップグレード",
"feature0": "無制限ノート",
"feature1": "BYOK (OpenAI/Anthropic)",
"feature2": "セマンティック検索200回",
"feature3": "エージェント月12回",
"feature4": "30日間の履歴",
"feature5": "メールサポート"
},
"business": {
"name": "Business",
"desc": "チームとプロダクトマネージャー向け。",
"cta": "Businessを選択",
"feature0": "10名のコラボレーター込み",
"feature1": "BYOK13プロバイダー",
"feature2": "セマンティック検索1000回",
"feature3": "エージェント月60回",
"feature4": "無制限ブレインストーム",
"feature5": "APIアクセス"
},
"enterprise": {
"name": "Enterprise",
"desc": "安全な組織メモリ。",
"cta": "営業に問い合わせ",
"feature0": "Businessの全機能",
"feature1": "無制限エージェント",
"feature2": "SSO / SAML",
"feature3": "監査ログとSLA",
"feature4": "専任サポート",
"feature5": "ライブオンボーディング"
}
},
"byok": {
"label": "オープンクラウド技術",
"title": "BYOK戦略",
"desc": "OpenAI、Anthropic、GoogleのAPIキーをお持ちですかMomentoに直接接続。クレジット上限なしで、お好みのプロバイダーの実消費分だけお支払い。",
"noLockin": "ロックインなし",
"noLockinDesc": "ワンクリックでプロバイダー変更。",
"cost": "最適化されたコスト",
"costDesc": "APIの直接価格で支払い。",
"configLabel": "マルチプロバイダー設定"
},
"cta": {
"title1": "あなたの",
"title2": "可能性を解き放つ準備はできましたか?",
"desc": "Momentoで未来を築く研究者、デザイナー、思想家の仲間入りを。",
"button": "Momentoを起動"
},
"footer": {
"desc": "AIで増幅された第二の脳。クリエイティブな方のために。",
"product": {
"title": "製品",
"link0": "変更履歴",
"link1": "ドキュメント",
"link2": "ロードマップ",
"link0Href": "#",
"link1Href": "#",
"link2Href": "#"
},
"community": {
"title": "コミュニティ",
"link0": "Discord",
"link1": "Twitter / X",
"link2": "LinkedIn",
"link0Href": "#",
"link1Href": "#",
"link2Href": "#"
},
"legal": {
"title": "法的情報",
"link0": "プライバシー",
"link1": "利用規約",
"link2": "Cookie",
"link0Href": "#",
"link1Href": "#",
"link2Href": "#"
}
}
}
}
}