Hata kodu, baglanamama ve yarida kopma da siradaki katmana gider.
Siradakine gecilen adimda onceki cevap verilmez; son katman da
acilamazsa onun kendi hatasi gider.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Yazisiz adimda cagrilan komut sorulur; kullanici mesaji bulunamasa da
sorulur; Jev'e giden istek ve cevap kesilmez, bekleme suresi siniri yok.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Ne yazi ne arac cagrisi iceren yanit (hata olayi dahil) cevap diye
verilmiyor; secili modelde de katmanda da siradaki katmana geciliyor.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Katman-2 Codex isteginde hata olayi donduruyor, kopru bunu cevap diye
gonderiyor ve Codex ayni adimi bastan deneyip turu cevapsiz birakiyordu.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Any added model's answer is now checked, not just the layer combos; a blocked
answer falls to Katman-1, then 2, 3, 4. A selected layer only tries the ones
after it; Katman-4 is delivered unasked. Layer fallbacks always open through
the AITURK gateway, which hosts the combos, whatever route the model used.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Katman-1..3 answers are checked by Jev each step; a blocked step is redone by
the next layer combo. Katman-4 is delivered unasked. The technical-obstacle,
question and third-party exemptions and the settings overrides are gone.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
User decision (11 Oct 2026): every step of an added model is checked in the
bridge; Jev only passes or blocks; a blocked step is redone by
Uncensored-Uygulama and the next step goes back to the selected model.
The bridge buffers the step's answer, asks Jev four yes/no questions and
decides in code: blocked when the answer refuses or dodges the request, or
changes it with its own conditions without asking; passed when it reports a
concrete technical obstacle, asks the user a question, or has no text (tool
calls only). While buffering the client gets SSE comment lines. Jev unreachable
or fallback unavailable: the first answer is delivered. Codex's own models do
not reach the bridge and are not checked.
Also logs the shape of each forwarded request (not its content): the recurring
"upstream 400" turned out to be Codex's trailing configuration_update item.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Added models had no web search: Codex's built-in one runs on OpenAI's side and
the bridge drops it from their tool list. Measured in a voice session on
11 Oct 2026: a model looked for a search tool ten times and ended the turn
with no answer. The bridge now tells added models two ready commands (ara.py:
search and read a page, standard library only, no key). Codex's own models
never see the note: their requests do not reach the bridge.
Spoken model names: a half-spoken word matches the start of a name part
("think" -> thinking, "obli" -> obliterated), and when one candidate is the
others minus extra words, the one without the unsaid suffix is picked
("Qwen 3.8 Obliterated" -> not the ":thinking" one).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
bridge.py is now a small splitter with no features: a request for one of
Codex's own models goes to chatgpt.com byte for byte, a request for an added
model goes to kopru.py, which runs as its own process. Codex's own models no
longer pass through the feature code at all, and restarting or losing the
bridge process does not touch them.
Measured with real Codex on spare ports: own model answers; forced compaction
on the own model completes (twice) while the bridge process is restarted;
added model answers; no own-model request reaches the bridge process.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>