変更履歴¶
新しいものから。短く、意図的に不完全 — main のコミットが正本で、これは人間が読むためのロールアップです。
2026-04 — P5(UI v2 + 品質改善)¶
フロントエンド全面書き直し¶
- React 18 + Vite 5 + Tailwind 3 が既存の vanilla HTML SPA を置き換え。4 タブナビ(ダッシュボード / ウォッチリスト / Claw / 設定)、全面 TypeScript、バックエンド Pydantic 形を表示型にブリッジする型付き API クライアント + アダプター層。
- シグナルカード再設計 — v1 フォーマットをピクセル単位で再現:見出し、ティッカー別 relevance バー(ティア色分け:赤 / 金 / 青)、英日バイリンガル欄、
[AGENT]タグで区切れる折りたたみ可能な reasoning、Impact + Confidence スコアバー、展開可能なエージェント内訳、非同期ロードの OG プレビュー、コンプライアンス免責。 - UserMenu ドロップダウン — ヘッダーのアバターをクリックするとメール、設定、ログアウトが表示される(設定ページ経由の必要なし)。
- TelegramWizard — リンクフローが 3 ステップの番号付きガイドに。クリップボードコピー機能付き。
- Ask StockClaw ページ — チャットトランスクリプトを ≥55vh に確保、履歴検索は下に移動。
- OS 適応ライト配色 — GitHub 風の白カード、明るい灰色ページ。
- プリ/アフター市場価格 — yfinance が
marketStateを拡張セッション報告時、ウォッチリスト行に PRE / POST バッジ + 延長価格 + 変動率表示。 - ライブステータスバー — "Last updated 8s ago" が実フェッチタイムスタンプで駆動、15 秒ごとに進行。
シグナル品質¶
- 緊急度ティア明確化 — FLASH / ALERT / NOTE / FYI が 4 つの独立バッジ(赤 / 橙 / 金 / 灰)。以前は FLASH + ALERT を "BREAKING" に統合していた。
- 重複シグナル修正 —
RawItem.raw_idがcontent_hashを継承し、DB レベルの重複排除が実際に発動。以前は毎クロールで新 UUID4 だったため、重複排除が no-op だった。
Ask Claw(RAG)修正¶
- BM25 トークナイザー —
websearch_to_tsqueryの AND マッチがほぼ命中しなかったため、内容ワードを OR 結合するトークナイザーに変更。 - 検索診断 —
[rag] empty retrievalログで可視シグナル数 + リトリーバーごとのヒット数を表示。
デプロイ / 運用¶
- Vercel SPA フォールバック —
/:path*→/rewrite。OAuth コールバックの 404 問題を解決。 - 市場見積キャッシュ — TTL を 60 秒 → 30 秒に短縮。
2026-04 — P4 完了¶
- P4.4 Google OAuth が JWKS/ES256 検証で完全稼働。
- Web Push — VAPID 認証のブラウザ通知、シグナルへのディープリンク、FLASH はスティッキー。
- Telegram マルチユーザー — user_settings.telegram_chat_id から読み取り、ユーザーごとにリンク。
- RLS 修正 —
user_scopeがSET LOCAL ROLE authenticatedに変更され RLS が実際に発動。 - エージェント内訳パネル — 信号ごとのエージェント別 impact / confidence / latency / error。
- ティッカー別 relevance バー + Open Graph プレビューカード。
- Email マジックリンク Supabase 経由。
- Claw チャット実装 — dense + BM25 ハイブリッド検索、rag_query_logs 記録。
- 埋め込みパイプライン — 新規シグナル毎にコミット後即 ChromaDB へ埋め込み。
- Claw ルール CRUD — LLM 自然言語パーサー(保存のみ、トリガーは今後)。
- OS 駆動ダーク/ライトテーマ 全 SPA。
- 実市場データ —
/market/quotes、/market/indicesを yfinance + 60 秒 Redis キャッシュで。 - ウォッチリスト自動ブートストラップ。
- ログアウト UI(アバタードロップダウン)。
- 法的ページ + このドキュメントサイト。
2026-04 — P3¶
- 書き込みエンドポイント(ウォッチリスト / 設定 / Telegram リンク / Claw チャット)。
user_settingsテーブル。- ティッカー追加時の即時クロール。
2026-04 — P2¶
- 読み取り専用 FastAPI(
/signals,/watchlists,/health,/ws/signals)。 - JWT 認証 + RLS スキャフォールド。
- フロントエンドのモックモード解除。
2026-04 — P1¶
- Supabase Postgres + Redis を docker-compose で。
- Celery + Beat オーケストレーション。
- シグナル永続化。
- SQLite → Supabase ウォッチリスト移行。
2026-04 — P0¶
- 5 エージェント合成エンジン、Reflexion と Pydantic 検証付き。
- RSS / yfinance クローラー。
- ウォッチリスト SQLite DB。
- フロントエンド SPA、PWA マニフェスト付き。
- Telegram ボット配信(シングルユーザー)。