test: expand coverage from 20 to 92 tests, migrate to uv

- Migrate from setuptools to hatchling build backend
- Add dependency-groups (PEP 735) for dev tooling (pytest, ruff)
- Remove redundant requirements.txt in favor of uv.lock
- Fix __version__ mismatch (2.0.0 -> 3.0.0 to match pyproject.toml)

New test files:
- conftest.py: shared fixtures (isolated palace, KG, ChromaDB collection)
- test_knowledge_graph.py: 17 tests (entity CRUD, temporal queries, timeline)
- test_mcp_server.py: 25 tests (protocol dispatch, read/write/KG/diary tools)
- test_searcher.py: 7 tests (search_memories API, filters, error handling)
- test_dialect.py: 13 tests (AAAK compression, entity/emotion detection, zettel encoding)

All 92 tests pass on Python 3.13 with chromadb 0.6.3.
This commit is contained in:
Igor Lins e Silva
2026-04-07 17:07:02 -03:00
parent 0b0e123f42
commit 72c548b729
8 changed files with 3943 additions and 11 deletions
+9 -9
View File
@@ -1,7 +1,3 @@
[build-system]
requires = ["setuptools>=64"]
build-backend = "setuptools.build_meta"
[project]
name = "mempalace"
version = "3.0.0"
@@ -38,14 +34,18 @@ Homepage = "https://github.com/milla-jovovich/mempalace"
Repository = "https://github.com/milla-jovovich/mempalace"
"Bug Tracker" = "https://github.com/milla-jovovich/mempalace/issues"
[tool.setuptools.packages.find]
include = ["mempalace*"]
[project.scripts]
mempalace = "mempalace:main"
[project.optional-dependencies]
dev = ["pytest>=7.0", "build>=1.0", "twine>=4.0"]
[dependency-groups]
dev = ["pytest>=7.0", "ruff>=0.4.0"]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.build.targets.wheel]
packages = ["mempalace"]
[tool.ruff]
line-length = 100