v3.4.0

MemPalace/mempalacev3.4.0Jun 6, 2026by igorls

AI Summary

Introduces pluggable vector backends (Qdrant, pgvector, sqlite_exact), Docker images, and a migration tool for legacy wing names.

Key Highlights

  • Pluggable vector backends (Qdrant, pgvector, sqlite_exact).
  • Docker images for CLI and MCP server.
  • `mempalace migrate-wings` for legacy wing name normalization.
  • Known-systems lexicon for atomic entity detection.

New Features

  • Pluggable vector backends
  • Docker images
  • Wing name migration tool
  • Known-systems lexicon

Full Release Notes

## v3.4.0 — pluggable backends, Docker, and reliability fixes

### Features
- **Pluggable vector backends** — Qdrant, pgvector, and sqlite_exact alongside the default ChromaDB, selectable via `MEMPALACE_BACKEND` / `--backend`.
- **Docker images** (CPU + GPU) for the MCP server and CLI.
- **`mempalace migrate-wings`** — one-time migration that normalizes legacy wing names (strip leading/trailing separators) so pre-upgrade palaces stay discoverable. See `docs/recovery/wing-name-migration.md`.
- **Known-systems lexicon** keeps multi-word product names atomic in entity detection.

### Fixes
- embeddinggemma (the default model) now works with ChromaDB 1.5.x — semantic search was silently failing on fresh installs.
- Prevent silent data loss from `drawer_id` hash collisions.
- Importing `mcp_server` no longer recreates `~/.mempalace` (respects the privacy kill-switch).
- `diary_write` accepts a `content` alias and restores the missing-parameter diagnostic.
- Explicit-vector backends handle single-document inputs correctly.

### Infrastructure
- PyPI publishing via GitHub Actions **Trusted Publishing** (OIDC), gated by manual approval.