fix(retrieval): run search as local CLI
CI / linux (push) Successful in 6s

This commit is contained in:
fraujulian committed 2026-09-17 19:27:11 +02:00
1 parent bb5ff39f03
commit 9b312cd840
8 files changed
+90 -111

No files matched your search

+8 -34
View File
@@ -16,15 +16,13 @@ SPEC.loader.exec_module(MODULE)
class SemanticRetrievalTests(unittest.TestCase):
def test_codex_registration_sets_tool_timeout(self):
def test_sync_does_not_register_mcp(self):
with tempfile.TemporaryDirectory() as directory:
config = Path(directory) / 'config.toml'
config.write_text('[mcp_servers.my-ai-qwen3-retrieval]\ncommand = "python"\n\n[mcp_servers.my-ai-qwen3-retrieval.env]\nHF_HOME = "cache"\n', encoding='utf-8')
MODULE.set_codex_tool_timeout(config, 1800)
self.assertEqual(config.read_text(encoding='utf-8'),
'[mcp_servers.my-ai-qwen3-retrieval]\ncommand = "python"\ntool_timeout_sec = 1800\n\n[mcp_servers.my-ai-qwen3-retrieval.env]\nHF_HOME = "cache"\n')
home = Path(directory) / 'home'
output = io.StringIO()
with redirect_stdout(output):
MODULE.sync(ROOT, home, ['codex', 'claude'], True, True, False)
self.assertNotIn('mcp', output.getvalue().lower())
def test_runtime_prefers_cuda_packages_for_nvidia_gpu(self):
with tempfile.TemporaryDirectory() as directory:
@@ -60,24 +58,7 @@ class SemanticRetrievalTests(unittest.TestCase):
self.assertEqual(output.getvalue(), '')
self.assertFalse(home.exists())
def test_claude_registration_places_name_before_environment(self):
with tempfile.TemporaryDirectory() as directory:
home = Path(directory) / 'home'
calls = []
original = MODULE.command
original_runtime = MODULE.ensure_runtime
MODULE.command = lambda client, arguments, home, dry_run: calls.append((client, arguments))
MODULE.ensure_runtime = lambda target, dry_run: target / '.venv' / 'bin' / 'python'
try:
MODULE.sync(ROOT, home, ['claude'], True, False, False)
finally:
MODULE.command = original
MODULE.ensure_runtime = original_runtime
add = calls[0][1]
self.assertEqual(add[:5], ['claude', 'mcp', 'add', MODULE.NAME, '--scope'])
self.assertIn('-e', add)
def test_disable_removes_owned_runtime_and_registration(self):
def test_disable_removes_owned_runtime_without_cli_registration(self):
with tempfile.TemporaryDirectory() as directory:
home = Path(directory) / 'home'
target = home / '.my-ai-configuration/semantic-retrieval'
@@ -87,14 +68,7 @@ class SemanticRetrievalTests(unittest.TestCase):
state_path = target.parent / 'semantic-retrieval.json'
state_path.write_text(json.dumps({'version': 1, 'clients': ['codex'], 'files': {
name: hashlib.sha256((target / name).read_bytes()).hexdigest() for name in MODULE.FILES}}))
calls = []
original = MODULE.command
MODULE.command = lambda client, arguments, home, dry_run: calls.append((client, arguments))
try:
MODULE.sync(ROOT, home, ['codex'], False, False, False)
finally:
MODULE.command = original
self.assertEqual(calls[0][1], ['codex', 'mcp', 'remove', MODULE.NAME])
MODULE.sync(ROOT, home, ['codex'], False, False, False)
self.assertFalse(target.exists())
self.assertFalse(state_path.exists())