cluxion-agentplugin-preprocessing 0.3.16__tar.gz → 0.3.17__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 (95) hide show
  1. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/PKG-INFO +1 -1
  2. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/pyproject.toml +1 -1
  3. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/core/hybrid_forget.py +0 -7
  4. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/runtime/test_context_compress_llm_forget.py +42 -1
  5. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/.github/profile/README.md +0 -0
  6. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/.gitignore +0 -0
  7. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/Docs/README.md +0 -0
  8. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/LICENSE +0 -0
  9. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/README.md +0 -0
  10. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/adapters/claude/.claude-plugin/plugin.json +0 -0
  11. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/adapters/claude/skills/preprocess/SKILL.md +0 -0
  12. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/adapters/codex/config-snippet.toml +0 -0
  13. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/cluxion-Docs/README.md +0 -0
  14. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/cluxion-Docs/architecture.md +0 -0
  15. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/cluxion-Docs/harness-logic.md +0 -0
  16. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/cluxion-Docs/honesty-preprocessing.md +0 -0
  17. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/cluxion-Docs/install-and-operations.md +0 -0
  18. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/cluxion-Docs/security.md +0 -0
  19. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/rust/cluxion_queue/Cargo.lock +0 -0
  20. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/rust/cluxion_queue/Cargo.toml +0 -0
  21. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/rust/cluxion_queue/pyproject.toml +0 -0
  22. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/rust/cluxion_queue/src/context.rs +0 -0
  23. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/rust/cluxion_queue/src/dispatch.rs +0 -0
  24. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/rust/cluxion_queue/src/guard.rs +0 -0
  25. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/rust/cluxion_queue/src/lib.rs +0 -0
  26. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/rust/cluxion_queue/src/main.rs +0 -0
  27. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/rust/cluxion_queue/src/queue.rs +0 -0
  28. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/rust/cluxion_queue/src/types.rs +0 -0
  29. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_agentplugin_preprocessing/__init__.py +0 -0
  30. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_agentplugin_preprocessing/cli.py +0 -0
  31. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_agentplugin_preprocessing/doctor/__init__.py +0 -0
  32. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_agentplugin_preprocessing/doctor/catalog.json +0 -0
  33. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_agentplugin_preprocessing/doctor/framework.py +0 -0
  34. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_agentplugin_preprocessing/doctor/probes.py +0 -0
  35. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_agentplugin_preprocessing/guard_watch.py +0 -0
  36. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_agentplugin_preprocessing/hermes_config.py +0 -0
  37. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_agentplugin_preprocessing/plugin.py +0 -0
  38. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_agentplugin_preprocessing/plugin.yaml +0 -0
  39. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_agentplugin_preprocessing/runner.py +0 -0
  40. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_agentplugin_preprocessing/schemas.py +0 -0
  41. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/__init__.py +0 -0
  42. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/__main__.py +0 -0
  43. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/adapters/__init__.py +0 -0
  44. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/adapters/contract.py +0 -0
  45. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/adapters/grok_build.py +0 -0
  46. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/adapters/hermes.py +0 -0
  47. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/adapters/spec.py +0 -0
  48. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/bootstrap.py +0 -0
  49. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/cli.py +0 -0
  50. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/core/__init__.py +0 -0
  51. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/core/clarification.py +0 -0
  52. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/core/context_compress.py +0 -0
  53. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/core/dispatch_store.py +0 -0
  54. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/core/harness.py +0 -0
  55. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/core/intent.py +0 -0
  56. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/core/ledger.py +0 -0
  57. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/core/ledger_codec.py +0 -0
  58. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/core/llm_compress.py +0 -0
  59. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/core/plan_codec.py +0 -0
  60. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/core/preprocess.py +0 -0
  61. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/core/types.py +0 -0
  62. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/core/work_queue.py +0 -0
  63. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/guard_daemon_host.py +0 -0
  64. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/models/__init__.py +0 -0
  65. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/models/supervisor.py +0 -0
  66. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/models/vllm_mlx.py +0 -0
  67. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/resources/__init__.py +0 -0
  68. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/resources/guard_bridge.py +0 -0
  69. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/resources/py_queue.py +0 -0
  70. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/resources/queue_bridge.py +0 -0
  71. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/resources/rust_bridge.py +0 -0
  72. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/web/__init__.py +0 -0
  73. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/src/cluxion_runtime/web/browser_bridge.py +0 -0
  74. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/runtime/test_auto_compress_middleware.py +0 -0
  75. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/runtime/test_browser_bridge.py +0 -0
  76. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/runtime/test_clarification.py +0 -0
  77. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/runtime/test_cluxion_runtime_spine.py +0 -0
  78. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/runtime/test_context_compress.py +0 -0
  79. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/runtime/test_contract.py +0 -0
  80. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/runtime/test_dispatch_store.py +0 -0
  81. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/runtime/test_guard.py +0 -0
  82. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/runtime/test_guard_daemon_host.py +0 -0
  83. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/runtime/test_ledger.py +0 -0
  84. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/runtime/test_py_queue_concurrency.py +0 -0
  85. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/runtime/test_queue_backends.py +0 -0
  86. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/runtime/test_runtime_adapter_cli.py +0 -0
  87. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/runtime/test_rust_queue.py +0 -0
  88. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/runtime/test_supervisor.py +0 -0
  89. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/test_bootstrap.py +0 -0
  90. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/test_doctor.py +0 -0
  91. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/test_guard_watch.py +0 -0
  92. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/test_hermes_config.py +0 -0
  93. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/test_packaging_policy.py +0 -0
  94. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/test_plugin.py +0 -0
  95. {cluxion_agentplugin_preprocessing-0.3.16 → cluxion_agentplugin_preprocessing-0.3.17}/tests/test_runner.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cluxion-agentplugin-preprocessing
