kuaifan
c9b3515aef
refactor(manticore): 简化向量批量分块收尾
2026-07-19 07:01:19 +00:00
kuaifan
f8eaab5a50
fix(search): 评审修复——重建自愈加探针表与锁内复检,向量模型变更自动重建
...
- 重建前用探针表验证 ai 端点,探不通不动真表不写 marker(下次自愈重试)
- 锁内复检 marker,消除并发进程重复重建窗口
- 检测 embedding 模型变更(vector:model 对比查询侧缓存)自动触发重建
- Ihttp 返回体 code 非 0/200 时视为失败(401/500 不再被当成功)
- 查询向量缓存键掺入模型指纹,换模型后不再命中旧维度缓存
- 批量写入按行数+字节双预算分块、块内延迟渲染 SQL,降低峰值内存
- user 同步加脏检查,字段未变不重复触发向量重算
- 日志截断超长 SQL;文档与注释同步 KB_INGEST_TOKEN 退役、截断长度对齐
2026-07-15 14:17:01 +00:00
kuaifan
746337c2f6
feat(search): 语义搜索迁移至 Manticore Auto Embeddings,向量走 ai 插件免费模型
...
- embedding 统一改走 ai 插件 /embeddings(免费向量模型,1024 维),删除第三方 key 分支
- 5 张向量表启用引擎 Auto Embeddings(MODEL_NAME/FROM/API_URL),写入/更新时引擎自动生成向量
- 表定义使用派生密钥 sha256(APP_KEY:embeddings),避免主密钥进入引擎元数据
- 写入改为 REPLACE(单行原子)与多行批量 REPLACE(整语句一次向量化调用,失败回退逐行)
- 结构指纹 vector:schema 标记:版本/模型/端点/APP_KEY 变化时自动清空重建并重置同步指针
- 退役 PHP 向量管道:删除 generate-vectors 命令、双指针、withVector 分支与批量向量生成方法
- 根治缺陷:全文重同步不再抹掉向量;内容编辑后向量由引擎自动重算,不再过期
2026-07-15 10:45:20 +00:00
kuaifan
04aa60b574
refactor(config): app 内 env() 直读收敛到 config()
...
- 新增 config/dootask.php 承载 11 个无 config 对应的 env key(默认值随迁)
- 29 处 env() 替换:APP_KEY→config('app.key')、APP_NAME→config('app.name')、其余→config('dootask.*')
- 语义逐处保持一致(?:/三元留在调用点);消除 config:cache 后 env() 返回 null 的隐患
- 注:User.php / Setting.php 同时含本批 ide-helper 生成的 @property 注释增量
- 验证:grep env( app/ 归零;composer stan 通过;phpunit 146 测试全过
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-13 01:21:47 +00:00
kuaifan
07360a8d2c
feat(manticore): 添加同步失败自动重试机制
...
- 新增 ManticoreSyncFailure 模型记录同步失败的条目
- 添加 RetryManticoreSync 命令实现失败重试逻辑
- ManticoreBase 增加 runWithRetry 包装器,连接断开时自动重连
- 统一 deleteVector 方法,减少重复代码
- 修复 quoteValue 传入非字符串的类型问题
2026-01-15 08:28:55 +00:00
kuaifan
13a25e3011
fix(manticore): 修复向量表插入时的 SQL 语法错误
...
- 新增 executeRaw() 方法直接执行 SQL,避免 prepared statement 解析问题
- 新增 quoteValue() 方法安全转义 SQL 值
- 新增通用 upsertVector() 方法统一处理所有向量表插入
- 简化 upsertMsgVector/TaskVector/FileVector/ProjectVector/UserVector 为单行调用
- 统一 NUMERIC_FIELDS 常量,消除代码重复
- 更新 batchUpdateVectors() 使用统一常量
2026-01-15 00:47:33 +00:00
kuaifan
dd20711c04
refactor: 移除冗余日志记录,优化代码可读性
2026-01-14 09:41:06 +00:00
kuaifan
f496bc5fca
feat: Optimize search functionality and AI module integration
...
- Refactor Manticore search classes for better performance
- Update AI module with enhanced processing capabilities
- Improve Apps module functionality
- Enhance SearchBox Vue component with new features
2026-01-06 07:25:23 +00:00
kuaifan
8ab810c670
feat: 将 Manticore 相关检查更新为使用 "search" 应用
2026-01-05 05:51:48 +00:00
kuaifan
4b0f4e388c
feat: 优化 Manticore 相关描述
2026-01-04 13:30:03 +00:00
kuaifan
31045b3808
feat: 更新 Manticore 数据库插入逻辑,添加 userid 和 tags 字段;在 WebSocket 消息删除时同步 Manticore
2026-01-04 07:48:53 +00:00
kuaifan
90a5624877
feat: 添加用户标签功能,更新用户索引以支持标签创建、更新和删除事件
2026-01-04 07:13:13 +00:00
kuaifan
501ff21e55
feat: 添加数值类型转换功能,确保查询结果中的数值类型一致性
2026-01-04 00:29:29 +00:00
kuaifan
ea0d27fdea
feat: 添加 Manticore 同步命令通用锁机制,优化信号处理与锁管理
2026-01-03 23:09:50 +00:00
kuaifan
9a8304d595
feat: 增强 Manticore 向量更新逻辑,记录更新失败的 ID
2026-01-03 21:59:44 +00:00
kuaifan
e020a80020
feat: Add batch embedding retrieval and vector update methods for Manticore integration
...
- Implemented `getBatchEmbeddings` method in AI module for retrieving embeddings for multiple texts.
- Added vector update methods for messages, files, tasks, projects, and users in ManticoreBase.
- Enhanced ManticoreFile, ManticoreMsg, ManticoreProject, ManticoreTask, and ManticoreUser to support vector generation during sync operations.
- Introduced `generateVectorsBatch` methods for batch processing of vector generation in Manticore modules.
- Updated ManticoreSyncTask to handle incremental updates and vector generation asynchronously.
2026-01-03 15:19:23 +00:00
kuaifan
908171a977
feat: 新增对话ID参数支持,优化搜索功能以支持对话过滤
2026-01-03 03:59:51 +00:00
kuaifan
7a5ef3a491
feat: 新增消息搜索功能
...
- 新增 msg_vectors 表,支持消息全文/向量/混合搜索
- 采用 MVA 权限方案,allowed_users 内联存储
- 新增 /api/search/message API
- 新增 manticore:sync-msgs 同步命令
- Observer 触发消息创建/更新/删除同步
- Observer 触发对话成员变更时更新 allowed_users
2026-01-02 06:46:18 +00:00
kuaifan
c08323e1ea
feat: 迁移至 MVA 权限方案
...
- 表结构:为 file/project/task_vectors 添加 allowed_users MULTI 字段
- 删除关系表:file_users, project_users, task_users
- 搜索:使用 allowed_users = userid 进行权限过滤
- 同步:sync 时自动计算并写入 allowed_users
- 级联:项目成员变更异步级联 v=1 任务,任务成员变更递归更新子任务
- 覆盖场景:visibility/parent_id/project_id 变更、子任务升级主任务等
2026-01-02 02:03:21 +00:00
kuaifan
fdf5ceeaab
feat: Enhance Manticore integration and AI model support
...
- Added support for specifying vector dimensions in AI payloads for compatible vendors.
- Updated default AI model from 'text-embedding-ada-002' to 'text-embedding-3-small'.
- Refactored ManticoreBase to bind parameters explicitly for PDO statements, improving type handling.
- Adjusted SQL queries across Manticore modules to remove content previews and ensure inline vector values.
- Updated content preview handling in ManticoreFile, ManticoreProject, ManticoreTask, and ManticoreUser to use substrings for better data management.
2026-01-01 08:59:54 +00:00
kuaifan
48ef4cfdef
refactor: 使用 Manticore Search 替换 SeekDB
2026-01-01 03:17:27 +00:00