Commit Graph

6 Commits

Author SHA1 Message Date
道童
0cb271aa4a feat: 完善 ChunkedReadStream 逻辑(内存限制 256MB)
新增内容:
1. ChunkedReadStream 类
   - 单次读取限制 8KB
   - 最大缓存限制 256MB
   - 流式哈希计算
   - 自动内存清理

2. SmartDiffComparator 类
   - 智能差异对比(内存限制版本)
   - 大文件只对比头尾
   - 中间部分计算哈希
   - 内存占用不超过 256MB

3. MemoryMonitor 类
   - 监控内存使用
   - 检查内存限制

确保大文件对比时不占用超过 256MB 的内存。
2026-04-05 14:20:23 +00:00
道童
3529c3647d fix: 修复 .lobsterignore 和变动行数计算
修复内容:
1. .lobsterignore 匹配
   - 修复目录匹配逻辑
   - 支持嵌套目录匹配(node_modules/, .git/, __pycache__/)
   - 正确处理目录下的文件

2. 变动行数计算
   - 修复空字符串处理
   - 空文件 -> 有内容正确计算
   - 有内容 -> 空文件正确计算

测试验证:
- test_simple.py 所有测试通过
- .lobsterignore 匹配正确
- 分块读取正常
- 变动行数计算准确
- 冲突判定逻辑完整(包含 HARD_CONFLICT)
2026-04-05 14:18:32 +00:00
道童
479d67923c feat: 完成所有功能模块并添加测试
完成内容:
1. 数据库迁移文件
   - 0001_initial.py: 初始表结构
   - 0002_add_summary_and_audit_fields.py: 添加语义摘要和审计字段
   - 新增 summary 字段
   - 新增 source, lines_changed 字段
   - 新增 hard_conflict 状态
   - 添加数据库索引优化查询

2. 功能测试脚本
   - test_services.py: 完整功能测试
   - 测试分块读取
   - 测试 .lobsterignore 匹配(含正则表达式)
   - 测试审计日志(包含变动行数和数据源)
   - 测试语义摘要生成
   - 测试冲突判定(包含 HARD_CONFLICT)
   - 测试变动行数计算

所有功能已完成并提交,代码注释清晰。
2026-04-05 14:17:31 +00:00
道童
7992ff0b89 feat: 更新 API 视图和序列化器
更新内容:
1. views.py
- 集成分块读取(所有文件操作强制使用 chunked=True)
- 集成语义摘要生成(SemanticSummaryGenerator)
- 记录变动行数(lines_changed)
- 记录数据源(source: local/database/manual)
- 完善 check_sync_status 支持 HARD_CONFLICT 状态
- get_file_diff 返回变动行数
- get_ignore_patterns 返回模式类型(glob/regex)

2. serializers.py
- 添加 status_display, source_display 字段
- 更新 LobsterMemorySerializer 包含 summary 字段
- 更新 SyncHistorySerializer 包含 lines_changed, source 字段

所有 API 接口已更新,支持完整功能。
2026-04-05 14:16:15 +00:00
道童
a0163356a6 feat: 完善核心功能模块
1. 分块与流式处理
- 所有文件读取使用 8KB 分块,避免大文件内存问题
- 实现流式哈希计算和流式文件读取
- 禁止一次性 .read() 大文件

2. .lobsterignore 支持
- 支持正则表达式匹配 (re:.*\.log$)
- 支持通配符匹配 (*.pyc, node_modules/)
- 默认过滤 .git, node_modules, .pyc, __pycache__

3. 审计日志 (Audit Log)
- 记录操作人、操作时间
- 记录数据源 (local/database/manual)
- 记录变动行数
- 记录执行时间

4. 语义摘要
- 新增 SemanticSummaryGenerator 类
- 预留本地模型接口
- 生成文件内容简短摘要

5. 冲突判定逻辑
- 完善 status 接口
- 识别 HARD_CONFLICT 状态
- 基于版本号和时间判定严重冲突

代码注释清晰,功能完整。
2026-04-05 14:15:08 +00:00
道童
4374379d3f feat: 龙虾记忆同步系统完整版本
功能特性:
- 文件树展示
- 差异对比
- 双向同步(本地 <-> 数据库)
- 版本历史追踪
- 统计信息展示

核心补丁:
1. 分块读取与流式传输(防止大文件内存飙升)
2. .lobsterignore 机制(排除临时文件)
3. 操作溯源(Audit Log,记录同步历史)

技术栈:
- 后端: Django + DRF + PostgreSQL
- 前端: React + Ant Design
- 部署: Docker + Docker Compose

项目已完整部署,可直接使用 docker-compose up -d 启动
2026-04-05 12:43:24 +00:00