3
- Version: 0.3.16
3
+ Version: 0.3.17
4
4
  Summary: Universal agent plugin for Cluxion preprocessing, honesty contracts, clarification, Rust work queue, and resource-aware harness handoff.
5
5
  Project-URL: Homepage, https://github.com/cluxion/cluxion-Agentplugin-preprocessing
6
6
  Project-URL: Repository, https://github.com/cluxion/cluxion-Agentplugin-preprocessing
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "cluxion-agentplugin-preprocessing"
7
- version = "0.3.16"
7
+ version = "0.3.17"
8
8
  description = "Universal agent plugin for Cluxion preprocessing, honesty contracts, clarification, Rust work queue, and resource-aware harness handoff."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.11"
@@ -167,13 +167,6 @@ def _cold_demote(content: str, store_id: str) -> bool:
167
167
  text=True,
168
168
  timeout=30,
169
169
  )
170
- subprocess.run(
171
- [_FORGETFORGE_BIN, "cold", store_id],
172
- check=True,
173
- capture_output=True,
174
- text=True,
175
- timeout=15,
176
- )
177
170
  return True
178
171
  except (OSError, subprocess.TimeoutExpired, subprocess.CalledProcessError):
179
172
  return False
@@ -2,9 +2,11 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
+ import subprocess
6
+
5
7
  from cluxion_runtime.core import context_compress
6
8
  from cluxion_runtime.core.context_compress import _Msg
7
- from cluxion_runtime.core.hybrid_forget import apply_hybrid_forget
9
+ from cluxion_runtime.core.hybrid_forget import _cold_demote, apply_hybrid_forget
8
10
  from cluxion_runtime.core.preprocess import estimate_tokens
9
11
 
10
12
 
@@ -78,6 +80,45 @@ def test_stage3_via_compress_drops_middle_messages(monkeypatch) -> None:
78
80
  assert result.get("over_target_pinned_only") is True
79
81
 
80
82
 
83
+ def test_cold_demote_returns_true_on_successful_store_only(monkeypatch) -> None:
84
+ calls: list[list[str]] = []
85
+
86
+ def fake_run(cmd, **kwargs):
87
+ calls.append(cmd)
88
+ return subprocess.CompletedProcess(cmd, 0, "", "")
89
+
90
+ monkeypatch.setattr("cluxion_runtime.core.hybrid_forget.forgetforge_available", lambda: True)
91
+ monkeypatch.setattr("cluxion_runtime.core.hybrid_forget.subprocess.run", fake_run)
92
+
93
+ assert _cold_demote("recoverable content", "sess-abc123") is True
94
+ assert len(calls) == 1
95
+ assert calls[0] == ["forgetforge", "store", "sess-abc123", "--content", "recoverable content"]
96
+
97
+
98
+ def test_cold_demote_returns_false_when_store_fails(monkeypatch) -> None:
99
+ def fake_run(cmd, **kwargs):
100
+ raise subprocess.CalledProcessError(1, cmd)
101
+
102
+ monkeypatch.setattr("cluxion_runtime.core.hybrid_forget.forgetforge_available", lambda: True)
103
+ monkeypatch.setattr("cluxion_runtime.core.hybrid_forget.subprocess.run", fake_run)
104
+
105
+ assert _cold_demote("content", "sess-fail") is False
106
+
107
+
108
+ def test_cold_demote_skips_subprocess_when_forgetforge_unavailable(monkeypatch) -> None:
109
+ calls: list[list[str]] = []
110
+
111
+ def fake_run(cmd, **kwargs):
112
+ calls.append(cmd)
113
+ return subprocess.CompletedProcess(cmd, 0, "", "")
114
+
115
+ monkeypatch.setattr("cluxion_runtime.core.hybrid_forget.forgetforge_available", lambda: False)
116
+ monkeypatch.setattr("cluxion_runtime.core.hybrid_forget.subprocess.run", fake_run)
117
+
118
+ assert _cold_demote("content", "sess-none") is False
119
+ assert calls == []
120
+
121
+
81
122
  def test_stage3_sets_dropped_without_backup_for_recoverable(monkeypatch) -> None:
82
123
  monkeypatch.setattr("cluxion_runtime.core.hybrid_forget.forgetforge_available", lambda: False)
83
124
  messages = [