OpenViking v0.3.3
本次 v0.3.3 版本主要围绕评测与写入能力、OpenClaw 插件与集成体验、会话与资源导入链路、稳定性与安全性,以及测试与 CI 体系做了集中增强。相较 v0.3.2,这一版本一方面补齐了 benchmark / eval / write 等面向落地使用的能力,另一方面也明显加强了 OpenClaw 插件的可观测性、健康检查、容错和测试覆盖,同时修复了若干会直接影响生产使用的锁处理、任务权限、ZIP 编码、资源导入与 embedder 参数问题。
Highlights
- 评测与写入能力继续扩展:新增 RAG benchmark 评测框架 PR #825,补充 OpenClaw 的 LoCoMo eval 脚本与说明 PR #1152,并新增内容写入接口 PR #1151。
- OpenClaw 插件可用性显著增强:补充架构文档与图示 PR #1145,安装器不再覆盖
gateway.modePR #1149,新增端到端 healthcheck 工具 PR #1180,支持 bypass session patterns PR #1194,并在 OpenViking 故障时避免阻塞 OpenClaw PR #1158。 - 测试与 CI 覆盖大幅补强:OpenClaw 插件新增大规模单测套件 PR #1144,补充 e2e 测试 PR #1154,新增 OpenClaw2OpenViking 集成测试与 CI 流水线 PR #1168。
- 会话、解析与导入链路更稳健:支持创建 session 时指定
session_idPR #1074,CLI 聊天端点优先级与grep --exclude-uri/-x能力得到增强 PR #1143 PR #1174,目录导入 UX / 正确性与扫描 warning 契约也进一步改善 PR #1197 PR #1199。 - 稳定性与安全性继续加固:修复任务 API ownership 泄露问题 PR #1182,统一 stale lock 处理并补充 ownership checks PR #1171,修复 ZIP 乱码 PR #1173、embedder dimensions 透传 PR #1183、语义 DAG 增量更新缺失 summary 场景 PR #1177 等问题。
Upgrade Notes
- OpenClaw 插件安装器不再写入
gateway.mode。如果你之前依赖安装流程自动改写该配置,升级后需要改为显式管理,见 PR #1149。 - 如果你使用
--with-bot进行安装或启动,失败时现在会直接返回错误码;依赖“失败但继续执行”行为的脚本需要同步调整,见 PR #1175。 - 如果你接入 OpenAI Dense Embedder,自定义维度参数现在会正确传入
embed();此前依赖默认维度行为的调用方建议复核配置,见 PR #1183。 ov status现在会展示 embedding 与 rerank 模型使用情况,便于排障与环境核对,见 PR #1191。- 检索侧曾尝试加入基于 tags metadata 的 cross-subtree retrieval PR #1162,但已在本版本窗口内回滚 PR #1200,因此不应将其视为
v0.3.3的最终可用能力。 litellm依赖范围更新为>=1.0.0,<1.83.1,升级时建议同步检查锁文件与兼容性,见 PR #1179。
What's Changed
Benchmark, Eval, CLI, and Writing
- 新增 RAG benchmark 系统评测框架,PR #825 by @sponge225
- 优化 CLI chat endpoint 配置优先级,PR #1143 by @ruansheng8
- 新增 OpenClaw 的 LoCoMo eval 脚本与 README,PR #1152 by @yeshion23333
- 新增内容写入接口,PR #1151 by @zhoujh01
ov cli grep新增--exclude-uri/-x选项,PR #1174 by @heaoxiang-ai- 更新 rerank 配置文档,PR #1138 by @ousugo
OpenClaw Plugin, OpenCode Plugin, Bot, and Console
- 刷新 OpenClaw 插件架构文档并补充图示,PR #1145 by @qin-ctx
- 修复 OpenClaw 插件安装器不应写入
gateway.mode,PR #1149 by @LinQiang391 - 处理 OpenViking 故障时不再阻塞 OpenClaw,PR #1158 by @wlff123
- 新增 OpenClaw 插件端到端 healthcheck 工具,PR #1180 by @wlff123
- 新增 bypass session patterns 支持,PR #1194 by @Mijamind719
- 修复 OpenCode 插件在当前 main 上恢复 stale commit state 的问题,PR #1187 by @13ernkastel
- 新增 Bot 单通道(BotChannel)集成与 Werewolf demo,PR #1196 by @yeshion23333
- console 支持 account user agentid,PR #1198 by @zhoujh01
Sessions, Retrieval, Parsing, and Resource Import
- 支持创建 session 时指定
session_id,PR #1074 by @likzn - 修复 reindex 时 memory
context_type的 URI 匹配逻辑,PR #1155 by @deepakdevp - ZIP 下载在可用时使用
GITHUB_TOKEN,PR #1146 by @jellespijker - 统一异步 commit API 文档与示例,PR #1188 by @qin-ctx
- 目录导入时改善用户体验与正确性,PR #1197 by @yangxinxin-7
- 修复扫描 warning 契约与 Python SDK 默认值,PR #1199 by @yangxinxin-7
- 新增
.inl文件扩展名支持,PR #1176 by @myysy - 修复 semantic DAG 增量更新时 summary 缺失场景,PR #1177 by @myysy
- 引入 tags metadata 的 cross-subtree retrieval 尝试,PR #1162 by @13ernkastel
- 回滚 tags metadata 的 cross-subtree retrieval 变更,PR #1200 by @zhoujh01
Stability, Runtime, and Security
- 新增 OpenClaw 插件大规模单测套件,PR #1144 by @huangxun375-stack
- 新增
tests/ut/e2e端到端测试,PR #1154 by @huangxun375-stack - 新增 OpenClaw2OpenViking 集成测试与 CI 流水线,PR #1168 by @kaisongli
- Windows 上因 FUSE 兼容性问题跳过 filesystem tests,PR #1156 by @kaisongli
- 统一 stale lock 处理并增加 ownership checks,PR #1171 by @qin-ctx
- 修复 ZIP 文件乱码问题,PR #1173 by @zhoujh01
--with-bot失败时改为显式退出并返回错误,PR #1175 by @MaojiaSheng- 修复 OpenAI Dense Embedder 未透传 dimensions 的问题,PR #1183 by @LinQiang391
- 修复 Task API ownership 泄露安全问题,PR #1182 by @13ernkastel
ov status现在展示 embedding 与 rerank 模型使用情况,PR #1191 by @MaojiaSheng
Build and Dependencies
- 更新
litellm依赖范围到>=1.0.0,<1.83.1,PR #1179 by @dependabot[bot] - 升级
actions/cache从 4 到 5,PR #1178 by @dependabot[bot]
New Contributors
- @ruansheng8 made their first contribution in PR #1143
- @jellespijker made their first contribution in PR #1146
- @heaoxiang-ai made their first contribution in PR #1174
- @ousugo made their first contribution in PR #1138
Full Changelog: v0.3.2...v0.3.3
What's Changed
- Feat(benchmark): Add benchmark/RAG : RAG system evaluation framework by @sponge225 in #825
- docs(openclaw-plugin): refresh architecture guides with diagrams by @qin-ctx in #1145
- fix(openclaw-plugin): stop writing gateway.mode from installers by @LinQiang391 in #1149
- test(openclaw-plugin): add comprehensive UT suite under tests/ut/ (27… by @huangxun375-stack in #1144
- feat(cli): improve chat endpoint configuration priority by @ruansheng8 in #1143
- feat(eval): add locomo eval scripts for openclaw and readme by @yeshion23333 in #1152
- add e2e test under tests/ut/e2e by @huangxun375-stack in #1154
- Handle OpenViking outages without blocking OpenClaw by @wlff123 in #1158
- fix(ci): skip filesystem tests on Windows due to FUSE compatibility by @kaisongli in #1156
- feat(write): add content write interface by @zhoujh01 in #1151
- fix(summarizer): use correct URI matching for memory context_type during reindex by @deepakdevp in #1155
- fix(parser): use GITHUB_TOKEN for ZIP downloads if available by @jellespijker in #1146
- feat: Add OpenClaw2OpenViking integration tests with CI pipeline by @kaisongli in #1168
- fix(transaction): unify stale lock handling with ownership checks by @qin-ctx in #1171
- fix(zip): Fix garbled characters by @zhoujh01 in #1173
- fix: exit with error if --with-bot fail by @MaojiaSheng in #1175
- feat(openclaw-plugin): add end-to-end healthcheck tool for OpenViking… by @wlff123 in #1180
- feat(parse): add support for .inl file extension by @myysy in #1176
- fix(semantic_dag): handle missing summary case in incremental update by @myysy in #1177
- fix(embedder): pass dimensions in OpenAIDenseEmbedder.embed() by @LinQiang391 in #1183
- build(deps): update litellm requirement from <1.82.6,>=1.0.0 to >=1.0.0,<1.83.1 by @dependabot[bot] in #1179
- build(deps): bump actions/cache from 4 to 5 by @dependabot[bot] in #1178
- feat(cli): ov cli grep with --exclude-uri/ -x option by @heaoxiang-ai in #1174
- fix(session): align async commit API docs and examples by @qin-ctx in #1188
- fix: ov status shows embedding and rerank models usage by @MaojiaSheng in #1191
- feat(openclaw-plugin): add bypass session patterns by @Mijamind719 in #1194
- fix: [Security] fix task API ownership leakage by @13ernkastel in #1182
- feat(bot):Single Channel (BotChannel) Integration, Werewolf demo by @yeshion23333 in #1196
- fix(add-resource): improve directory import UX and correctness by @yangxinxin-7 in #1197
- docs(config): update rerank configuration by @ousugo in #1138
- feat(retrieve): use tags metadata for cross-subtree retrieval by @13ernkastel in #1162
- feat(sessions): support specifying session_id when creating session by @likzn in #1074
- fix(opencode-plugin): recover stale commit state on current main by @13ernkastel in #1187
- fix(add-resource): fix scan warnings contract and Python SDK defaults by @yangxinxin-7 in #1199
- feat(console): support account user agentid by @zhoujh01 in #1198
- Revert "feat(retrieve): use tags metadata for cross-subtree retrieval" by @zhoujh01 in #1200
New Contributors
- @ruansheng8 made their first contribution in #1143
- @jellespijker made their first contribution in #1146
- @heaoxiang-ai made their first contribution in #1174
- @ousugo made their first contribution in #1138
Full Changelog: v0.3.2...v0.3.3
What's Changed
- Feat(benchmark): Add benchmark/RAG : RAG system evaluation framework by @sponge225 in #825
- docs(openclaw-plugin): refresh architecture guides with diagrams by @qin-ctx in #1145
- fix(openclaw-plugin): stop writing gateway.mode from installers by @LinQiang391 in #1149
- test(openclaw-plugin): add comprehensive UT suite under tests/ut/ (27… by @huangxun375-stack in #1144
- feat(cli): improve chat endpoint configuration priority by @ruansheng8 in #1143
- feat(eval): add locomo eval scripts for openclaw and readme by @yeshion23333 in #1152
- add e2e test under tests/ut/e2e by @huangxun375-stack in #1154
- Handle OpenViking outages without blocking OpenClaw by @wlff123 in #1158
- fix(ci): skip filesystem tests on Windows due to FUSE compatibility by @kaisongli in #1156
- feat(write): add content write interface by @zhoujh01 in #1151
- fix(summarizer): use correct URI matching for memory context_type during reindex by @deepakdevp in #1155
- fix(parser): use GITHUB_TOKEN for ZIP downloads if available by @jellespijker in #1146
- feat: Add OpenClaw2OpenViking integration tests with CI pipeline by @kaisongli in #1168
- fix(transaction): unify stale lock handling with ownership checks by @qin-ctx in #1171
- fix(zip): Fix garbled characters by @zhoujh01 in #1173
- fix: exit with error if --with-bot fail by @MaojiaSheng in #1175
- feat(openclaw-plugin): add end-to-end healthcheck tool for OpenViking… by @wlff123 in #1180
- feat(parse): add support for .inl file extension by @myysy in #1176
- fix(semantic_dag): handle missing summary case in incremental update by @myysy in #1177
- fix(embedder): pass dimensions in OpenAIDenseEmbedder.embed() by @LinQiang391 in #1183
- build(deps): update litellm requirement from <1.82.6,>=1.0.0 to >=1.0.0,<1.83.1 by @dependabot[bot] in #1179
- build(deps): bump actions/cache from 4 to 5 by @dependabot[bot] in #1178
- feat(cli): ov cli grep with --exclude-uri/ -x option by @heaoxiang-ai in #1174
- fix(session): align async commit API docs and examples by @qin-ctx in #1188
- fix: ov status shows embedding and rerank models usage by @MaojiaSheng in #1191
- feat(openclaw-plugin): add bypass session patterns by @Mijamind719 in #1194
- fix: [Security] fix task API ownership leakage by @13ernkastel in #1182
- feat(bot):Single Channel (BotChannel) Integration, Werewolf demo by @yeshion23333 in #1196
- fix(add-resource): improve directory import UX and correctness by @yangxinxin-7 in #1197
- docs(config): update rerank configuration by @ousugo in #1138
- feat(retrieve): use tags metadata for cross-subtree retrieval by @13ernkastel in #1162
- feat(sessions): support specifying session_id when creating session by @likzn in #1074
- fix(opencode-plugin): recover stale commit state on current main by @13ernkastel in #1187
- fix(add-resource): fix scan warnings contract and Python SDK defaults by @yangxinxin-7 in #1199
- feat(console): support account user agentid by @zhoujh01 in #1198
- Revert "feat(retrieve): use tags metadata for cross-subtree retrieval" by @zhoujh01 in #1200
- fix(storage): recover stale startup locks on Windows by @qin-ctx in #1201
New Contributors
- @ruansheng8 made their first contribution in #1143
- @jellespijker made their first contribution in #1146
- @heaoxiang-ai made their first contribution in #1174
- @ousugo made their first contribution in #1138
Full Changelog: v0.3.2...v0.3.3