Commit Graph
27 Commits
Author SHA1 Message Date
yilsemandClaude Opus 5.5 5c76c24c9c feat(codex-link): choose which models fill the Codex model menu and beta.41
Server CI and Windows package / verify (push) Successful in 2m54s
Server CI and Windows package / windows-package (push) Successful in 4m50s
The Codex desktop app's model picker asks the app server for one page of
at most 100 models and never asks for the next page (a fixed limit in the
app). AITURK sent 262, so everything after the first 100 in alphabetical
provider order was out of reach from the menu (Gemini, most NanoGPT
uncensored models, Grok, ModelArk...).

- Bridge: bridge.json codex_liste {medya_gizle, efor_gizle, one_al, gizli},
  re-read when the file changes. Image/audio/video models and "-low/-high"
  copies whose base model is listed are left out by default; pinned models
  follow Codex's own models in the given order; hidden ones are removed.
  The candidate list with each model's place is written to
  log/son-liste/codex-adaylar.json for the settings screen.
- Settings > Codex Bağlama: "Models shown in Codex" with a live count of the
  100 slots, search, filter, pin/move up/hide per model and the two switches.
- The IDE keeps codex_liste when it rewrites bridge.json.
- Bridge version 21, IDE 1.0.0-beta.41.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 05:16:40 +03:00
yilsem 557e619499 feat(codex-link): AITURK work routing setting and beta.40
Server CI and Windows package / verify (push) Successful in 2m42s
Server CI and Windows package / windows-package (push) Successful in 6m21s
- Default routing rule (user decision, 15 Oct 2026): repeating/scheduled work goes to the AITURK IDE bot as a cron job; coding stays in Codex (itself or its subagents); 'Codex' or 'sen yap' keeps everything in Codex.
- Settings > Codex Bağlama: choice (recommended / send large work / never / custom text) with a text box and restore-default; written to bridge.json aiturk_hat.
- Bridge re-reads aiturk_hat when bridge.json changes: no restart. IDE apply keeps aiturk_hat instead of wiping it.
- Bridge version 20, IDE 1.0.0-beta.40. Jev untouched.
2026-10-15 02:18:18 +03:00
yilsemandClaude Opus 5.5 a7ba300448 fix(codex-bridge): close the gaps an independent review found
Server CI and Windows package / verify (push) Successful in 3m23s
Server CI and Windows package / windows-package (push) Successful in 7m9s
- One decision per real turn: a turn starts with a user message after the
  previous final answer; tool steps, messages typed mid-turn, a lone "."
  and compaction keep the combo. Works without prompt_cache_key too.
- The virtual Otomatik name never reaches the gateway (stage off or error
  -> last choice or targets.zor); prefilter.target may not be it.
- finishCheck: at most once per turn; a broken, empty or refused retry
  delivers the already approved first answer.
- Layer window filter: only trusted windows, never the last layer.
- Correction channel only on always-pass targets while checks are on;
  Sesli-Hizli-Zeki stays always-pass by default; a >256 KB SSE frame
  passes unfiltered instead of breaking the stream.
- Turn-start questions wait in the local queue no longer than their
  timeout; decision-turn memory under a lock with refreshed order.
- Dify fetch refuses redirects (the app key never moves host); the
  rules file write retries a Windows sharing violation.
- An unreadable settings file no longer breaks every request.
- TypeScript accepts only https:// URLs the bridge accepts;
  finishCheck.timeoutSeconds (unused) removed.

Tests: 310 bridge tests, 36 electron tests; side-bridge live run for the
turn, prefilter (incl. decision timeout) and finish-check paths.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 08:14:38 +03:00
yilsemandClaude Opus 5.5 7c4ef18df0 feat(codex-bridge): decision-model stages, Dify rules and beta.39
Owner request, 14 October 2026: use the decision model (Jev / Celeris) at
several stages, let Dify supply the rules, code it without new bugs.
Every new stage is switched on in Settings > Kademeli Gecis and starts
disabled, so the upgrade changes no behaviour by itself.

- Settings schema 2 (Python and TypeScript validate the same rules); a
  schema 1 file is filled from the defaults. Default chain is now
  Katman-1 -> Katman-2 -> Katman-3 with Katman-3, Chat-Model and
  bekci-sesli-bekci always passing (owner decision of the same day).
- watchModels: the Bekci correction channel follows a settings list
  instead of the hard-coded Sesli-Hizli-Zeki.
- prefilter: a predicted refusal starts the step at the chosen layer.
- autoRoute: virtual "Otomatik" model; one decision per user turn picks
  the combo, tool steps of the same turn keep it.
- finishCheck: an answer that stops early goes back to the same model once.
- A layer whose window cannot hold the request is skipped.
- policy: stage rules from a Dify workflow (karar_politikasi.py), fetched
  in the background, validated, last good copy kept; turns never wait.
- karar_sor.py: verifierCheck for the dynamic-workflow acceptance step.
- Bridge version 19, IDE 1.0.0-beta.39.

