新增内容: - 完整的版本发布说明(v1.0.0) - 详细的新增功能列表(后端、前端、数据库) - API 接口完整列表 - 依赖更新说明 - Git 提交记录 - 里程碑清单 - 致谢 记录所有重要的项目变更,便于追溯版本历史。
5.5 KiB
5.5 KiB
🦐 龙虾记忆同步系统 - 变更日志
所有重要的项目变更都会记录在此文件中。
[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: 完善核心功能模块
🎉 里程碑
- 项目初始化
- 后端核心功能完成
- 前端核心功能完成
- 部署配置完成
- 分块流式处理完成
- .lobsterignore 支持完成
- 审计日志完成
- 语义摘要完成
- 冲突判定完成
- 前端丝滑体验完成
- 数据库迁移完成
- 文档更新完成
- 推送到 Git 仓库
🌟 致谢
感谢逍遥子的宝贵建议和指导!
项目仓库: http://10.2.0.100:8989/daotong/lobster-memory-sync.git 维护者: 道童 版本: 1.0.0 发布日期: 2026-04-05