Conversation
- Azure OpenAIクライアントを追加。gpt-5系(reasoning_effort minimal +
max_completion_tokens)から旧世代モデルまで自動フォールバックする
3段パラメータ方式で実装
- 会議中のライブAI分析を追加。10秒間隔でfinal transcriptの差分のみを
モデルに渡し、論点・懸念・決定事項・TODOのitemsと議論ツリー(tree)を
サーバー側で差分マージして状態を維持する方式に設計
- 解消された懸念・回答済みの質問はresolvedIdsとして申告させ、
サーバー側で決定論的にitems/treeから除去
- 会議終了時のAI最終要約(タイトル案・全体要約・決定事項・アクション
アイテム・未解決事項等)を追加。session_endedフックから非同期生成
- meeting_session_ai_analysesテーブルを追加し、live/final分析結果を
session単位でupsert保存
- ai_analysis.updatedイベントをWebSocket配信に追加。分析中の
ephemeralなrunning通知、intervalSecondsも配信
- GET /v1/workspaces/{workspace_code}/meeting-sessions/{session_id}/ai-analyses
を追加
- AI関連の環境変数をconfig/compose.yaml/.env.exampleに追加
未設定時はAI機能全体を自動無効化しtranscript機能・会議終了処理には影響しない設計
- 解決済みのitem/ノードを削除せずstatus="resolved"として保持し、 activeとは別枠のcapで管理(item 50+50件、ノード36+36件) - ツリーノードにdescription/relatedItemIds/statusを追加 - 孤立ノードを主topicへ自動接続する修復処理を追加(従topicノードも対象) - カード化されたitemに対応するツリーノードが無い場合にサーバー側で合成 - 主topic直結の冗長なfallback edgeを到達性チェック付きで剪定し、 ルートが全ノードを子に持つ問題を解消 - プロンプトにedge義務付け・item/ノード同期・親選定のルールを追加 - ライブ分析ログに診断情報を追加(diffノード数、drop理由、resolvedIds、 合成数、剪定数) - speech_error / speech_throttled ステータスを追加(Bot障害通知用) - Botへの終了コマンド失敗時もセッションを終了するよう変更(best-effort) - docs/api.md・docs/events.md を更新、上記のテストを追加
- ワークスペース作成API (POST /v1/workspaces) と description カラム・部分更新APIを追加 - メンバーのロール変更を owner 専用に制限し、認可をルーター/リポジトリの両層で強制 - トークンベースのメール招待を実装 (作成・preview・承諾・取り消し、有効期限72時間) - 招待tokenはSHA-256の token_hash のみDB保存し、レスポンスに含めない - 承諾時はログイン中ユーザーと招待先メールの一致を必須化、参加ログを出力 - ログイン時の招待自動参加・既存ユーザー即時追加を廃止し、明示的な承諾フローに統一 - EmailService を新設 (SMTP送信 / development はURLログ出力 / production は設定必須) - メンバー削除時に realtime・transcript 両WebSocketの既存接続を切断 - auth応答の workspaces: null を [] に修正 (設定画面の null.map クラッシュの根本原因) - migration 00009 (description) / 00010 (招待token関連カラム) を追加 - 契約テスト・サービステスト・実DBでのE2Eテストを追加
- ログイン時のワークスペース自動作成 (EnsureInitialWorkspace) を廃止し、 所属0件のままログインできるように変更 (作成はフロントの /workspaces/new へ誘導) - 固定デモワークスペース (ws_demo_deciscope) へのログイン時自動参加を削除 (ensureDemoMembership / WithDemoWorkspace / domain.DemoWorkspaceID) - DECISCOPE_SEED_DEMO_DATA は明示的な開発用 seed として残置 (既定 false) - 旧デモ会議データを移植した SampleMeetingSeeder を新設し、所属0件ユーザーの 初回ワークスペース作成時のみサンプル会議を1件投入 (固定IDなし・動的workspace_id) - DECISCOPE_CREATE_SAMPLE_MEETING_ON_FIRST_WORKSPACE を追加 (未設定時: development=有効 / production=無効) - 所属0件ユーザーの認証時に current_workspace_id='' の更新がFK制約違反になる問題を修正 - Googleログインが provider 非依存で通ることのテストを追加 - E2E・契約テスト・compose / .env.example / docs を新フローに合わせて更新
- POST /api/v1/bot/meeting-sessions/{session_id}/heartbeat を追加(ボディ省略可)
- ハートビート途絶を定期スキャンで検知する MeetingSessionWatchdog を新規実装
- 途絶/復旧時に meeting_session.bot_health_changed をWebSocketで配信
- 途絶が継続した場合はセッションを endReason=bot_unresponsive で自動終了
- TouchMeetingSessionBotSeen / ListMeetingSessionsForBotWatchdog を追加
- DECISCOPE_SESSION_WATCHDOG_* / DECISCOPE_SESSION_BOT_*_AFTER_SECONDS 設定を追加
- api.md / events.md にエンドポイントとイベント仕様を追記、各層のテストを追加
- ツリーノードのkind"todo"をissueへ救済し、invalidKindによる取りこぼしを解消 - ライブ分析にツリー形状メトリクスのログを追加(新規/更新ノード数・topic直下数・最大深さ等)と、破棄ノード詳細の開発用ログフラグ(AI_ANALYSIS_DEBUG_DROPPED_NODES)を追加 - root直下ノードの増加を抑えるプロンプトルール(詳細は大分類topic配下へ接続)を追加 - 会議後サマリーの二重生成を防ぐin-flightガードを追加 - 文字起こし停止検知を追加(TranscriptActivityTrackerとwatchdogでheartbeatとは別軸に評価し、meeting_session.transcript_health_changedをWS配信、閾値envを追加)
- Botのheartbeatで音声/文字起こしメトリクスを受信し、in-memoryで保持(BotMediaMetricsStore) - watchdogのtranscript health判定を拡張し、silent/audio_stalled/speech_stalledを区別(メトリクス未着・古い場合は従来のtranscript_delayed/transcript_stalledへ安全に縮退) - 判定閾値のenvを追加(DECISCOPE_AUDIO_SILENCE_AFTER_SECONDS / _AUDIO_STALLED_AFTER_SECONDS / _SPEECH_STALLED_AFTER_SECONDS) - 議論ツリー平坦化の検知(flatTreeDetectedログ)を追加 - 親不明・synthesizedノードをroot直下でなく既存の大分類topic配下へ接続し、後続で大分類が現れたら付け替え(reparent)するよう改善 - root直下に詳細を並べず大分類配下に置くためのプロンプトルールを追記
- ブラウザ向けレガシー文字起こしGET・WebSocketを無効化 - workspace transcriptをCookie認証と所属検査へ統一 - WebSocket URLの共有tokenを転送しないよう修正 - Bot向け文字起こしPOSTのAPIキー認証を維持 - ルート検証テストとAPIドキュメントを更新
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.