|
|
3e7eba0741
|
feat: 添加 Scene VLM Stats 快速 endpoint 支持
新增功能:
1. loadSceneVlmStats() 函数
- 调用快速 endpoint: /api/v1/file/{uuid}/scene-vlm-stats
- 返回: {total_scenes, status, vlm_done, vlm_total}
- 响应时间: < 10ms (vs 旧 API 100ms+)
2. loadFileStats() 增强
- 如果 get_file_stats 未返回 scene_vlm 数据
- 自动调用 loadSceneVlmStats() 获取
3. 测试脚本
- scripts/test_scene_vlm_api.sh
- 测试新 endpoint 性能
- 对比新旧 API
API Endpoint:
GET /api/v1/file/{file_uuid}/scene-vlm-stats
返回示例:
{
"total_scenes": 1204,
"status": "ready",
"vlm_done": 1204
}
优势:
- 快速响应 (< 10ms)
- 轻量级数据
- 无需加载完整文件信息
- 适合频繁轮询
使用场景:
- LibraryView 显示 Scene VLM 状态
- Pipeline Progress 更新
- 文件状态监控
|
2026-10-14 10:11:10 +08:00 |
|
|
|
313d42be2f
|
fix: 设置默认账号为 demo/demo123,修复数据路径
问题修复:
1. ✅ 默认账号设置
- db.rs: 默认密码改为 demo123
- .env.template: 默认密码改为 demo123
- install.sh: 默认密码改为 demo123
2. ✅ 数据路径动态化
- db.rs: 使用 dirs::home_dir() 自动检测用户主目录
- 默认路径: {HOME}/momentry_studio/data/users
- 支持通过 MOMENTRY_DATA_DIR 环境变量自定义
验证脚本:
- scripts/verify_default_setup.sh: 验证默认账号和数据路径
目标:
- 安装后可直接使用 demo/demo123 登录
- 数据路径随用户主目录自动调整
- 适用于任何用户环境
影响:
- demo 用户: 密码固定为 demo123
- 数据路径: 自动检测 {HOME}/momentry_studio/data/users
- 安装即可使用,无需额外配置
|
2026-10-12 15:35:22 +08:00 |
|
|
|
be3cef2e0d
|
feat: MarkBase 三层架构设计
架构设计:
- Admin Layer: 系统管理 (admin.sqlite)
* system_config - 系统配置
* users - 用户管理
* groups - 群组管理
* permissions - 权限管理
* audit_logs - 审计日志
- Group Layer: 群组管理 (group_{id}.sqlite)
* group_config - 群组配置
* group_members - 群组成员
* group_files - 群组文件
* group_permissions - 群组权限
* group_shares - 群组共享
- User Layer: 用户数据 ({username}.sqlite)
* user_config - 用户配置
* user_files - 用户文件
* user_bookmarks - 用户书签
* search_history - 搜索历史
* video_marks - 视频标记
目录结构:
data/
├── admin/admin.sqlite
├── groups/group_{id}.sqlite
└── users/{username}.sqlite
权限模型:
- Admin: 系统管理
- Group Owner: 群组管理
- Group Member: 群组访问
- User: 个人数据
文档:
- MARKBASE_THREE_LAYER_ARCHITECTURE.md - 完整架构设计
- THREE_LAYER_IMPLEMENTATION_GUIDE.md - 实施指南
脚本:
- init_three_layer_db.sh - 数据库初始化
- check_three_layer.sh - 架构检查
预计工作量: 3-5 天
优先级: 高
|
2026-10-12 15:08:48 +08:00 |
|
|
|
08584ecc87
|
docs: 确认用户数据库隔离问题
问题发现:
- Momentry Studio 硬编码 demo.sqlite
- 违反'一用户一数据库'设计原则
- 所有用户共享同一数据库
检查结果:
- Momentry Studio: 只有 1 个 demo.sqlite ❌
- MarkBase Core: 3 个用户数据库 ✅
修复方案:
1. 方案 1: 函数参数传递 (推荐)
- db_path(username) 动态生成路径
- 所有数据库函数添加 username 参数
2. 方案 2: 环境变量 (折中)
- MOMENTRY_CURRENT_USER 环境变量
- db_path() 读取环境变量
3. 方案 3: 全局状态 (Tauri State)
- 线程安全的状态管理
- 集中管理用户状态
受影响功能:
- 搜索历史
- 书签
- 视频标记
- 用户认证 (例外,保持共享)
工作量: 2-3 天
优先级: 高 (影响数据隔离)
文档:
- docs/USER_DATABASE_ISOLATION_FIX.md - 详细修复方案
- scripts/check_user_isolation.sh - 检查脚本
|
2026-10-12 14:50:34 +08:00 |
|
|
|
9248340308
|
feat: 添加数据库依赖检查脚本
功能:
- SQLite 数据库检查
- PostgreSQL 服务检查
- Qdrant 服务检查
- MongoDB 服务检查
检查项目:
- 数据库文件是否存在
- 服务是否运行
- 数据库/集合是否存在
- 必需服务状态总结
用法:
./scripts/check_db_dependencies.sh
|
2026-10-12 14:45:07 +08:00 |
|