feat: release v0.2.2 — TCVDB backend, BM25 hybrid retrieval, pipeline refactor

This commit is contained in:
chrishuan
2026-05-13 01:23:05 +08:00
parent 5bf5f890a3
commit a74b0b3e43
45 changed files with 8247 additions and 756 deletions
+95
View File
@@ -4,6 +4,101 @@
---
## [0.2.2] - 2026-04-17
### 🐛 修复
- 修复因未声明 `undici` 依赖导致 TCVDB 客户端加载失败的问题(开发环境之前依赖 monorepo 根 `node_modules` 的传递解析)
- 将插件注册阶段的大量 INFO 日志降级为 DEBUG,避免 CLI 模式下输出过多无关日志
## [0.2.1] - 2026-04-16 (deprecated)
> NOTE: 此版本由于存在 undici 依赖导致插件启动失败的问题,已废弃
> 相关问题在 0.2.2 及以后版本中已修复
### 🚀 新功能
- TCVDB 新增 HTTPS 连接支持,可通过插件配置 `caPemPath` 或迁移脚本参数 `--tcvdb-ca-pem` 指定自定义 CA 证书 PEM 文件
- `read-local-memory` 脚本新增 L2 单文件查询,并将 L0 / L1 查询切换为直接从 `vectors.db` 读取,支持 SQL 层过滤、排序与分页
### ✨ 改进
- TCVDB 的 L0 / L1 向量索引默认调整为 `DISK_FLAT`,并在不支持该索引类型的实例上自动回退到 `HNSW`
- 默认服务端 embedding 模型调整为 `bge-large-zh`
- TCVDB 所有读接口统一启用 `readConsistency: "strongConsistency"`,消除 read-after-write 不一致
- 健康检测脚本 VDB 连接支持 HTTPS 自签证书
### 🐛 修复
- 修复 L3 persona sync 因未拉取远端 baseline 导致版本冲突跳过写入的问题
- 修复 `memories_since_last_persona` 被 L0 和 L1 双重计数导致 persona 触发阈值膨胀的问题
- 移除 `CheckpointManager` 中已被 `captureAtomically()` 替代的废弃方法
---
## [0.2.0] - 2026-04-15
### 🚀 新功能
**腾讯云向量数据库(TCVDB)存储后端**
- 新增腾讯云向量数据库存储后端,支持向量 + BM25 混合召回
- 支持 SQLite 与 TCVDB 之间的索引结构同步
- L2 场景 / L3 画像支持在本地缓存与向量数据库之间双向同步
- 插件配置(manifest)暴露 `storeBackend``tcvdb``bm25``embedding.timeoutMs` 等配置项
**本地 BM25 关键字检索**
- 使用本地 tcvdb-text 编码器替代原有的 BM25 HTTP sidecar 服务,消除外部依赖
**Seed 数据导入工具**
- 新增 CLI `seed` 命令,支持从外部数据批量导入记忆
- 提取共享的 pipeline-factory,供 seed 和正常运行时复用
- 支持 ISO 8601 时间戳格式(移除 JSONL 支持)
**数据迁移与运维工具**
- 新增 SQLite → 腾讯云向量数据库迁移脚本,支持 `--help` / `-h` 展示完整参数说明和使用示例
- 新增 VDB 数据导出脚本(含预编译 JS 和 CLI 启动器)
- 新增本地 Memory 数据查询脚本
- 注册全部 CLI bin 入口:`migrate-sqlite-to-tcvdb``export-tencent-vdb``read-local-memory`
**记忆搜索工具调用限制**
- `tdai_memory_search` + `tdai_conversation_search` 增加每轮合计最多 3 次的调用次数限制,通过 tool description 和召回引导提示词约束模型行为,防止陷入无效重复搜索
### 🐛 修复
- 修复 L2 场景合并(MERGE)无法删除旧文件的问题:OpenClaw 4.1+ 的 write 工具拒绝空白内容,改用 `[DELETED]` 标记实现软删除,SceneExtractor cleanup 阶段同步识别并清理
- 修复 L2 抽取产生孤立 BATCH/ARCHIVE 文件的问题,统一 maxScenes 上限为 15
- 修复 L3 启动时重复拉取 profile 的问题
- 过滤 skill wrapper 噪声标记(`¥¥[...]¥¥`
- 处理 `createCollection` 并发竞态(错误码 15202
### ♻️ 重构
- Pipeline checkpoint 游标语义从 timestamp 改为 update_at
- Runner 改用 `api.runtime.agent.runEmbeddedPiAgent`,避免跨环境导入失败
- 统一脚本构建流程:新增 `build:scripts` 一键编译命令,`prepack` 钩子确保 `npm pack` 前自动编译全部脚本产物
### 📚 文档
- 新增 AI Agent 长期记忆插件设计与实现技术文档
- 新增项目指南、研发系统分层架构文档
- 新增 VDB 存储设计文档及迁移指南
---
<details>
<summary>预发布版本</summary>
## [0.2.0-beta.1] - 2026-04-14
*此版本的内容已合并至 [0.2.0] 正式版。*
</details>
## [0.1.4] - 2026-04-10
### 🚀 Features