What's Changed
- refactor(agent): consolidate model-handle codecs into internal/modelcontext by @lyingbug in #2330
- refactor(auth,router): unify auth session context and split router by domain by @lyingbug in #2331
- fix(knowledge): clean bound vector stores in batch delete by @BigFishDreamWater in #2329
- fix: support string args for skill script execution by @koishi514-Z in #2318
- fix(agent): keep batched wiki_read_page results within output budget by @lyingbug in #2333
- fix(pipeline): 修复合并阶段输出顺序的不确定性 by @mdrkrg in #2319
- fix(knowledge): reconcile wiki state when moving documents across KBs by @lyingbug in #2335
- feat(wiki): page revision history with diff, revert, and manual editing by @lyingbug in #2336
- style(wiki): polish revision drawer and sidebar to match session list UX by @lyingbug in #2338
- feat(feishu): sync docx via blocks API with per-type downdrill by @voidkey in #2334
- fix(i18n): remove duplicate 'members' key in organization locale objects by @hiasky in #2305
- fix(migrations): renumber knowledge metadata index migration to 000076 by @lyingbug in #2340
- fix(im): harden connection lifecycle across replicas by @lyingbug in #2349
- Refine user settings menu and access shortcuts by @lyingbug in #2368
- Remove redundant Wiki operation log by @lyingbug in #2367
- feat(knowledge): configure upload tags and processing options by @lyingbug in #2369
- fix: Remove SanitizeForDisplay from chunk handler responses by @mdrkrg in #2323
- feat(knowledge): support editable chunks and retrieval metadata by @lyingbug in #2370
- fix(mcp-server): correct SSE message route to prevent initialization … by @FincherYuan in #2375
- fix(im): recover channels after leader lock loss by @March-77 in #2365
- fix(knowledge): clear stale errors when reparse starts by @March-77 in #2363
- docs: clarify scope-aware contributor validation by @March-77 in #2366
- fix(frontend): distinguish main stages from postprocess tasks by @March-77 in #2364
- fix(wiki): prevent finalizing stalls on enqueue failure by @BigFishDreamWater in #2362
- fix(docparser): resolve remote images referenced by HTML img tags by @ochanism in #2355
- fix(mcp-server): route diagnostics to stderr to fix stdio protocol crash by @annopick in #2371
- fix(im): render resource:// images in IM channels (nginx /r/ + config guards) by @voidkey in #2352
- fix(chat): prevent duplicate terminal answer events by @koishi514-Z in #2353
- fix(docreader): restore optional XLSX header context by @WHUTcjh-2024 in #2314
- fix: 在chunk overlap中保留更细的语义边界 by @ttommybot in #2342
- [Bug] preserve web evidence when page fetches fail by @langcaiye in #2309
- fix(knowledge): default custom metadata on create by @lyingbug in #2379
- fix(knowledge): distinguish duplicate files by type by @koishi514-Z in #2384
- fix(storage): allow image uploads to use file service fallback by @lyingbug in #2389
- fix(retriever): rebuild a missing vector store engine on demand by @ochanism in #2357
- fix(agent): exclude disabled FAQ entries by @lyingbug in #2392
- fix(mcp-server): pin MCP Python SDK to v1.x by @lyingbug in #2395
- Redesign upload confirmation dialog by @lyingbug in #2397
- ci(mcp-server): remove duplicate workflow.yml (superseded by mcp-server.yml) by @annopick in #2398
- fix(knowledge): support local HTML file uploads by @BigFishDreamWater in #2393
- fix(session): include external users in API session group by @lyingbug in #2405
- fix(organization): pass avatar when creating shared space by @hiasky in #2408
- feat(knowledge): add batch tag dialog for selected documents by @hiasky in #2406
- fix: harden shared agent source permissions by @lyingbug in #2417
- ci: add PR checks for app, frontend, and DocReader by @lyingbug in #2416
- fix(mcp-server): migrate to MCPServer high-level API (mcp 2.x) [v1.1.0] by @annopick in #2420
- fix(docparser): normalize PaddleOCR-VL Cloud HTML tables by @zldkr in #2419
- test(ci): stabilize MCP session test and decouple frontend checks by @lyingbug in #2424
- fix(mcp): 修复非 UUID Agent ID 无法解析的问题 by @ZhuangShiHao1207 in #2422
- fix(sessions): 放行 embed 运行时读取自身会话,修复追问建议 500 与刷新丢对话 by @asmh1989 in #2421
- fix(frontend): resolve i18n @ syntax errors and TDesign drawer warnings by @lyingbug in #2426
- fix: preserve wiki folder path after creation by @ttommybot in #2429
- fix(sqlite): filter vector candidates before top-k by @BigFishDreamWater in #2440
- fix: 修复 SQLite 下删除 DataSource 失败 by @yuefanxiao in #2435
- fix(evaluation): use sync passage indexing to fix always-zero retrieval metrics by @lazyayuan in #2359
- fix(frontend): 编辑保存后自动关闭编辑器,创建后引导继续配置 by @lyingbug in #2448
- fix(frontend): restore audit and KB activity i18n after locale prune by @lyingbug in #2449
- fix(frontend): route embed protected images through channel file proxy by @lyingbug in #2454
- fix(knowledge): allow xlsx in URL import (#2447) by @lyingbug in #2452
- fix(chat): segment Chinese query expansions with jieba by @BigFishDreamWater in #2463
- fix(knowledge): surface batch reparse failures by @Myang-print in #2453
- fix(rerank): batch LKEAP requests within API limits by @BigFishDreamWater in #2501
- fix(chat): keep attachment upload status reactive by @jacentsao in #2498
- fix(rerank): normalize NVIDIA logit scores by @BigFishDreamWater in #2496
- fix(rerank): preserve code and math passages by @BigFishDreamWater in #2495
- fix: count skipped stages in parsing progress by @ttommybot in #2500
- fix(docparser): preserve MinerU automatic PDF parsing by @oscarlius in #2493
- feat(mcp-server): add list_shared_knowledge_bases tool by @FincherYuan in #2497
- fix: exclude archived wiki pages from lint cursor by @quan020406 in #2503
- fix(knowledge): clear stale error_message on reprocessing and finalize by @oscarlius in #2488
- fix(knowledge): clear stale error_message on the remaining reprocess paths by @lyingbug in #2506
- fix: unify organization settings modal scrolling by @ttommybot in #2508
- fix: show answer generation status after retrieval by @ttommybot in #2514
- fix(embedding): prevent ants worker panic and mutex deadlock on empty/mismatched results by @qfzc in #2520
- feat(knowledge): folder tree sidebar, folder path storage, and document re-filing by @lyingbug in #2528
- fix(frontend): restore runtime queue i18n and guard against prune by @lyingbug in #2529
- fix(chat): preserve retrieval results during embedding failures by @KKtwo in #2525
- perf(container): batch legacy storage alias lookup at startup by @lyingbug in #2530
- feat(storage): support AWS S3 NoAk default credentials by @qilifan in #2008
- fix(summary): preserve rows across table chunks by @BigFishDreamWater in #2538
- feat(api): resource_urls=public for directly loadable file URLs by @lyingbug in #2531
- fix(chunking): align preview with parent-child splitting by @BigFishDreamWater in #2539
- fix(wiki): ensure prompt language is always resolved by @lyingbug in #2543
- fix(chunking): sync preview swagger and normalize splitter config by @lyingbug in #2541
- fix(faq): prevent duplicate entries when a create is retried by @lyingbug in #2544
- Improve Wiki reader layout and revision history UX by @lyingbug in #2547
- fix(chunking): normalize line endings before splitting by @BigFishDreamWater in #2546
- feat(mcp-server): add create_knowledge_from_text tool by @01luyicheng in #2532
- fix: retry document summaries before fallback by @ttommybot in #2505
- fix: replace all exact wiki text matches by @quan020406 in #2516
- feat(im): add markdown replies for QQBot #2461 by @YS-zdck in #2483
- chore(deps): bump the cli-deps group in /cli with 3 updates by @dependabot[bot] in #2481
- feat(feishu-driver): 新增飞书云盘数据源 by @Greenplumwine in #2466
- fix(wiki): exclude archived pages from stats queries by @pengpengyi92 in #2549
- fix(im/wecom): resolve longconn deadlock between closeConn and heartbeatLoop by @yangcongcong-coding in #2551
- fix(chunks): 恢复未编辑分块的按位置合并 by @mdrkrg in #2555
- fix(im/wecom): scope connection close to its own generation by @lyingbug in #2557
- fix(chunks): 受信任分块按精确位置裁剪重叠 by @lyingbug in #2556
- fix(docs): correct @router path annotations for agent-chat and knowledge-chat by @qfzc in #2561
- fix(chunks): 流水线重写后的检索结果不用位置匹配 by @mdrkrg in #2558
- docs: add comprehensive WeKnora documentation by @lyingbug in #2350
- docs: 部署步骤增加 docker compose pull,防止复用缓存的旧镜像 by @WHUTcjh-2024 in #2567
- docs: 补全 docker compose pull 部署与升级说明 by @lyingbug in #2570
- Revert "docs: 补全 docker compose pull 部署与升级说明" by @lyingbug in #2571
- Revert "docs: add comprehensive WeKnora documentation" by @lyingbug in #2572
- update website docs by @lyingbug in #2573
- docs: complete docker compose pull guidance across deployment docs by @lyingbug in #2574
- docs(website): add official site link and inject VERSION at build time by @lyingbug in #2576
- fix(auth): do not sanitize registration password before hashing by @jiahao6635 in #2568
- docs(release): prepare v0.7.2 release notes and version bump by @lyingbug in #2585
New Contributors
- @BigFishDreamWater made their first contribution in #2329
- @koishi514-Z made their first contribution in #2318
- @mdrkrg made their first contribution in #2319
- @FincherYuan made their first contribution in #2375
- @annopick made their first contribution in #2371
- @WHUTcjh-2024 made their first contribution in #2314
- @zldkr made their first contribution in #2419
- @ZhuangShiHao1207 made their first contribution in #2422
- @asmh1989 made their first contribution in #2421
- @lazyayuan made their first contribution in #2359
- @Myang-print made their first contribution in #2453
- @oscarlius made their first contribution in #2493
- @quan020406 made their first contribution in #2503
- @qfzc made their first contribution in #2520
- @01luyicheng made their first contribution in #2532
- @pengpengyi92 made their first contribution in #2549
- @jiahao6635 made their first contribution in #2568
Full Changelog: v0.7.1...v0.7.2