elastro-client 1.3.48__tar.gz → 1.3.49__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 (134) hide show
  1. {elastro_client-1.3.48/elastro_client.egg-info → elastro_client-1.3.49}/PKG-INFO +1 -1
  2. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/__init__.py +1 -1
  3. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/memory.py +79 -0
  4. {elastro_client-1.3.48 → elastro_client-1.3.49/elastro_client.egg-info}/PKG-INFO +1 -1
  5. {elastro_client-1.3.48 → elastro_client-1.3.49}/pyproject.toml +1 -1
  6. {elastro_client-1.3.48 → elastro_client-1.3.49}/.coveragerc +0 -0
  7. {elastro_client-1.3.48 → elastro_client-1.3.49}/LICENSE +0 -0
  8. {elastro_client-1.3.48 → elastro_client-1.3.49}/MANIFEST.in +0 -0
  9. {elastro_client-1.3.48 → elastro_client-1.3.49}/README.md +0 -0
  10. {elastro_client-1.3.48 → elastro_client-1.3.49}/docs/advanced_features.md +0 -0
  11. {elastro_client-1.3.48 → elastro_client-1.3.49}/docs/api_reference.md +0 -0
  12. {elastro_client-1.3.48 → elastro_client-1.3.49}/docs/cli_usage.md +0 -0
  13. {elastro_client-1.3.48 → elastro_client-1.3.49}/docs/commands_reference.md +0 -0
  14. {elastro_client-1.3.48 → elastro_client-1.3.49}/docs/getting_started.md +0 -0
  15. {elastro_client-1.3.48 → elastro_client-1.3.49}/docs/roadmap.md +0 -0
  16. {elastro_client-1.3.48 → elastro_client-1.3.49}/docs/troubleshooting.md +0 -0
  17. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/advanced/__init__.py +0 -0
  18. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/advanced/aggregations.py +0 -0
  19. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/advanced/query_builder.py +0 -0
  20. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/advanced/scroll.py +0 -0
  21. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/__init__.py +0 -0
  22. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/art.py +0 -0
  23. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/cli.py +0 -0
  24. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/__init__.py +0 -0
  25. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/cluster.py +0 -0
  26. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/config.py +0 -0
  27. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/daemon.py +0 -0
  28. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/datastream.py +0 -0
  29. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/document.py +0 -0
  30. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/gui.py +0 -0
  31. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/ilm.py +0 -0
  32. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/index.py +0 -0
  33. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/index_recipes.py +0 -0
  34. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/ingest.py +0 -0
  35. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/ml.py +0 -0
  36. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/painless_commands.py +0 -0
  37. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/rag.py +0 -0
  38. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/script.py +0 -0
  39. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/security.py +0 -0
  40. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/snapshot.py +0 -0
  41. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/tasks.py +0 -0
  42. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/telemetry.py +0 -0
  43. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/template.py +0 -0
  44. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/tools.py +0 -0
  45. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/commands/utils.py +0 -0
  46. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/completion.py +0 -0
  47. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/cli/output.py +0 -0
  48. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/config/__init__.py +0 -0
  49. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/config/defaults.py +0 -0
  50. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/config/loader.py +0 -0
  51. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/core/__init__.py +0 -0
  52. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/core/client.py +0 -0
  53. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/core/daemon.py +0 -0
  54. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/core/datastream.py +0 -0
  55. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/core/document.py +0 -0
  56. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/core/document_bulk.py +0 -0
  57. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/core/errors.py +0 -0
  58. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/core/ilm.py +0 -0
  59. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/core/index.py +0 -0
  60. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/core/logger.py +0 -0
  61. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/core/query_builder.py +0 -0
  62. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/core/rag/ast_parser.py +0 -0
  63. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/core/rag/ingestor.py +0 -0
  64. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/core/snapshot.py +0 -0
  65. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/core/validation.py +0 -0
  66. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/gui/assets/index-CeUjjtn-.css +0 -0
  67. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/gui/assets/index-DNdGuJvV.js +0 -0
  68. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/gui/elastro.svg +0 -0
  69. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/gui/favicon.ico +0 -0
  70. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/gui/index.html +0 -0
  71. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/gui/vite.svg +0 -0
  72. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/py.typed +0 -0
  73. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/server.py +0 -0
  74. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/utils/__init__.py +0 -0
  75. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/utils/aliases.py +0 -0
  76. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/utils/health.py +0 -0
  77. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/utils/snapshots.py +0 -0
  78. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro/utils/templates.py +0 -0
  79. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro_client.egg-info/SOURCES.txt +0 -0
  80. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro_client.egg-info/dependency_links.txt +0 -0
  81. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro_client.egg-info/entry_points.txt +0 -0
  82. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro_client.egg-info/requires.txt +0 -0
  83. {elastro_client-1.3.48 → elastro_client-1.3.49}/elastro_client.egg-info/top_level.txt +0 -0
  84. {elastro_client-1.3.48 → elastro_client-1.3.49}/examples/client.py +0 -0
  85. {elastro_client-1.3.48 → elastro_client-1.3.49}/examples/config_usage.py +0 -0
  86. {elastro_client-1.3.48 → elastro_client-1.3.49}/examples/datastreams.py +0 -0
  87. {elastro_client-1.3.48 → elastro_client-1.3.49}/examples/debug_connection.py +0 -0
  88. {elastro_client-1.3.48 → elastro_client-1.3.49}/examples/document_operations.py +0 -0
  89. {elastro_client-1.3.48 → elastro_client-1.3.49}/examples/index_management.py +0 -0
  90. {elastro_client-1.3.48 → elastro_client-1.3.49}/examples/search.py +0 -0
  91. {elastro_client-1.3.48 → elastro_client-1.3.49}/pytest.ini +0 -0
  92. {elastro_client-1.3.48 → elastro_client-1.3.49}/requirements.txt +0 -0
  93. {elastro_client-1.3.48 → elastro_client-1.3.49}/setup.cfg +0 -0
  94. {elastro_client-1.3.48 → elastro_client-1.3.49}/setup.py +0 -0
  95. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/__init__.py +0 -0
  96. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/conftest.py +0 -0
  97. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/fixtures/__init__.py +0 -0
  98. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/fixtures/datastream_fixtures.py +0 -0
  99. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/fixtures/document_fixtures.py +0 -0
  100. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/fixtures/index_fixtures.py +0 -0
  101. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/integration/__init__.py +0 -0
  102. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/integration/test_aggregations_integration.py +0 -0
  103. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/integration/test_client_integration.py +0 -0
  104. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/integration/test_datastream_integration.py +0 -0
  105. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/integration/test_docs_quickstart.py +0 -0
  106. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/integration/test_document_integration.py +0 -0
  107. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/integration/test_index_integration.py +0 -0
  108. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/integration/test_query_builder_integration.py +0 -0
  109. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/integration/test_scroll_integration.py +0 -0
  110. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/integration/test_workflow_integration.py +0 -0
  111. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/manual/test_es.py +0 -0
  112. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/unit/__init__.py +0 -0
  113. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/unit/advanced/__init__.py +0 -0
  114. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/unit/advanced/test_aggregations.py +0 -0
  115. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/unit/advanced/test_query_builder.py +0 -0
  116. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/unit/advanced/test_scroll.py +0 -0
  117. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/unit/config/__init__.py +0 -0
  118. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/unit/config/test_defaults.py +0 -0
  119. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/unit/config/test_loader.py +0 -0
  120. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/unit/core/__init__.py +0 -0
  121. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/unit/core/test_client.py +0 -0
  122. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/unit/core/test_datastream.py +0 -0
  123. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/unit/core/test_document.py +0 -0
  124. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/unit/core/test_document_bulk.py +0 -0
  125. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/unit/core/test_errors.py +0 -0
  126. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/unit/core/test_index.py +0 -0
  127. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/unit/core/test_validation.py +0 -0
  128. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/unit/utils/__init__.py +0 -0
  129. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/unit/utils/test_aliases.py +0 -0
  130. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/unit/utils/test_health.py +0 -0
  131. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/unit/utils/test_snapshots.py +0 -0
  132. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/unit/utils/test_templates.py +0 -0
  133. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/verify_api_actions.py +0 -0
  134. {elastro_client-1.3.48 → elastro_client-1.3.49}/tests/verify_cli_e2e.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: elastro-client
