Phase 8 Complete: Sync Audit Log + Frontend Integration
- Thêm audit/sync_audit.py: Ghi lịch sử sync vào audit/sync_log.json
- Thêm API endpoints: /sync/history, /sync/history/{run_id}
- Frontend: Nút 'Lịch sử đồng bộ' + panel expand chi tiết từng file
- Sửa frontend served từ backend (http://localhost:8000)
- Cập nhật DEPLOYMENT_GUIDE với hướng dẫn chạy localhost
- Cập nhật ARCHITECTURE_MAP: Phase 8 hoàn thành
This commit is contained in:
@@ -38,8 +38,9 @@ SharePoint → Ingestion → DCE → [OCR/Extract/Skip] → Chunking → OpenSea
|
||||
- **LLM Factory:** `chat/llm_factory.py` → Hỗ trợ Gemini, Groq, Local (config trong `.env`).
|
||||
|
||||
### E. Tầng API & Frontend
|
||||
- **Backend:** `api/main.py` → FastAPI tại port 8000. Endpoint: `/health`, `/auth/login` (SSO), `/auth/callback`, `/auth/login-email`, `/chat`, `/sync`, `/sync/status`.
|
||||
- **Frontend:** `frontend/` → Glassmorphism UI với SSO login + email fallback + sync button. Gọi `http://localhost:8000`.
|
||||
- **Backend:** `api/main.py` → FastAPI tại port 8000. Endpoint: `/health`, `/auth/login` (SSO), `/auth/callback`, `/auth/login-email`, `/chat`, `/sync`, `/sync/status`, `/sync/history`, `/sync/history/{run_id}`.
|
||||
- **Frontend:** `frontend/` → Glassmorphism UI với SSO login + email fallback + sync button + sync history panel. Gọi `http://localhost:8000`.
|
||||
- **Audit:** `audit/sync_audit.py` → Lưu lịch sử sync vào `audit/sync_log.json`.
|
||||
|
||||
### F. Tầng Cấu hình (Decoupled Configuration)
|
||||
- Toàn bộ thông số trong `.env`. Load qua `core/config.py`.
|
||||
@@ -83,6 +84,9 @@ SharePoint → Ingestion → DCE → [OCR/Extract/Skip] → Chunking → OpenSea
|
||||
│ └── local_llm.py
|
||||
├── 📁 api/
|
||||
│ └── main.py # 🚀 FastAPI Backend (port 8000)
|
||||
├── 📁 audit/
|
||||
│ ├── sync_audit.py # 📋 Sync audit logging (ghi lịch sử sync)
|
||||
│ └── sync_log.json # 📄 Audit log data
|
||||
├── 📁 frontend/
|
||||
│ ├── index.html # 🎨 Glassmorphism UI (Login + Chat + Sync)
|
||||
│ ├── app.js # 💬 Chat, Auth, Sync logic
|
||||
@@ -175,12 +179,10 @@ SharePoint → Ingestion → DCE → [OCR/Extract/Skip] → Chunking → OpenSea
|
||||
- [x] Auth UI: Simple email login + SSO Azure AD + user context cho API calls
|
||||
- [x] DOCX Text Extraction: python-docx (paragraphs + tables)
|
||||
- [x] XLSX Text Extraction: openpyxl (sheets + cells)
|
||||
- [x] Sync Audit: Lịch sử sync persist vào file + API + Frontend panel
|
||||
|
||||
### Chưa triển khai (Phase 9 - Production Ready)
|
||||
|
||||
#### Ưu tiên trung bình
|
||||
- [ ] **Cấu hình Azure AD cho SSO:** Thêm Redirect URI `http://localhost:8000/auth/callback` và bật "ID tokens" trong App Registration.
|
||||
|
||||
#### Ưu tiên thấp
|
||||
- [ ] **Monitoring Dashboard:** Health metrics, ingestion status, OCR success rate.
|
||||
- [ ] **Multi-tenant:** Hỗ trợ nhiều SharePoint site/tenant.
|
||||
|
||||
Reference in New Issue
Block a user