Repository navigation
feat(memory): add lancedb semantic backend - #630
Conversation
Add a LanceDB-backed semantic memory backend with persisted schema metadata, config wiring, and fail-closed schema guards for drifted or unversioned vector tables. Verification: - uv run pytest tests/coding_agent/test_memory_index_backend_contract.py tests/coding_agent/test_semantic_tape_index.py tests/coding_agent/test_semantic_sync.py tests/coding_agent/test_semantic_recall.py tests/coding_agent/test_memory_switch.py -q - uv run ruff format --check src/coding_agent/core/app.py src/coding_agent/topics/semantic_backends tests/coding_agent/test_memory_index_backend_contract.py tests/coding_agent/test_memory_switch.py && uv run ruff check src/coding_agent/core/app.py src/coding_agent/topics/semantic_backends tests/coding_agent/test_memory_index_backend_contract.py tests/coding_agent/test_memory_switch.py - uv run pytest -q
|
Caution Review failedPull request was closed or merged during review 📝 WalkthroughWalkthroughSemantic memory configuration now carries LanceDB storage and embedding settings, the registry builds backends from expanded factory config, and a new LanceDB-backed semantic memory implementation is added with contract coverage and integration tests. ChangesSemantic memory LanceDB backend
Estimated code review effort🎯 4 (Complex) | ⏱️ ~60 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Summary
[memory.semantic] backend = "lancedb"withdb_path,table_name, andembedding_base_urlVerification
uv run pytest tests/coding_agent/test_memory_index_backend_contract.py tests/coding_agent/test_semantic_tape_index.py tests/coding_agent/test_semantic_sync.py tests/coding_agent/test_semantic_recall.py tests/coding_agent/test_memory_switch.py -q-> 96 passeduv run ruff format --check src/coding_agent/core/app.py src/coding_agent/topics/semantic_backends tests/coding_agent/test_memory_index_backend_contract.py tests/coding_agent/test_memory_switch.py && uv run ruff check src/coding_agent/core/app.py src/coding_agent/topics/semantic_backends tests/coding_agent/test_memory_index_backend_contract.py tests/coding_agent/test_memory_switch.py-> passeduv run pytest -q-> 3877 passed, 8 skipped, 20 xfailedNotes
AGENTS.mdreferencesRTK.mdandprompts/codex-delegatee.md, but those files are absent in this worktree; I followed the visible repository instructions and kept the change scoped to backend integration.Summary by CodeRabbit