Tests: 299 bridge tests, 36 electron tests; live run on a side bridge
(port 8797) with Celeris and the AITURK gateway for every stage.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 07:48:33 +03:00
yilsem 049c4d1338 fix(installer): preserve healthy Python runtime and Codex connections
Server CI and Windows package / verify (push) Successful in 2m47s
Server CI and Windows package / windows-package (push) Successful in 6m58s
2026-10-13 17:22:28 +03:00
yilsem e7d3080e0a fix: preserve native model switches and bound project searches
Server CI and Windows package / verify (push) Failing after 1m40s
Server CI and Windows package / windows-package (push) Skipped
2026-10-13 16:32:50 +03:00
yilsem db5e876f40 fix(bridge): preserve plaintext peer task payloads for external models
Server CI and Windows package / verify (push) Successful in 3m16s
Server CI and Windows package / windows-package (push) Successful in 8m18s
2026-10-13 08:05:00 +03:00
yilsem ab7a721fbc Ship beta34 with external agent tasks, terminal SSE and live token limits
Server CI and Windows package / verify (push) Successful in 3m13s
Server CI and Windows package / windows-package (push) Successful in 7m56s
2026-10-13 07:32:57 +03:00
yilsem 2cca6a66a6 Preserve namespaced Codex tools across external model calls
Server CI and Windows package / verify (push) Successful in 2m11s
Server CI and Windows package / windows-package (push) Successful in 10m44s
2026-10-13 04:54:52 +03:00
yilsem a68d3e2272 Restart stale Codex bridge when installing compression settings
Server CI and Windows package / verify (push) Successful in 3m11s
Server CI and Windows package / windows-package (push) Successful in 7m1s
2026-10-13 04:14:01 +03:00
yilsem 91ecad8e5c Preserve native Codex history and add configurable cross-model compression
Server CI and Windows package / verify (push) Successful in 4m47s
Server CI and Windows package / windows-package (push) Successful in 8m47s
Separate encrypted reasoning from actual compaction, stop migration after native return, and retain full history and recent exchanges. Add typed settings, Gemini fallback, verified provider windows, bounded summaries and durable concurrent checkpoints.

Validation: 245 bridge tests plus focused concurrency tests; 71 settings/connection tests; 66 supplementary tests; TypeScript checks; renderer and Electron bundles; real primary/native/fallback summary probes and 700K input acceptance.
2026-10-13 03:36:42 +03:00
yilsem 883b1dc824 feat(settings): configure Jev evaluation and model transitions 2026-10-13 01:07:58 +03:00
yilsem 369f6c2ca8 fix(codex-link): isolate model transfers and widen local connection capacity
Server CI and Windows package / verify (push) Successful in 2m3s
Server CI and Windows package / windows-package (push) Successful in 6m58s
2026-10-13 00:35:08 +03:00
yilsem b66d9164ad Wire authenticated voice watch notices through an owned native launcher 2026-10-12 19:24:33 +03:00
yilsem 017c6629d2 fix(codex-bridge): exempt the voice combo from Jev checks 2026-10-12 16:42:22 +03:00
yilsem e6cd197a2e fix(bridge): load bundled Windows libraries only on Windows 2026-10-11 16:59:08 +03:00
yilsem 3726d2a553 fix(codex-bridge): preserve tool model and stream preparation without Jev fallback 2026-10-11 15:51:43 +03:00
yilsemandClaude Opus 5.5 8fbbe226db Kopru: son katmanin dondurdugu oldugu gibi gider, sarmalayici yok
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-11 10:43:00 +03:00
yilsemandClaude Opus 5.5 06039b904d Kopru: secili model hata verirse siradaki katman yapar
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>
2026-10-11 10:40:13 +03:00
yilsemandClaude Opus 5.5 7547de1852 Kopru: her adim Jev'e gider, sure ve boyut siniri yok
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>
2026-10-11 10:21:12 +03:00
yilsemandClaude Opus 5.5 ff53cafb5c Kopru: bos donen adim kabul edilmez, siradaki katman yapar
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>
2026-10-11 10:03:40 +03:00
yilsemandClaude Opus 5.5 77504b9aa4 Kopru: hata donduren katman atlanir, Jev devre kesicisi kalkti, ek model siniri 300
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>
2026-10-11 09:40:44 +03:00
yilsemandClaude Opus 4.8 11bbaddcc7 feat(codex-bridge): Jev checks every added model, routing a block to Katman-1 first
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>
2026-10-11 09:15:59 +03:00
yilsemandClaude Opus 5.5 be0b33e89b feat(codex-bridge): Jev routes a blocked step down the layer combos, no exceptions
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>
2026-10-11 09:06:21 +03:00
yilsemandClaude Opus 5.5 5556ad11af feat(codex-bridge): per-step check with Jev, blocked steps go to a fallback model
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>
2026-10-11 07:56:27 +03:00
yilsemandClaude Opus 5.5 c8993d58cc feat(codex-bridge): web search for added models, forgiving spoken model names
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>
2026-10-11 07:25:30 +03:00
yilsemandClaude Opus 5.5 23e8aa8191 feat(codex-bridge): split into a splitter and a separate bridge process
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>
2026-10-11 06:13:29 +03:00