smartmemory-core 0.8.0__tar.gz → 0.9.0__tar.gz

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 (581) hide show
  1. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/PKG-INFO +66 -23
  2. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/README.md +57 -14
  3. smartmemory_core-0.9.0/VERSION +1 -0
  4. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/config.json +12 -25
  5. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/pyproject.toml +13 -7
  6. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/scripts/migrate_claude_memory.py +1 -1
  7. smartmemory_core-0.9.0/smartmemory/activation/__init__.py +52 -0
  8. smartmemory_core-0.9.0/smartmemory/activation/boost.py +303 -0
  9. smartmemory_core-0.9.0/smartmemory/activation/compaction.py +483 -0
  10. smartmemory_core-0.9.0/smartmemory/activation/compaction_constants.py +69 -0
  11. smartmemory_core-0.9.0/smartmemory/activation/constants.py +91 -0
  12. smartmemory_core-0.9.0/smartmemory/activation/decay_sweep.py +421 -0
  13. smartmemory_core-0.9.0/smartmemory/activation/migration.py +134 -0
  14. smartmemory_core-0.9.0/smartmemory/activation/score.py +131 -0
  15. smartmemory_core-0.9.0/smartmemory/activation/summarize.py +103 -0
  16. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/anchors/manager.py +33 -1
  17. smartmemory_core-0.9.0/smartmemory/anchors/queries.py +271 -0
  18. smartmemory_core-0.9.0/smartmemory/backends/__init__.py +8 -0
  19. smartmemory_core-0.9.0/smartmemory/backends/unsupported.py +72 -0
  20. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/cli.py +80 -2
  21. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/clustering/deduplicator.py +1 -1
  22. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/clustering/llm.py +1 -1
  23. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/configuration/__init__.py +1 -1
  24. smartmemory_core-0.9.0/smartmemory/configuration/graph_name.py +127 -0
  25. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/configuration/validator.py +1 -1
  26. smartmemory_core-0.9.0/smartmemory/conversation/bulk_ingest.py +344 -0
  27. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/data/seed_patterns.jsonl +15 -0
  28. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/registry.py +78 -19
  29. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/extraction/extractor.py +1 -1
  30. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/backends/__init__.py +4 -0
  31. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/backends/async_falkordb.py +38 -16
  32. smartmemory_core-0.9.0/smartmemory/graph/backends/async_sqlite.py +38 -0
  33. smartmemory_core-0.9.0/smartmemory/graph/backends/codec.py +177 -0
  34. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/backends/falkordb.py +1073 -90
  35. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/backends/sqlite.py +95 -0
  36. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/core/search.py +78 -18
  37. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/models/node_types.py +17 -2
  38. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/models/schema_validator.py +20 -1
  39. smartmemory_core-0.9.0/smartmemory/graph/ontology_graph.py +2763 -0
  40. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/smartgraph.py +156 -30
  41. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/miner.py +9 -1
  42. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/schemas.py +1 -1
  43. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/sparql_client.py +13 -0
  44. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/llm/llm_client.py +152 -14
  45. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/interfaces.py +44 -0
  46. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/managers/debug.py +7 -15
  47. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/managers/evolution.py +3 -8
  48. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/base.py +25 -2
  49. smartmemory_core-0.9.0/smartmemory/memory/ingestion/document_loaders.py +219 -0
  50. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/enrichment.py +43 -2
  51. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/extraction.py +3 -1
  52. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/handlers/anchor.py +12 -0
  53. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/handlers/code_entity.py +23 -0
  54. smartmemory_core-0.9.0/smartmemory/memory/ingestion/handlers/conversation.py +77 -0
  55. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/handlers/conversation_turn.py +14 -0
  56. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/handlers/decision.py +18 -0
  57. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/handlers/document.py +26 -0
  58. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/handlers/hook_capture.py +12 -0
  59. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/handlers/plan.py +15 -0
  60. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/handlers/plan_task.py +15 -0
  61. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/handlers/seed_item.py +11 -0
  62. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/handlers/tool_call.py +14 -0
  63. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/observer.py +9 -8
  64. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/registry.py +1 -1
  65. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/storage.py +2 -2
  66. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/structured.py +16 -0
  67. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/utils.py +95 -1
  68. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/memory_factory.py +14 -8
  69. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/migrate.py +15 -15
  70. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/classification.py +1 -1
  71. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/config.py +6 -1
  72. smartmemory_core-0.9.0/smartmemory/memory/pipeline/enrichment.py +342 -0
  73. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/extractor.py +26 -20
  74. smartmemory_core-0.9.0/smartmemory/memory/pipeline/grounding.py +429 -0
  75. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/input_adapter.py +7 -0
  76. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/linking.py +9 -9
  77. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/clustering.py +1 -1
  78. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/coreference.py +9 -0
  79. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/crud.py +24 -6
  80. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/enrichment.py +46 -21
  81. smartmemory_core-0.9.0/smartmemory/memory/pipeline/stages/evolution.py +144 -0
  82. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/linking.py +17 -4
  83. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/monitoring.py +18 -6
  84. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/search.py +3 -3
  85. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/types/episodic_memory.py +2 -0
  86. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/types/factory_memory_creator.py +5 -5
  87. smartmemory_core-0.9.0/smartmemory/memory/types/pending_memory.py +48 -0
  88. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/types/zettel_extensions.py +16 -5
  89. smartmemory_core-0.9.0/smartmemory/migrations/__init__.py +8 -0
  90. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/link_types.py +1 -0
  91. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/memory_item.py +7 -1
  92. smartmemory_core-0.9.0/smartmemory/models/snapshot.py +214 -0
  93. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/observability/events.py +7 -9
  94. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/observability/retrieval_tracking.py +92 -1
  95. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/observability/tracing.py +76 -0
  96. smartmemory_core-0.9.0/smartmemory/ontology/blocklist.py +62 -0
  97. smartmemory_core-0.9.0/smartmemory/ontology/evidence_store.py +164 -0
  98. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/in_memory_store.py +2 -6
  99. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/inference/inference.py +235 -24
  100. smartmemory_core-0.9.0/smartmemory/ontology/layers.py +193 -0
  101. smartmemory_core-0.9.0/smartmemory/ontology/observations.py +36 -0
  102. smartmemory_core-0.9.0/smartmemory/ontology/observers.py +170 -0
  103. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/pattern_manager.py +1 -1
  104. smartmemory_core-0.9.0/smartmemory/ontology/promoter.py +235 -0
  105. smartmemory_core-0.9.0/smartmemory/ontology/promotion.py +23 -0
  106. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/reasoning_validator.py +5 -1
  107. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/registry.py +4 -1
  108. smartmemory_core-0.9.0/smartmemory/ontology/scoring.py +86 -0
  109. smartmemory_core-0.9.0/smartmemory/ontology/service.py +1502 -0
  110. smartmemory_core-0.9.0/smartmemory/ontology/sqlite_store.py +1214 -0
  111. smartmemory_core-0.9.0/smartmemory/ontology/tiers.py +77 -0
  112. smartmemory_core-0.9.0/smartmemory/ontology/types.py +160 -0
  113. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/config.py +98 -0
  114. smartmemory_core-0.9.0/smartmemory/pipeline/dag.py +84 -0
  115. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/metrics_consumer.py +126 -0
  116. smartmemory_core-0.9.0/smartmemory/pipeline/router.py +61 -0
  117. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/runner.py +55 -0
  118. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/__init__.py +3 -0
  119. smartmemory_core-0.9.0/smartmemory/pipeline/stages/alias_link.py +179 -0
  120. smartmemory_core-0.9.0/smartmemory/pipeline/stages/consolidation_router.py +150 -0
  121. smartmemory_core-0.9.0/smartmemory/pipeline/stages/discoverability.py +203 -0
  122. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/link.py +1 -1
  123. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/llm_extract.py +125 -2
  124. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/ontology_constrain.py +252 -18
  125. smartmemory_core-0.9.0/smartmemory/pipeline/stages/store.py +505 -0
  126. smartmemory_core-0.9.0/smartmemory/pipeline/stages/supersede.py +258 -0
  127. smartmemory_core-0.9.0/smartmemory/pipeline/stages/temporal_resolve.py +210 -0
  128. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/state.py +12 -0
  129. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plans/failure_journal.py +29 -8
  130. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plans/queries.py +68 -8
  131. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/base.py +29 -4
  132. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/embedding.py +59 -11
  133. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/enrichers/basic.py +28 -5
  134. smartmemory_core-0.9.0/smartmemory/plugins/evolvers/__init__.py +71 -0
  135. smartmemory_core-0.9.0/smartmemory/plugins/evolvers/anchor_reconciliation.py +331 -0
  136. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/evolvers/decision_confidence.py +99 -62
  137. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/evolvers/enhanced/exponential_decay.py +23 -11
  138. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/evolvers/enhanced/hebbian_co_retrieval.py +22 -17
  139. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/evolvers/enhanced/interference_based_consolidation.py +25 -7
  140. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/evolvers/enhanced/retrieval_based_strengthening.py +46 -15
  141. smartmemory_core-0.9.0/smartmemory/plugins/evolvers/enhanced/working_to_episodic.py +268 -0
  142. smartmemory_core-0.9.0/smartmemory/plugins/evolvers/episodic_decay.py +126 -0
  143. smartmemory_core-0.9.0/smartmemory/plugins/evolvers/episodic_to_semantic.py +178 -0
  144. smartmemory_core-0.9.0/smartmemory/plugins/evolvers/episodic_to_zettel.py +133 -0
  145. smartmemory_core-0.9.0/smartmemory/plugins/evolvers/memory_consolidation.py +404 -0
  146. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/evolvers/observation_synthesis.py +140 -152
  147. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/evolvers/opinion_reinforcement.py +85 -55
  148. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/evolvers/opinion_synthesis.py +67 -47
  149. smartmemory_core-0.9.0/smartmemory/plugins/evolvers/procedural_reinforcement.py +211 -0
  150. smartmemory_core-0.9.0/smartmemory/plugins/evolvers/qa_heuristic.py +99 -0
  151. smartmemory_core-0.9.0/smartmemory/plugins/evolvers/resolution_chain.py +360 -0
  152. smartmemory_core-0.9.0/smartmemory/plugins/evolvers/result.py +55 -0
  153. smartmemory_core-0.9.0/smartmemory/plugins/evolvers/semantic_decay.py +111 -0
  154. smartmemory_core-0.9.0/smartmemory/plugins/evolvers/semantic_to_procedural.py +266 -0
  155. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/evolvers/stale_memory.py +19 -4
  156. smartmemory_core-0.9.0/smartmemory/plugins/evolvers/zettel_prune.py +229 -0
  157. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/extractors/llm.py +59 -24
  158. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/extractors/llm_single.py +27 -9
  159. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/manager.py +5 -4
  160. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/procedures/pattern_detector.py +1 -1
  161. smartmemory_core-0.9.0/smartmemory/progress/__init__.py +279 -0
  162. smartmemory_core-0.9.0/smartmemory/progress/event.py +86 -0
  163. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/detection/embedding.py +2 -0
  164. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/detection/graph.py +3 -0
  165. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/detection/heuristic.py +2 -0
  166. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/detection/llm.py +4 -1
  167. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/reasoner.py +3 -3
  168. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/relations/schema.py +9 -2
  169. smartmemory_core-0.9.0/smartmemory/search/attention_fusion.py +155 -0
  170. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/search/channels.py +1 -0
  171. smartmemory_core-0.9.0/smartmemory/search/entity_resolve.py +378 -0
  172. smartmemory_core-0.9.0/smartmemory/search/multi_hop.py +626 -0
  173. smartmemory_core-0.9.0/smartmemory/search/ppr.py +197 -0
  174. smartmemory_core-0.9.0/smartmemory/search/ppr_cache.py +160 -0
  175. smartmemory_core-0.9.0/smartmemory/search/rerank.py +324 -0
  176. smartmemory_core-0.9.0/smartmemory/search/spreading_activation.py +129 -0
  177. smartmemory_core-0.9.0/smartmemory/search/surfacing_router.py +212 -0
  178. smartmemory_core-0.9.0/smartmemory/session/__init__.py +25 -0
  179. smartmemory_core-0.9.0/smartmemory/session/constants.py +13 -0
  180. smartmemory_core-0.9.0/smartmemory/session/pins.py +174 -0
  181. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/smart_memory.py +1698 -179
  182. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/ontology/falkordb.py +115 -3
  183. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/vector/backends/falkor.py +65 -14
  184. smartmemory_core-0.9.0/smartmemory/summary/__init__.py +17 -0
  185. smartmemory_core-0.9.0/smartmemory/summary/composer.py +268 -0
  186. smartmemory_core-0.9.0/smartmemory/summary/delta.py +102 -0
  187. smartmemory_core-0.9.0/smartmemory/summary/queries.py +231 -0
  188. smartmemory_core-0.9.0/smartmemory/summary/renderer.py +125 -0
  189. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/temporal/version_tracker.py +3 -0
  190. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/tools/factory.py +72 -0
  191. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/cache.py +41 -1
  192. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/chunking.py +6 -6
  193. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/llm.py +126 -70
  194. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/llm_client/dspy.py +2 -2
  195. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/llm_client/openai.py +1 -1
  196. smartmemory_core-0.9.0/smartmemory/utils/llm_client/openai_chat.py +149 -0
  197. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/token_tracking.py +1 -2
  198. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory_core.egg-info/SOURCES.txt +62 -3
  199. smartmemory_core-0.8.0/VERSION +0 -1
  200. smartmemory_core-0.8.0/smartmemory/anchors/queries.py +0 -139
  201. smartmemory_core-0.8.0/smartmemory/graph/ontology_graph.py +0 -782
  202. smartmemory_core-0.8.0/smartmemory/memory/pipeline/enrichment.py +0 -295
  203. smartmemory_core-0.8.0/smartmemory/memory/pipeline/grounding.py +0 -194
  204. smartmemory_core-0.8.0/smartmemory/memory/pipeline/stages/evolution.py +0 -272
  205. smartmemory_core-0.8.0/smartmemory/memory/types/working_memory.py +0 -179
  206. smartmemory_core-0.8.0/smartmemory/ontology/promotion.py +0 -324
  207. smartmemory_core-0.8.0/smartmemory/ontology/sqlite_store.py +0 -430
  208. smartmemory_core-0.8.0/smartmemory/pipeline/stages/store.py +0 -293
  209. smartmemory_core-0.8.0/smartmemory/plugins/evolvers/__init__.py +0 -61
  210. smartmemory_core-0.8.0/smartmemory/plugins/evolvers/enhanced/working_to_episodic.py +0 -195
  211. smartmemory_core-0.8.0/smartmemory/plugins/evolvers/episodic_decay.py +0 -53
  212. smartmemory_core-0.8.0/smartmemory/plugins/evolvers/episodic_to_semantic.py +0 -62
  213. smartmemory_core-0.8.0/smartmemory/plugins/evolvers/episodic_to_zettel.py +0 -58
  214. smartmemory_core-0.8.0/smartmemory/plugins/evolvers/semantic_decay.py +0 -53
  215. smartmemory_core-0.8.0/smartmemory/plugins/evolvers/working_to_episodic.py +0 -96
  216. smartmemory_core-0.8.0/smartmemory/plugins/evolvers/working_to_procedural.py +0 -330
  217. smartmemory_core-0.8.0/smartmemory/plugins/evolvers/zettel_prune.py +0 -113
  218. smartmemory_core-0.8.0/smartmemory/utils/llm_client/openai_chat.py +0 -71
  219. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/.env.example +0 -0
  220. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/CLA.md +0 -0
  221. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/LICENSE +0 -0
  222. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/LICENSE.agpl-v3 +0 -0
  223. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/LICENSE.header +0 -0
  224. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/MANIFEST.in +0 -0
  225. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/scripts/add_license_headers.py +0 -0
  226. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/scripts/migrate_agent_type.py +0 -0
  227. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/setup.cfg +0 -0
  228. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/__init__.py +0 -0
  229. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/__version__.py +0 -0
  230. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/anchors/__init__.py +0 -0
  231. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/anchors/drift.py +0 -0
  232. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/anchors/models.py +0 -0
  233. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/background/__init__.py +0 -0
  234. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/background/extraction_worker.py +0 -0
  235. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/background/id_resolver.py +0 -0
  236. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/batch.py +0 -0
  237. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/clear_all.py +0 -0
  238. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/clustering/__init__.py +0 -0
  239. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/clustering/embedding.py +0 -0
  240. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/clustering/global_cluster.py +0 -0
  241. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/clustering/graph_aggregator.py +0 -0
  242. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/code/__init__.py +0 -0
  243. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/code/indexer.py +0 -0
  244. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/code/models.py +0 -0
  245. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/code/parser.py +0 -0
  246. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/code/search.py +0 -0
  247. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/code/ts_parser.py +0 -0
  248. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/configuration/environment.py +0 -0
  249. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/configuration/loader.py +0 -0
  250. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/configuration/manager.py +0 -0
  251. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/configuration/models.py +0 -0
  252. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/conversation/__init__.py +0 -0
  253. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/conversation/context.py +0 -0
  254. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/conversation/manager.py +0 -0
  255. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/conversation/session.py +0 -0
  256. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/corpus/__init__.py +0 -0
  257. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/corpus/exporter.py +0 -0
  258. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/corpus/format.py +0 -0
  259. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/corpus/importer.py +0 -0
  260. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/corpus/pack.py +0 -0
  261. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/corpus/reader.py +0 -0
  262. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/corpus/rebel.py +0 -0
  263. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/corpus/registry.py +0 -0
  264. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/corpus/triplet_parser.py +0 -0
  265. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/corpus/writer.py +0 -0
  266. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/data/__init__.py +0 -0
  267. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/data/public_knowledge/__init__.py +0 -0
  268. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/decisions/__init__.py +0 -0
  269. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/decisions/manager.py +0 -0
  270. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/decisions/queries.py +0 -0
  271. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/drift_detector.py +0 -0
  272. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evaluation/__init__.py +0 -0
  273. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evaluation/cli.py +0 -0
  274. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evaluation/dataset.py +0 -0
  275. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evaluation/judge.py +0 -0
  276. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evaluation/metrics.py +0 -0
  277. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evaluation/report.py +0 -0
  278. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evaluation/runner.py +0 -0
  279. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/__init__.py +0 -0
  280. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/batcher.py +0 -0
  281. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/cycle.py +0 -0
  282. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/diff_engine.py +0 -0
  283. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/events.py +0 -0
  284. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/flow.py +0 -0
  285. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/models.py +0 -0
  286. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/queue.py +0 -0
  287. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/router.py +0 -0
  288. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/store.py +0 -0
  289. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/tracker.py +0 -0
  290. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/utilities.py +0 -0
  291. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/worker.py +0 -0
  292. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/extraction/__init__.py +0 -0
  293. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/extraction/models.py +0 -0
  294. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/feedback/__init__.py +0 -0
  295. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/feedback/agentic_improvement.py +0 -0
  296. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/feedback/agentic_routines.py +0 -0
  297. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/feedback/cli.py +0 -0
  298. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/feedback/manager.py +0 -0
  299. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/feedback/slack.py +0 -0
  300. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/__init__.py +0 -0
  301. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/algos.py +0 -0
  302. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/analytics/__init__.py +0 -0
  303. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/analytics/edge.py +0 -0
  304. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/analytics/episodes.py +0 -0
  305. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/analytics/export.py +0 -0
  306. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/analytics/prune.py +0 -0
  307. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/analytics/temporal.py +0 -0
  308. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/backends/async_backend.py +0 -0
  309. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/backends/backend.py +0 -0
  310. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/backends/queries.py +0 -0
  311. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/base.py +0 -0
  312. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/compute.py +0 -0
  313. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/core/__init__.py +0 -0
  314. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/core/edges.py +0 -0
  315. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/core/memory_path.py +0 -0
  316. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/core/nodes.py +0 -0
  317. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/cypher_algos.py +0 -0
  318. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/indexes.py +0 -0
  319. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/models/__init__.py +0 -0
  320. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/models/canonical_types.py +0 -0
  321. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/networkx_algos.py +0 -0
  322. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/types/__init__.py +0 -0
  323. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/types/episodic.py +0 -0
  324. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/types/interfaces.py +0 -0
  325. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/types/procedural.py +0 -0
  326. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/types/semantic.py +0 -0
  327. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/types/zettel.py +0 -0
  328. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/__init__.py +0 -0
  329. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/benchmark.py +0 -0
  330. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/executors.py +0 -0
  331. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/falkordb_store.py +0 -0
  332. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/models.py +0 -0
  333. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/public_knowledge_grounder.py +0 -0
  334. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/registry.py +0 -0
  335. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/snapshot.py +0 -0
  336. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/sqlite_store.py +0 -0
  337. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/store.py +0 -0
  338. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/type_map.py +0 -0
  339. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/inference/__init__.py +0 -0
  340. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/inference/engine.py +0 -0
  341. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/inference/rules.py +0 -0
  342. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/__init__.py +0 -0
  343. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/archive/archive_provider.py +0 -0
  344. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/chat/__init__.py +0 -0
  345. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/chat/hitl.py +0 -0
  346. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/chat/integration.py +0 -0
  347. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/llm/__init__.py +0 -0
  348. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/llm/prompts/__init__.py +0 -0
  349. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/llm/prompts/prompt_manager.py +0 -0
  350. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/llm/prompts/prompt_provider.py +0 -0
  351. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/llm/prompts/prompts.json +0 -0
  352. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/llm/prompts/prompts_loader.py +0 -0
  353. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/llm/providers.py +0 -0
  354. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/llm/response_parser.py +0 -0
  355. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/wikipedia_client.py +0 -0
  356. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/managers/__init__.py +0 -0
  357. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/managers/enrichment.py +0 -0
  358. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/managers/monitoring.py +0 -0
  359. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/__init__.py +0 -0
  360. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/canonical_store.py +0 -0
  361. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/context_types.py +0 -0
  362. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/__init__.py +0 -0
  363. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/flow.py +0 -0
  364. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/grounding.py +0 -0
  365. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/handlers/__init__.py +0 -0
  366. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/mixins.py +0 -0
  367. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/models/__init__.py +0 -0
  368. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/models/memory_item.py +0 -0
  369. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/__init__.py +0 -0
  370. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/components.py +0 -0
  371. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/plugin_base.py +0 -0
  372. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/__init__.py +0 -0
  373. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/analytics.py +0 -0
  374. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/graph_operations.py +0 -0
  375. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/grounding.py +0 -0
  376. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/personalization.py +0 -0
  377. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/validation.py +0 -0
  378. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/state.py +0 -0
  379. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/storage.py +0 -0
  380. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/transactions/__init__.py +0 -0
  381. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/transactions/change_set.py +0 -0
  382. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/transactions/ops.py +0 -0
  383. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/transactions/transaction.py +0 -0
  384. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/types/__init__.py +0 -0
  385. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/types/procedural_memory.py +0 -0
  386. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/types/semantic_memory.py +0 -0
  387. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/types/wikilink_parser.py +0 -0
  388. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/types/zettel_memory.py +0 -0
  389. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/utils.py +0 -0
  390. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/metrics/__init__.py +0 -0
  391. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/metrics/graph_health.py +0 -0
  392. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/__init__.py +0 -0
  393. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/base.py +0 -0
  394. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/compat/__init__.py +0 -0
  395. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/compat/boundary_converter.py +0 -0
  396. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/compat/dataclass_model.py +0 -0
  397. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/compat/simple_boundary.py +0 -0
  398. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/concept.py +0 -0
  399. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/conditional_step.py +0 -0
  400. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/corpus.py +0 -0
  401. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/decision.py +0 -0
  402. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/drift_event.py +0 -0
  403. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/entity.py +0 -0
  404. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/entity_types.py +0 -0
  405. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/ingestion_strategy.py +0 -0
  406. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/library.py +0 -0
  407. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/note.py +0 -0
  408. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/ontology.py +0 -0
  409. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/opinion.py +0 -0
  410. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/procedure.py +0 -0
  411. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/reasoning.py +0 -0
  412. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/schema_snapshot.py +0 -0
  413. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/status.py +0 -0
  414. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/step.py +0 -0
  415. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/tag.py +0 -0
  416. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/user_model.py +0 -0
  417. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/observability/__init__.py +0 -0
  418. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/observability/instrumentation.py +0 -0
  419. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/observability/json_formatter.py +0 -0
  420. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/observability/logging_filter.py +0 -0
  421. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/__init__.py +0 -0
  422. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/entity_pair_cache.py +0 -0
  423. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/falkordb_pattern_store.py +0 -0
  424. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/governance.py +0 -0
  425. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/governance_manager.py +0 -0
  426. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/hitl/__init__.py +0 -0
  427. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/hitl/hitl_interface.py +0 -0
  428. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/inference/__init__.py +0 -0
  429. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/inference/ontogpt.py +0 -0
  430. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/ir_models.py +0 -0
  431. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/layered.py +0 -0
  432. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/llm_manager.py +0 -0
  433. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/manager.py +0 -0
  434. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/models.py +0 -0
  435. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/template_service.py +0 -0
  436. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/templates/_manifest.json +0 -0
  437. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/templates/business.json +0 -0
  438. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/templates/general.json +0 -0
  439. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/templates/software.json +0 -0
  440. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/origin_policy.py +0 -0
  441. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/__init__.py +0 -0
  442. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/model_router.py +0 -0
  443. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/protocol.py +0 -0
  444. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/classify.py +0 -0
  445. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/compact.py +0 -0
  446. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/coreference.py +0 -0
  447. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/enrich.py +0 -0
  448. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/entity_ruler.py +0 -0
  449. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/evolve.py +0 -0
  450. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/ground.py +0 -0
  451. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/reasoning_detect.py +0 -0
  452. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/simplify.py +0 -0
  453. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/token_tracker.py +0 -0
  454. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/trajectory.py +0 -0
  455. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/transport/__init__.py +0 -0
  456. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/transport/event_bus.py +0 -0
  457. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plans/__init__.py +0 -0
  458. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plans/manager.py +0 -0
  459. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/__init__.py +0 -0
  460. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/enrichers/__init__.py +0 -0
  461. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/enrichers/link_expansion.py +0 -0
  462. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/enrichers/sentiment.py +0 -0
  463. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/enrichers/skills_tools.py +0 -0
  464. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/enrichers/temporal.py +0 -0
  465. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/enrichers/topic.py +0 -0
  466. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/enrichers/usage_tracking.py +0 -0
  467. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/evolvers/base.py +0 -0
  468. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/evolvers/enhanced/__init__.py +0 -0
  469. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/executor.py +0 -0
  470. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/extractors/__init__.py +0 -0
  471. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/extractors/conversation_aware_llm.py +0 -0
  472. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/extractors/decision.py +0 -0
  473. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/extractors/reasoning.py +0 -0
  474. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/extractors/spacy.py +0 -0
  475. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/grounders/__init__.py +0 -0
  476. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/grounders/wikipedia.py +0 -0
  477. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/registry.py +0 -0
  478. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/resolvers/__init__.py +0 -0
  479. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/resolvers/external_resolver.py +0 -0
  480. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/security.py +0 -0
  481. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/procedure_matcher.py +0 -0
  482. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/procedures/__init__.py +0 -0
  483. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/procedures/candidate_namer.py +0 -0
  484. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/procedures/candidate_scorer.py +0 -0
  485. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/procedures/models.py +0 -0
  486. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/py.typed +0 -0
  487. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/__init__.py +0 -0
  488. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/challenger.py +0 -0
  489. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/confidence.py +0 -0
  490. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/detection/__init__.py +0 -0
  491. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/detection/base.py +0 -0
  492. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/detection/cascade.py +0 -0
  493. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/fuzzy_confidence.py +0 -0
  494. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/models.py +0 -0
  495. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/proof_tree.py +0 -0
  496. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/query_router.py +0 -0
  497. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/residuation.py +0 -0
  498. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/resolution/__init__.py +0 -0
  499. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/resolution/base.py +0 -0
  500. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/resolution/cascade.py +0 -0
  501. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/resolution/grounding.py +0 -0
  502. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/resolution/llm.py +0 -0
  503. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/resolution/recency.py +0 -0
  504. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/resolution/wikipedia.py +0 -0
  505. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/relations/__init__.py +0 -0
  506. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/relations/benchmark.py +0 -0
  507. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/relations/discovery.py +0 -0
  508. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/relations/normalizer.py +0 -0
  509. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/relations/overlays.py +0 -0
  510. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/relations/scorer.py +0 -0
  511. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/relations/validator.py +0 -0
  512. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/retrieval/__init__.py +0 -0
  513. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/retrieval/ssg_traversal.py +0 -0
  514. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/schema_diff.py +0 -0
  515. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/schema_providers.py +0 -0
  516. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/scope_provider.py +0 -0
  517. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/search/__init__.py +0 -0
  518. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/search/query_decomposer.py +0 -0
  519. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/search/recall_profile.py +0 -0
  520. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/search/rrf_merge.py +0 -0
  521. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/similarity/__init__.py +0 -0
  522. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/similarity/enhanced_metrics.py +0 -0
  523. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/similarity/framework.py +0 -0
  524. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/__init__.py +0 -0
  525. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/base.py +0 -0
  526. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/converters/__init__.py +0 -0
  527. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/converters/episodic_converter.py +0 -0
  528. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/converters/procedural_converter.py +0 -0
  529. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/converters/semantic_converter.py +0 -0
  530. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/converters/zettel_converter.py +0 -0
  531. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/corpus/__init__.py +0 -0
  532. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/corpus/store.py +0 -0
  533. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/example_memory_handler.py +0 -0
  534. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/external/__init__.py +0 -0
  535. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/external/file_handler.py +0 -0
  536. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/external/mcp_handler.py +0 -0
  537. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/external/s3_handler.py +0 -0
  538. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/external/web_handler.py +0 -0
  539. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/factory.py +0 -0
  540. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/json_store.py +0 -0
  541. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/mixins.py +0 -0
  542. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/ontology/__init__.py +0 -0
  543. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/ontology/redis_service.py +0 -0
  544. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/persistence/__init__.py +0 -0
  545. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/persistence/base.py +0 -0
  546. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/persistence/entity_handler.py +0 -0
  547. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/persistence/json.py +0 -0
  548. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/persistence/model.py +0 -0
  549. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/persistence/ontology_handlers.py +0 -0
  550. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/registrations.py +0 -0
  551. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/registry.py +0 -0
  552. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/vector/__init__.py +0 -0
  553. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/vector/backends/__init__.py +0 -0
  554. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/vector/backends/base.py +0 -0
  555. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/vector/backends/usearch.py +0 -0
  556. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/vector/vector_store.py +0 -0
  557. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/streams/__init__.py +0 -0
  558. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/streams/pipeline_producer.py +0 -0
  559. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/sweep/__init__.py +0 -0
  560. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/sweep/config.py +0 -0
  561. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/sweep/metrics_store.py +0 -0
  562. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/sweep/result.py +0 -0
  563. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/sweep/runner.py +0 -0
  564. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/sweep/scorer.py +0 -0
  565. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/temporal/__init__.py +0 -0
  566. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/temporal/context.py +0 -0
  567. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/temporal/performance.py +0 -0
  568. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/temporal/queries.py +0 -0
  569. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/temporal/relationships.py +0 -0
  570. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/tools/__init__.py +0 -0
  571. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/tools/markdown_writer.py +0 -0
  572. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/__init__.py +0 -0
  573. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/context.py +0 -0
  574. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/deduplication.py +0 -0
  575. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/hybrid_retrieval.py +0 -0
  576. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/llm_client/litellm.py +0 -0
  577. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/pipeline_utils.py +0 -0
  578. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/serialization.py +0 -0
  579. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/validation/__init__.py +0 -0
  580. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/validation/edge_validator.py +0 -0
  581. {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/validation/memory_validator.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: smartmemory-core
3
- Version: 0.8.0
3
+ Version: 0.9.0
4
4
  Summary: Multi-layered AI memory system with graph databases, vector stores, and intelligent processing pipelines
5
5
  Author: SmartMemory Team
6
6
  License-Expression: AGPL-3.0-or-later
@@ -37,24 +37,24 @@ Requires-Dist: dspy>=3.0.0; extra == "llm"
37
37
  Provides-Extra: ml
38
38
  Requires-Dist: scikit-learn>=1.0.0; extra == "ml"
39
39
  Provides-Extra: server
40
- Requires-Dist: smartmemory-core[llm,ml]; extra == "server"
40
+ Requires-Dist: smartmemory-core[llm,ml,rerank]; extra == "server"
41
41
  Requires-Dist: falkordb>=1.0.0; extra == "server"
42
42
  Requires-Dist: redis>=4.0.0; extra == "server"
43
43
  Requires-Dist: requests>=2.28.0; extra == "server"
44
- Provides-Extra: rebel
45
- Requires-Dist: transformers>=4.0.0; extra == "rebel"
46
- Provides-Extra: relik
47
- Requires-Dist: relik>=0.1.0; extra == "relik"
48
44
  Provides-Extra: coreference
49
45
  Requires-Dist: fastcoref>=2.1.0; extra == "coreference"
46
+ Provides-Extra: rerank
47
+ Requires-Dist: sentence-transformers>=2.2.0; extra == "rerank"
48
+ Provides-Extra: docs
49
+ Requires-Dist: trafilatura>=1.12.0; extra == "docs"
50
+ Requires-Dist: pymupdf>=1.24.0; extra == "docs"
51
+ Requires-Dist: python-docx>=1.1.0; extra == "docs"
50
52
  Provides-Extra: slack
51
53
  Requires-Dist: slack-sdk>=3.0.0; extra == "slack"
52
54
  Provides-Extra: aws
53
55
  Requires-Dist: boto3>=1.26.0; extra == "aws"
54
56
  Provides-Extra: wikipedia
55
57
  Requires-Dist: wikipedia-api>=0.6.0; extra == "wikipedia"
56
- Provides-Extra: smolagents
57
- Requires-Dist: smolagents>=0.1.0; extra == "smolagents"
58
58
  Provides-Extra: cli
59
59
  Requires-Dist: click>=8.0.0; extra == "cli"
60
60
  Requires-Dist: rich>=13.0.0; extra == "cli"
@@ -74,19 +74,32 @@ Requires-Dist: mypy>=1.0.0; extra == "dev"
74
74
  Requires-Dist: build>=0.10.0; extra == "dev"
75
75
  Requires-Dist: twine>=4.0.0; extra == "dev"
76
76
  Provides-Extra: all
77
- Requires-Dist: smartmemory-core[aws,cli,coreference,lite,rebel,relik,server,slack,smolagents,watch,wikipedia]; extra == "all"
77
+ Requires-Dist: smartmemory-core[aws,cli,coreference,lite,rerank,server,slack,watch,wikipedia]; extra == "all"
78
78
  Dynamic: license-file
79
79
 
80
- # SmartMemory - Multi-Layered AI Memory System
80
+ # SmartMemory Typed AI Memory for LLM Agents
81
81
 
82
82
  [![Docs](https://img.shields.io/badge/docs-smartmemory.ai-blue)](https://docs.smartmemory.ai/smartmemory/intro)
83
83
  [![PyPI version](https://badge.fury.io/py/smartmemory-core.svg)](https://pypi.org/project/smartmemory-core/)
84
84
  [![License: AGPL v3](https://img.shields.io/badge/License-AGPL%20v3-blue.svg)](https://www.gnu.org/licenses/agpl-3.0)
85
85
  [![Python 3.11+](https://img.shields.io/badge/python-3.11+-blue.svg)](https://www.python.org/downloads/)
86
86
 
87
- **[Read the docs](https://docs.smartmemory.ai/smartmemory/intro)** | **[Maya sample app](https://docs.smartmemory.ai/maya)**
87
+ **[Read the docs](https://docs.smartmemory.ai/smartmemory/intro)** · **[Compare vs Mem0 / Zep / Letta / claude-mem](https://www.smartmemory.ai/compare)** · **[Maya sample app](https://docs.smartmemory.ai/maya)**
88
88
 
89
- SmartMemory is a comprehensive AI memory system that provides persistent, multi-layered memory storage and retrieval for AI applications. It combines graph databases, vector stores, and intelligent processing pipelines to create a unified memory architecture.
89
+ SmartMemory is an AI memory system with **five typed memory types** — episodic, semantic, procedural, working, and zettelkasten instead of a single vector store. It combines a knowledge graph (FalkorDB), vector embeddings, and an observable 11-stage extraction pipeline so LLM agents can remember, reason over relationships, and update structured knowledge across sessions and tools.
90
+
91
+ ### Who this is for
92
+
93
+ - **Pick SmartMemory** when you need typed memory that drops into LangChain, LlamaIndex, the Anthropic Agent SDK, or any MCP client; when you want bitemporal accuracy (event time + system time); when multi-tenant isolation must work out of the box; when you want to inspect every stage of extraction.
94
+ - **Pick something else** when you only need a personalization shim for chatbot history (Mem0 is simpler), a complete agent framework (Letta), or zero-config session capture for Claude Code (claude-mem). See the [full comparison](https://www.smartmemory.ai/compare).
95
+
96
+ ### What makes it different
97
+
98
+ - **5 typed memory types** (not a single blob/vector): episodic events, semantic facts, procedural skills, working context, zettelkasten links.
99
+ - **Knowledge graph by default**, with multi-hop and semantic-hop retrieval — query relationships, not just similarity.
100
+ - **Bitemporal time model** preserved at the storage layer — every fact has both an event time and a system time.
101
+ - **Observable 11-stage pipeline**: classify → coreference → simplify → entity_ruler → llm_extract → ontology_constrain → store → link → enrich → ground → evolve. Per-stage timing, tokens, cost.
102
+ - **Native MCP server**, multi-tenant workspaces, and origin-provenance tiers built in — not bolted on.
90
103
 
91
104
  ## 🚀 Quick Install
92
105
 
@@ -143,7 +156,7 @@ SmartMemory implements a multi-layered memory architecture with the following co
143
156
 
144
157
  ### Memory Types
145
158
 
146
- - **Working Memory**: Short-term context buffer (in-memory, capacity=10)
159
+ - **Pending Memory**: Short-term buffer for items awaiting consolidation (formerly "working"; routed at ingest by the `ConsolidationRouter`)
147
160
  - **Semantic Memory**: Facts and concepts with vector embeddings
148
161
  - **Episodic Memory**: Personal experiences and learning history
149
162
  - **Procedural Memory**: Skills, strategies, and learned patterns
@@ -172,7 +185,7 @@ Each stage implements the `StageCommand` protocol (`execute(state, config) → s
172
185
 
173
186
  ## Key Features
174
187
 
175
- - **9 Memory Types**: Working, Semantic, Episodic, Procedural, Zettelkasten, Reasoning, Opinion, Observation, Decision
188
+ - **9 Memory Types**: Pending, Semantic, Episodic, Procedural, Zettelkasten, Reasoning, Opinion, Observation, Decision
176
189
  - **11-Stage NLP Pipeline**: classify → coreference → simplify → entity_ruler → llm_extract → ontology_constrain → store → link → enrich → ground → evolve
177
190
  - **Self-Learning EntityRuler**: Pattern-matching NER that improves with use — LLM discoveries feed back into rules (96.9% entity F1 at 4ms)
178
191
  - **Evolver Framework**: Core auto-registered evolvers plus specialist lifecycle evolvers for decay, consolidation, opinion synthesis, retrieval-based strengthening, Hebbian co-retrieval, and stale memory detection
@@ -180,7 +193,7 @@ Each stage implements the `StageCommand` protocol (`execute(state, config) → s
180
193
  - **Zero-Infra Lite Mode**: SQLite + usearch backend — `pip install smartmemory-core[lite]` and go
181
194
  - **Server Mode**: FalkorDB graph + Redis caching for production-scale deployments
182
195
  - **Hybrid Search**: Graph-structured search + BM25/embedding RRF fusion with query decomposition for compound queries
183
- - **20 Auto-Registered Plugins**: 4 extractors, 5 enrichers, 10 evolvers, and 1 grounder loaded by default, with additional specialist plugins available for opt-in use
196
+ - **18 Auto-Registered Plugins**: 4 extractors, 5 enrichers, 8 evolvers, and 1 grounder loaded by default, with additional specialist plugins available for opt-in use
184
197
  - **Plugin Security**: Sandboxing, permissions, and resource limits for safe plugin execution
185
198
  - **Flexible Scoping**: Optional `ScopeProvider` for multi-tenancy or unrestricted OSS usage
186
199
 
@@ -273,12 +286,12 @@ from smartmemory import SmartMemory, MemoryItem
273
286
  # Initialize SmartMemory
274
287
  memory = SmartMemory()
275
288
 
276
- # Add working memory (short-term context)
277
- working_item = MemoryItem(
289
+ # Add pending memory (short-term context awaiting consolidation)
290
+ pending_item = MemoryItem(
278
291
  content="Current conversation context",
279
- memory_type="working"
292
+ memory_type="pending"
280
293
  )
281
- memory.add(working_item)
294
+ memory.add(pending_item)
282
295
 
283
296
  # Add semantic memory (facts and concepts)
284
297
  semantic_item = MemoryItem(
@@ -404,8 +417,6 @@ SmartMemory includes built-in evolvers that automatically transform memories. In
404
417
  ### Available Evolvers
405
418
 
406
419
  **Core evolvers** — memory type transitions and lifecycle:
407
- - **WorkingToEpisodicEvolver**: Converts working memory to episodic when buffer is full
408
- - **WorkingToProceduralEvolver**: Extracts repeated patterns as procedures
409
420
  - **EpisodicToSemanticEvolver**: Promotes stable facts to semantic memory
410
421
  - **EpisodicToZettelEvolver**: Converts episodic events to Zettelkasten notes
411
422
  - **EpisodicDecayEvolver**: Archives old episodic memories
@@ -422,7 +433,10 @@ SmartMemory includes built-in evolvers that automatically transform memories. In
422
433
  - **RetrievalBasedStrengtheningEvolver**: Memories accessed more frequently become harder to forget
423
434
  - **HebbianCoRetrievalEvolver**: Reinforces edges between memories retrieved together ("neurons that fire together wire together")
424
435
  - **InterferenceBasedConsolidationEvolver**: Similar competing memories interfere, strengthening the dominant one
425
- - **EnhancedWorkingToEpisodicEvolver**: Context-aware working→episodic transition with richer metadata
436
+ - **EnhancedWorkingToEpisodicEvolver**: Context-aware pending→episodic transition with richer metadata
437
+
438
+ **Replaced by ConsolidationRouter (CORE-MEMORY-DYNAMICS-1 M1):**
439
+ - The former `WorkingToEpisodicEvolver` and `WorkingToProceduralEvolver` were retired. Routing from the `pending` bucket to `episodic` / `procedural` now happens at ingest time via the `ConsolidationRouter` pipeline stage.
426
440
 
427
441
  Evolvers run automatically as part of the memory lifecycle. See the [examples](examples/) directory for evolution demonstrations.
428
442
 
@@ -437,7 +451,7 @@ SmartMemory includes **20 auto-registered plugins** with additional specialist p
437
451
  **Auto-registered by default** (loaded by `PluginManager`):
438
452
  - **4 Extractors**: `LLMExtractor`, `LLMSingleExtractor`, `ConversationAwareLLMExtractor`, `SpacyExtractor`
439
453
  - **5 Enrichers**: `BasicEnricher`, `SentimentEnricher`, `TemporalEnricher`, `ExtractSkillsToolsEnricher`, `TopicEnricher`
440
- - **10 Evolvers**: `WorkingToEpisodicEvolver`, `WorkingToProceduralEvolver`, `EpisodicToSemanticEvolver`, `EpisodicToZettelEvolver`, `EpisodicDecayEvolver`, `SemanticDecayEvolver`, `ZettelPruneEvolver`, `ExponentialDecayEvolver`, `InterferenceBasedConsolidationEvolver`, `RetrievalBasedStrengtheningEvolver`
454
+ - **8 Evolvers**: `EpisodicToSemanticEvolver`, `EpisodicToZettelEvolver`, `EpisodicDecayEvolver`, `SemanticDecayEvolver`, `ZettelPruneEvolver`, `ExponentialDecayEvolver`, `InterferenceBasedConsolidationEvolver`, `RetrievalBasedStrengtheningEvolver`
441
455
  - **1 Grounder**: `WikipediaGrounder`
442
456
 
443
457
  **Specialist plugins** (used by specific pipeline stages or opt-in features):
@@ -550,6 +564,35 @@ PYTHONPATH=. python examples/conversational_assistant_example.py
550
564
 
551
565
  ## API Reference
552
566
 
567
+ ### Progress Event Bus (PLAT-PROGRESS-1)
568
+
569
+ Unified progress emission via Redis Streams. Producers call `emit()`; consumers subscribe over SSE via `/memory/progress/stream` (see `smart-memory-service`). Stream key: `sm:progress:<workspace_id>`; Redis DB 1; MAXLEN default 10_000 (override via `SMARTMEMORY_PROGRESS_MAXLEN`).
570
+
571
+ ```python
572
+ from smartmemory.progress import bind, unbind, bound_progress, emit
573
+
574
+ # One emit anywhere in the process writes a ProgressEvent to the
575
+ # caller's workspace stream. run_id + scope come from contextvars set
576
+ # by bind() / bound_progress(); never passed as kwargs.
577
+
578
+ # Simple request-scoped pattern
579
+ bind(run_id="abc-123", scope="workspace:team-42")
580
+ try:
581
+ emit(kind="pipeline.stage", status="progress", stage="extract",
582
+ payload={"progress": 50, "message": "Extracting entities"})
583
+ finally:
584
+ unbind()
585
+
586
+ # Context-managed pattern — preferred for background tasks that run in
587
+ # a fresh asyncio context (e.g. FastAPI BackgroundTasks). bind()
588
+ # bindings in the scheduling handler don't propagate.
589
+ with bound_progress(run_id="abc-123", scope="workspace:team-42"):
590
+ emit(kind="pipeline.stage", status="ok", stage="extract",
591
+ payload={"progress": 100, "message": "Completed extraction"})
592
+ ```
593
+
594
+ Status values: `started | progress | ok | warn | error`. Kinds are dotted producer-owned tags (`pipeline.stage`, `evolver.result`, `studio.job`, …); the transport has no registry.
595
+
553
596
  ### SmartMemory Class
554
597
 
555
598
  Main interface for memory operations:
@@ -1,13 +1,26 @@
1
- # SmartMemory - Multi-Layered AI Memory System
1
+ # SmartMemory Typed AI Memory for LLM Agents
2
2
 
3
3
  [![Docs](https://img.shields.io/badge/docs-smartmemory.ai-blue)](https://docs.smartmemory.ai/smartmemory/intro)
4
4
  [![PyPI version](https://badge.fury.io/py/smartmemory-core.svg)](https://pypi.org/project/smartmemory-core/)
5
5
  [![License: AGPL v3](https://img.shields.io/badge/License-AGPL%20v3-blue.svg)](https://www.gnu.org/licenses/agpl-3.0)
6
6
  [![Python 3.11+](https://img.shields.io/badge/python-3.11+-blue.svg)](https://www.python.org/downloads/)
7
7
 
8
- **[Read the docs](https://docs.smartmemory.ai/smartmemory/intro)** | **[Maya sample app](https://docs.smartmemory.ai/maya)**
8
+ **[Read the docs](https://docs.smartmemory.ai/smartmemory/intro)** · **[Compare vs Mem0 / Zep / Letta / claude-mem](https://www.smartmemory.ai/compare)** · **[Maya sample app](https://docs.smartmemory.ai/maya)**
9
9
 
10
- SmartMemory is a comprehensive AI memory system that provides persistent, multi-layered memory storage and retrieval for AI applications. It combines graph databases, vector stores, and intelligent processing pipelines to create a unified memory architecture.
10
+ SmartMemory is an AI memory system with **five typed memory types** — episodic, semantic, procedural, working, and zettelkasten instead of a single vector store. It combines a knowledge graph (FalkorDB), vector embeddings, and an observable 11-stage extraction pipeline so LLM agents can remember, reason over relationships, and update structured knowledge across sessions and tools.
11
+
12
+ ### Who this is for
13
+
14
+ - **Pick SmartMemory** when you need typed memory that drops into LangChain, LlamaIndex, the Anthropic Agent SDK, or any MCP client; when you want bitemporal accuracy (event time + system time); when multi-tenant isolation must work out of the box; when you want to inspect every stage of extraction.
15
+ - **Pick something else** when you only need a personalization shim for chatbot history (Mem0 is simpler), a complete agent framework (Letta), or zero-config session capture for Claude Code (claude-mem). See the [full comparison](https://www.smartmemory.ai/compare).
16
+
17
+ ### What makes it different
18
+
19
+ - **5 typed memory types** (not a single blob/vector): episodic events, semantic facts, procedural skills, working context, zettelkasten links.
20
+ - **Knowledge graph by default**, with multi-hop and semantic-hop retrieval — query relationships, not just similarity.
21
+ - **Bitemporal time model** preserved at the storage layer — every fact has both an event time and a system time.
22
+ - **Observable 11-stage pipeline**: classify → coreference → simplify → entity_ruler → llm_extract → ontology_constrain → store → link → enrich → ground → evolve. Per-stage timing, tokens, cost.
23
+ - **Native MCP server**, multi-tenant workspaces, and origin-provenance tiers built in — not bolted on.
11
24
 
12
25
  ## 🚀 Quick Install
13
26
 
@@ -64,7 +77,7 @@ SmartMemory implements a multi-layered memory architecture with the following co
64
77
 
65
78
  ### Memory Types
66
79
 
67
- - **Working Memory**: Short-term context buffer (in-memory, capacity=10)
80
+ - **Pending Memory**: Short-term buffer for items awaiting consolidation (formerly "working"; routed at ingest by the `ConsolidationRouter`)
68
81
  - **Semantic Memory**: Facts and concepts with vector embeddings
69
82
  - **Episodic Memory**: Personal experiences and learning history
70
83
  - **Procedural Memory**: Skills, strategies, and learned patterns
@@ -93,7 +106,7 @@ Each stage implements the `StageCommand` protocol (`execute(state, config) → s
93
106
 
94
107
  ## Key Features
95
108
 
96
- - **9 Memory Types**: Working, Semantic, Episodic, Procedural, Zettelkasten, Reasoning, Opinion, Observation, Decision
109
+ - **9 Memory Types**: Pending, Semantic, Episodic, Procedural, Zettelkasten, Reasoning, Opinion, Observation, Decision
97
110
  - **11-Stage NLP Pipeline**: classify → coreference → simplify → entity_ruler → llm_extract → ontology_constrain → store → link → enrich → ground → evolve
98
111
  - **Self-Learning EntityRuler**: Pattern-matching NER that improves with use — LLM discoveries feed back into rules (96.9% entity F1 at 4ms)
99
112
  - **Evolver Framework**: Core auto-registered evolvers plus specialist lifecycle evolvers for decay, consolidation, opinion synthesis, retrieval-based strengthening, Hebbian co-retrieval, and stale memory detection
@@ -101,7 +114,7 @@ Each stage implements the `StageCommand` protocol (`execute(state, config) → s
101
114
  - **Zero-Infra Lite Mode**: SQLite + usearch backend — `pip install smartmemory-core[lite]` and go
102
115
  - **Server Mode**: FalkorDB graph + Redis caching for production-scale deployments
103
116
  - **Hybrid Search**: Graph-structured search + BM25/embedding RRF fusion with query decomposition for compound queries
104
- - **20 Auto-Registered Plugins**: 4 extractors, 5 enrichers, 10 evolvers, and 1 grounder loaded by default, with additional specialist plugins available for opt-in use
117
+ - **18 Auto-Registered Plugins**: 4 extractors, 5 enrichers, 8 evolvers, and 1 grounder loaded by default, with additional specialist plugins available for opt-in use
105
118
  - **Plugin Security**: Sandboxing, permissions, and resource limits for safe plugin execution
106
119
  - **Flexible Scoping**: Optional `ScopeProvider` for multi-tenancy or unrestricted OSS usage
107
120
 
@@ -194,12 +207,12 @@ from smartmemory import SmartMemory, MemoryItem
194
207
  # Initialize SmartMemory
195
208
  memory = SmartMemory()
196
209
 
197
- # Add working memory (short-term context)
198
- working_item = MemoryItem(
210
+ # Add pending memory (short-term context awaiting consolidation)
211
+ pending_item = MemoryItem(
199
212
  content="Current conversation context",
200
- memory_type="working"
213
+ memory_type="pending"
201
214
  )
202
- memory.add(working_item)
215
+ memory.add(pending_item)
203
216
 
204
217
  # Add semantic memory (facts and concepts)
205
218
  semantic_item = MemoryItem(
@@ -325,8 +338,6 @@ SmartMemory includes built-in evolvers that automatically transform memories. In
325
338
  ### Available Evolvers
326
339
 
327
340
  **Core evolvers** — memory type transitions and lifecycle:
328
- - **WorkingToEpisodicEvolver**: Converts working memory to episodic when buffer is full
329
- - **WorkingToProceduralEvolver**: Extracts repeated patterns as procedures
330
341
  - **EpisodicToSemanticEvolver**: Promotes stable facts to semantic memory
331
342
  - **EpisodicToZettelEvolver**: Converts episodic events to Zettelkasten notes
332
343
  - **EpisodicDecayEvolver**: Archives old episodic memories
@@ -343,7 +354,10 @@ SmartMemory includes built-in evolvers that automatically transform memories. In
343
354
  - **RetrievalBasedStrengtheningEvolver**: Memories accessed more frequently become harder to forget
344
355
  - **HebbianCoRetrievalEvolver**: Reinforces edges between memories retrieved together ("neurons that fire together wire together")
345
356
  - **InterferenceBasedConsolidationEvolver**: Similar competing memories interfere, strengthening the dominant one
346
- - **EnhancedWorkingToEpisodicEvolver**: Context-aware working→episodic transition with richer metadata
357
+ - **EnhancedWorkingToEpisodicEvolver**: Context-aware pending→episodic transition with richer metadata
358
+
359
+ **Replaced by ConsolidationRouter (CORE-MEMORY-DYNAMICS-1 M1):**
360
+ - The former `WorkingToEpisodicEvolver` and `WorkingToProceduralEvolver` were retired. Routing from the `pending` bucket to `episodic` / `procedural` now happens at ingest time via the `ConsolidationRouter` pipeline stage.
347
361
 
348
362
  Evolvers run automatically as part of the memory lifecycle. See the [examples](examples/) directory for evolution demonstrations.
349
363
 
@@ -358,7 +372,7 @@ SmartMemory includes **20 auto-registered plugins** with additional specialist p
358
372
  **Auto-registered by default** (loaded by `PluginManager`):
359
373
  - **4 Extractors**: `LLMExtractor`, `LLMSingleExtractor`, `ConversationAwareLLMExtractor`, `SpacyExtractor`
360
374
  - **5 Enrichers**: `BasicEnricher`, `SentimentEnricher`, `TemporalEnricher`, `ExtractSkillsToolsEnricher`, `TopicEnricher`
361
- - **10 Evolvers**: `WorkingToEpisodicEvolver`, `WorkingToProceduralEvolver`, `EpisodicToSemanticEvolver`, `EpisodicToZettelEvolver`, `EpisodicDecayEvolver`, `SemanticDecayEvolver`, `ZettelPruneEvolver`, `ExponentialDecayEvolver`, `InterferenceBasedConsolidationEvolver`, `RetrievalBasedStrengtheningEvolver`
375
+ - **8 Evolvers**: `EpisodicToSemanticEvolver`, `EpisodicToZettelEvolver`, `EpisodicDecayEvolver`, `SemanticDecayEvolver`, `ZettelPruneEvolver`, `ExponentialDecayEvolver`, `InterferenceBasedConsolidationEvolver`, `RetrievalBasedStrengtheningEvolver`
362
376
  - **1 Grounder**: `WikipediaGrounder`
363
377
 
364
378
  **Specialist plugins** (used by specific pipeline stages or opt-in features):
@@ -471,6 +485,35 @@ PYTHONPATH=. python examples/conversational_assistant_example.py
471
485
 
472
486
  ## API Reference
473
487
 
488
+ ### Progress Event Bus (PLAT-PROGRESS-1)
489
+
490
+ Unified progress emission via Redis Streams. Producers call `emit()`; consumers subscribe over SSE via `/memory/progress/stream` (see `smart-memory-service`). Stream key: `sm:progress:<workspace_id>`; Redis DB 1; MAXLEN default 10_000 (override via `SMARTMEMORY_PROGRESS_MAXLEN`).
491
+
492
+ ```python
493
+ from smartmemory.progress import bind, unbind, bound_progress, emit
494
+
495
+ # One emit anywhere in the process writes a ProgressEvent to the
496
+ # caller's workspace stream. run_id + scope come from contextvars set
497
+ # by bind() / bound_progress(); never passed as kwargs.
498
+
499
+ # Simple request-scoped pattern
500
+ bind(run_id="abc-123", scope="workspace:team-42")
501
+ try:
502
+ emit(kind="pipeline.stage", status="progress", stage="extract",
503
+ payload={"progress": 50, "message": "Extracting entities"})
504
+ finally:
505
+ unbind()
506
+
507
+ # Context-managed pattern — preferred for background tasks that run in
508
+ # a fresh asyncio context (e.g. FastAPI BackgroundTasks). bind()
509
+ # bindings in the scheduling handler don't propagate.
510
+ with bound_progress(run_id="abc-123", scope="workspace:team-42"):
511
+ emit(kind="pipeline.stage", status="ok", stage="extract",
512
+ payload={"progress": 100, "message": "Completed extraction"})
513
+ ```
514
+
515
+ Status values: `started | progress | ok | warn | error`. Kinds are dotted producer-owned tags (`pipeline.stage`, `evolver.result`, `studio.job`, …); the transport has no registry.
516
+
474
517
  ### SmartMemory Class
475
518
 
476
519
  Main interface for memory operations:
@@ -0,0 +1 @@
1
+ 0.9.0
@@ -3,14 +3,16 @@
3
3
  "backend_class": "FalkorDBBackend",
4
4
  "host": "localhost",
5
5
  "port": 9010,
6
+ "main_graph_name": "smartmemory",
7
+ "ontology_graph_name": "ontology",
6
8
  "graph_name": "ontology"
7
9
  },
8
10
  "semantic": {},
9
11
  "episodic": {},
10
12
  "procedural": {},
11
- "working": {},
13
+ "pending": {},
12
14
  "zettelkasten": {},
13
- "working_memory": {
15
+ "pending_memory": {
14
16
  "persist": true,
15
17
  "vectorize": false,
16
18
  "retention_days": 14,
@@ -20,7 +22,7 @@
20
22
  "default": "falkordb",
21
23
  "type": "falkordb",
22
24
  "backend": "falkordb",
23
- "dimension": 1536,
25
+ "dimension": 768,
24
26
  "metric": "cosine",
25
27
  "hnsw_m": 16,
26
28
  "hnsw_ef_construction": 200,
@@ -28,8 +30,8 @@
28
30
  "host": "localhost",
29
31
  "port": 9010,
30
32
  "embedding": {
31
- "provider": "openai",
32
- "model": "text-embedding-ada-002",
33
+ "provider": "local",
34
+ "model": "nomic-ai/nomic-embed-text-v1.5",
33
35
  "openai_api_key": "",
34
36
  "huggingface_api_key": "",
35
37
  "huggingface_model": "sentence-transformers/all-MiniLM-L6-v2"
@@ -41,8 +43,8 @@
41
43
  "engine": "basic",
42
44
  "ontogpt": {
43
45
  "enabled": false,
44
- "provider": "openai",
45
- "model": "gpt-5-mini",
46
+ "provider": "groq",
47
+ "model": "llama-3.3-70b-versatile",
46
48
  "api_base": "",
47
49
  "api_version": "",
48
50
  "template": "",
@@ -52,36 +54,21 @@
52
54
  }
53
55
  },
54
56
  "extractor": {
55
- "default": "llm",
56
- "gliner2": {
57
- "model_name": "fastino/gliner2-base-v1",
58
- "confidence_threshold": 0.5
59
- },
60
- "relik": {
61
- "model_name": "relik-ie/relik-relation-extraction-small-wikipedia-ner"
62
- },
63
- "gliner": {
64
- "model_name": "urchade/gliner_base"
65
- },
57
+ "default": "llm_single",
66
58
  "llm": {
67
- "model_name": "gpt-5-mini",
68
- "openai_api_key": ""
69
59
  },
70
60
  "spacy": {
71
61
  "model_name": "en_core_web_sm"
72
62
  },
73
- "rebel": {
74
- "model_name": "Babelscape/rebel-large"
75
- },
76
63
  "gpt4o_triple": {
77
- "model_name": "gpt-5-mini",
64
+ "model_name": "gpt-4o-mini",
78
65
  "openai_api_key": ""
79
66
  }
80
67
  },
81
68
  "enricher": {
82
69
  "default": "default",
83
70
  "temporal": {
84
- "model_name": "gpt-5-mini",
71
+ "model_name": "gpt-4o-mini",
85
72
  "openai_api_key": ""
86
73
  }
87
74
  },
@@ -61,26 +61,32 @@ ml = [
61
61
 
62
62
  # Full server mode: FalkorDB graph database + Redis cache/observability + LLM + ML
63
63
  server = [
64
- "smartmemory-core[llm,ml]",
64
+ "smartmemory-core[llm,ml,rerank]",
65
65
  "falkordb>=1.0.0",
66
66
  "redis>=4.0.0",
67
67
  "requests>=2.28.0",
68
68
  ]
69
69
 
70
- # Optional dependencies for specific extractors
71
- rebel = ["transformers>=4.0.0"]
72
- relik = ["relik>=0.1.0"]
73
-
74
70
  # Optional dependencies for pipeline stages
75
71
  coreference = ["fastcoref>=2.1.0"]
76
72
 
73
+ # Local embedding backend used by EmbeddingPlugin when no API embedder is configured.
74
+ # Also satisfies the CORE-RERANK-1 cross-encoder path when wired.
75
+ rerank = ["sentence-transformers>=2.2.0"]
76
+
77
+ # Document loaders (lazy — not installed by default; auto-degrade with ImportError if missing)
78
+ docs = [
79
+ "trafilatura>=1.12.0",
80
+ "pymupdf>=1.24.0",
81
+ "python-docx>=1.1.0",
82
+ ]
83
+
77
84
  # Optional dependencies for integrations
78
85
  # NOTE: claude-cli is a private git dep — install locally with:
79
86
  # pip install "claude-cli @ git+ssh://git@github.com/regression-io/claude-cli.git"
80
87
  slack = ["slack-sdk>=3.0.0"]
81
88
  aws = ["boto3>=1.26.0"]
82
89
  wikipedia = ["wikipedia-api>=0.6.0"]
83
- smolagents = ["smolagents>=0.1.0"]
84
90
 
85
91
  # CLI tools
86
92
  cli = [
@@ -112,7 +118,7 @@ dev = [
112
118
 
113
119
  # All optional dependencies
114
120
  all = [
115
- "smartmemory-core[server,lite,cli,rebel,relik,coreference,slack,aws,wikipedia,smolagents,watch]",
121
+ "smartmemory-core[server,lite,cli,coreference,rerank,slack,aws,wikipedia,watch]",
116
122
  ]
117
123
 
118
124
  [project.urls]
@@ -105,7 +105,7 @@ MEMORIES = [
105
105
  "- decompose_query=True on SmartMemory.search() splits compound queries\n"
106
106
  "- Splits on and/or/,/; into 1-4 sub-queries\n"
107
107
  "- Each sub-query runs independently, results merged via cross-query RRF (rrf_k=60)\n"
108
- "- Working memory exemption: memory_type='working' ignores decomposition\n"
108
+ "- Pending memory exemption: memory_type='pending' ignores decomposition\n"
109
109
  "- API surface: decompose: bool = False on service MCP, REST, standalone MCP\n"
110
110
  "- Key files: smartmemory/search/query_decomposer.py, rrf_merge.py, smart_memory.py\n"
111
111
  "- Contract: docs/features/CORE-SEARCH-1/search-contract.json"
@@ -0,0 +1,52 @@
1
+ """Activation primitives for CORE-MEMORY-DYNAMICS-1 Milestone 2a.
2
+
3
+ This package provides the activation-scoring foundation used by
4
+ ``get_working_context`` ranking and by the three M2a evolvers. The nested
5
+ ``metadata["activation"]`` dict shape is defined in the activation contract
6
+ (``smart-memory-docs/docs/features/CORE-MEMORY-DYNAMICS-1/activation-contract.json``).
7
+
8
+ Public surface:
9
+
10
+ - ``compute_activation_score(item, now=None)`` — decays score from last boost.
11
+ - ``boost_activation(memory, item_id, delta, reason)`` — Redis-first producer
12
+ with non-raising direct-write fallback.
13
+ - ``run_decay_sweep(memory)`` — batched per-workspace decay pass.
14
+ - ``migrate_workspace(memory)`` — idempotent Phase A seed (Slice B).
15
+ - Constants: ``ACTIVATION_FLOOR``, ``DEFAULT_SCORE``, ``DEFAULT_HALF_LIFE_HOURS``,
16
+ Redis key templates, boost sizes.
17
+
18
+ **Full-dict invariant:** when ``metadata["activation"]`` is present, all five
19
+ sub-keys (score, last_boost_at, half_life_hours, boost_count, rot_score) must
20
+ be present. Partial dicts are a contract violation — see
21
+ ``_merged_activation_dict`` in ``boost.py``.
22
+ """
23
+
24
+ from smartmemory.activation.constants import (
25
+ ACTIVATION_FLOOR,
26
+ BOOST_SIZE_CORETRIEVE,
27
+ BOOST_SIZE_RETRIEVE,
28
+ BOOST_SIZE_SURFACE,
29
+ DECAY_INTERVAL_SECONDS,
30
+ DEFAULT_HALF_LIFE_HOURS,
31
+ DEFAULT_SCORE,
32
+ FLUSH_INTERVAL_SECONDS,
33
+ NAMESPACE,
34
+ REDIS_DECAY_LOCK_TEMPLATE,
35
+ REDIS_PENDING_KEY_TEMPLATE,
36
+ )
37
+ from smartmemory.activation.score import compute_activation_score
38
+
39
+ __all__ = [
40
+ "NAMESPACE",
41
+ "ACTIVATION_FLOOR",
42
+ "DEFAULT_SCORE",
43
+ "DEFAULT_HALF_LIFE_HOURS",
44
+ "BOOST_SIZE_RETRIEVE",
45
+ "BOOST_SIZE_SURFACE",
46
+ "BOOST_SIZE_CORETRIEVE",
47
+ "FLUSH_INTERVAL_SECONDS",
48
+ "DECAY_INTERVAL_SECONDS",
49
+ "REDIS_PENDING_KEY_TEMPLATE",
50
+ "REDIS_DECAY_LOCK_TEMPLATE",
51
+ "compute_activation_score",
52
+ ]