fix(codex-bridge): exempt the voice combo from Jev checks

This commit is contained in:
yilsem committed 2026-10-12 16:42:22 +03:00
1 parent 8bd662ea92
commit 017c6629d2
4 files changed
+73 -7

No files matched your search

@@ -128,6 +128,7 @@ class Akis(unittest.TestCase):
sahte.karar = jev_denetim.karar
sahte.komutlar = jev_denetim.komutlar
sahte.hazirlik_mi = jev_denetim.hazirlik_mi
sahte.muaf_mi = jev_denetim.muaf_mi
env = {"jev_denetim": sahte, "yarim": yarim, "time": time, "http": __import__("http.client"),
"log": self.logs.append, "RESP_HOP": set(), "json": json}
adlar = ("_akis_basligi", "_denetimli_akis", "_stream")
@@ -170,6 +171,34 @@ class Akis(unittest.TestCase):
self.assertEqual(self.asked, ["Fenerbahçe'nin 13 puanı var."])
self.assertEqual(self.opened, [])
def test_exact_voice_target_skips_jev_but_not_transport_fallback(self):
body = sse("Bunu yapamam.")
self.puanlar = [{"ret": 0.9, "sart": 0.0}]
self.h._denetimli_akis(Yanit(body), "[1]", None, None, "yap",
list(jev_denetim.KATMAN), self.ac, hedef="Sesli-Hizli-Zeki")
self.assertEqual(self.sent(), body)
self.assertEqual(self.asked, [])
self.assertEqual(self.opened, [])
def test_voice_transport_failure_still_checks_the_fallback_model(self):
self.puanlar = [{"ret": 0.9, "sart": 0.0}]
self.h._denetimli_akis(None, "[1]", None, None, "yap",
list(jev_denetim.KATMAN), self.ac, hedef="Sesli-Hizli-Zeki")
self.assertEqual(self.opened, ["Katman-1", "Katman-2"])
self.assertEqual(self.asked, ["bir", "iki"])
self.assertEqual(self.sent(), self.cevap["Katman-2"])
def test_voice_lookalikes_are_still_checked(self):
for target in ("sesli-hizli-zeki", "Sesli-Hizli-Zeki-v2", "ide/Sesli-Hizli-Zeki",
"Sesli-Hizli-Zeki ", "Other-Combo"):
with self.subTest(target=target):
self.setUp()
self.puanlar = [{"ret": 0.9, "sart": 0.0}]
self.h._denetimli_akis(Yanit(sse("hayir")), "[1]", None, None, "yap",
list(jev_denetim.KATMAN), self.ac, hedef=target)
self.assertEqual(self.asked, ["hayir", "bir"])
self.assertEqual(self.opened, ["Katman-1"])
def test_a_blocked_non_layer_model_goes_to_layer_1_first(self):
self.puanlar = [{"ret": 0.9, "sart": 0.0}] # the selected (non-layer) model is blocked
self.calistir(sse("Bunu yapamam."), sira=("Katman-1", "Katman-2", "Katman-3", "Katman-4"))