memtrust-cli 0.3.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. memtrust/__init__.py +11 -0
  2. memtrust/adapters/__init__.py +62 -0
  3. memtrust/adapters/base.py +2020 -0
  4. memtrust/adapters/mem0_adapter.py +456 -0
  5. memtrust/adapters/mem0_direct_adapter.py +1217 -0
  6. memtrust/adapters/mempalace_adapter.py +1166 -0
  7. memtrust/adapters/openviking_adapter.py +570 -0
  8. memtrust/adapters/zep_graphiti_adapter.py +181 -0
  9. memtrust/adapters/zep_graphiti_selfhosted_adapter.py +882 -0
  10. memtrust/cli.py +1201 -0
  11. memtrust/evals/__init__.py +5 -0
  12. memtrust/evals/compression.py +235 -0
  13. memtrust/evals/contradiction.py +451 -0
  14. memtrust/evals/crash_recovery.py +290 -0
  15. memtrust/evals/embedder_cost.py +163 -0
  16. memtrust/evals/embedding_drift.py +273 -0
  17. memtrust/evals/episode_temporal_leak.py +182 -0
  18. memtrust/evals/extraction_quality.py +373 -0
  19. memtrust/evals/filter_injection.py +371 -0
  20. memtrust/evals/language_degradation.py +189 -0
  21. memtrust/evals/lock_contention.py +263 -0
  22. memtrust/evals/locomo.py +392 -0
  23. memtrust/evals/longmemeval.py +249 -0
  24. memtrust/evals/mempalace_metadata_scale.py +494 -0
  25. memtrust/evals/migration_rollback.py +276 -0
  26. memtrust/evals/orphan_cleanup.py +235 -0
  27. memtrust/evals/ranking_quality.py +303 -0
  28. memtrust/evals/resource_sync_safety.py +336 -0
  29. memtrust/evals/result_consistency.py +239 -0
  30. memtrust/evals/scale_fixtures.py +189 -0
  31. memtrust/evals/scale_stress.py +502 -0
  32. memtrust/evals/stats_accuracy.py +240 -0
  33. memtrust/evals/temporal_kg_boundary.py +281 -0
  34. memtrust/receipt.py +318 -0
  35. memtrust/scoring/__init__.py +1 -0
  36. memtrust/scoring/cost_tracker.py +199 -0
  37. memtrust/scoring/llm_judge.py +161 -0
  38. memtrust_cli-0.3.0.dist-info/METADATA +624 -0
  39. memtrust_cli-0.3.0.dist-info/RECORD +42 -0
  40. memtrust_cli-0.3.0.dist-info/WHEEL +4 -0
  41. memtrust_cli-0.3.0.dist-info/entry_points.txt +2 -0
  42. memtrust_cli-0.3.0.dist-info/licenses/LICENSE +202 -0
memtrust/__init__.py ADDED
@@ -0,0 +1,11 @@
1
+ """memtrust: an independent, reproducible benchmark harness for agent-memory backends."""
2
+
3
+ from importlib.metadata import PackageNotFoundError, version
4
+
5
+ try:
6
+ __version__ = version("memtrust")
7
+ except PackageNotFoundError:
8
+ # Not installed at all (e.g. importing directly from a raw source
9
+ # checkout with no `pip install -e .` run) -- there is no installed
10
+ # package metadata to read version() from in this case.
11
+ __version__ = "0.0.0+unknown"
@@ -0,0 +1,62 @@
1
+ """Backend adapters. Each module maps one vendor's real API/SDK shape onto
2
+ the shared MemoryBackendAdapter interface defined in base.py.
3
+ """
4
+
5
+ from memtrust.adapters.base import (
6
+ BackendAPIError,
7
+ BackendNotConfiguredError,
8
+ ConflictSignal,
9
+ DeleteResult,
10
+ MemoryBackendAdapter,
11
+ MemoryRecord,
12
+ QueryResult,
13
+ StoreResult,
14
+ UpdateResult,
15
+ )
16
+ from memtrust.adapters.mem0_adapter import Mem0Adapter, Mem0SelfHostedAdapter
17
+ from memtrust.adapters.mem0_direct_adapter import Mem0DirectAdapter
18
+ from memtrust.adapters.mempalace_adapter import MemPalaceAdapter
19
+ from memtrust.adapters.openviking_adapter import OpenVikingAdapter
20
+ from memtrust.adapters.zep_graphiti_adapter import ZepGraphitiAdapter
21
+ from memtrust.adapters.zep_graphiti_selfhosted_adapter import ZepGraphitiSelfHostedAdapter
22
+
23
+ #: Registry the CLI resolves --backends names against. Keys are the
24
+ #: user-facing backend names used on the command line.
25
+ #:
26
+ #: "mem0_selfhosted", "mem0_direct", and "graphiti_selfhosted" are
27
+ #: intentionally not part of cli.ALL_BACKENDS (the set "all" expands to) --
28
+ #: none targets a single hosted vendor API the way the other four do
29
+ #: ("mem0_selfhosted"/"graphiti_selfhosted" are self-run local
30
+ #: deployments, "mem0_direct" is a self-assembled in-process
31
+ #: embedder/vector-store stack), so all three are opt-in only, never
32
+ #: auto-included. See docs/methodology.md for their confidence levels.
33
+ ADAPTER_REGISTRY: dict[str, type[MemoryBackendAdapter]] = {
34
+ "mempalace": MemPalaceAdapter,
35
+ "mem0": Mem0Adapter,
36
+ "mem0_selfhosted": Mem0SelfHostedAdapter,
37
+ "mem0_direct": Mem0DirectAdapter,
38
+ "zep": ZepGraphitiAdapter,
39
+ "graphiti": ZepGraphitiAdapter,
40
+ "graphiti_selfhosted": ZepGraphitiSelfHostedAdapter,
41
+ "openviking": OpenVikingAdapter,
42
+ }
43
+
44
+ __all__ = [
45
+ "ADAPTER_REGISTRY",
46
+ "BackendAPIError",
47
+ "BackendNotConfiguredError",
48
+ "ConflictSignal",
49
+ "DeleteResult",
50
+ "MemoryBackendAdapter",
51
+ "MemoryRecord",
52
+ "QueryResult",
53
+ "StoreResult",
54
+ "UpdateResult",
55
+ "Mem0Adapter",
56
+ "Mem0SelfHostedAdapter",
57
+ "Mem0DirectAdapter",
58
+ "MemPalaceAdapter",
59
+ "OpenVikingAdapter",
60
+ "ZepGraphitiAdapter",
61
+ "ZepGraphitiSelfHostedAdapter",
62
+ ]