3
- Version: 1.3.48
3
+ Version: 1.3.49
4
4
  Summary: A comprehensive Python library for Elasticsearch management with both programmatic and CLI interfaces
5
5
  Author: Austin Jorgensen
6
6
  License-Expression: MIT
@@ -4,7 +4,7 @@ Elasticsearch Management Module.
4
4
  A module for managing Elasticsearch operations within a pipeline process.
5
5
  """
6
6
 
7
- __version__ = "1.3.48"
7
+ __version__ = "1.3.49"
8
8
 
9
9
  # Core component imports
10
10
  from elastro.core.client import ElasticsearchClient
@@ -161,3 +161,82 @@ def prune_memory(
161
161
  import sys
162
162
 
163
163
  sys.exit(1)
164
+
165
+
166
+ @memory_group.command("wake")
167
+ @click.argument("heuristic_query")
168
+ @click.option(
169
+ "--anchor",
170
+ "anchor_hash",
171
+ default="",
172
+ help="Deterministic tool hash to anchor the activation wave",
173
+ )
174
+ @click.option("--k", default=5, help="Top-K bounded node subset (500-1k tokens max)")
175
+ @click.pass_obj
176
+ def wake_memory(
177
+ client: ElasticsearchClient,
178
+ heuristic_query: str,
179
+ anchor_hash: str,
180
+ k: int,
181
+ ) -> None:
182
+ """
183
+ Primed Activation 'Wake' Query: Bounded Activation Wave.
184
+ Uses exponential decay (TTL) on timestamps and strictly bounds the subgraph
185
+ context to slash API latency.
186
+ """
187
+ index_name = "agent_semantic_memory"
188
+
189
+ from typing import Dict, Any, List
190
+
191
+ # Core textual RAG retrieval
192
+ must_clauses: List[Dict[str, Any]] = [
193
+ {
194
+ "multi_match": {
195
+ "query": heuristic_query,
196
+ "fields": ["subject^3", "content", "tags"],
197
+ }
198
+ }
199
+ ]
200
+
201
+ # Deterministic API Hash anchoring
202
+ if anchor_hash:
203
+ must_clauses.append({"term": {"anchor_hash": anchor_hash}})
204
+
205
+ # Exponential TTL Similarity Decay (Bioelectric node stimulation mimicry)
206
+ function_score_query = {
207
+ "function_score": {
208
+ "query": {"bool": {"must": must_clauses}},
209
+ "functions": [
210
+ {"exp": {"timestamp": {"scale": "7d", "offset": "1d", "decay": 0.5}}}
211
+ ],
212
+ "boost_mode": "multiply",
213
+ }
214
+ }
215
+
216
+ search_body: Dict[str, Any] = {
217
+ "size": k,
218
+ "query": function_score_query,
219
+ }
220
+
221
+ try:
222
+ response = client.client.search(index=index_name, body=search_body)
223
+ hits = response.get("hits", {}).get("hits", [])
224
+
225
+ click.secho(f"Primed Activation Wave [{len(hits)} Nodes Awakened]", fg="cyan")
226
+ for hit in hits:
227
+ if not isinstance(hit, dict):
228
+ continue
229
+ source = hit.get("_source", {})
230
+ score = hit.get("_score", 0.0)
231
+ click.echo(
232
+ f"\n[STIMULATED] {source.get('subject', 'Untitled')} (Score: {score:.2f})"
233
+ )
234
+ click.echo(f" {source.get('content', '')}")
235
+ if source.get("anchor_hash"):
236
+ click.echo(f" Anchor: {source['anchor_hash']}")
237
+
238
+ except Exception as e:
239
+ click.secho(f"Activation wave failed: {e}", fg="red", err=True)
240
+ import sys
241
+
242
+ sys.exit(1)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: elastro-client
3
- Version: 1.3.48
3
+ Version: 1.3.49
4
4
  Summary: A comprehensive Python library for Elasticsearch management with both programmatic and CLI interfaces
5
5
  Author: Austin Jorgensen
6
6
  License-Expression: MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "elastro-client"
7
- version = "1.3.48"
7
+ version = "1.3.49"
8
8
  description = "A comprehensive Python library for Elasticsearch management with both programmatic and CLI interfaces"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.9,<3.14"
File without changes