What's Changed
- docs: 0.4.15 release blog post and changelog by @nicoloboschi in #477
- doc: update cookbook by @nicoloboschi in #479
- blog: add LiteLLM persistent memory post by @benfrank241 in #481
- doc: fix LiteLLM blog — OPINION → OBSERVATION, update title by @benfrank241 in #482
- cli: add linux-arm64 binary to release and CI by @nicoloboschi in #484
- fix: resolve all Dependabot security vulnerabilities by @nicoloboschi in #486
- doc: add ZeroEntropy reranker to models.md by @nicoloboschi in #489
- feat: webhook system with retain.completed event, UI, and docs by @nicoloboschi in #487
- fix: resolve TypeError when LLM returns invalid JSON across all retries by @nicoloboschi in #490
- Fix bank-level MCP tool filtering for FastMCP 3.x by @cdbartholomew in #491
- doc: add MCP blog post by @benfrank241 in #492
- perf: add GIN index on source_memory_ids for observation lookup by @nicoloboschi in #485
- fix: replace additive combined scoring with multiplicative CE boosts by @nicoloboschi in #494
- fix: cap uvicorn graceful shutdown at 5s and enable force-kill on double Ctrl+C by @nicoloboschi in #495
- fix: resolve chunks for observation results via source_memory_ids by @nicoloboschi in #496
- feat(openclaw): v2 recall/retention controls, scalability fixes, and Gemini safety settings by @mysteriousHerb in #480
- fix: use correct schema name in webhook outbox callback by @cdbartholomew in #499
- fix: run schema migrations in thread to prevent event loop deadlock by @nicoloboschi in #500
- doc: Give Your OpenAI App a Memory in 5 Minutes by @benfrank241 in #498
- fix: preserve None temporal fields for observations without source dates by @nicoloboschi in #501
New Contributors
- @mysteriousHerb made their first contribution in #480
Full Changelog: v0.4.15...v0.4.16