Replace OpenCode harness with Hermes, remove workspace dependency, and move vocabulary/corrections to app folder

This commit is contained in:
Adolfo Reyna
2026-08-09 21:35:52 -04:00
parent 6e8a578e86
commit 2f181ff4f1
25 changed files with 2395 additions and 436 deletions
+49
View File
@@ -0,0 +1,49 @@
#!/usr/bin/env python3
"""Tests for model_manager.py and environment PATH resolution."""
import os
import shutil
import tempfile
from pathlib import Path
from model_manager import ModelManager, DEFAULT_MODEL
from env_setup import setup_environment_path
def test_environment_path():
setup_environment_path()
path_env = os.environ.get("PATH", "")
assert "/Users/adolforeyna/.local/bin" in path_env or os.path.expanduser("~/.local/bin") in path_env
paseo_loc = shutil.which("paseo")
assert paseo_loc is not None, f"Paseo CLI not found on PATH: {path_env}"
print(f"PASS: setup_environment_path verified (paseo at {paseo_loc})")
def test_model_manager():
with tempfile.TemporaryDirectory() as tmpdir:
workspace = Path(tmpdir)
mm = ModelManager(workspace)
# Test default
assert mm._active_model == DEFAULT_MODEL
# Test model listing
models_text = mm.list_available_models()
assert "Available Models:" in models_text
assert "Active Model:" in models_text
# Test setting alias
ok, msg = mm.apply_model("hermes")
assert ok
assert mm._active_model == "hermes-3"
# Test persistence
saved_file = workspace / "model_settings.json"
assert saved_file.exists()
# Reload in new instance
mm2 = ModelManager(workspace)
assert mm2._active_model == "hermes-3"
print("PASS: test_model_manager verified")
if __name__ == "__main__":
test_environment_path()
test_model_manager()
print("\nAll tests passed successfully!")