新增内容: - 完整的版本发布说明(v1.0.0) - 详细的新增功能列表(后端、前端、数据库) - API 接口完整列表 - 依赖更新说明 - Git 提交记录 - 里程碑清单 - 致谢 记录所有重要的项目变更,便于追溯版本历史。
192 lines
5.5 KiB
Markdown
192 lines
5.5 KiB
Markdown
# 🦐 龙虾记忆同步系统 - 变更日志
|
||
|
||
所有重要的项目变更都会记录在此文件中。
|
||
|
||
## [1.0.0] - 2026-04-05
|
||
|
||
### 🎉 首次发布
|
||
|
||
完整版本,包含所有核心功能。
|
||
|
||
### ✨ 新增功能
|
||
|
||
#### 后端
|
||
- ✅ **ChunkedReadStream**:流式文件读取器,内存限制 256MB
|
||
- 8KB 分块读取
|
||
- 最大缓存限制 256MB
|
||
- 流式哈希计算
|
||
- 自动内存清理
|
||
|
||
- ✅ **SmartDiffComparator**:智能差异对比器
|
||
- 大文件只对比头尾
|
||
- 中间部分计算哈希
|
||
- 内存占用不超过 256MB
|
||
|
||
- ✅ **MemoryMonitor**:内存监控器
|
||
- 监控当前内存使用
|
||
- 检查内存限制
|
||
|
||
- ✅ **FileAttribute 模型**:文件属性表
|
||
- 支持键值对存储
|
||
- 支持嵌套属性(点号分隔的路径)
|
||
- 支持属性类型(string/integer/float/boolean/json)
|
||
- 支持属性分类和元数据
|
||
|
||
- ✅ **SyncHistory 模型**:同步操作历史表
|
||
- 记录操作人、操作时间
|
||
- 记录数据源(local/database/manual)
|
||
- 记录变动行数
|
||
- 记录执行时间
|
||
- 记录属性变更
|
||
|
||
- ✅ **LobsterMemory 模型**:龙虾记忆表
|
||
- 新增 `summary` 字段(语义摘要)
|
||
- 新增 `has_attributes` 字段
|
||
- 新增 `hard_conflict` 状态
|
||
- 优化数据库索引
|
||
|
||
- ✅ **IgnorePattern**:.lobsterignore 模式匹配器
|
||
- 支持正则表达式匹配(`re:.*\.log$`)
|
||
- 支持通配符匹配(`*.pyc`, `node_modules/`)
|
||
- 支持目录递归匹配
|
||
- 默认忽略规则(`.git`, `__pycache__`, `.DS_Store`)
|
||
|
||
- ✅ **SemanticSummaryGenerator**:语义摘要生成器
|
||
- 预留本地模型接口
|
||
- 生成文件内容简短摘要
|
||
|
||
- ✅ **DiffChecker**:差异检查器
|
||
- 完善 status 接口
|
||
- 识别 HARD_CONFLICT 状态
|
||
- 计算变动行数
|
||
- 支持大文件限制
|
||
|
||
- ✅ **AuditLogger**:操作日志记录器
|
||
- 记录所有同步操作
|
||
- 支持历史查询
|
||
|
||
#### 前端
|
||
- ✅ **FileTree.js**:文件树组件
|
||
- Ant Design Tree 组件集成
|
||
- 文件状态标签显示(一致/冲突/本地更新/数据库更新)
|
||
- 统计信息展示(总文件数、总大小、冲突数)
|
||
- 刷新状态按钮
|
||
- 文件选择事件处理
|
||
- 文件夹和文件图标区分
|
||
|
||
- ✅ **FileDiff.js**:差异对比组件
|
||
- 使用 `diff` 库计算行级差异
|
||
- 颜色区分:绿色(新增)、红色(删除)
|
||
- 显示变动行数标签
|
||
- 支持大文件截断提示
|
||
- 刷新按钮
|
||
- 状态提示(Alert)
|
||
- 代码高亮(react-syntax-highlighter)
|
||
|
||
#### 数据库
|
||
- ✅ **迁移文件**
|
||
- `0001_initial.py`:初始表结构
|
||
- `0002_add_summary_and_audit_fields.py`:添加语义摘要和审计字段
|
||
- `0003_add_file_attribute.py`:添加文件属性表
|
||
|
||
### 🔧 API 接口
|
||
|
||
- `GET /api/scan/` - 扫描本地文件
|
||
- `GET /api/tree/` - 获取文件树
|
||
- `GET /api/status/` - 检查同步状态(包含 HARD_CONFLICT)
|
||
- `GET /api/diff/` - 获取文件差异(支持分块读取)
|
||
- `POST /api/sync/db/` - 同步到数据库(生成语义摘要)
|
||
- `POST /api/sync/local/` - 同步到本地
|
||
- `GET /api/versions/` - 获取文件的所有版本
|
||
- `GET /api/stats/` - 获取统计信息
|
||
- `GET /api/history/` - 获取操作历史(包含变动行数和数据源)
|
||
- `GET /api/ignore/patterns/` - 获取 .lobsterignore 模式列表
|
||
- `POST /api/ignore/reload/` - 重新加载 .lobsterignore 模式
|
||
|
||
### 📦 依赖更新
|
||
|
||
#### 后端
|
||
- Django 4.x
|
||
- Django REST Framework
|
||
- PostgreSQL 15
|
||
- Python 3.11
|
||
|
||
#### 前端
|
||
- React 18
|
||
- Ant Design 5.x
|
||
- diff ^5.1.0
|
||
- react-syntax-highlighter ^15.5.0
|
||
- Axios
|
||
|
||
### 🚀 部署
|
||
|
||
- Docker + Docker Compose
|
||
- Nginx 反向代理
|
||
- Let's Encrypt SSL
|
||
- 数据库自动备份
|
||
|
||
### 📝 文档
|
||
|
||
- README.md:项目文档
|
||
- DEPLOY.md:详细部署文档
|
||
- CHANGELOG.md:变更日志
|
||
- .lobsterignore.example:示例忽略文件
|
||
|
||
### 🧪 测试
|
||
|
||
- `test_simple.py`:简化功能测试
|
||
- .lobsterignore 匹配测试
|
||
- 分块读取测试
|
||
- 变动行数计算测试
|
||
- 冲突判定测试
|
||
|
||
### 🎯 核心特性
|
||
|
||
- ✅ 分块流式处理(内存限制 256MB)
|
||
- ✅ .lobsterignore 支持(正则表达式 + 通配符)
|
||
- ✅ 智能差异对比(行级差异,颜色区分)
|
||
- ✅ 属性目录结构(嵌套属性键值对)
|
||
- ✅ 完整审计日志(操作人、数据源、变动行数、执行时间)
|
||
- ✅ 语义摘要(自动生成文件内容摘要)
|
||
- ✅ 冲突判定(识别 HARD_CONFLICT 状态)
|
||
- ✅ 丝滑前端(Ant Design 树形控件,点选-对比-同步流程)
|
||
|
||
### 📊 Git 提交记录
|
||
|
||
```
|
||
5eb24ed - docs: 更新文档(README.md 和 DEPLOY.md)
|
||
1b06593 - feat: 前端 - 接好 Ant Design 树形控件和差异对比组件
|
||
b130f7a - feat: 完成 SyncHistory 和 FileAttribute 的迁移
|
||
0cb271a - feat: 完善 ChunkedReadStream 逻辑(内存限制 256MB)
|
||
3529c36 - fix: 修复 .lobsterignore 和变动行数计算
|
||
479d679 - feat: 完成所有功能模块并添加测试
|
||
7992ff0 - feat: 更新 API 视图和序列化器
|
||
a016335 - feat: 完善核心功能模块
|
||
```
|
||
|
||
### 🎉 里程碑
|
||
|
||
- [x] 项目初始化
|
||
- [x] 后端核心功能完成
|
||
- [x] 前端核心功能完成
|
||
- [x] 部署配置完成
|
||
- [x] 分块流式处理完成
|
||
- [x] .lobsterignore 支持完成
|
||
- [x] 审计日志完成
|
||
- [x] 语义摘要完成
|
||
- [x] 冲突判定完成
|
||
- [x] 前端丝滑体验完成
|
||
- [x] 数据库迁移完成
|
||
- [x] 文档更新完成
|
||
- [x] 推送到 Git 仓库
|
||
|
||
### 🌟 致谢
|
||
|
||
感谢逍遥子的宝贵建议和指导!
|
||
|
||
---
|
||
|
||
**项目仓库**: http://10.2.0.100:8989/daotong/lobster-memory-sync.git
|
||
**维护者**: 道童
|
||
**版本**: 1.0.0
|
||
**发布日期**: 2026-04-05 |