Commit Graph

22 Commits

Author SHA1 Message Date
lou a81fcfdefa 严格隔离: 每账户独立空间, admin 不再全览 (只 admin/无主旧文件); 测试更新 2026-08-10 18:45:22 +08:00
lou 4be951fe4a api: GET /api/auth/me 当前用户端点; README 2026-08-10 15:36:36 +08:00
lou 6b0d163ac0 存储按用户分目录: storage/用户名/日期/任务ID (物理隔离, 旧数据兼容); 测试断言 admin 目录 2026-08-10 15:31:04 +08:00
lou b79aab5c4e 账号体系: users 表 + auth.py(pbkdf2) + 注册/登录/注销端点 + 文件按用户隔离(admin 全部) + 测试 12 项 2026-08-10 15:27:45 +08:00
lou 7e6c7d64c6 README: 服务端完整文档; LICENSE: MIT 2026-08-10 14:46:24 +08:00
lou cd4292e70b 业务日志: 端点事件记录 (init/chunk/complete/ls/download/delete/quota + 客户端 IP); watchdog 防重复改 flock 锁 (pgrep 会误伤调用链) 2026-08-10 13:47:21 +08:00
lou cac0af49f3 自启动+看门狗: start.sh 幂等拉起服务+watchdog, watchdog 30s 检查自动恢复 2026-08-10 12:45:21 +08:00
lou da087591ed task_manager: 文件名清洗不删路径分隔符 (加密名 URL-safe base64, 路径安全由客户端兜底); 测试 9 项 2026-08-10 02:10:07 +08:00
lou cb80b54285 安全加固: init 文件名清洗(255/去路径分隔符) + 卷数上限 10000 + body 1MB 上限; 测试 9 项 2026-08-10 02:00:10 +08:00
lou 95ced31222 quota: GET /api/quota (used=files size 总和 / quota 默认 10GB SZ_QUOTA env / remain / percent); 测试 7 项 2026-08-10 01:42:51 +08:00
lou dbf32fe55e api: del 支持单文件路径 (旧架构记录); 测试 7 项含 del 断言 2026-08-10 01:40:45 +08:00
lou 34496b4bf7 零合并重构: complete 只校验卷齐+卷目录 move 入库 (秒回); 下载改逐卷 GET chunk/{n}; 删 assembler; 状态机 uploading->storing->done; 测试 7 项 2026-08-10 01:30:19 +08:00
lou 3c4e683210 api: 下载响应头 X-Chunk-Count (卷数); db: get_file 带 chunk_count 2026-08-10 01:24:18 +08:00
lou fc522afbaf 零知识重构: 服务端只存密文 (删 decrypt/keyring/unpacker), complete 合并即存, download 返回密文+enc_params 头, 全端点 Bearer token 认证; 测试 7 项 2026-08-10 01:06:33 +08:00
lou eba9d36450 api: complete 幂等 (已完成直接返回 file_id, 客户端超时重试不重复入库); db: get_file_by_transfer 2026-08-10 01:00:23 +08:00
lou cf1f143a0c api: 新增 GET /api/files (ls) + GET /api/files/{id} (下载流式返回); db: list_files/get_file; 测试 6 项 2026-08-10 00:46:08 +08:00
lou e30178391b settings: 默认路径去掉 server/ 前缀 (独立项目根后遗留) 2026-08-10 00:22:31 +08:00
lou 680fbaaa5f db 层换 SQLite: PRoot 容器 PG fsync 卡死, 轻量文件库 (表结构兼容, 可切回 PG) 2026-08-10 00:21:22 +08:00
lou 9924e5fb8e unpacker/decrypt: 裸 dict 泛型补全 dict[str,Any] 2026-08-09 23:36:08 +08:00
lou e782a92a0c api: _sha256 补类型注解 str|Path 2026-08-09 23:35:36 +08:00
lou 554dd34788 集成测试: 全链路还原/坏卷409/缺卷409/幂等/404 5项全过 (真实PG+FastAPI+密码学) 2026-08-09 23:28:07 +08:00
lou 28654c0056 服务端 9 模块骨架: api/receiver/assembler/unpacker/decrypt/storage/db/keyring/task_manager 2026-08-09 23:24:03 +08:00