diff --git a/document/02_architecture_design.md b/document/02_architecture_design.md index 74c8bfe..de6acb2 100644 --- a/document/02_architecture_design.md +++ b/document/02_architecture_design.md @@ -19,20 +19,24 @@ end subgraph "Infrastructure Layer" - DB[("SQLite + sqlite-vec")] + DB["SQLite + sqlite-vec"] LS["Sidecar: llama-server"] M["Gemma-3 GGUF (640d)"] end - UI <-->|IPC: Invoke| Tauri - UI <--|SSE: Update Events| Axum - Axum <-->|Broadcast Bus| Broadcast - Tauri <--> DB - Axum <--> DB + UI -- "IPC: Invoke" --> Tauri + Tauri -- "IPC: Invoke" --> UI + Axum -- "SSE: Update Events" --> UI + Axum -- "Broadcast Bus" --> Broadcast + Broadcast -- "Broadcast Bus" --> Axum + Tauri -- "SQL" --> DB + DB -- "SQL" --> Tauri + Axum -- "SQL" --> DB + DB -- "SQL" --> Axum Tauri -- "reqwest" --> LS Axum -- "reqwest" --> LS - LS -->|Inference| M - Tray -->|Control| UI + LS -- "Inference" --> M + Tray -- "Control" --> UI ``` ## 2. 各層の定義 @@ -57,11 +61,11 @@ ## 3. プロセス同期モデル -| 処理 | 同期/非同期 | 説明 | -| :--- | :--- | :--- | -| **データ更新通知** | 非同期 (SSE) | DB 変更時にブロードキャストし、UI を自動リロード。 | -| **埋め込み生成** | 非同期 (HTTP) | llama-server への POST リクエストによるベクトル取得。 | -| **一貫性制御** | 原子性 (Transaction) | `items` と `vec_items` を同一トランザクション内でコミット。 | +| 処理 | 同期/非同期 | 説明 | +| :----------------- | :------------------- | :---------------------------------------------------------- | +| **データ更新通知** | 非同期 (SSE) | DB 変更時にブロードキャストし、UI を自動リロード。 | +| **埋め込み生成** | 非同期 (HTTP) | llama-server への POST リクエストによるベクトル取得。 | +| **一貫性制御** | 原子性 (Transaction) | `items` と `vec_items` を同一トランザクション内でコミット。 | ## 4. ライフサイクル管理