nex_docus/docs/sdd/specs/DV-0002-project-filesystem/spec.md

34 lines
1.2 KiB
Markdown
Raw Normal View History

2026-08-19 10:05:22 +00:00
# DV-0002项目与文件系统 规格Spec
- **状态**Implemented
- **关联 ADR**ADR-0001, ADR-0002, ADR-0003, ADR-0006
## 目标
建立「用户→项目→文档/文件夹」三级模型并以“DB 权限 + FS 内容”实现项目文档的文件级存储与严格隔离。
## 范围
- **In**:项目 CRUD/转移/归档、成员协作、StorageService 路径安全、目录树。
- **Out**:实时协同编辑。
## 用户故事
> 作为项目成员,我希望按权限访问项目文档,以便协同维护知识库。
## 功能需求FR
| ID | 需求 | 验收要点 |
| --- | --- | --- |
| FR-2 | 三级模型 + 项目 CRUD/转移 | 创建生成 UUID storage_key 并建磁盘结构 |
| FR-3 | 文件系统存储 + 路径安全 | get_secure_path 防穿越;隐藏文件/_assets 不进树 |
| FR-5 | 项目成员协作 | 按 admin/editor/viewer 判定读写 |
## 非功能需求NFR
| ID | 需求 |
| --- | --- |
| NFR-3 | 所有路径经 get_secure_path 校验 |
| NFR-4 | 项目访问做 RBAC 校验 |
| NFR-11 | 索引在文件变更时同步维护 |
## 边界与约束
- 磁盘名用 UUIDstorage_key展示名解耦。
- 内容不进 DB BLOB。