mirror of
https://github.com/MODSetter/SurfSense.git
synced 2026-04-25 08:46:22 +02:00
56 lines
2.6 KiB
Markdown
56 lines
2.6 KiB
Markdown
|
|
# Story 2.3: Giao diện Quản lý Tài liệu & Chỉ báo Syncing Khớp nối (Knowledge Base UI & Micro-Sync Indicators)
|
||
|
|
|
||
|
|
**Status:** done
|
||
|
|
**Epic:** Epic 2
|
||
|
|
**Story Key:** `2-3-knowledge-base-ui-micro-sync-indicators`
|
||
|
|
|
||
|
|
## 📖 Story Requirements (Context & PRD)
|
||
|
|
> This section maps directly to the original Product Requirements Document and Epics definition.
|
||
|
|
|
||
|
|
As a Người dùng,
|
||
|
|
I want thấy ngay lập tức danh sách tài liệu đang có và dễ dàng tải file mới lên,
|
||
|
|
So that tôi biết file nào đã sẵn sàng để chat, file nào đang chạy nền mà không bị gián đoạn thao tác chuột.
|
||
|
|
**Acceptance Criteria:**
|
||
|
|
**Given** người dùng ở giao diện không gian làm việc (Workspace)
|
||
|
|
**When** có một tài liệu đang được tải lên hoặc xử lý (Processing)
|
||
|
|
**Then** UX hiển thị thanh tiến trình nhỏ ở góc trên màn hình / cạnh danh sách (Micro-Sync Indicator) và không được chặn màn hình (UX-DR5)
|
||
|
|
**And** danh sách tài liệu được lấy thông qua Zero-client tự động update state realtime khi worker xử lý xong (FR2, FR3).
|
||
|
|
|
||
|
|
## 🏗️ Architecture & Technical Guardrails
|
||
|
|
> Critical instructions for the development agent based on the project's established architecture.
|
||
|
|
|
||
|
|
### Technical Requirements
|
||
|
|
- Language/Framework: React, Next.js (TypeScript) for Web; FastAPI (Python) for Backend.
|
||
|
|
- Database: Prisma/Supabase.
|
||
|
|
- Strict Type checking must be enforced. No `any` types.
|
||
|
|
|
||
|
|
### Code Organization
|
||
|
|
This story is currently marked as `done`. Implementation should target the following components/files:
|
||
|
|
|
||
|
|
- `surfsense_backend/app/connectors/dropbox/client.py`
|
||
|
|
- `surfsense_backend/app/schemas/incentive_tasks.py`
|
||
|
|
- `surfsense_backend/app/utils/proxy_config.py`
|
||
|
|
- `surfsense_web/components/chat-comments/comment-panel-container/comment-panel-container.tsx`
|
||
|
|
- `surfsense_web/components/tool-ui/write-todos.tsx`
|
||
|
|
- `surfsense_web/components/shared/image-config-dialog.tsx`
|
||
|
|
- `surfsense_backend/app/users.py`
|
||
|
|
- `surfsense_web/components/ui/dropdown-menu.tsx`
|
||
|
|
|
||
|
|
### Developer Agent Constraints
|
||
|
|
1. **No Destructive Refactors**: Extend existing modules when possible.
|
||
|
|
2. **Context Check**: Always refer back to `task.md` and use Context7 to verify latest SDK usages.
|
||
|
|
3. **BMad Standard**: Update the sprint status using standard metrics.
|
||
|
|
|
||
|
|
## 🧪 Testing & Validation Requirements
|
||
|
|
- All new endpoints must be tested.
|
||
|
|
- Frontend components should gracefully degrade.
|
||
|
|
- Do not introduce regressions into existing user workflows.
|
||
|
|
|
||
|
|
## 📈 Completion Status
|
||
|
|
*(To be updated by the agent when completing this story)*
|
||
|
|
- Start Date: _____________
|
||
|
|
- Completion Date: _____________
|
||
|
|
- Key Files Changed:
|
||
|
|
-
|
||
|
|
|