Coredence

Değişiklikler

Ne değişti, ne zaman

Görüntüleyici ve motor birlikte çıkıyor. Yayınlanmadı yazan her şey derlenmiş ve noterlenmiş ama henüz herkese açık değil.

2.1.6 (74)

Ekim 2026
  • **Çatışmayı cevaplarken çökme giderildi.** macOS'ta gelen kutusundaki bir kartı cevaplamak, saatlik döngü tam o anda zihne yazıyorsa uygulamayı kapatabiliyordu: cevap da motorun yazısı da zihni yeniden okuyordu, iki ayrı iş parçacığından aynı anda. Zihin artık tek bir yerde okunuyor, iki okuma çakışamıyor. 2.1.4'te bir kez görüldü; sebebi 2.1.5'te de duruyordu.
  • **Çatışma sorusu anıdan söz ediyor.** Kart "Bu kuralla çelişen davranış görüldü … Kural hâlâ geçerli mi?" diyordu, kimi zaman çift noktayla. Artık "Bu anıyla" ve "Anı hâlâ doğru mu?" diyor; yeni sorularda da bekleyenlerde de.

2.1.5 (73)

Ekim 2026
  • **Limit beklemesi uyarı değil.** Pekiştirme modelin haftalık limitine takılınca döngü bekliyor ve limit yenilenince aynı yerden devam ediyor. Bu artık ana ekranda kırmızı bir şerit ve "sağlıksız" bir zihin değil; Ayarlar › Motor'da kum saatli sakin bir satır: *Pekiştirme bekliyor: haftalık limit doldu — …*. Düşen bir döngü hâlâ uyarı.
  • **Maskeleme kendi çıktısını yeniden maskelemiyor.** `ANAHTAR=değer` biçimindeki sırları saklayan kural, daha önce yazdığı `[SECRET]`i yeni bir değer sanıp tırnağı ya da `Bearer` sözcüğünü de yutuyordu; doğrulama örneklemi bunu sızıntı sayıp uyarıyordu. Açık bir sır yoktu. Kural değiştiği için güncellemeden sonra bir kez *Maskeleme kuralları değişti* uyarısı çıkacak: *Yeniden maskele* damgayı yeniliyor, satırlar değişmiyor.
  • **Kaynaklar baktığı yeri gösteriyor.** Varsayılan yol açılmış hâliyle yazılıyor (Windows'ta `~/.codex/sessions` değil `C:\Users\…\.codex\sessions`), kapalı bir kaynağın altında da açılınca nereye bakacağı duruyor. macOS'ta anahtar açılınca liste yeniden okunuyor. Okunmaya başlamadan önce susmuş bir kaynak (geçmişi yalnız eskiye ait Codex ya da Gemini CLI) artık "sessiz" diye uyarmıyor.
  • **Hızlı not kendini anlatıyor.** Başlığı, Kaydet düğmesi ve ne yaptığını söyleyen bir satırı var; Enter'ın kaydettiğini bilmek gerekmiyor.
  • **Bekleyenler.** macOS menü çubuğu panelindeki *Bekleyenleri aç* doğrudan gelen kutusunu açıyor. Bir kararın kaydı uzayınca kart nedenini söylüyor: saatlik döngü o an zihne yazıyor olabilir, sırası gelince kaydediliyor.

2.1.4 (72)

Ekim 2026
  • **Gemini CLI oturumları okunuyor.** Gemini CLI'da yazdıkların artık zihne giriyor (`~/.gemini/tmp`, her projenin kendi klasöründe). Gemini'nin kendi eklediği ortam bilgisi, araç cevapları, görseller ve `@dosya` ile mesaja gömülen dosya içeriği okunmuyor; yalnız senin yazdığın. Kurulum kayıt bulursa kaynağı açıyor; var olan bir zihinde kapalı duruyor ve açmak sana kalıyor.
  • **Kapalı kaynağın kaydı varsa söyleniyor.** Ayarlar › Kaynaklar'da kapalı bir kaynağın bu makinede okunacak kaydı varsa altında *Bu makinede kayıtları var* yazıyor. Sonradan açılan Codex ya da Gemini CLI, okunduğu hâlde "boş" görünüyordu; artık baktığı yeri ve dosya sayısını gösteriyor.
  • **İngilizce pencerede Türkçe kalanlar.** Toplu işin cevabı, bir karar ya da soru düğmesinin hatası, korteks ve dışa aktarma hataları ve hızlı notun cevabı zihnin dilinde. Kaynak listesinde "Codex oturumları" İngilizcede İngilizce.
  • **Kapalı kaynak için Tam Disk Erişimi istenmiyor.** macOS'ta Mesajlar ya da Apple Notes'u kapattıysan Ayarlar › Motor artık o kaynak için izin istemiyor.

2.1.3 (71)

Ekim 2026
  • **Uyarılar için Onar düğmesi.** Ayarlar › Motor'daki iki uyarı yalnız bir terminal komutuyla bitiyordu: aynı mesajın bir anıya iki kez sayıldığı eski tekrarlar ve olaylar yazıldığından beri değişen maskeleme kuralları. Altlarında artık *Tekrarları birleştir* ve *Yeniden maskele* düğmeleri var; ikisi de geri alınamaz değişiklik yaptığı için önce ne olacağını söyleyip soruyor.
  • **Windows'ta yanlış uyarılar kalktı.** Anahtarı açık ama hiç yer gösterilmemiş bir kaynak (WhatsApp dökümleri, not klasörleri) ana ekranda kalıcı bir "okunamıyor" uyarısı oluyordu; artık bekleyen bir ayar sayılıyor. Kapalı ya da bu bilgisayarda olmayan bir kaynağın susması da "sessizlik gerçek" diye yazılmıyor. Yalnız macOS'ta olan Mesajlar ve Apple Notes Windows'un kaynak listesinden çıktı.
  • **Haftalık özet bekleyen kararları da söylüyor.** Bekleyenler'de karar varsa özetin son satırı kaç tane olduğunu yazıyor.
  • **Sayılar okunur.** Bekleyen pekiştirme tek bir olaydayken "0.0 milyon jeton" görünüyordu; birim artık sayının büyüklüğüne göre seçiliyor. Motorun Türkçe cümlelerinde binlik ayırıcı nokta (24.824) ve pekiştirme bekleme cümlesi İngilizcede İngilizce.

2.1.2 (70)

Ekim 2026
  • **Çözülmüş çatışmalar kendiliğinden kapanıyor.** Bir anıyla çelişen bir davranış görülünce sorulan soru, cevaplanana kadar anıyı tartışmalı tutuyordu: asistanlara işaretli gidiyor, sohbet asistanlarına verilen metne girmiyordu. Soru açıldıktan sonra anı üç kez daha doğrulandıysa o davranış bir istisnaymış; soru artık kendiliğinden "anı geçerli" kararıyla kapanıyor, gerekçesi kayda geçiyor. Hiç doğrulanmamış sorulara dokunulmuyor.
  • **VS Code'a dosya olarak ver.** Ayarlar › Asistanlar › *Dosya olarak da ver* artık VS Code'u da içeriyor: zihin, Copilot'un her oturumda okuduğu `~/.copilot/copilot-instructions.md` dosyasına yazılıyor. GitHub Copilot CLI de aynı dosyayı okuyor. Dosyadaki kendi yazdıklarına dokunulmuyor.
  • **Haftalık özetin anahtarı açık kalıyor.** macOS izin sorusunun cevabını sen *İzin ver*e basmadan döndürüyor ve anahtar bu yüzden kendiliğinden kapanıyordu. Artık açık kalıyor; izin yoksa altında bir not ve Bildirim ayarlarını açan bir düğme çıkıyor.

2.1.1 (69)

Ekim 2026
  • **Hızlı not.** Kendin hakkında bir satır, pencere açmadan: macOS'ta menü çubuğu panelinde arama kutusunun altında, Windows'ta tepsi menüsünde *Kendin hakkında bir not…*. Satır günlüğe yazılıyor; senin kendi sözün olduğu için bir sonraki döngüde tek başına anıya dönüşebiliyor. Asistanlar zihni yalnız okuyor; yazan sensin.
  • **Yalnız yenileri ver.** *Sohbet asistanlarına ver* bölümünde Claude ve Gemini için, son verişten beri yeni anı varsa *Yalnız yenileri (N)* düğmesi çıkıyor: ikisi de aktarılanı var olan hafızayla birleştiriyor ve aynı anıları yeniden göndermek gürültü. ChatGPT'de yok; özel talimat kutusu üzerine yazılıyor. Komut satırından: `coredence handoff claude --new`.
  • **Haftalık özet.** Ayarlar'da açılınca pazar akşamı bir bildirim bu hafta kaç yeni anı oluştuğunu ve en güçlüsünü söylüyor; tıklayınca pencere açılıyor. Bildirim bu bilgisayarda kalıyor. Kapalı başlıyor.

2.1.0 (68)

Ekim 2026
  • **Oturum açınca başlat.** Ayarlar'da yeni bir anahtar: açıkken bilgisayar açıldığında Coredence pencere açmadan başlıyor — macOS'ta menü çubuğunda, Windows'ta tepside. Bilgisayar yeniden başladıktan sonra da son döngü ve bekleyenler orada duruyor. Windows'ta Görev Yöneticisi'nin Başlangıç sekmesinde görünüyor; kaldırınca kayıt da siliniyor.
  • **Tepsi menüsü koyu ve dar.** Windows'ta menü pencereyle aynı koyu renkte açılıyor. Bu haftanın anıları bir alt menüde: ana menüde dururken menüyü en uzun cümle kadar genişletiyorlardı. Üstte iki kısa satır kaldı — kaç anı, kaç bekleyen ve son döngünün ne zaman olduğu.

2.0.9 (67)

Ekim 2026
  • **Windows'ta tepsi simgesi.** Saatin yanında artık Coredence duruyor: üstüne gelince hafızadaki anı sayısı, sağ tıklayınca bu hafta öğrendiği son üç anı, son pekiştirme döngüsünün ne dediği, *Pencereyi aç*, *Şimdi güncelle*, *Bekleyenleri aç* ve *Coredence'tan çık*. Menüdeki bir anıya tıklamak pencereyi o anıyla açıyor. Pencereyi kapatınca uygulama kapanmıyor, tepsiye iniyor (Ayarlar › *Kapatınca tepside kalsın*, açık başlıyor); macOS'taki menü çubuğu simgesinin karşılığı. Pekiştirme döngüsü ikisinde de çalışıyor.
  • **Windows'ta tek pencere.** Coredence çalışırken Başlat'tan yeniden açmak ikinci bir uygulama başlatmıyor; çalışanın penceresi öne geliyor.

2.0.8 (66)

Ekim 2026
  • **Ne zaman verdiğini görürsün.** Ayarlar › Asistanlar › *Sohbet asistanlarına ver* artık her asistanın altında zihnin ona en son ne zaman verildiğini ve o günden beri kaç yeni anı doğduğunu gösteriyor. Sayıya yalnız o asistana gerçekten gidebilecek anılar giriyor; taslaklar, tartışmalı anılar ve gizlediğin korteksler girmiyor. Komut satırından: `coredence handoff --last`.
  • **Claude uygulaması artık "hiç okumadı" görünmüyor.** Claude uygulaması sunucuyu kendiliğinden çağırmıyor; zihni *Kopyala ve aç* ile aldıktan sonra da menü çubuğunda "henüz okumadı", ayarlarda "bağlı ama hiç okumadı" yazıyordu. Şimdi "zihni elle aldı" ve ne zaman aldığı görünüyor; boşuna çıkan uyarı da kalktı.
  • **ChatGPT'ye vermek bir adım kısaldı.** *Kopyala ve aç* ChatGPT'nin ana sayfası yerine ayarlar penceresini açıyor.

2.0.7 (65)

Ekim 2026
  • **Claude'a vermek tek adım.** *Kopyala ve aç* Claude'un tanıtım sayfasını açıyordu; aktarıma oradan bir düğmeyle daha geçiliyordu. Artık doğrudan Claude'un hafıza aktarım penceresi açılıyor. Yönerge de netleşti: penceredeki 1. adımın istemi kopyalanmıyor (panodaki zihnin silinir), metin doğrudan 2. adımdaki kutuya yapıştırılıyor.
  • **Mac'te sekmenin adı Asistanlar.** Ayarlar'daki "Bağlantı" sekmesi Windows'taki gibi "Asistanlar" oldu; kodlama asistanlarına bağlanmak da sohbet asistanlarına vermek de orada.

2.0.6 (64)

Ekim 2026
  • **Zihnini Claude'a, ChatGPT'ye ve Gemini'ye ver.** Bu sohbet asistanları zihnini kendiliğinden okumuyor; ChatGPT yerel bir sunucuya hiç bağlanamıyor. Her birinin dışarıdan metin alan bir kapısı var: Claude'un hafıza aktarımı, Gemini'nin *Hafızayı aktar*'ı, ChatGPT'nin özel talimatları. Ayarlar › Asistanlar (Mac'te 2.0.6'da "Bağlantı" adıyla) › *Sohbet asistanlarına ver* artık en güçlü anılarını o kapının kabul ettiği uzunlukta kopyalıyor, asistanı açıyor ve nereye yapıştıracağını tek cümleyle söylüyor. İzler, gizlediğin korteksler ve tartışmalı anılar girmiyor. Hiçbir şey gönderilmiyor; sen yapıştırıyorsun.
  • **Terminalsiz yerel model.** Kurulumda "bu makinede model" seçeneği `ollama pull qwen3:8b` komutuyla bitiyordu. Kurulum artık Ollama'ya bakıyor: yoksa *Ollama'yı indir* sayfasını açıyor, model yoksa *Modeli indir* onu Ollama'ya ilerleme çubuğuyla indirtiyor. Model hazır olunca kurulum devam ediyor.

2.0.5 (63)

Ekim 2026
  • **Yersiz "kaynak okunamıyor" uyarısı yok.** Ayarlar › Kaynaklar'da her kaynağı açmak, henüz okunacak bir şeyi olmayanları — Codex'in kurulu olmadığı makinede Codex'i, henüz indirilmemiş ChatGPT ya da Claude dışa aktarımını — kalıcı bir uyarıya çeviriyordu. Dosyası henüz her zamanki yerinde olmayan kaynak artık bozuk değil, bekliyor; dosya geldiği an okunuyor. Kendi yazdığın ve bir yere çıkmayan yol yine uyarıyor.
  • **Neden hiçbir şey okunmadığını söylüyor.** Bütün kaynaklar kapalıyken *Şimdi güncelle* tek kelime etmeden bitiyordu. Artık açık kaynak olmadığını ve nereden açılacağını söylüyor.
  • **Motor da uygulamanın dilinde.** Kurulum ve güncelleme günlükleri, menü çubuğu özeti ve denetimler artık anı, iz, korteks, pekiştirme, sinyal gücü, çatışma ve zihin diyor.

2.0.4 (62)

Ekim 2026
  • **Zihninin dijital ikizi.** Coredence artık ne olduğunun diliyle konuşuyor: yazdıklarından kurulan bir zihin. İki pencerede ve menü çubuğunda kural artık **anı**, arama *Hafızada ara*; kanıt anının **izleri**; konu bir **korteks**, korteksler arasındaki bağlar **sinaps**; damıtma **pekiştirme**, saatlik tur **pekiştirme döngüsü**; güven **sinyal gücü**, çelişki **çatışma**; kimlik ise **zihnin**.
  • Nasıl çalıştığı değişmedi: aynı motor, aynı dosya, her anının arkasında aynı izler. Komut adları (`coredence distill`, …) olduğu gibi kaldı.

2.0.3 (61)

Ekim 2026
  • **Kural başına tek cevap.** Çelişki tek bir gözlem hakkında değil, kural hakkında bir soru. Bir kuralın birden fazla açık çelişkisi varken birini cevaplamak ötekileri geride bırakıyordu: aynı kural bir sonraki kartta yeniden soruluyor ya da düşürülen bir kuralın soruları kalıyordu. Artık tek karar hepsini kapatıyor; bekleyenler de hepsini bütün kanıtlarıyla tek kartta gösteriyor.
  • **Tekrarlar daha erken soruluyor.** Aynı şeyi söyleyen kuralların araması model çağırmıyor; artık damıtma beklerken de her saat çalışıyor ve çiftler bir gün beklemiyor.
  • **Her asistan seni nasıl okuyor (Mac menü çubuğu).** Claude Code kimliğini her oturumda beceri dosyasından yüklüyor; panel eski bir sunucu okumasını göstermek yerine bunu söylüyor. Codex ve Gemini, yönerge dosyası açıksa onu okuyor; henüz hiçbir şey ulaşmıyorsa *Dosya olarak ver* onu tek tıkla açıyor.

2.0.2 (60)

Ekim 2026
  • **Aynı şeyi söyleyen kurallar.** Motor arada bir aynı kuralı iki kez yazıyor. Artık bu çiftleri — aynı mesajlara dayanan ya da aynı kelimeleri paylaşan kuralları — buluyor ve bekleyenlerde iki cümleyi yan yana koyup soruyor: *Aynı, üstteki kalsın*, *Aynı, alttaki kalsın* ya da *Farklı kurallar*. Birleştirmede kanıt kalan kurala taşınıyor; hiçbir şey kendiliğinden birleşmiyor ve cevaplanan çift bir daha sorulmuyor.
  • **Konudan olayları ayır.** Birleştirmenin karşılığı: konu panelinde *Olayları ayır…* var; arama ve işaretleme listesiyle yeni ya da var olan bir konuya taşıyor.
  • **Mac'te daha dolu bir menü çubuğu.** Simge artık uygulamanın beyni. Panel bu hafta öğrendiklerini, kimliği hangi asistanın en son ne zaman okuduğunu, sonraki saatlik turun saatini ve bir kurala pencerede açan bir arama gösteriyor.

2.0.1 (59)

Ekim 2026
  • **Saatlik tur Mac uyurken atlanmıyor.** Tur aralıkla kuruluydu ve launchd uyku sırasında düşen aralığı atlıyor: 31 günde 745 turun 408'i döndü. Artık saate göre kurulu; kaçan tur Mac uyanınca bir kez çalışıyor. Mevcut kurulumlar kendiliğinden geçiyor.
  • **Aynı şeyi anlatan iki konuyu birleştir.** Konu panelinde *Başka konuyla birleştir* var; en yakın komşular önde. Birleştirme geri alınamadığı için önce soruyor.
  • **Windows'ta düşen güncelleme sebebini söylüyor.** Pencere kapanıp bir daha açılmıyordu. Artık kurulum günlük tutuyor ve Coredence bir sonraki açılışta ana ekrandaki şeritte neyin ters gittiğini söylüyor; kurulum dosyası hiç çalışmadıysa (Windows Defender imzasız kurulumları silebiliyor) dosyanın yerini veriyor. Bu sürümden sonra başlatılan güncellemelerde geçerli.
  • **Windows'ta kimliğin tamamını dışa aktar.** Ayarlar › Kimlik › Markdown olarak / JSON olarak; Mac'teki uygulama menüsünün karşılığı.
  • **Windows'ta daha okunur.** Soluk yazılar WCAG AA kontrast oranını karşılıyor.
  • **Boş durum gibi görünen hatalar.** Kanıtı okunamayan kural artık "kanıtı yok" demiyor. Mac'te düşen *Şimdi güncelle* dört saniyede silinmiyor, sen kapatana kadar duruyor; konu adı değiştirme hatası gösteriliyor. Boş bir kimlik asistanlara "0 kural" diyen bir dosya vermiyor.
  • **Homebrew ile `coredence` PATH'te.** `brew install --cask coredence/tap/coredence` artık `coredence` komutunu bağlıyor; sunucuyu `coredence mcp` ile başlatan eklentiler, `~/.local/bin` PATH'te olmayan makinede de onu buluyor.

2.0.0 (58)

Ekim 2026
  • **Uygulama menüsünde Güncellemeleri Denetle… (Mac).** Öteki Mac uygulamalarındaki gibi Ayarlar…'ın hemen altında. Motora soruyor; "Coredence güncel" diyor ya da *İndir ve yeniden başlat* öneriyor.
  • **Sürüm denetimi GitHub'ın sınırına takılmıyor.** GitHub'ın API'si kimliksiz istemciye ağ başına saatte 60 istek veriyor; aynı ağdaki başka bir araç bunu tüketince *Şimdi denetle* bir saat "github.com'a ulaşılamadı" diyordu. Motor son sürümü artık sınırı olmayan sürüm sayfasından okuyor, API yalnız yedek.

1.9.9 (57)

Ekim 2026
  • **Bir kuralı düzelt ya da "bu ben değilim" de.** Her kuralın panelinde artık *Düzelt* (cümleyi gerçekte olduğu gibi yaz) ve *Bu ben değilim* (kural kimlikten çıkar, asistanlara gitmez; cümlesi ve kararın motorun kaydında kalır) var. Şimdiye kadar yanlış bir kuralın solmasını beklemek gerekiyordu.
  • **Eski "şu an" kuralları emekliye ayrılıyor.** Durum kuralları ("lansmana hazırlanıyor") bir ay kadar görülmezse solmalıydı, ama çok desteklenmiş biri eşiğin altına hiç inemiyordu. Artık iniyor; hâlâ doğruysa yeniden görülür ve taze döner. Asistanlar aramada her kuralın en son ne zaman görüldüğünü de alıyor.
  • **Windows'ta ana ekrandan güncelleme.** Yeni sürüm şeridinde, Mac'teki gibi *İndir ve yeniden başlat* var.

1.9.8 (56)

Ekim 2026
  • **Codex oturumları okunuyor.** Codex'te yazdıkların artık okunuyor (terminal aracı ve masaüstü uygulaması, `~/.codex/sessions`). Başka bir asistandan yapıştırılmış görev tarifleri — başlıklı, maddeli, dosya yollarıyla dolu — senin sözün sayılmıyor. Codex'i olan yeni kurulumlarda açık; eski kurulumlarda Ayarlar › Kaynaklar'da kapalı duruyor.
  • **Kimliği Codex ve Gemini'ye dosya olarak ver.** Ayarlar › Asistanlar'da varsayılan kapalı bir anahtar, kimliği asistanın her oturumda okuduğu dosyaya da yazıyor (`~/.codex/AGENTS.md`, `~/.gemini/GEMINI.md`) ve her turda tazeliyor. Yalnız Coredence'ın işaretli bölümü yazılıyor ya da siliniyor; dosyadaki senin yazdıklarına dokunulmuyor.
  • **Kurulum baştan sona İngilizce.** İngilizce bir kimlikte kurulum günlüğü, okuma, damıtma, model denetimi, bağlanma ve sürüm denetimi artık İngilizce; önceden bu satırların çoğu Türkçeydi. Windows'ta kaynak adları da çevriliyor.
  • **Daha akıcı harita.** Fare hareketi bütün sahneyi yeniden kurmuyor; Mac'te tıklanan düğüm zıplamıyor.

1.9.7 (55)

Ekim 2026
  • **Asistanlar seni ne zaman okuyacaklarını biliyor.** MCP sunucusu artık asistana işin başında kimliği okumasını, bir karardan önce kurallarında aramasını söylüyor; şimdiye kadar yalnız araç adlarını veriyordu ve asistanlar onları hiç çağırmıyordu. Araç açıklamaları bu tetiklerle İngilizce, `identity` kural kimliğini döndürüyor ve proje alıyor, boş kimlik ne yapılacağını söylüyor, yarı ömrünü aşmış durum kuralları asistana gitmiyor. Ayarlar › Asistanlar, kimliği hiç okumamış bir asistana ne yazılacağını gösteriyor.
  • **Doğruyu söyleyen kurulum.** Windows'ta düşen bir adım artık "Hazır" ve boş bir haritayla bitmiyor. Mac'te saatlik güncelleme denetlenirken pencere donmuyor, model denetimi düşünce model adımına dönülüyor, hata bütün günlük değil son satırları. npm ile kurulu Claude Code bulunuyor ve ilk kurulumda bağlanıyor.
  • **Daha güvenli, daha sağlam.** Saatlik tur Claude'un oturum limitini ve süresi dolan girişi tanıyor. Hugging Face, Replicate, Groq ve xAI anahtarları maskeleniyor. Paylaşım ayarlarını açmak onları yeniden yazmıyor, kaydırıcılar bırakınca kaydediyor. Seçilmiş kimlik dosyasına motor da yazıyor ve açılmazsa geri dönüş var. Windows penceresi 125-150% ölçekte ekrana sığıyor.

1.9.6 (54)

Ekim 2026
  • **Coredence'ı asistanının içinden ekle.** Herkese açık depo artık Claude Code ve Codex için bir eklenti, Gemini CLI için bir uzantı ve VS Code ile GitHub Copilot için bir Agent Plugin. Uygulamayı kurup bir kez açtıktan sonra Claude Code'da `/plugin install coredence --marketplace coredence/coredence` yetiyor. Eklenti kod taşımıyor; uygulamadaki salt okunur sunucuyu `coredence mcp` ile başlatıyor. macOS'ta uygulama bu komutu her açılışta `~/.local/bin/coredence` olarak hazırlıyor.
  • **Satış kapalıyken plan seçeneği ne yapacağını söylüyor.** Kurulum, fiyat sayfası satışın henüz açılmadığını söylüyorsa Claude Code ya da kendi anahtarınla başlayabileceğini yazıyor.

1.9.5 (53)

Ekim 2026
  • **Anahtarın seçtiğin yere gidiyor.** Coredence planından kendi API anahtarına geçince planın adresi profilde kalıyordu; anahtar sağlayıcına değil bizim vekilimize gidiyor, damıtma da düşüyordu. Anahtarsız yerel bir sunucuya geçince de eski anahtar oraya gidiyordu. Artık her model seçimi öncekinin yerine geçiyor; adres, model adı ve anahtar eskisinden kalmıyor.
  • **Windows'ta başka bir sunucu gerçekten çalışıyor.** "OpenAI uyumlu sunucu" OpenRouter, Groq ve Together'ı vaat ediyor ama hep api.openai.com'a gidiyordu. Artık Mac'teki gibi adresi ve model adı yazılan ayrı bir "Başka bir sunucu" seçeneği var; model adı iki pencerede de yazılabiliyor.
  • **Windows'ta düğme yazıları gerçekten ortada.** 1.9.4 satır aralığını düzeltmişti, harfleri değil: Windows'un kendi yazı tipi kutuda aşağıda duruyor. Pencere artık kendi yazı tipini, sitenin ve tarayıcıdaki denemenin kullandığı Geist'i taşıyor.
  • **İlk açılış.** Kimlik dili hep Türkçe başlıyordu, artık arayüzün dilinden başlıyor. Adımlar küçük ekranda kayıyor. Plan seçeneği lisansın bize hiç gitmediğini söylemiyor (model çağrısını doğrulamak için gidiyor). Motor uyarılarının içindeki kısa sebepler de İngilizcede İngilizce.

1.9.4 (52)

Ekim 2026
  • **Windows'ta güncelleme sessiz.** "İndir ve yeniden başlat" kurulumu artık hiç pencere göstermeden yapıyor; Coredence kapanıp yeni sürümle açılıyor. Değişiklik kurulumu başlatan motorda, yani 1.9.4'ten sonraki güncellemede görünür.
  • **İngilizce kullananlar için motorun uyarıları İngilizce.** Haritanın üstündeki şerit ve ayarların Motor sayfası Türkçe uyarı gösteriyordu ("Saatlik tur kurulu değil…").
  • **Küçük ama görünür düzeltmeler.** Windows'ta düğme yazıları kutunun ortasında (Segoe UI aşağıda bırakıyordu). Ayar açıklamaları kod yazı tipiyle ve "…" ile kesilerek çiziliyordu; artık düz yazı ve tam. Açıklamasız ayar satırlarında anahtar yazının hizasında. Kaynak listesi boşken "motorun cevabı okunamadı" demiyor. İngilizce arayüzde "Sistem dili" çevrildi.

1.9.3 (51)

Ekim 2026
  • **Aylık özet kişiye konuşuyor.** Başlık ayın adıyla ("Ekim 2026"), yeni kurallar cümleleriyle yazıyor; kodun iç adları ve alan sayaçları yok. Kayan eksenler kutuplarıyla ("kendim yazarım ↔ hazırı kullanırım") anlatılıyor. Son satır kutuda bekleyen her şeyi sayıyor: çelişki, soru ve onay bekleyen kural.
  • **Çelişki kartı okunuyor.** "«…» kuralıyla … (kanıt: [134])" yerine "Bu kuralla çelişen davranış görüldü: …"; kanıtın kendisi zaten altında.
  • **Karar eksenleri:** Kartın başlığı eksenin iki ucu, yargı altında. Yön gösteren eksen "Eğilim: …" ile hemen seçiliyor.
  • **Harita:** "Takımyıldız" düzeninin adı "Kümeler"; seçenek gruplarının başında "Düzen" ve "Renk" yazıyor. Hiç köprü kuralı yokken "12+ konuya yayılan: 0" satırı görünmüyor.
  • **İngilizce kimlik:** Eksen kutupları artık İngilizce; asistanın okuduğu kimlikte Türkçe bir yargı kalmıyordu. MCP sunucusu kendini doğru sürümle tanıtıyor.

1.9.2 (50)

Ekim 2026
  • **Sürüm numarası düzeltildi.** 1.8.10, 1.8.11 ve 1.8.12 aslında 1.9.0, 1.9.1 ve 1.9.2 olmalıydı; numaralar bundan sonra buradan devam ediyor. İçerik 1.8.12 ile aynı. Windows'ta 1.8.12 kuruluysa Ayarlar › Yeni sürüm › "İndir ve yeniden başlat" bu sürümü getiriyor.

1.8.12 (49)

Ekim 2026
  • **Windows'ta güncelleme uygulamanın içinden.** Ayarlar › Yeni sürüm'de yeni sürüm varsa "İndir ve yeniden başlat" düğmesi çıkıyor: motor kurulum dosyasını indiriyor, GitHub'ın yayımladığı SHA-256 özetiyle doğruluyor ve sessiz kurulumu başlatıyor; Coredence kapanıp yeni sürümle yeniden açılıyor. Özeti tutmayan ya da özeti alınamayan dosya silinip çalıştırılmıyor. Bu düğme 1.8.12'den sonraki sürümler için çalışıyor; 1.8.12'yi bir kez siteden kurmak gerekiyor.

1.8.11 (48)

Ekim 2026
  • Windows kurulumunda kurulum yeri yine her seferinde soruluyor; Coredence zaten kuruluysa gizleniyordu ve seçeneği ortadan kaldırıyordu. Karşılama metni açıklaştı, sağ üstteki logo kare zemini olmadan yalnız çizimiyle duruyor.

1.8.10 (47)

Ekim 2026
  • **Windows penceresi motoru yeniden buluyor.** 1.8.9'un yeni kurulumu eski kurulumun kaydını temizlerken pencerenin motoru aradığı değeri de siliyordu: Ayarlar düğmesi kayboluyor, karar eksenleri açılmıyordu. Pencere artık motoru önce kendi yanında arıyor; bulamazsa düğmeler susmuyor, sebebini söylüyor.
  • Sahne ile liste arasındaki geçişin adı "Takımyıldız" değil "Harita": aynı ad dört düzenden birinin de adıydı. Karar eksenleri düğmesinin ipucu ne işe yaradığını söylüyor. Kurulum penceresinin metinleri sadeleşti; güncellemede klasör sorulmuyor, ilerlemede dosya yolları akmıyor.

1.8.9 (46)

Ekim 2026
  • **Windows kurulumu baştan yapıldı.** Kurulum artık Windows'un gri, eski sihirbazı değil: koyu, başlık çubuğuna kadar Coredence görünümünde bir pencere. Sayfalar kısa (karşılama, kurulum yeri, ilerleme, bitiş); güncellemede kurulum yeri sorulmuyor, bitişte "Coredence'ı aç" işaretli geliyor. Lisans, bileşen ya da klasör seçme sayfası yok. Eski kurulumun Uygulamalar listesindeki kaydı temizleniyor; kimliğin, saatlik turun ve asistan bağlantıların yerinde kalıyor.

1.8.8 (45)

Ekim 2026
  • **Windows kurulumu tek tık.** Beş sayfalık kurulum sihirbazı kalktı: kurulum dosyasına çift tıklıyorsun, birkaç saniyelik bir ilerleme görünüyor ve Coredence penceresi açılıyor. İlk kurulum (ad, model, okuma, ilk damıtma) pencerenin kendi ekranında yapılıyor; güncellemede yalnız saatlik tur tazeleniyor ve uygulama yeniden açılıyor.
  • Uygulama içindeki ilk kurulum artık kurulu asistanlara da bağlanıyor; Windows'ta saatlik turu da kuruyor. Bunları önce yalnız Windows sihirbazı yapıyordu. Bağlanamazsa ya da tur kurulamazsa kurulum durmuyor, sebebini yazıyor ve Ayarlar'a bırakıyor.

1.8.7 (44)

Ekim 2026
  • **Windows kurulum sihirbazı yenilendi.** Karşılama ve bitiş sayfalarında solda sitenin ağ sahnesi duruyor, ara sayfalarda sağ üstte uygulamanın simgesi; görseller yüksek çözünürlüklü ekranda bulanıklaşmasın diye iki kat çözünürlükte. Karşılama metni de kalıp cümle değil: Coredence'in ne yaptığını, kimliğin bu bilgisayarda kaldığını ve güncellemenin kimliğe dokunmadığını söylüyor.

1.8.6 (43)

Ekim 2026
  • **Windows'ta güncellemek artık dakikalar sürmüyor.** Kurulum her sürümde ilk kurulumun akışını çalıştırıyordu ve o akışın son adımı bir taslak damıtmaydı: "Kimlik kuruluyor" adımında, "Vazgeç" kapalıyken model bekleniyordu. Kimlik zaten varsa bu adım artık atlanıyor; yeni olayları saatlik tur işliyor.
  • Kurulum penceresindeki Türkçe harfler bozuk görünüyordu ("kapalı"): motor UTF-8 yazıyordu, pencere Windows'un kendi kod sayfasıyla okuyordu. Kurulum artık motordan çıktıyı kendi okuduğu kodlamada istiyor. Motorun ham çıktısı varsayılan olarak gizli, adım yazıları kurulum dilinde; alttaki "Nullsoft Install System" yazısının yerinde ürünün adı var.
  • macOS'ta bekleyen damıtmanın ne kadar okunacağı bir milyonun altında "0 milyon jeton" görünüyordu; artık bir ondalıkla, Windows penceresindeki gibi.

1.8.5 (42)

Ekim 2026
  • **"Şimdi denetle" artık ne bulduğunu söylüyor.** Düğme denetliyordu ama sonucunu gösteren bir şey yoktu: uygulama güncelse ya da günlük denetim yeni sürümü zaten bulmuşsa, basmadan önce ve sonra ekran aynıydı. Windows'ta "Yayında" satırı denetimden sonra hiç tazelenmiyordu bile. Düğmenin altında artık motorun cevabı ile zamanı duruyor.
  • Ağa ulaşılamadığında elle denetim "kurulu sürüm güncel" diyebiliyordu; sorulmamış bir sorunun cevabı. Artık ulaşılamadığını söylüyor, biliniyorsa son bilinen yeni sürümü de. macOS'ta motorun hata mesajlarının başına eklenen "karaca çıkış kodu 1" da kalktı: motorun cümlesi olduğu gibi görünüyor.

1.8.4 (41)

Ekim 2026
  • **macOS'ta menü çubuğu.** Pencereyi açmadan: saatlik tur en son ne zaman döndü ve motor ne yazdı ("damıtma bekliyor, en geç 5 saat sonra" gibi), kaç şey karar bekliyor, motorun uyarıları. Bekleyen varsa sayısı simgenin yanında duruyor. "Şimdi güncelle" ile "Bekleyenleri aç" oradan. Ayarlar › Sahne'den kapatılabiliyor.
  • **Sahne bıraktığın yerden açılıyor.** Yakınlık, sahnenin nereye kaydırıldığı ve elle yerleştirdiğin düğümler bir sonraki açılışta yerinde; düzen değiştiyse sahne baştan açılıyor. Bu durum veritabanına değil pencerenin ayarlarına yazılıyor. Ayarlar › Açılış'ta kapatılabiliyor; aynı yerde yeni bir seçenek daha var: karar bekleyen bir şey varsa uygulama doğrudan o listeyle açılsın.
  • İki pencere açılışta farklı davranıyordu. Üst çubuktan seçilen düzeni Windows hatırlıyordu, macOS unutuyordu; liste görünümünü macOS hatırlıyordu, Windows her açılışta sahneyle başlıyordu. İkisi artık ikisini de hatırlıyor.
  • Windows penceresi yerini ve boyutunu hatırlıyor; büyütülmüş bıraktıysan büyütülmüş açılıyor, kayıtlı yer artık bağlı olmayan bir ekrandaysa ortada açılıyor. Ayarlar › Motor'dan başka bir kimlik dosyası (bir yedek, başka bir makinenin dışa aktarımı) açılabiliyor. macOS'ta bu seçim uygulama yeniden açılana kadar hiçbir şey yapmıyordu ve ekran bunu söylemiyordu; artık seçilen dosya hemen açılıyor.
  • **Türkçe Windows'ta saatlik turu kurmak çökebiliyordu.** Görev Zamanlayıcı hatayı Türkçe yazıyor ve konsol kod sayfasında; okuyan taraf başka bir kod sayfası bekliyordu. "Erişim engellendi" çözülemeyince kişi bir hata mesajı yerine bir hata yığını görüyordu. Bunu Windows'ta gerçek bir makinede koşan yeni test hattı buldu; motorun testleri artık her itişte iki platformda koşuyor.
  • Motora üç komut geldi. `coredence voice` commit mesajını ölçülmüş sesine karşı denetliyor ve depoya kanca olarak kurulabiliyor. `coredence disk` motorun kendi kapladığı yeri ve depolarının boyutunu, kimliğin onlara en son ne zaman dokunduğunu gördüğü günle söylüyor; hiçbir şey silmiyor. `coredence defaults` yeni bir projeye başlarken neyin seçileceğini söylüyor: yığını depolarının bağımlılık dosyalarından, gerisini kimliğin kurallarından.
  • Bir kuralı elle düzeltmek (`coredence review revise`) 18 Eylül'den beri her çağrıda düşüyordu. Düzeltildi; bu türden hatayı yakalayan bir denetim de eklendi. Güncelleyici indirdiği eski imajları hiç silmiyordu; artık yenisi doğrulanınca eskisini kaldırıyor.

1.8.3 (40)

Ekim 2026
  • **Windows'ta saat başı açılan terminal penceresi bu kez gerçekten kapandı.** 1.8.1 saatlik turu penceresiz yorumlayıcıya taşımıştı ama tur içeriden `claude`, `git` ve `schtasks` çağırıyor ve üçü de konsol programı. Konsolu olmayan bir süreç bir konsol programı başlattığında Windows ona yeni bir pencere açıyor; yani düzeltme pencereyi yorumlayıcıdan almış, alt süreçlere bırakmıştı. Pencerenin başlığı "claude" yazınca sebep belli oldu. Motorun bütün alt süreç çağrıları artık tek bir yerden geçiyor ve Windows'ta pencere açmadan başlıyor; motora doğrudan bir çağrı eklenirse test düşüyor.

1.8.2 (39)

Ekim 2026
  • **Arama kutusu artık geçmişi de arıyor.** Kurallar kimlik anlatıyor, olgu değil: "Railway'in ortam değişkeni biçimi" hiçbir kurala girmiyor ama yazdıklarında on yedi kez geçiyor. Pencere bu soruya boş bir sahneyle cevap veriyordu ve boş sahne "bunu hiç konuşmadın" diye okunuyor. Arama panelinin altında artık bir "Geçmişte" bölümü var: aynı kelimelerin geçtiği en çok üç an, tarihi, kaynağı ve projesiyle. Kurallarda hiçbir şey yokken de açılıyor; asıl işi o durum. Metin seçilip kopyalanabiliyor, çünkü burada aranan şey çoğunlukla bir komut ya da bir biçim.
  • **Aramanın gösterdiği metin bugünkü kurallarla maskeleniyor.** Olaylar yazılırken maskeleniyor ama maskeleme kuralları o günden beri genişledi; gerçek bir kimlikte bugünkü kurallarla maskesi değişecek iki yüz dört olay ölçüldü. Kurallar ve asistanlara giden yüzey çıkışta yeniden maskeliyordu, arama maskelemiyordu. Artık o da maskeliyor ve kesiti metnin tamamı maskelendikten sonra alıyor: kesitin kenarında kalan yarım bir anahtar kalıba uymaz ve yarım hâliyle çıkardı.
  • macOS'ta liste görünümü, gizlediğin bir olayı kuralın kanıtı olarak göstermeye devam ediyordu. Gizlemek "bu arşivde kalsın ama kimliğimi şekillendirmesin" demek ve sahnedeki panel buna uyuyordu; liste başka bir sorgu kullanıyordu. İki görünüm artık aynı kanıtı, aynı sırayla gösteriyor: düzeltmeler önce.
  • İki pencere aynı kimliği birkaç yerde farklı gösteriyordu. Windows tabanın altına solmuş bir kuralı çiziyordu, macOS çizmiyordu; macOS sahnesi onay bekleyen kurallara giden bağları taşıyordu ve konu panelindeki kural sayısını şişiriyordu; kanıtın ve kuralların sırası ayrıydı. Hepsi bir denetimle bulundu ve her biri koda karşı doğrulanıp düzeltildi. Windows'un liste ayrıntısında, macOS'ta olan "Konular" bölümü de artık var.
  • Windows penceresi, motor yazarken veritabanını okumak için hiç beklemiyordu; macOS beş saniye bekliyor. Bir damıtma turunun ortasında açılan pencere "database is locked" ile düşüp dolu bir kimliği boş gösterebiliyordu. Kimliği izleyen yüz de tek bir hatada kalıcı olarak susuyordu ve pencere oturumun geri kalanında kendini hiç tazelemiyordu; artık yeniden bağlanıyor.

1.8.1 (38)

Eylül 2026
  • **Okuma sayacı kendi yansımasını sayıyordu.** Denetim MCP yüzeyini gerçekten sınıyor: sunucuyu açıyor, bir aracı çağırıyor, cevabın geldiğini görüyor. Doğru bir denetim — ama o çağrı sayaca da yazılıyordu. Gerçek bir makinede ölçüldü: sayacın yüz kaydının yüzü de denetimin kendisi. Yani "kimliğini bir asistan gerçekten okuyor mu" sorusuna ürün kendi yansımasıyla cevap veriyordu, oysa bu sayacın var olma sebebi tam olarak o yanılgıydı: bağlantı "kurulu" diyordu ve kurulu olmak okunmak değil. Elendikten sonraki gerçek sayı o makinede sıfırdı: yedi istemci bağlı, hiçbiri kimliği MCP üzerinden bir kez bile okumamış. Günlükte duran eski kayıtlar da okunurken atlanıyor — yalnız yazmayı durdurmak sayacı bir hafta daha yanıltırdı ve kişinin kendi günlüğüne dokunmak doğru değil.
  • **Pencere eşiği yeni kimliği de bekletiyordu.** Eşik yalnız pencere bütçesine bakıyordu ve bu, kimliğini daha yeni kurmuş birini de günde bir güncellenen bir ürüne çeviriyordu. Ölçüldü: on kurallı bir kimlikte pencere başına tekrar eden bağlam 704 jeton, 565 kurallı bir kimlikte 36.248. Birincisinde bir turu atlamak yedi yüz jeton kurtarıyor ve karşılığında ürünün ilk gün söylediği şey — "sonrası kendi kendine ilerler" — en çok bakılan günde en az hareketle karşılanıyor. Kural artık şu: beklemek ancak bekleyerek kurtardığın kadar kazandırıyorsa doğru. Eşiğin tavanı bağlamın kendisi. Olgun kimlikte değişen bir şey yok; yeni kimlikte eşik kendiliğinden ortadan kalkıyor, ama kalkmıyor — tavanı iniyor, yani bağlamın altında kalan bir tur yine bekliyor.
  • Damıtmanın red sebebi turdan sonra kayboluyordu. Sebep turun çıktısında bir kez geçiyor ve zamanlanmış turda o çıktı günlüğe düşüyor; kişi ertesi gün duruma bakıyor ve "aktif kural: 0" görüyor. Sebep bir yerde duruyor ama baktığı yerde değil. Sıfırdan bir kurulum koşturulup ölçüldü: sekiz commit, bir pencere, bir red, sıfır kural — ürünü ilk kez çalıştıran kişinin gördüğü şey hiçbir şey yapmamış bir ürün. Sebep artık kayda yazılıyor ve yalnız kural sıfırken söyleniyor: olgun bir kimlikte redli tur olağan, her turda sebep yazmak okunmayan bir satır eklemek olurdu.
  • Sürüm kontrolünün cevabını taşıyan dosya herkese okunur yazılıyordu. İçinde bir sürüm numarasından başka bir şey yok ama kimlik dizinindeki her dosya sahibine özel yazılıyor ve istisnası olan bir kural bir gün yanlış dosyada uygulanmaz. Ürünün kendi denetimi yakaladı; kaçıran şey şuydu: her yazıcının kendi izin testi vardı, dizinin tamamına bakan yoktu.
  • Sıfırdan kurulum artık takımın içinde. Takımın iki bin testi geçerken, geçici bir eve kurulup gerçekten koşturulan ürün yukarıdaki kusurların üçünü gösterdi — birim testleri parçaları doğru sınıyordu, kimsenin sınamadığı şey parçaların bir kullanıcının sırasıyla birleşmesiydi. Gerçek komutlar kendi süreçlerinde, kendi geçici evlerinde çalışıyor; sahte olan tek şey model.

1.8.0 (37)

Eylül 2026
  • Uygulama kendi kendini güncelleyebiliyor. Şimdiye kadar yeni sürümü öğrenmenin yolu bir şeritti ve oradan sonrası altı adımdı: siteye git, indir, imajı bağla, sürükle, çıkar. Her adım kaybedilen bir kişi ve ürünün düzeltmeleri kullanıcıya ancak sürümle ulaşıyor. Artık şeritteki düğme işi bitiriyor: motor imajı indiriyor, imzasını denetliyor, uygulama kapanıyor ve paket değişiyor. macOS'un standart cevabı Sparkle kullanılmadı. O çerçeve uygulamanın paketine giriyor ve ağa o çıkıyor; sitedeki "pencere hiçbir zaman soket açmıyor" iddiası o gün avukat işine dönerdi. İndirmeyi motor yapıyor — zaten ağa çıkıyor, zaten günde bir sürüm soruyor — ve pencere yalnız diskteki bir dosyayı okuyor. Doğrulama iki komut ve ikisi de gerçek dosyalarla ölçüldü: imajın Apple noterinden geçtiği ve içindeki uygulamayı imzalayanın biz olduğumuz. İkincisi olmasaydı noterlenmiş herhangi bir uygulama geçerdi — Apple'ın kendi Hesap Makinesi de dahil, sınandı.
  • Değiştirmeyi uygulamanın dışındaki bir betik yapıyor ve sebebi ölçüldü: paket taşındıktan sonra motorun mutlak yolla yaptığı bir içe aktarma `ModuleNotFoundError` veriyor. Yani kendi paketini değiştiren motor yarı yolda kendini kaybeder. Eski paket silinmiyor, taşınıyor; yeni sürüm bir kez açıldıktan sonra siliniyor ve açılamazsa eskisi geri geliyor. Bir güncelleyicinin yapabileceği en pahalı hata kişiyi uygulamasız bırakmaktır ve sınanan tam olarak o.
  • İndirme ve kurma varsayılan olarak kapalı. On yedi megabaytı sormadan indirmek ve makinendeki bir programı haberin olmadan değiştirmek, "hiçbir şey senin arkandan olmaz" diyen bir ürünün yapacağı şeyler değil. İkisi de Ayarlar'dan açılıyor ve kurma indirmeye bağlı.
  • "Şimdi denetle" düğmesi geldi. Anahtar günlük kontrolü açıp kapatıyordu ama elle denetletecek bir yer yoktu: yeni sürümü duyan biri bir gün bekliyordu. Günlük aralık yalnız o çağrıda atlanıyor — bir düğmeye basmak her turu ağa çıkarır hâle getirmemeli — ve anahtar kapalıyken de cevap veriyor. Anahtarı kapatmış olmak o soruyu sormamak değil, her gün kendiliğinden sorulmasını istememek.
  • **Saatlik tur yarım pencere göndermeyi bıraktı ve ücretli planın yaşayabilmesi buna bağlıydı.** Her damıtma penceresi kuralların tamamını taşıyor; olgun bir kimlikte bu otuz beş bin jeton ve tur bunu her saat yeniden ödüyordu. Ölçüldü — 558 aktif kural, günde 101 olay: ayda 26,3M jeton, neredeyse tamamı tekrar eden bağlam. En büyük planın hakkı 13M, yani hiç olay damıtılmadan on altı günde biterdi. En çok bağlam ödeyen kullanıcı da en uzun süredir kullanan kullanıcı. Ölçü bağlam değil pencere, çünkü boşa giden şey yarı boş pencere: dolu bir pencerede harcamanın %55'i içerik, yarımda %36, dört olayla dönen bir turda %7. Tur artık pencere dolana ya da bir gün geçene kadar damıtmıyor. Aynı olaylar, ayda 1,7M jeton — on altı kat az. Okuma değişmiyor: kaynaklar yine saatte bir okunuyor ve hiçbir olay kaybolmuyor. Bekleyen yalnız damıtma. Elle çağrılan `distill` de beklemiyor; komutu yazan kişi şimdi istiyor. Beklerken sebebini yazıyor — sessiz bir bekleme, arızadan ayırt edilemiyor.
  • Kurulum "✓ Git depoları" diyordu, profile `enabled = false` yazıyordu. Bunu anlatan bir paragraf zaten vardı ama listeye bakan kişi paragrafı okumadan önce onay işaretini görüyor; bir onay işareti yanında açıklama olsa da onay demek. İşaret artık ayrı. Öteki kaynaklarda bulunmak ile okunmak aynı şey; yalnız git'te ayrılıyor.
  • Okuma turu kapalı kaynaklar için "git okunuyor… git: 0 olay" yazıyordu. Toplayıcı kapalıyken kendi içinde boş dönüyor ve tur onu açık olanlardan ayırt etmiyordu; kişi bunu "depolarımda bir şey yokmuş" diye okuyor, oysa hiç bakılmamış ve kaynağı açmak elinde. Bir geliştiricide en çok veri taşıyan kaynak tam böyle sessizce dışarıda kalıyordu.
  • Damıtmanın bir kuralı neden reddettiği artık yazıyor. Sebep toplanıyordu ama hiçbir yere gitmiyordu: ekranda yalnız "1 red" görünüyor ve kişi her şeyi çalıştırıp hiç kural almadan kalıyordu. Red genelde düzeltilebilir bir şeyden oluyor — kanıt pencere dışında, katman adı yanlış — yani söylenmediğinde kaybedilen şey kuralın kendisi.
  • Denetim, nesi olduğunu söylemeden ne yapılacağını söylüyordu. MCP sunucusu cevap vermediğinde sebep stderr'in son satırından alınıyordu ve o satır çare oluyordu: "MCP sunucusu cevap vermiyor: Kurmak için: coredence setup." Sebebin kendisi bir üstte kalıyor ve atılıyordu.
  • `review` ve `interview` çıplak yazılınca kullanım metnini basıp çıkıyordu. Oysa `topics` doğrudan listeliyor: komutun adını yazan kişinin aradığı şey neredeyse her zaman "ne var". Bunun bedeli ölçüldü — gerçek bir kimlikte on sekiz açık çelişki ve sekiz soru bekliyordu ve onlara bakmanın en doğal yolu hata veriyordu. `export --format markdown` de kabul ediliyor artık.
  • Windows'ta saat başı ekranda bir terminal penceresi açılıp kapanıyordu. Tur dönüyordu, yani ortada görünen bir arıza yoktu; kişinin gördüğü şey her saat kendiliğinden açılan bir pencereydi — arka planda çalıştığını söyleyen bir üründe, ne yaptığı görünmeyen bir şeyin kendini hatırlatması. Sebep yorumlayıcıydı: `python.exe` bir konsol uygulaması ve Görev Zamanlayıcı onu her çağırdığında Windows pencereyi açıyor. Görev artık yanında duran penceresiz yüzünü çağırıyor. Günlük bundan etkilenmiyor; tur çıktısını zaten kendi dosyasına yazıyor. Kurulu görev de eski sayılıyor: yalnız yeni kurulumları düzeltmek, bugün pencereyi gören herkeste pencereyi bırakırdı.

1.7.0 (36)

Eylül 2026
  • Windows'ta damıtma yazıldığı günden beri hiç çalışmamış. İstem komut satırı argümanı olarak geçiyordu ve Windows'un `CreateProcess` sınırı 32.767 karakter — yalnız kuralların listesi 124.552 karakterdi, yani her çağrı daha başlamadan `[WinError 206]` ile düşüyordu. Bu, ürünün Windows'ta yapacağı tek şeydi. İstem artık standart girişten gidiyor ve gerçek bir kimlikte 43.350 karakterlik bir çağrıyla doğrulandı.
  • Windows'ta Türkçe metin sessizce bozuluyordu. Alt süreçlerin çıktısı sistemin yerel kod sayfasıyla çözülüyordu ve Türkiye'de o cp1254; UTF-8 yazılmış bir cümle oradan geçerken hata vermeden bambaşka harflere dönüşüyordu. Bozuk metin kimliğe girdikten sonra kaynağına dönmenin yolu yok. Yedi çağrı düzeltildi ve bir denetim eklendi: kaynağa yeni bir alt süreç çağrısı girdiğinde kodlamayı yazmayı unutmak artık mümkün değil.
  • Tek bir kaynağın patlaması bütün turu düşürüyordu. Okuma sırasında bir toplayıcı beklenmedik bir şeyle karşılaşınca tur oracıkta bitiyor ve o saat hiçbir kaynak okunmuyordu — bir tanesi yüzünden dokuzu birden. Artık her toplayıcı kendi başına düşüyor, sebebi kaydediliyor ve tur ötekilerle devam ediyor. Veritabanı hatası bunun dışında: orada durmak doğru, çünkü yazılacak yer yoksa devam etmenin anlamı yok.
  • macOS izin kutusu her saat yeniden açılıyordu. Reddedilen bir kaynağa saatlik tur yine dokunuyor ve sistem yine soruyordu; kişi "hayır" dediği şeyi günde yirmi dört kez görüyordu. Reddedilen kaynak artık geri çekiliyor ve günde bir kez yeniden deneniyor — izin sonradan verilirse kendiliğinden bulunuyor, verilmezse kimse rahatsız edilmiyor.
  • Kimliğin gerçekten okunup okunmadığını gösteren bir yer yoktu. Ürünün sözü "kimliğin bütün araçlarına gidiyor" ve `connect` yalnız istemcinin *kurulu* olduğunu söylüyordu; kurulu olmak okunmak değil. Bir kez yaşandı: bağlantı duruyordu, sunucu açılıyordu, hiçbir asistan hiç sormuyordu. Artık okumalar sayılıyor ve ekran "okuyor · 14 okuma · 3 dk önce" diyor. Sorunun metni yazılmıyor: kimin ne sorduğunu diske yazmak bu ürünün satmadığı bir şey.
  • Kimliğin biriktiğini gösteren bir yer yoktu. Saatlik tur her saat bir şey okuyor, kurallar pekişiyor, ama bunu söyleyen tek yer aylık özetti ve o da ay bitmeden yazılmıyordu. Üst çubukta artık bir rozet var: son yedi günde kaç yeni kural, kaç pekiştirme, kaç çelişki. Söylenecek bir şey yokken hiç çıkmıyor — her gün bakılan bir yerde "bu hafta 0" yazmak, hiçbir şey söylemeyen bir işaret bırakmak olurdu.
  • Ana ekran "kimliğim ne diyor" sorusunu cevaplamıyordu. Sahne kimliğin ne kadar büyük olduğunu gösteriyor ve 538 kural orada nokta olarak duruyordu; ürünü ilk açan kişinin sorduğu soru ise başka. Artık bir liste görünümü var: katmanlara ayrılmış, güce göre sıralı, her kuralın gerekçesi ve kanıtı bir tık uzakta. İki pencerede de aynı hesap, çünkü aynı ekranı iki yerde ayrı hesaplamak onları sessizce ayırıyor.
  • Ekrandaki maliyet motorun harcayacağından %23 fazla söylüyordu. Motor ikinci pencereden itibaren tekrar eden bağlamı önbellekten okuyor ve ekran önbelleksiz rakamı gösteriyordu: yetmiş üç pencerelik bir turda $24,98 yazarken motor $18,97 harcayacaktı. Bu ekran ürünün giriş engelini cevaplıyor ve fazla söylemek, cevap vermemekten kötü. İki pencere de artık motorun gerçekten yazacağı tutarı gösteriyor.
  • Maskeleme makineden çıkış noktasına taşındı. Kurala kadar yolun her adımında maskeleniyordu ama çıkışların kendisi denetlenmemişti: dışa aktarılan kanıt metni, asistana MCP üzerinden giden ham cevap ve teslim edilen kimlik belgesi maskeden geçmiyordu. Çıkışların envanteri çıkarıldı ve üçü de kapatıldı. Maskeleyicinin kendisi de sertleşti — kart numarası, PGP bloğu, Firebase sunucu anahtarı ve `Authorization: Bearer` satırındaki jeton tanınmıyordu, artık tanınıyor.
  • Maskeleyici uzun tek bir sözcükte kilitleniyordu: ölçüldü, 217 saniye. Yapıştırılmış bir base64 bloğu ya da uzun bir karma, turun tamamını durduruyordu. Desen düzeltildi ve aynı girdi artık milisaniyede bitiyor.
  • Kimlik dosyaları herkese okunur duruyordu. Ölçüldü: bu makinede yedi dosya. Kimliğin tamamı orada ve aynı makineyi kullanan başka bir hesap onu açabiliyordu. Dosyalar artık yalnız sahibine açık yazılıyor ve denetim eskilerini de düzeltiyor.
  • Kullanım limiti "tamamlanamadı" diye sayılıyordu. Claude aboneliğinin haftalık limiti dolduğunda tur bunu bir arıza sanıp her saat beş kez yeniden deniyor ve her seferinde aynı duvara çarpıyordu. Artık tanınıyor: iş kuyrukta bekliyor, limit yenilenince kaldığı yerden sürüyor ve ekran neden beklediğini yazıyor.
  • Tireyle başlayan bir cevap sessizce kayboluyordu. Komut satırı `-hayır` gibi bir metni kısa seçenek kümesi sanıyor, `-h` okuyup yardım basıyor ve **sıfır** kodla çıkıyordu — yani çağıran her şey "başarılı" görüyordu. Mülakat cevabı kaydedilmemiş olmasına rağmen "cevaplandı" yazıyordu. Serbest metin alan komutlar artık metni olduğu gibi alıyor.
  • Ücretli plan alınabilir hâle getirildi. Fiyatlar üç planda belli, kapasiteler motorun kendi maliyet modelinden ölçüldü. Uygulama artık lisansın nereden alındığını söylüyor, planla çalışana hakkından ne düşeceğini yazıyor ve hak bitince beklemekten başka iki yol daha olduğunu gösteriyor: kendi anahtarına geçmek ya da üst plan.
  • Kimliğin sessiz alanlarını sorarak kapatan mülakat, yazıldığı günden beri hiç çalışmamış. `interview generate` komutunu ne saatlik tur çağırıyordu, ne iki pencere: taksonomi, öncelik hesabı, soru üreteci, kuyruk tablosu ve gelen kutusundaki kart hazırdı, ama kuyruğa hiç soru düşmüyordu — kişinin bunu bilmesinin tek yolu terminale komutu kendi yazmasıydı ve ürün hiçbir yerde bundan söz etmiyor. Altında ikinci bir sebep vardı: bir hücrenin "güçlü" sayılması için üç kanıt yetiyordu. Mutlak bir sayı, olgun bir külliyatta kendiliğinden aşılıyor. Ölçüldü — 19.853 olayda 35 hücrenin 35'i güçlü ve hiç boşluk yok, oysa aynı tabloda mizah 5 kanıtla, arayüz 1425 kanıtla yan yana duruyor: 285 katı fark, aynı etiket. Eşik artık tipik hücrenin dörtte biri — medyan, çünkü dağılım çarpık ve tek bir şişkin hücre yarım ızgarayı ince göstermemeli — ve tur soruyor: kuyrukta cevaplanmamış soru varken hiç sormuyor, boşluk kapanmadıysa aynı alana haftada birden sık dönmüyor.
  • Sorular gerçekten gelmeye başlayınca yeni bir kilit doğdu: cevaplayamadığın tek soru bütün sırayı durduruyor, çünkü tur kuyrukta açık soru varken yenisini yığmıyor. Geçme yolu motorda baştan vardı ama yalnız boş metin göndererek — kabuktan `interview answer 3 ""` yazarak — ve iki pencere de boş cevabı kendi reddediyor, yani oradan hiç ulaşılamıyordu. Geçmek ayrı bir komut oldu ve iki pencerede de soru kartında "Atla" düğmesi var. Düğmenin metni de küçük bir tuzaktı: yazacağım cümle sözlükte zaten başka bir anlamla duruyordu ve İngilizce açan kişi atlama düğmesinde "Switch" görecekti.
  • Soru üreteci, tekrar sormaması gerekeni göremiyordu. İstemin "zaten bilinenler" listesi kimliğin başından altmış kural alıyor; kurallar katman-güven sırasında geliyor ve katmanlar alfabetik, yani o altmışın tamamı tek bir katmandan. Sorular ise boşluk hücreleri için soruluyor ve hiçbiri o katmanda değil. Ölçüldü: boşluk hücrelerinde 13 kural vardı ve listede sıfırı — model "mizah anlayışın nasıl" diye soracaktı, mizahı iki kural zaten tarif ederken. Liste artık önce o hücrelerin kendi kurallarını alıyor, kalan yere kimliğin en güçlülerini. Sınırı da bir sayı değil bir ölçü: cümle uzunlukları üç katına kadar değişiyor ve sınırlanan şey istemin boyu.
  • Değişim ekranı ölüydü. Pencereler yalnız motorun yazdığı ayları sunuyor — bilerek, çünkü motorun hiç yazmadığı bir aya bakan kişi boş ekranı arıza sanıyor — ve o tabloyu dolduran tek yol terminale özet komutunu yazmaktı. Yani değişim ekranı, gelen kutusundaki özet kartı ve "kimliğim bu ay ne öğrendi" sorusunun tamamı kimsenin ulaşamadığı bir yerde duruyordu; modülün kendi açılış cümlesi "her ay somut bir şey döner, aboneliği yenilemeye değer kılan da bu" diyor. Özet modele hiç çıkmıyor, saf sorgu ve şablon: tur artık bitmiş her ayı bir kez yazıyor ve içinde bulunulan ayı yazmıyor, yarım bir ayı özetlemek olurdu. Karar eksenlerinin aylık okuması da aynı dertteydi — kayma iki ayın farkı ve okumayı yalnız özet komutu ile toplu iş alıyordu, yani ikisini de kullanmayan birinde hiç kayıt olmuyor ve özetin eksen bölümü hiç görünmüyordu.
  • Senin adına iş yapan ajanın sistem istemi, dengede duran bir karar eksenini yine de bir tarafa yazıyordu. Ölçüm sıfırdan ayırt edilemediğinde bunu söylememek için yazılmış bir kontrol vardı — bir eksen 210 gözlemde +0,04'ken kimlik "delege ederim" diyordu, −0,01 olsa "kendim yaparım" diyecekti — ama okuma iki yerde ayrı yazılmış ve kontrol yalnız kimlik belgesine uygulanmıştı, ajana değil. Ajan kimliğin en pahalı okuyucusu: kotadan harcıyor ve senin adına iş yapıyor. Bir de gözlem sayısını hiç görmüyordu, oysa +0,36 ile dört gözlem başka bir şey. Okuma artık tek yerde ve durum ekranı altı ekseni değeriyle yazıyor — "ölçülen eksen: 6" hiçbir şey söylemiyordu ve o altı satır kimliğin, hiç konuşulmamış bir durumda asistanı yönlendiren kısmı.
  • Saatlik turu, komut satırındaki motor çalıştırmıyor. macOS'ta turu uygulamanın kendi işi yürütüyor ve o iş uygulamanın içine gömülü motoru çağırıyor: uygulama ne zaman kurulduysa o günkü kopya. Yani yeni bir sürümdeki düzeltme ancak uygulama güncellendiğinde kimliği büyüten yere geçiyor — ve bunu söyleyen hiçbir şey yoktu. Zararı yalnız kafa karışıklığı değildi: denetim "beceri dosyası bütçeyi aşıyor, bütçeyi büyütmek gerekiyor" diyordu, oysa aynı veriden yeni motor bütçeye sığan bir dosya üretiyor. Söylenen çözüm, çözülecek şeyi büyütecekti. Denetim artık turu çalıştıran motorun sürümünü uygulamanın künyesinden okuyup farkı söylüyor. Bütçe uyarısı da iki sebebi ayırıyor: sürüm farkı varsa "önce uygulamayı güncelle, bütçeye dokunma".
  • Tam Disk Erişimi uyarısı, izin verilecek programı yalnız kayıttan okuyordu: "denedim ve reddedildim" diyebilen programlardan. Ama o kaydı tutmayı motorun yeni bir sürümü biliyor ve kimliği büyüten turu uygulamanın içine gömülü motor çalıştırıyor — kaydetmeyi bilmeyen bir sürümse hiçbir zaman "okuyamadım" demiyor ve listede hiç görünmüyor. Sonucu şuydu: kişi listedeki programa izin veriyor, "bitti" sanıyor ve kimlik turu kör kalmaya devam ediyor. Sessizlik sürerken sebebinin çözüldüğünü sanmak, sessizliğin kendisinden kötü. Turun programı artık kayıttan değil zamanlayıcının tanımından okunuyor, yani hiç denemeden biliniyor ve listede her zaman yazıyor.
  • Motor kullanıcıya yirmi iki yerde "şunu çalıştır" diyor ve sekizini kılavuz hiç anlatmıyordu. Bir komutun adını söyleyip ne yaptığını hiçbir yerde yazmamak, komutu hiç vermemekten kötü: kişi deneyip ne olacağını görmek zorunda kalıyor. Kılavuzdaki istemci listesi de bayattı — beş istemci yazıyordu, motor sekiz tanıyor — ve aynı bayat liste sitenin İngilizce metninde de duruyordu. İki denetim eklendi: kılavuzun yazdığı altmış beş komut satırı gerçekten ayrıştırılıyor mu, motorun önerdiği her komut kılavuzda anlatılıyor mu. Aynı denetim sitede ve pencerelerde zaten vardı; motorun kendi kılavuzunda yoktu; üçünün en çok okunanı ise o.
  • "Kalıcı sil" ve "maskele" komutları sildiklerini söylüyor ama başka bir program veritabanını açık tutuyorsa silmiyorlardı. Zincir üç halkalı: silinen satırın baytlarının üzerine yazmak, dosyayı yeniden kurmak ve yazma günlüğünü budamak. İlk ikisi daha önce düzeltilmişti; üçüncüsü eksikti ve en sondaki halka olduğu için ilk ikisini de etkisiz bırakıyordu. Ölçüldü — ikinci bir bağlantı açıkken maskeleme "1 maskelendi" diyordu ve anahtar `<veritabanı>-wal` içinde olduğu gibi duruyordu: ana dosya 4 KB, günlük 573 KB. Bu komutları çalıştıran kişi çoğu zaman orada özel bir şey olduğu için çalıştırıyor ve söylenenle olanın ayrılması bu üründe en pahalı yerde olur. Budama artık yapılıyor; yapılamadığında — pencere sahneyi çizerken SQLite izin vermiyor — metnin nerede kaldığı ve ne yapılacağı yazılıyor. Maskeleme komutu da hata koduyla dönüyor, çünkü onu çağıran bir betik de bilmeli.
  • Ürün, kullanıcıya kopyaladığında hata verecek bir komut söylüyordu: çelişki uyarıları `review answer <id> update` yazmasını öneriyordu, komut ise yalnız `keep`, `drop` ve `revise` kabul ediyor. O cümlenin tek işi kişiyi bir sonraki adıma götürmekti. Bunu yakalamak için yazılmış iki koruma birden kaçırmıştı, ikisi de aynı sebeple: öneri kaynakta iki bitişik metin parçasına bölünmüş ve tarama ilkinde duruyordu. Artık birleştiriyor. Köşeli parantezdeki seçenekler de komutun gerçekten kabul ettikleriyle karşılaştırılıyor.
  • Saatlik tur durumu "kurulu değil" diyordu — ama kimlik büyüyordu. macOS'ta turu uygulamanın kendi işi çalıştırıyor ve motorunki bilerek kurulmuyor: ikisi birden kurulursa aynı veritabanına aynı anda yazan iki iş oluyor. Denetim bunu zaten biliyor ve hiç uyarmıyordu; komut bilmiyordu. İki cevabın ayrışması da kişiye kimliğinin durduğunu düşündürüyordu. Cümleyi düzeltmek tek başına yetmedi: pencere cevabın tam metnine bakıyordu ve cümleye bir açıklama eklemek anahtarı kapalı gösterirdi. İnsan için yazılmış bir satırı ayrıştırmak bu üründe bir kez yaşanmış bir hata ve tam da burada ikinci kez yaşanacaktı; durum artık makine okunur biçimde de veriliyor ve pencere onu okuyor.
  • Konu haritası hiçbir şey ayırt etmiyordu. Bir kural, kanıt olaylarının değdiği *her* konuya bağlanıyordu ve eşik yoktu: yüz altmış sekiz gözlemli bir kural, o olayların dokunduğu her yere giriyor. Ölçüldü — kural başına 7,6 konu; en büyük konu kimliğin %61'ini kapsıyordu. Bir asistan "bu kişi hangi alanlarda çalışıyor" diye sorduğunda aldığı cevap bir şey söylemiyordu; konuya göre süzmek de hiçbir şeyi daraltmıyordu. Ağırlık zaten kayıtlıydı ve kullanılmıyordu: artık kanıtın beşte birini kapsayan bağlar işaretleniyor (kural başına 1,7 konu, en büyük konu %23) ve en güçlü bağ her hâlükârda kalıyor, çünkü konusuz bir kural haritadan bütünüyle düşerdi. Ayrım gösterimle gizleme arasında ve bilerek: gösterim yalnız anlatan bağlara bakıyor, gizleme hepsine — fazla saklamak güvenli, fazla listelemek işe yaramaz. Dilim tarafında bu aynı zamanda daha az paylaşmak demek, çünkü eşiksiz bağla "şu konudaki kurallarımı ver" kimliğin yarısını verebiliyordu.
  • Arama gevşediğinde yanlış cevabı başa koyuyordu. Hiçbir kural sorunun bütün kelimelerini taşımadığında liste "herhangi biri"ne genişliyor — bu doğru, çünkü boş bir cevap asistana "bulamadım" değil "bu kişinin böyle bir tercihi yok" diye okunuyor. Ama o liste güvene göre sıralanıyordu: "kod yorumu dili" sorusuna en üstte "kanka, moruk kullanır" geliyordu, "hangi saatte çalışır" sorusuna mağaza formları. Tek kelime tutan ama güveni yüksek bir kural, üç kelimeyi birden tutanı eziyordu — ve asistan listenin gevşetildiğini biliyor ama en üstte duranın ilgisiz olduğunu bilmiyor. Sıra artık üç ölçüde: kaç kelime tuttuğu, tuttuğu kelimelerin nadirliği (iki yüz kuralda geçen bir kelime hiçbir şey ayırt etmiyor), sonra kuralın gücü. Cevabı belli beş soruda beklenen kuralın ilk üçe girmesi 2/5'ten 4/5'e çıktı.
  • Pencerelerin sahnesi de aynı bağları çiziyordu, yani bir saç yumağı: dosyanın kendi yorumu bunu görmüş ve kabullenmişti. İki pencerede dört sorgu artık yalnız kuralı anlatan bağlara bakıyor. Sütunun varlığı sorularak kullanılıyor — pencere motordan yeni olabiliyor ve olmayan bir sütuna bakan sorgu ekranı bütünüyle boş bırakırdı; eksik bir ayrım, çalışmayan bir ekrandan iyi. Yoklama `PRAGMA` ile değil `SELECT` ile yapılıyor, çünkü macOS penceresi veritabanını dar bir beyaz listeyle salt okunur açıyor ve `PRAGMA`yı listeye eklemek okumak için yazma yolunu aralamaktı.
  • Asistanın her oturumda yüklediği kimlik dosyası, kişinin kendi yazdığı kuralların hiçbirini taşımıyordu. Ölçüldü: elle yazılmış on altı kuraldan sıfırı gidiyordu — "backend'de otomatik test standart" (güven 0,97), "TODO bırakma", "postamble yapma", "modüler yaz". Yani kişinin asistana söylediği şeyler, asistanın okumadığı tek şeydi. Sebep motorun kendi yorumunda zaten yazılıydı: beyan edilmiş bir kural alışkanlıkla yarışamaz, çünkü "asla postamble yazma" hiçbir zaman ikinci kez gözlenmez, uyuluyor; tekrarın yokluğu da vazgeçme değil uyum. Güven hesabı buna ayrı bir taban veriyordu ama taban yetmiyor: yüz altmış sekiz gözlemli bir alışkanlığın yanında 0,6'lık bir beyan hiç seçilmiyor. Bütçe artık önce beyan edilenleri alıyor, sınırlı bir payla — biri yüz kural yazarsa ölçülmüş kimlik bütünüyle düşerdi ve ürünün iddiası ölçüm.
  • Aynı dosyada beş alan hiç temsil edilmiyordu: yığın, ödeme, gelir, analitik ve mizah. Bütçe katmanlar arasında denge kuruyordu — gerekçesi kodda yazılı, "asistanın nasıl konuşacağını söyleyen kurallar tercih listesinin altında kalıyordu" — ama katman *içinde* salt güvene bakıyordu ve iki yüz on dört tercih kuralının sekseni arayüzden olduğu için küçük alanlar bütünüyle eleniyordu. Asistanın hangi yığınla çalışıldığını bilmemesi, bir kod asistanı için bilinmeyecek en pahalı şey; "iş üstündeyken espri istemez" de doğrudan davranış değiştiren bir kural ve o da yoktu. Aynı gerekçe bir seviye aşağıya uygulandı: her alana bir temsilci — zayıf kural değil, o alanın *en güçlüsü*. Sonuç hem daha kapsayıcı hem daha küçük: otuz beş alanın hepsi, 7.144 yerine 5.986 jeton.
  • Bütçenin kendisi verilen bir sözdü ve tutulmuyordu. Sığdırma döngüsü, oran daraltması seçimi değiştirmeyi bırakınca bütçeyi aşan dosyayı döndürüp susuyordu: 6.000 jetonluk bir bütçe 7.144 jetonluk dosya veriyordu. Artık en zayıf kural düşürülüyor. Başlık bloğu tek başına istenen bütçeden büyükse yapılacak bir şey yok — orada eksik bir kimlik vermektense fazlasını verip durumu söylemek doğru. Denetim de bunu söylüyor.
  • Kimlik veritabanı herkese okunur duruyordu. Ölçüldü: kendi makinemde 136 MB'lık dosya `-rw-r--r--` idi. Bugüne kadar yalnız *dizin* kapatılıyordu ve dosya oradayken bu yetiyor — ama dosya dizinden çıktığı an iznini kendisiyle taşıyor: yedek, senkron, Time Machine'den geri yükleme. Sebebi de kodun kendi içinde yazıyordu: dizin kapatan işlev bir değer döndürüyor ve yorumu "çağıran taraf bunu okuyup kullanıcıya söylüyor" diyordu; dört çağıranın hiçbiri okumuyordu. Veritabanı ve yan dosyaları (WAL, shm) artık açılışta kapatılıyor — WAL da aynı metni taşıyor, henüz ana dosyaya yazılmamış satırlar orada — ve denetim diskteki izinleri ölçüyor. Tür süzgeci yok: ilk hâli yalnız veritabanı başlığı taşıyanlara bakıyordu ve turun günlüğünü kaçırıyordu, oysa o da kimliğin içinden cümleler taşıyor.
  • `doctor --fix` tarif etmek yerine yapıyor, çevre sorunlarına da bakıyor. Kimliğin kendisi tutarlıyken komut onarım bloğuna hiç ulaşmıyordu: uyarıları yazıp dönüyordu, yani `--fix` tam da onarılacak tek şeyin çevrede olduğu durumda çalışmıyordu. İzinler artık komut tarif edilmeden kapatılıyor — "şu komutu yaz" demek kişinin yazmasını beklemek ve çoğu kimse yazmıyor. Kalan uyarılar onarımdan sonra yeniden ölçülüyor; önceki listeyi "kalan" diye göstermek düzelttiğimiz şeyi hâlâ bozuk göstermek olurdu. Çıkış kodu 0 kalıyor ve bu bilerek: saatlik iş `doctor --fix && run` diye zincirleniyor ve elle bakılacak bir uyarı yüzünden başka bir şey dönmek ajanın turunu hiç çalıştırmamak olurdu.
  • Her kaynak artık baktığını sayıyor. `Eklenen: 0` üç ayrı arızayı aynı satırla anlatıyor — kaynak okunamadı, hiç kayıt yoktu, süzgeç hepsini eledi — ve sayı tam bunu ayırmak için konmuştu ama yalnız iki toplayıcıda vardı. Buna üç yeni durum eklendi: okunamayan git deposu (yirmi dört depodan biri düşünce toplama sessizce eksiliyordu), bozuk dışa aktarım dosyası (yarıda kalmış bir indirme açılıyor ama okunmuyor, kişi dosyayı verdiğini sanıyor) ve okunurken düşen veritabanı. Sonuncusu en sinsisi: dosya açıldığı için "ulaşılamıyor" uyarısı da çıkmıyordu. Sorunlar artık kayda yazılıyor ve pencerede görünüyor; düzelince kayıt siliniyor, çünkü kalkmayan bir uyarı bakılmayan bir uyarıdır.
  • Önbellek ucuzlatmadığı zaman söyleniyor. Maliyet ekranı üç satırı alt alta sıralıyordu ve her biri ötekinden ucuzmuş gibi duruyor; tek pencerede tersi, çünkü önek bir kez yazılıyor, yazma okumadan pahalı ve tekrar okunacak bir şey yok. Kazancın kaçıncı pencereden itibaren başladığı oranlardan hesaplanıyor, elle yazılmıyor — sağlayıcı fiyatını değiştirdiği gün cümle de kendiliğinden değişsin.
  • Motorun uyarısı ana ekrana çıktı. Denetimin söyledikleri — saatlik tur kurulu değil, kaynak okunamıyor, diskte süpürülmemiş bir veri kopyası var — yalnız Ayarlar'da duruyordu. Oysa hepsi "ürün kendini güncellemiyor" diyen durumlar ve bu üründe saatlik tur aylarca her turda sessizce düştü: ekranda "kurulu" yazdı, kimlik büyümedi. İki pencerede de ilk uyarı yazılıyor, kalanı sayılıyor; üç uyarıyı birden ana ekrana yazmak bildirime bakılmamasının en hızlı yolu, kalanını saklamak da bir şeyi gizlemek.
  • İzin düğmesi sorunun göründüğü yerde. "Tam Disk Erişimi ayarlarını aç" yalnız kurulum ekranındaydı: bir kez gösterilip kayboluyor. Oysa izin sonradan da düşebiliyor — uygulamanın kimliği değişince macOS onu yeni sayıyor ve verilmiş izni sıfırlıyor — ve tam o an düğme ortada yok. Artık ana ekrandaki bildirimde, kaynak satırının yanında ve ayarlardaki uyarı listesinde. Motor neyin gerektiğini adıyla söylüyor, pencere o adı görünce düğmeyi gösteriyor: cümleyi okuyup hangi düğmeyi göstereceğine karar vermek, cümle değiştiği gün sessizce bozulan bir bağ kurardı. Windows'ta böyle bir izin yok, yani düğme de yok.
  • macOS penceresinin kaynak listesi "izin yok" ile "yok"u aynı satırla anlatıyordu ve çözümleri başka: birine dosya göstermek gerekiyor, ötekine Tam Disk Erişimi vermek. Windows penceresinde bu ayrım 1.6.8'den beri vardı. İki pencere de artık üçüncü bir durumu da tanıyor — "buradan okunuyor ama saatlik tur okuyamıyor" — çünkü orada "izin yok" demek yalan olurdu.
  • Ekranın yarısının Türkçe kalması artık testte düşüyor. macOS penceresinde çevirinin tam olduğunu sınayan bir şey yoktu ve test yazılırken gerçek bir eksik buldu: "Ne işe yarıyor?" ekranındaki açıklama — ürünün kendini anlattığı yer — İngilizce kullanıcıya Türkçe çıkıyordu. Windows penceresinde de ilgili koruma iddiasını kanıtlamıyordu: "elle düzenlenmiş bir tablo bir sonraki üretimde kaybolur" diye yazıyor, ama yalnız anahtar sayısını sayıyordu. Tablo artık kaynaklarından yeniden kurulup karşılaştırılıyor.
  • Pencerelerin motora yazdığı komutlar motorun kendisine doğrulatılıyor. Yanlış bir bayrak derleyiciden geçiyor, motor tanımıyor, ekran hatayı yutuyor ve düğme çalışıyormuş gibi duruyor — `updates --on` yazılmıştı, motor `updates on` bekliyordu. Pencere testleri yazımları sabitliyordu ama yalnız yazıldıkları gün doğruydu. Denetim sürüm betiğinde, motorun paketlenmesinden hemen sonra duruyor: sürüme giren motor doğruluyor. Motor komutu çalıştırmıyor, yalnız çözümlüyor — `source <ad> --on` ile sınamak, sınarken ayarı gerçekten değiştirmek olurdu.
  • Denetimin yolladığı yer de aynı yanıltıcı cevabı veriyordu. "Bakmak için: coredence source" deniyor ve o liste kaynağın yanına "var" yazıyordu — çünkü liste de komutun kendi bağlamından bakıyor. Saatlik tur bir kaynağı okuyamamışsa listede artık "turda izin yok" yazıyor. Kişinin yollandığı yer, asıl cevabın olduğu yer olmalı.
  • Her komut açılışta yazma kilidi alıyordu. `CREATE TABLE IF NOT EXISTS` hiçbir şey yapmasa bile SQLite bunu yazma işlemi olarak açıyor, yani salt okunur komutlar — denetim, durum, kural araması, MCP sunucusu — süren bir yazmanın arkasında bekliyor ve zaman aşımında düşüyordu. Kendi makinemde uzun bir bakım işleminin ortasında saatlik iş "database is locked" ile düştü ve o turda hiçbir şey yapmadı. Şema artık damgalanıyor ve damga tutuyorsa hiçbir şey yazılmıyor. Damga elle tutulan bir sürüm numarası değil, şema metninin kendi özeti: numarayı yükseltmeyi unutan biri var olan veritabanlarına yeni sütunun hiç gitmemesine yol açardı ve bunu hiçbir şey söylemezdi.
  • Kaynağın okunup okunmadığı, soruyu kimin sorduğuna göre değişiyor. macOS'ta Tam Disk Erişimi çalıştıran programa veriliyor, kişiye değil: terminale verilmiş bir izin saatlik turun işlemini kapsamıyor. Yani aynı dosya elle sorulunca "okunuyor", turda "izin yok" — ve kimliği büyüten tur o. Denetimin kendi kendini yanıltabildiği tek yer burası ve kendi makinemde tam bu oldu: kaynağın sessizliği bir önceki maddede "gerçek" görünüyordu, saatlik işin günlüğünde ise izin reddi yazıyordu; iki cevap hiçbir yerde yan yana gelmiyordu. Ulaşılabilirlik artık bağlamıyla saklanıyor — elle çalıştırılan komutun gördüğü ayrı, turun gördüğü ayrı, biri ötekini silmiyor — ve ikisi ayrışırsa denetim bunu söylüyor. Hangi programa izin verileceğini de adıyla yazıyor: "turu çalıştıran programı ekle" demek kişiye aramayı bırakmak olurdu, üstelik yanlış programı eklemek hiçbir şey yapmıyor ve o hata da sessiz.
  • Bir kaynak yüz on bir gündür hiçbir şey üretmiyordu ve sebebini söyleyen hiçbir yer yoktu. Toplayıcının kendi yorumu sebebi itiraf ediyordu: "İzin yoksa toplayıcı sessizce boş dönüyor." Asıl tuzak `exists()` çağrısında: macOS Tam Disk Erişimi verilmemişken `stat` reddediliyor ve Python bunu yutup "dosya yok" diyor — yani izin reddi, olmayan bir dosya gibi görünüyor ve beş toplayıcı tam bu satırla başlıyordu. Artık dosya gerçekten açılıyor; açılmıyorsa sebebi yazılıyor. Bulunamayan bir dosya, listelenemeyen bir klasörün içindeyse bu bir izin sorunu sayılıyor — macOS'un yaptığı tam bu. Üç yerde görünüyor: turun kendisinde, denetimde ve kaynak listesinde. Kendi kimliğimde ölçülen cevap "okunuyor — sessizlik gerçek" oldu, yani kaynak çalışıyor ve gerçekten susulmuş.
  • Eksik gelen bir kaynak da söyleniyor. Git depoları, not klasörleri ve WhatsApp dökümleri tek bir dosyaya değil bir listeye bakıyor; listedeki bir yol kaybolduğunda — depo taşındı, disk takılı değil — kaynak çalışmaya devam ediyor ve eksik geldiğini söyleyen hiçbir şey olmuyordu. Sayı düşüyor, sebebi yok. Bu artık ayrı bir durum: kaynak okunuyor sayılıyor ama hangi yolun okunamadığı turda yazılıyor.
  • Denetimde bir boşluk vardı ve tam da en kötü duruma denk geliyordu. Susmuş kaynak uyarısı kaynağın kendi ritmini ölçüyor, bunun için en az on olay gerekiyor — yani kurulduğu sanılan ama bir gün bile çalışmamış bir kaynak hiçbir uyarı üretmiyordu. Yeni denetim ritme değil dosyanın kendisine bakıyor: açık her kaynak için açılıyor mu diye soruyor.
  • Kurulum anında izin reddi, dosyanın biçiminin yanlış olduğu diye anlatılıyordu. Toplayıcı okunamayan kaynakta sessizce boş dönüyor — turu düşürmemek için, bilerek — ve deneme okuması o boşluğu "okunuyor ama hiçbir olay çıkmadı, dosyanın biçimi beklenen gibi değil" diye okuyordu. Yani iznin verilmediği an kişiye yanlış şey söyleniyordu; üstelik tam düzeltebileceği tek yerde. Deneme artık önce dosyanın kendisini soruyor ve macOS'ta ne yapılacağını tarif ediyor.
  • Saatlik tur kırk iki saniyeden altı saniyeye indi. Ölçüm: git geçmişinin tamamı yirmi saniye, üç yüz altmış oturum dosyası on altı saniye, dışa aktarım dosyası dört buçuk saniye — saatte bir, her seferinde baştan, seksen yeni olay için. Toplayıcılar artık nereye kadar okuduklarını biliyor: git `--since` ile otuz günlük bir payın gerisine bakmıyor (pay, geçmişi değiştiren rebase ve amend için), oturum dosyaları damgası işaretten eskiyse hiç açılmıyor. İşareti tur yalnız sonuna kadar döndüğünde yazıyor — yarıda kalan bir tur işareti ilerletmiyor ve bir sonraki tur her şeyi yeniden okuyor, çünkü atlanan bir olayın sessizce kaybolması kazanılan saniyelerden pahalı. Bozuk bir işaretin sonucu da "biraz fazla okumak", "hiç okumamak" değil; `ingest --full` işareti bütünüyle yok sayıyor.
  • Motorun uyarısı ana ekrana çıktı. Denetimin söyledikleri — saatlik tur kurulu değil, kaynak okunamıyor, diskte süpürülmemiş bir veri kopyası var — yalnız Ayarlar'da duruyordu. Oysa hepsi "ürün kendini güncellemiyor" diyen durumlar ve bu üründe saatlik tur aylarca her turda düştü: ekranda "kurulu" yazdı, kimlik büyümedi, kimse fark etmedi. İki pencerede de ilk uyarı yazılıyor, kalanı sayılıyor; üç uyarıyı birden ana ekrana yazmak bildirime bakılmamasının en hızlı yolu, kalanını saklamak da bir şeyi gizlemek.
  • Saklanan olayların içinde maskelenmemiş bir parola duruyordu. Maskeleme her şeyi yazılmadan önce süzüyor ve bugüne kadar alışıldığı gibi sınanmıştı: kuralların yanında yazılmış örneklerle. Bu sürümde tersi denendi — gerçek veritabanı, maskeleyiciden bağımsız yazılmış kalıplarla tarandı, çünkü maskeleyicinin kendi kalıbıyla aramak tam olarak onun kaçırdığını kaçırıyor. 19.058 olayın içinden açık bir parola ve bir oturum jetonu çıktı.
  • Sebep tek karakterdi. JSON'da anahtar `"password"` diye yazılıyor ve iki nokta kapanış tırnağından *sonra* geliyor; kural ise ad ile ayırıcı arasında hiçbir şey olmamasını bekliyordu. `password = x` yakalanıyordu, `PGPASSWORD=x` yakalanıyordu, `{"password":"…"}` yakalanmıyordu — ve bir API denemesinin dökümünde parolanın aldığı biçim tam bu. O olaylar damıtılırken modele gidiyor, yani bu üründe bir şeyin makineden çıktığı tek yol. Kuralı genişletmenin bedeli düz yazı olmamalı: "şifre yönetimi zor" ve "PASSWORD_RESET_URL akışı" dokunulmadan geçiyor ve bunu söyleyen bir sınama var.
  • Kurallar büyüyor ve eski kurallarla yazılmış satırlar maruziyetini koruyor. `reredact` bunları süpürüyor ve baştan beri var, ama kimse çalıştırmayı hatırlamıyor — üstelik hatırlaması gereken an, kuralların değiştiğini bilmediği an. Gerçek kimlikte 487 satır hâlâ bugünkü kuralların maskeleyeceği bir şey taşıyordu. Bütün olayları yeniden taramak otuz yedi saniye sürüyor, yani bu bir sağlık denetimi olamaz; kural kümesinin parmak izi olayların yanında duruyor ve aynı soruyu anında cevaplıyor. Parmak izi olmayan bir veritabanı eski sayılıyor: bilmiyorsak temiz saymak, denetimin var olma sebebini iptal eder.
  • Parmak izi tek başına da yetmiyor, çünkü aynı veritabanına iki motor yazabiliyor: uygulamanın içindeki ve ayrı kurulan. Eski olan notu bilmediği için ona dokunmuyor, yani yeni motorun bıraktığı damga olduğu yerde duruyor ve eklediği her satır temiz görünüyor. Bu varsayım değil, ölçüm: kurulu uygulama bir önceki sürümün motorunu çalıştırıyordu ve düzeltmeden sonraki dört saatte 94 satır maskelenmemiş parola yazdı, denetim o süre boyunca "çevre temiz" diyordu. Not artık kuralların nereye kadar uygulandığını da tutuyor ve o noktanın ötesindeki satırlar bildiriliyor.
  • Kimlik birden fazla yerde duruyor ve birini temizlemek onu temizlemek değil. İkisi motorun dizininin dışında: asistanın her oturumda yüklediği beceri dosyası ve taşınabilir belge. İkisi de kimliğin düz yazı hâli ve `uninstall --everything` ikisini de silmiyor, üstelik "kimlik silindi" yazıyordu — o cümleyi en çok, tam da verisi gitsin diye kaldıran kişi okuyor. Aynı komut dizin gerçekten gitmiş mi diye bakmadan da söylüyordu bunu, çünkü silme kendi hatalarını yok sayıyordu.
  • Öteki kopyalar yedekler ve denetim artık onları sayıyor. Süpürmenin ulaşabildiklerini öksüz WAL dosyalarından ayırıyor: SQLite WAL'ı `<veritabanı>-wal` diye arıyor, yani adı uymayan bir günlük hiçbir veritabanına ait değil ve `reredact` onu hiç açamıyor. Gerçek bir makinede ölçüldü — yedeğin kendisini süpürmek 531 satırı maskeledi ve günlüğündeki hiçbir sırra dokunmadı. Onlarda metni temizlemenin tek yolu dosyayı silmek; uyarı da yapılamayacak bir süpürmeyi tarif etmek yerine bunu söylüyor.
  • "Kalıcı sil" kalıcı değildi. `forget --purge` kalıcı sildiğini söylüyor ve geri alınamaz olduğu için onay istiyor; SQLite ise varsayılanda silinen satırın baytlarını olduğu yerde bırakıyor. Sayfa boşa çıkıyor ama metin, üzerine yazılana kadar diskte duruyor — ölçüldü, silinen bir olayın metni işlemden sonra dosyada bulunuyordu. O komutu çalıştıran kişi çoğu zaman orada özel bir şey olduğu için çalıştırıyor. Silinen içerik artık silinirken üzerine yazılıyor ve dosya sonrasında yeniden kuruluyor, ki bu sürümden önce boşa çıkmış sayfalar da taşıdıklarını bıraksın. 111 MB'lık gerçek bir kimlikte yeniden kurma yarım saniye sürüyor.
  • Asistana "buradan başla" denen aracın tavanı yoktu. `identity` bütün aktif kuralları tek çağrıda döndürüyordu: gerçek bir kimlikte 134.565 karakter, yaklaşık 45.000 jeton. Beceri dosyasına tam bu yüzden bütçe konmuştu ve aynı sınır buraya hiç uygulanmamıştı — biri sınırlıyken ötekinin sınırsız olması sınırı anlamsız yapıyor. Artık bütçeli; bütçe de gerçekten gönderilen biçim ölçülerek uygulanıyor: altı bin diyip dokuz bin gönderen bir bütçe bir sayı değildir. Dışarıda kalan sessizce düşmüyor; kaç tane olduğu ve kalanının nereden alınacağı cevabın içinde.
  • Tanınmayan bir argüman yok sayılıyordu ve cevap, sorunun tam tersi oluyordu. Kural aramasını `search` yerine `query` ile çağırmak hiçbir şey süzmüyor ve kimliğin tamamını döndürüyordu — arama sonucu diye. Asistan istediğinden az değil *fazla* alıyor ve cevabın yanlış olduğunu gösteren hiçbir şey yok. Tanınmayan argüman artık reddediliyor ve kabul edilen adlar hatanın içinde yazıyor, ki asistan kendi kendini düzeltebilsin.
  • İki kelimelik bir arama hiçbir şey bulmuyordu. Tek bir `LIKE` idi, yani birebir geçmeyen her şey boş dönüyordu: "flutter riverpod", ikisi hakkında da kuralı olan bir kimlikte sıfır kural veriyordu. Boş bir cevap "bulamadım" diye okunmuyor, "bu kişinin böyle bir tercihi yok" diye okunuyor ve bu yanlış. Her kelime artık ayrı aranıyor — kuralın metninde, alanında ve adında, SQLite'ın `LIKE`ının Türkçe için yapmadığı biçimde büyük-küçük harf ayırmadan. Hiçbiri bütün kelimeleri taşımıyorsa arama herhangi birine genişliyor ve bunu cevabında söylüyor, çünkü sessizce genişlemek asistana listesinin olduğundan dar olduğunu söylemek olurdu.
  • Her soru artık kanıtına açılıyor. Kuyruk "bu kural hâlâ geçerli mi" diye soruyor ve kanıtı çıplak bir numara olarak bırakıyordu — `(kanıt: [18879])`. Ürünün iddiası her kuralın çıktığı yere açıldığı ve o soruya cevap vermek tam olarak o anı okumaya bağlı. Üç yüzey de — motor ve iki pencere — artık kaynağı, projeyi, tarihi ve yazılanı gösteriyor. Bir kez görülmüş kural için de aynısı geçerli: tek bir gözlemden çıkmış bir cümle için "bu sen misin" diye soruyor ve o gözlemi de gösteriyor.
  • Kurulum, hiç başlamamış bir turu çalışmış sayıyordu. Temiz bir makinede ekran "döndüğü görüldü" yazdı ve günlükte tek satır vardı: `ModuleNotFoundError: No module named 'coredence'`. Denetim önce günlüğe bir şey yazılıp yazılmadığına, sonra iki Türkçe kelimeye bakıyordu; Python'un kendi hatası ikisine de takılmıyor, yani denetim kendisi için yazıldığı hatanın tam karşılığını geçiriyordu. Artık turun kendi başlangıç damgasını bekliyor ve damga tek yerde tanımlı, ki yazan ile arayan birbirinden ayrılamasın.
  • Kurulum ekranı hangi yolu bulduğunu ve o yolun bedelini söylüyor. Damıtmanın üç yolu var ve üçü bambaşka: `claude` komutu bir aboneliğin kotasından harcıyor, API anahtarı doğrudan paradan, yerel model hiçbir yerden. Üçü de aynı kelimeyi gösteriyordu: "hazır". Maliyet bu ürünün giriş engeli, yani harcayacak olan yol harcamadan önce kendi adını söylemeli.
  • `compare` bulduğunu yazıyor. Bu komut kişinin kendisi hakkında yazdığıyla gerçekte yaptığını çarpıştırıyor ve yalnız sayı veriyordu — "çelişen: 3" — hangi üçü olduğunu başka bir komuta bırakarak. Bulduğu şey, çalıştırmanın bütün sebebi.
  • Bütçe artık söylediği sayıyı gönderiyor. 6.000 jetonluk bir beceri dosyası bütçesi 7.850 jetonluk bir dosya üretiyordu: bütçe kuralların satır uzunluğunu ölçüyor, dosyada ise frontmatter, başlıklar, eksen bölümü ve son uyarı da var. Yüzde otuz fazlası, üstelik bu dosya her oturumda yükleniyor. İki yüzey de artık gerçekten gönderilen şeyi ölçüyor ve daraltmayı sabit bir adımla değil ölçülen orandan yapıyor — sabit adım bütçenin sekizde birini boşa bırakıyordu, yani sığabilecek kırk kural kimliğe girmiyordu.
  • Beceri dosyasının ilk satırı son satırıyla çelişiyordu: başlık "toplam 109 aktif kural" derken aynı dosyanın sonu "378 kural daha var" diyordu. Kendi içinde çelişen bir belge, okuyanı hangi cümleye inanacağına bırakır — ve burada okuyan bir asistan.
  • İki pencere var ve yalnız birine söyleniyordu. Sağlık denetimi 1.6.8'de Windows penceresine girdi ve gerekçe "çoğu kişi pencerede yaşıyor"du — ama tek pencereye eklendi. Motorun o günden beri öğrendiği her şey macOS'ta görünmez kaldı: susmuş bir kaynak, eskiyen maskeleme kuralları, hiçbir şeyin süpürmediği bir veritabanı kopyası, kurulu ama bağlı olmayan bir istemci, bozuk zamanlanmış iş, ulaşılamayan MCP. Gerçek bir makinede iki uyarı vardı ve pencere hiçbirini göstermiyordu. Aynısı "bu kimlik henüz taslak" bildirimi için de geçerliydi: macOS'ta yarım bir kimlik tam görünüyordu. İkincisini düzeltirken iki pencerede birden duran bir hata çıktı — taslak sayısı süzgeçten geçmiş listeden okunuyordu, yani taslakları gizleyen biri bildirimi de kaybediyordu. İkisi de artık veritabanına doğrudan soruyor.
  • Elle yazdığın bir kural cümlesi maskelenmiyordu. Olaylar baştan beri maskeleniyor; kural cümleleri "modelin maskelenmiş olaylardan yazdığı metin" sayıldığı için dışarıda kalmıştı — ama sahibinin kendi elleriyle yazdığı bir cümle o yoldan gelmiyor. Ölçüldü: `review answer --statement` ile yazılan bir anahtar olduğu gibi kimliğe giriyordu. Bir kural cümlesi olaydan daha açık: olay yalnız damıtılırken modele gidiyor, kural ise beceri dosyasında her oturumda yükleniyor, taşınabilir belgede duruyor ve MCP'den okunuyor. Elle yazılan, elle düzeltilen ve damıtıcının yazdığı cümleler artık maskeden geçiyor. Aynısı kuralın gerekçesi için de geçerli — `export --format json` onu birine verilen dosyaya koyuyor — ve konu adı için de: onu da kendin yazabiliyorsun ve `topics` aracıyla asistana gidiyor. Dört ayrı alan ve her seferinde "bu modelin yazdığı metin, temiz olmalı" diye düşünülmüştü. Alan alan sınamak beşincisini kaçırır, o yüzden artık çıkışı sınayan bir kural var: bir alana sır yazılıyor, asistanın çağırabildiği dört kapı da açılıyor ve cevaplarda o sır aranıyor. Sınamanın kör olmadığı da sınanıyor — yakalamayan bir sızıntı sınaması, olmayan bir sınamadan kötü.
  • Gizli bir konu, dışa aktarılan bir dilimde tek kelime edilmeden gidebiliyordu. Dışa aktarma paylaşım ilkesini bilerek uygulamıyor: aynı komut hem "birine bir dilim vermek" hem "kimliğini alıp gitmek" için ve ikincisinde gizli konuyu çıkarmak kişinin kendi verisini eksiltmek olurdu. Kodun kendi sözü de buydu — birine dosya verirken, gizlediğini sandığı bir konunun kuralları o dosyada duruyorsa bunu bilmeli. O uyarı yalnız `--dry-run` çıktısındaydı ve onu kimse çalıştırmıyor: kişi `export --out` yazıyor ve ekranda yalnız "Yazıldı" görüyor. Uyarı artık asıl yolda, üç yüzeyden hiç göstermeyen tek yer olan macOS penceresinde de. Karar yine alınmıyor: kural dosyada duruyor ve daraltmanın yolu yazıyor.
  • Terminalde de bir kuralı arayıp kanıtına bakılabiliyor. Ürünün iddiası her kuralın çıktığı yere açıldığı ve bu bugüne kadar yalnız asistanlar için doğruydu: MCP'de araçlar, pencerede kartlar vardı, ama kimliğin sahibi beceri dosyasında bir cümle görüp gerekçesini soramıyordu. `coredence rule <kelimeler>` arıyor, `coredence rule <ad>` o kuralı sayılarıyla ve dayandığı gerçek anlarla gösteriyor. Paylaşım ilkesi burada uygulanmıyor ve bu bilerek — ilke asistana giden şeyi sınırlıyor, sahibinin kendi kimliğinde ne görebileceğini değil.
  • Maliyet ekranı kendi cevabını yuvarlayıp yok ediyordu. Bekleyen tek bir pencere "0.0M jeton" ve "~$0" görünüyordu. Bu ekran ürünün ne tutacağını cevaplıyor, yani okunamayan bir sayı cevap vermemekle aynı şey. Artık "31K jeton" ve "$0.10" diyor — yirmi sent bedava değil.

1.6.9 (34)

Eylül 2026
  • Windows'ta saatlik tur pilde hiç dönmüyordu. 1.6.8 görevin tırnaklamasını düzeltti ve o doğruydu; altından ikinci, daha sessiz bir arıza çıktı. `schtasks /Create` görevi kendi varsayılanlarıyla kuruyor ve o varsayılanlar "pilde başlama" ile "pile geçerse dur". Dizüstü bir bilgisayarda — yani çoğu makinede — fişe takılı olmadığın her saat tur hiç dönmüyor ve bunu söyleyen hiçbir şey yok. `/TR`'nin bu ayar için anahtarı da yok, tanımın tamamını vermek tek yol.
  • Görev artık komut satırından değil, tam bir tanımdan kuruluyor. Yan etkisi tırnaklama hatasının sınıfını tamamen ortadan kaldırmak: komut ile argümanları ayrı elemanlar, yanlış tırnaklayacak kimse kalmıyor. Tanımda ayrıca uyurken kaçan turu uyanınca çalıştırma — launchd'nin macOS'ta kendiliğinden yaptığı şey — ve asılı kalan bir turu kesme var, yoksa sonraki saatlerin hiçbiri başlayamıyor. Kurulu bozuk görevler, ister tırnaklama ister pil yüzünden olsun, yükseltmede yenileniyor.
  • Bu hata aylarca yaşadı çünkü hiçbir sınama gerçekten bir görev kurmadı. Hepsi komutun *metnini* denetliyordu ve metin, yanlış olduğu hâliyle kendi beklentisine uyuyordu. Windows sürekli tümleştirmesi artık gerçek bir görev kuruyor, Görev Zamanlayıcı'nın kaydettiğini geri okuyor, çalıştırıyor ve turun günlüğünün ortaya çıkmasını bekliyor. Çıkış kodu burada hiçbir şey kanıtlamıyor — bozuk görev de sıfır dönüyordu.
  • Kurulum, hiç başlamamış bir turu "çalıştı" sayıyordu. Temiz bir makinede kurulum baştan sona koşturuldu ve ekran "döndüğü görüldü" dedi; günlükte tek satır vardı: `ModuleNotFoundError: No module named 'coredence'`. Doğrulama iki şeye bakıyordu — günlüğe bir şey yazıldı mı, yazılanda "HATA" geçiyor mu. Python'un kendi hatası ikisine de takılmıyor: İngilizce; bizim kodumuz hiç çalışmadığı için Türkçe bir satır da yok. Bu denetim, kendisi için yazıldığı hatanın tam karşılığını geçiriyordu. Aranan şey artık turun kendi başlangıç damgası ve damga tek yerde tanımlı — yazan ile arayan ayrıldığı gün doğrulama her bozuk kuruluma "çalışıyor" derdi.
  • Kurulum ekranı hangi yolu bulduğunu ve o yolun bedelini söylüyor. Damıtmanın üç yolu var ve üçü bambaşka: `claude` komutu kişinin abonelik kotasından harcıyor, API anahtarı doğrudan cebinden, yerel model hiçbir yerden. Üçü de ekranda aynı tek kelimeyi alıyordu: "hazır". Bu üründe maliyet giriş engelinin kendisi; harcayacak olan yol, harcamadan önce kendi adını söylemeli.
  • Kimliği hiçbir istemcinin okumaması da bir arıza ve artık söyleniyor. Kimliğin asistana ulaşmasının iki yolu var: her oturumda yüklenen beceri dosyası ve MCP. İkincisi kurulu istemcilerin ayar dosyasına yazılıyor ve yazılmamışsa kimlik oraya hiç gitmiyor — ekranda eksilen hiçbir şey olmadan. Yalnız *hiçbiri* bağlı değilken söyleniyor: bir kısmını bilerek bağlamamak kişinin kararı ve onu uyarıya çevirmek, uyarıya bakılmamasının en hızlı yolu.
  • Asistanın kapısı artık açılarak denetleniyor. Sağlık denetimi MCP sunucusuna kendini tanıtmasını söylüyordu ve sunucu bunu okunamayan bir profille de, veritabanı hiç yokken de seve seve yapıyor — `initialize` ikisine de dokunmuyor. Denetim artık bir aracı çağırıp kimliği istiyor; bir asistanın cevap alacağını kanıtlayan tek şey bu. Bilerek bozulmuş bir profille denendi: eski denetim geçiyordu, yenisi geçmiyor.
  • `coredence mcp` `--profile` ve `--db` bayraklarını dinlemiyordu. Bir makinede iki kimlik desteklenen bir şey ve o kimlikleri sunan komut, hangisi olduğunu söyleyen bayrakları dinlemeyen tek komuttu.

1.6.8 (33)

Eylül 2026
  • 1.6.7 bunun yarısını düzeltti, kalan yarısı da aynı sessizlikteydi. O sürüm zamanlanmış işe modelin komutunu nerede bulacağını öğretti; kimin adına çalıştığını söylemedi. launchd zamanlanmış bir işe `USER`, `LOGNAME` ya da `HOME` vermiyor — gerçek bir makinede işin bütün ortamı bir yol ve iki Python değişkeni — ve Claude Code kimlik bilgisini onlarsız bulamıyor. Ölçüldü: o ortamda `claude -p` "Not logged in · Please run /login" diyor, sıfır jeton, sıfır milisaniye, modele hiç çağrı gitmiyor; `USER` ile `LOGNAME` eklenince aynı çağrı çalışıyor. Yani 1.6.7'den sonra tur komutunu buluyor ve hiçbir şey yapmıyordu — bir satır aşağıdaki aynı sessizlik. İş artık kimin adına çalıştığını taşıyor.
  • Nasıl bulunduğu da söylenmeye değer: aynı sürümde eklenen denetim — son koşu düştüğünü söylüyor mu? — yazılmasından dakikalar sonra kırmızı yandı. Bu hata düşünülerek yazılmamıştı; yakaladığı ilk şey bu oldu.
  • Windows'ta saatlik tur hiç çalışmamış. Bu tür şeylerin bulunduğu gibi bulundu: birinin masaüstünde saat başı bir pencere açılıyor, bir dosyayı hangi uygulamanın açacağını soruyor, hangi dosya olduğu ve neden sorulduğu belirsiz — ve Coredence kurulduğu gün başlamış. Görevin kendi XML'i sebebi tek satırda veriyor: çalıştırılabilir ile argümanları tek bir tırnak çiftinin içinde, argüman alanı ise hiç yok. Görev Zamanlayıcı o değeri ikiye ayırıyor — tırnak içindeki parça program, gerisi argümanları — yani bütün satırı tırnağa almak Windows'a o adı taşıyan dosyayı açmasını söylemek demek. Öyle bir dosya yok ve Windows hangi uygulamanın açacağını soruyor.
  • Görev bu süre boyunca başarılı bildirdi: `Last Result: 0`, çünkü pencereyi açmak becerebildiği bir şey. Yani tur bir kez bile dönmedi ve tek görünen izi saat başı açılan bir pencere oldu. Tırnak artık yalnız çalıştırılabilirin etrafında; kurulu bozuk görev de eski sayılıyor, böylece yükseltme onu sonsuza taşımak yerine yeniliyor.
  • Pencere turun bozulduğunu söylüyor. `doctor` düşen bir koşuyu ve iki kez kurulmuş bir işi fark etmeyi öğrenmişti ama yalnız terminalde, oysa çoğu kişi pencerede yaşıyor. Ayarlardaki Motor sayfası artık motorun kendi denetimini okuyup bulduklarını gösteriyor: düşen tur, iki kez kurulu iş, toplanmayı bekleyen toplu iş, çökme günlüğü, kimliğin içindeki bir tutarsızlık. Cümleler burada yeniden yazılmıyor, motordan geliyor — iki yerde yazılan bir cümle, iki yerin farklı şeyler söylemesinin yolu — ve denetim okunamıyorsa hiçbir şey gösterilmiyor, çünkü "sağlıklı" varsaymak olmayan bir güvenceyi göstermek olurdu.
  • Eskimiş kimlik dosyası artık fark ediliyor. Damıtma başarılı olurken asistanın yüklediği dosya olduğu yerde kalabiliyor: silinmiş, taşınmış ya da eski bir kurulum başka bir yere yazıyor. Hiçbir şey bozuk görünmüyor — tur başarılı, kural sayısı artıyor — yalnız ürünün asıl işi yapılmıyor, çünkü asistan dünkü kimliği okuyor. Denetim bariz olanı soruyor ve bugüne kadar hiç sorulmamıştı: dosya son turdan sonra mı yazıldı?
  • Taslak kimlik kendini taslak diye tanıtıyor. İlk tur 1.6.6'da taslağa çevrildi ve bu doğruydu: gerçek bir arşivde tam damıtma 66 pencere, saatler ve kendi anahtarınla yirmi doların üstü — hepsi sen daha hiçbir şey görmeden. Ama pencere sonucu kimliğin tamamı gibi gösteriyordu. `provisional` bayrağı vardı ve yalnız süzgeçte kullanılıyordu — taslaklar gizlenebiliyordu, hiç duyurulamıyordu — yani o değişiklik, yarım bir kimliği tamıymış gibi veren bir ekran bıraktı. Sahne artık kaç kuralın örneklemden geldiğini söylüyor ve tam turu başlatmayı öneriyor. Uyarı kendini siliyor: motor bayrağı yalnız baştan başlayan tam bir tur bitince kaldırıyor, yani "taslak kural var mı" sorusu tam olarak "tam tur bitmedi mi" sorusu — eskiyebilecek ikinci bir durum yok.

1.6.7 (32)

Eylül 2026
  • Saatlik tur modelin komutunu bulamıyordu ve kimse söylemiyordu. Gerçek bir makineye 1.6.6 kurulurken canlı yakalandı: her tur "`claude` çalıştırılamadı: No such file or directory" ile bitiyor, kimlik aylardır büyümüyor ve `doctor` bunca zaman "çevre temiz" diyordu. Sebep şu: launchd zamanlanmış işe `/usr/bin:/bin:/usr/sbin:/sbin` veriyor, Claude Code ise kendini `~/.local/bin`e kuruyor — yani kişinin terminalde sorunsuz çalıştırdığı komut, tur açısından yok. macOS'ta Claude CLI ile damıtan herkesin başına geliyordu ve o, ayar gerektirmeyen yol olduğu için çoğunluk demek.
  • Motor artık PATH'te olmayan bir komutu alışılmış kurulum dizinlerinde arıyor, uygulama da kurduğu işe bir PATH yazıyor; ikisinden biri yetiyor ve ikincisi eski motor taşıyan kurulumları da onarıyor. Komut gerçekten yoksa motor uydurma bir yol değil adının kendisini döndürüyor, böylece hata yine "bulunamadı" diye okunuyor, yanıltıcı bir şey diye değil.
  • `doctor` turun kurulu olduğuna bakıyordu, çalıştığına değil. Artık iki şey daha söylüyor. Son koşu düştüyse sebebini yazıp günlüğü gösteriyor — kurulu olmak çalışmak değil ve ikisini ayırmayan bir denetim tam gerektiği anda susuyor. Ve iki tur birden kuruluysa onu söylüyor: `schedule.py` bunun zararlı olduğunu zaten yazıyordu ("aynı veritabanına aynı anda yazan iki iş") ama denetim yalnız ikisinin de yokluğunu arıyordu. Hatanın bulunduğu makinede ikisi de doğruydu.
  • Windows bunlardan iki tanesini daha kimse yayınlamadan yakaladı. Orada komut `claude` değil `claude.cmd`, yani uzantısız aramak hiç tutmuyor; artık `PATHEXT` de deneniyor ve tanımı gereği ayrıldığı noktalı virgülle bölünüyor — platform ayıracıyla bölmek yalnızca rastlantıyla aynı kapıya çıkıyordu. Bir de `os.access(..., X_OK)` Windows'ta var olan her dosyaya doğru diyor, çünkü orada çalıştırılabilirliği izin biti değil uzantı belirliyor; iki platformda aynı soruyu sormak, izinsiz bir dosyayı komut sanmak demekti. Windows davranışı artık olağan test koşusunda da sınanıyor, çünkü yalnız CI'ın bildiği bir platform kuralı koda değil duvara yazılmış bir kuraldır.
  • Asistana "şunu sorabilirsin" denen şey artık gerçekten alınabiliyor. Beceri dosyası taşımadığı kurallar için MCP sunucusunu gösteriyor ve bu söz ancak sunucu onları verebiliyorsa doğru. Vermiyordu: kural araması altmışta duruyor ve bunu hiç söylemiyordu, yani tercih katmanı sorulunca 185 kuralın 60'ı dönüyor, diğer 125'inin varlığına dair iz kalmıyordu. Cevap artık toplamı taşıyor, kesildiğini işaretliyor ve devamı için bir başlangıç noktası alıyor; bu argüman aracın kendi şemasında ilan ediliyor, çünkü asistanın göremediği bir argüman kullanamadığı bir argüman. Toplam yalnız paylaşım ilkenin izin verdiğini sayıyor: ham sayı, gizlediğin bir konunun kaç kural taşıdığını ele verirdi.
  • Fiyat sabit bir sayıyla değil, bu makinenin kendi turlarıyla ayarlanıyor. Motor bir jetonu 3,5 karakter sayıyor, Türkçede ölçülen ise 2,7'ye yakın: 18.052 jeton tahmin edilen bir istem 23.284 jeton okundu. Yani pencereler amaçlanandan yaklaşık üçte bir büyük ve fiyat o kadar düşük çıkıyor — girişteki bariyer olan bir sayı için yanlış yön. Sabiti tek bir ayrıştırıcıyla ölçülmüş bir rakamla değiştirmek de doğru olmazdı, çünkü oran dile, kimliğin büyüklüğüne ve okuyan modele bağlı. Her tur artık gönderdiği istemin uzunluğunu kaydediyor; üç tur birikince fiyat bu makinenin kendi oranından geliyor ve ekranda sayının nereden geldiği yazıyor. Pencereler yine ayardaki kuralla kuruluyor, çünkü damıtma öyle yapıyor ve bir fiyat, fiyatını verdiği turu anlatmalı.

1.6.6 (31)

Eylül 2026
  • Damıtma artık kendi makinende çalışan bir modelle yapılabiliyor. Metni modele göndermek, verinin bilgisayardan çıktığı tek yer; model de yereldeyse o yer ortadan kalkıyor ve "veriniz makinenizde kalıyor" cümlesi yıldızsız doğru oluyor. Anahtar da fatura da gerekmiyor. `coredence model ollama` birinci sınıf bir seçenek ve ayrı bir yol olmasının sebebi ölçerek bulunan üç tuzak: Ollama'nın OpenAI uyumlu uç noktası bağlam ayarını yok sayıp istemi 4.096 jetona kırpıyor; üretim bütçesi verilmeyince cevap bir pencerenin ortasında kesilebiliyor ve hata "JSON ayrıştırılamadı" diye görünüp insanı modelin biçimine baktırıyor, oysa sebep uzunluk; küçük bir model iki yüz jeton civarında tutarlılığını kaybedip bir kelimenin ortasında dizeyi kesiyor ve nesneyi kapatıyor. Sonuncusu çözümlemeyi JSON'a kısıtlayınca düzeliyor — aynı istem, aynı model, aynı pencere: bu olmadan bozuk, olunca geçerli.
  • Bunun bedeli hız ve derinlik; sayıları dikkatle söylemek gerekiyor. M4 Pro'da bir pencere yaklaşık iki dakika sürüyor, bulut modelinde saniyeler. Çıkarımda, aynı koşulda karşılaştırınca — kimlik henüz küçükken, eşleştirilecek bir şey yokken — Claude ilk on turunda pencere başına ortalama 12,9 yeni kural buldu, 8B'lik model bir tane. Kimlik olgunlaştıkça işin şekli de değişiyor: Claude'un son on turu 3,1 yeni kural ve 43,1 pekiştirme, çünkü işin çoğu artık zaten bilineni tanımak. Yerel modelin hiç yapamadığı yarı tam burası, çünkü tanımak kural listesinin tamamını isteme sığdırmak demek. Yani yeni bir kimlik için gerçek bir seçenek, olgun bir kimlik için ince kalıyor — kurulum adımı da artık bunu söylüyor, "API anahtarı bul" tek yol olarak durmuyor.
  • Pencere, onu okuyacak modele göre kuruluyor. Damıtma isteminin sabit kısmı kimliğin kendisi ve büyüyor: 457 kuralda 26.949 jeton, 40k'lık bir bağlamın yanında hiç yer bırakmıyor. O noktadan sonra sunucu sessizce kırpıyor ve model kusursuz biçimli, bomboş bir cevap veriyor — tur "başarılı" sayılıyor, olaylar okunmuş işaretleniyor ve bir daha hiç bakılmıyor. Ölçüldü: sınır 190 ile 250 kural arasında. Motor öneğin boyutunu zaten biliyor, hesabı artık kendisi yapıyor; hiç sığmıyorsa boş tur döndürmek yerine sayılarıyla reddediyor. Yarıda kesilen istem bulut yolları dâhil her yerde yakalanıyor.
  • Asistanının her oturumda yüklediği kimliğin tavanı yoktu. 457 kural, ~26.000 jeton, her Claude Code oturumunun başında yeniden okunuyor, her saat büyüyor ve hiçbir yer hiçbir şey çıkarmıyor. Üç ayrı bedel: her oturumda ödediğin jeton, 457 kuralı aynı ağırlıkta tartması beklenen bir asistan ve ikisinde de sınırın olmaması. Artık eşik değil bütçe — eşik kimlikle birlikte büyüyor, bütçe büyümüyor — ve pay katmanlara bölünüyor, çünkü yalnız güvene göre sıralamak 185 tercih kuralının, sana nasıl hitap edileceğini söyleyen 40 kuralı gömmesine yol açıyordu. Gerçek kimlikte: 26.200 jetondan 6.100'e, 463 kuraldan 118'e, katmanlar yeniden oranlı. Hiçbir şey kaybolmuyor: taşınabilir belge tam kalıyor ve dosyanın sonunda kaç kuralın dışarıda kaldığı ve hangi MCP aracının onları getireceği yazıyor.
  • Asistana "şunu sorabilirsin" denen şey artık gerçekten alınabiliyor. Beceri dosyası taşımadığı kurallar için MCP sunucusunu gösteriyor ve bu söz ancak sunucu onları verebiliyorsa doğru. Vermiyordu: kural araması altmışta duruyor ve bunu hiç söylemiyordu, yani tercih katmanı sorulunca 185 kuralın 60'ı dönüyor ve diğer 125'inin varlığına dair hiçbir iz kalmıyordu. Bu, aynı sürümde iki kez daha düzeltilen sessiz kesmenin aynısı — ve bu sefer yukarıdaki bütçe onu taşıyıcı hâle getirmişti. Cevap artık toplamı taşıyor, kesildiğini işaretliyor ve devamı için bir başlangıç noktası alıyor; bu argüman aracın kendi şemasında ilan ediliyor, çünkü asistanın göremediği bir argüman kullanamadığı bir argüman. Toplam yalnız paylaşım ilkenin izin verdiğini sayıyor: ham sayı, gizlediğin bir konunun kaç kural taşıdığını ele verirdi.
  • İlk tur artık bir taslak. Kurulum tam damıtma çalıştırıyordu; gerçek bir arşivde bu 66 pencere, saatler ve kendi anahtarınla ~$22 — hepsi sen daha hiçbir şey görmeden. Taslak yolu zaten vardı, belgenin başındaki açıklamaya kadar; sadece en çok gerektiği yerde kullanılmıyordu. İlk tur şimdi dakikalar sürüyor, gerisini saatlik tur götürüyor.
  • Fiyat, çoktan yapılmış işin fiyatıydı. `cost` arşivin tamamını sayıyor, `distill` ise en son tamamlanan turdan devam ediyordu. Bu makinede ekran 66 pencere ve ~$22 derken bekleyen iş 4 pencere ve ~$1'di. Aynı hata damıtmadan hemen önce yazılan satırda da vardı ve orada daha kötüydü: ~$1 tutacak bir tur için $22 deyip ucuz yolu öneriyordu.
  • Fiyat artık sabit bir sayıyla değil, bu makinenin kendi turlarıyla ayarlanıyor. Motor bir jetonu 3,5 karakter sayıyor, Türkçede ölçülen ise 2,7'ye yakın: 18.052 jeton tahmin edilen bir istem 23.284 jeton okundu. Yani pencereler amaçlanandan yaklaşık üçte bir büyük ve `cost` o kadar düşük söylüyor — girişteki bariyer olan bir sayı için yanlış yön. Sabiti tek bir ayrıştırıcıyla ölçülmüş bir rakamla değiştirmek de doğru olmazdı, çünkü oran dile, kimliğin büyüklüğüne ve okuyan modele bağlı. Her tur artık gönderdiği istemin uzunluğunu kaydediyor; üç tur birikince fiyat bu makinenin kendi oranından geliyor ve ekranda sayının nereden geldiği yazıyor. Pencereler yine ayardaki kuralla kuruluyor, çünkü damıtma öyle yapıyor ve bir fiyat, fiyatını verdiği turu anlatmalı.
  • Solan bir kural geri dönemiyordu. Durum kuralları zamanla emekliye ayrılıyor ve bu doğru — "şu an X üzerinde çalışıyor" altı ay sonra aktif biçimde yanıltıyor — ama ayırma tek yönlüydü ve emekli bir kural bir daha hiç puanlanmıyordu. İki ay ara verip bir projeye dönen birinin kuralı her turda yeniden görülüyor, desteği artıyor, son görülmesi bugüne geliyor ve belge bunu sonsuza kadar söylemiyordu. Değiştiğini fark etmek bu ürünün beşinci işi; geri değiştiğini fark etmemek o işin yarısını kaybetmek.
  • Kendi sözün motorun elindeki en zayıf kanıttı. İncelemede onayladığın bir kural tam güvenle giriyor, ilk yeniden hesapta 0,33'e düşüyor ve render eşiğinin altında kalıyordu — çünkü onu "beyan" olarak işaretleyen bayrak hiç konmuyordu. Durum katmanında daha ağırdı: bugün verilen üç cevap saatler içinde emekli edildi ve bir sonraki karşılaştırma aynı soruları yeniden sordu.
  • Saatlik tur tek kelime etmeden devrilebiliyordu. `launchctl` ev dizinine değil kullanıcıya bağlı, yani aynı etiketi yükleyen ikinci bir kurulum birincisini düşürüyor. Diskteki dosya doğru görünmeye, durum "kurulu" yazmaya devam ediyor ve tur bambaşka bir yere yazıyordu. Artık gerçekte yüklü olana bakılıyor.

1.6.5 (30)

Eylül 2026
  • Yanlış olduğunu bildiğin bir kuralı artık düzeltebiliyorsun. Soruları damıtma ve karşılaştırma açıyor; kimlik belgesini okuyan kişi hiç açamıyordu. Yani yanlış bir cümleyi görüp bunu motora söyleyecek bir yol yoktu, geriye kuralın kendiliğinden solmasını beklemek kalıyordu — aylar sürüyor ve düzeltmeyi yolda kaybediyor. `coredence review revise <kural> "<cümle>"` o yolu açıyor. Düzeltme sessiz değil: her kararın durduğu kuyruğa yazılıyor ve yeni cümle bir kanıt olayına bağlanıyor, yani "kanıtsız kural yok" senin elinle yazdığın cümle için de geçerli kalıyor.
  • Maskeleme listesi anahtarların bugünkü biçimlerine karşı sınandı ve yedisi doğrudan geçti. Damıtma metni modele gönderiyor; bu üründe dışarı çıkan tek yol o, yani maskelemenin kaçırdığı bir sır makineden çıkan bir sır demek. Yedisi de bu yığında kullanılan servislerden: GitHub'ın bugünkü `github_pat_` biçimi — eski `ghp_` kuralı onu tanımıyor — AWS erişim kimliği, Slack, Stripe'ın canlı ve kısıtlı anahtarları, npm, Google OAuth istemci sırrı, Telegram bot jetonu. Bir de JWT eklendi: oturum ve servis anahtarları o biçimde taşınıyor ve `service_role` gibi bir jeton tek başına tam yetki verebiliyor. Fazla maskelemek de kusur sayıldı ve ayrıca sınandı: `npm_modules` diye bir değişken sır değil ve dokunulmadan geçmeli.
  • Olay yazan her yol maskeden geçiyor. Toplayıcılar tek bir boğazdan geçiyordu ama üç dosya daha olay yazıyor ve üçü de geçmiyordu. Denetlerken kendi iddiam yanlış çıktı — söyleşi cevabı bir satır yukarıda zaten maskeleniyordu — ve o değişiklik düzeltme gibi görünüp durmasın diye geri alındı. Kalan ikisi artık maskeleniyor, bir kaynak taraması da yeni bir olay yazıcısının bunu unutmasını engelliyor. Taramanın kapsamı bilerek dar: dosyanın maskeyi çağırdığını görüyor, doğru metne uyguladığını değil.

1.6.4 (29)

Eylül 2026
  • Gizlediğin bir konu asistanlara yine de gidiyordu. Bir konuyu gizlemek kurallarını da yanında götürmek demek; başlığı gizleyip kuralları bırakmak hiçbir şeyi gizlememek olurdu. Asistanın çağırabildiği dört araçtan ikisi bunu hiç uygulamıyordu: açıklamasında asistana "buradan başla" denen `identity`, gizlenen konunun kurallarını ilk sorguda veriyordu; `evidence` ise kural adıyla sorulunca arkasındaki mesajları döndürüyordu — güven eşiğini ve kapattığın katmanları da atlayarak. Üç soru — katman açık mı, eşiği geçiyor mu, konusu gizli mi — artık tek yerde duruyor, çünkü ayrı ayrı yazıldığında ikisi hiç sorulmamıştı. Göremediğin bir kural "bulunamadı" diyor: "o gizli" demek, gizlediğin şeyin var olduğunu doğrulamak olurdu.
  • Aynı kurallar, kendi ajanının her oturumda yüklediği beceri dosyasına da yazılıyordu ve paylaşım ayarı orayı hiç kapsamıyordu. Artık kapsıyor. Taşınabilir kimlik belgesi bilerek tam kalıyor — o senin kopyan, asistanın okuduğu dosya değil — veritabanı da öyle.
  • Dışa aktarma istediğini yazmaya devam ediyor, gizli konular dâhil: o yol aynı zamanda kimliğini başka bir yere götürme yolu ve bir parçasını sessizce düşürmek yanlış bir yardım olurdu. Önizleme artık dosyaya girecek gizli konuların adlarını sayıyor; karar senin ve görünür.
  • Kimlik belgesi savunamayacağı bir tarafı tutmuyor. Bir karar ekseni 210 gözlemde +0,04'te duruyordu — yani dengede — ve belge bunu kesin bir duruş olarak bildiriyordu, çünkü kod yalnızca sayının sıfırın üstünde mi altında mı olduğuna bakıyordu. Sıfıra bu kadar yakın bir değer bir eğilim değil; artık öyle yazıyor. Eşik uydurulmadı: eksen ±1 oyların ortalaması, yani ortalamanın standart hatasının içinde kalan hiçbir şey dengeden ayırt edilemiyor. Gözlem biriktikçe bant daralıyor.
  • Aylık özette bunun tersi vardı ve daha kötüsüydü. "Bu ağırlık kaydı" eşiği ne kadar ölçüldüğüne bakmayan sabit bir sayıydı; oysa ağırlıklar birikimli, yani kimlik büyüdükçe gerçek bir fikir değişikliği ortalamayı daha az oynatıyor. Bin gözlemde, otuz yeni oy tamamen ters yöne gitse bile ortalama 0,03 kayıyor ve eski eşik bunu hiç görmüyordu. Değiştiğini fark etmek bu ürünün beşinci işi ve tam kimlik olgunlaştığı yerde körleşiyordu. O eşik de artık ölçüden geliyor.
  • Karşılaştırma, mayıstan beri kimsenin dokunmadığı bir dosyayı okuyordu. Elle yazılmış kimliği ölçülenle karşılaştırıyor ve varsayılanı, bugün `CLAUDE.md`'nin tam tersini söyleyen terk edilmiş bir beceri dosyasını gösteriyordu. Açtığı soruların çoğu artık kimsenin savunmadığı kurallarlaydı. Artık `CLAUDE.md`'yi okuyor, hangi dosyayı okuduğunu yazıyor ve her koşu bir öncekinin cevapsız sorularının yerine geçiyor — cevaplananlar kalıyor, çünkü onlar karar.
  • Pencere soket açamıyor ve sürüm artık bunun doğru olmaktan çıktığı bir derlemeyi yayınlamayı reddediyor. Sitedeki en güçlü iddia bu ve gizlilik sayfası okuyucuyu kendisi denetlemeye çağırıyor; iyi niyetle yapılmış tek bir ekleme onu sessizce yalana çevirebilirdi. macOS'ta derleme herhangi bir ağ çerçevesine bağlanıp bağlanmadığına karşı denetleniyor — çalışırken izlemekten güçlü bir kanıt, çünkü yeteneğin kullanılmadığını değil hiç bulunmadığını gösteriyor.

1.6.3 (28)

Eylül 2026
  • macOS'ta güncelledikten sonra Tam Disk Erişimi'ni yeniden ver. Uygulamanın bundle kimliği `com.akayalabs.coredence`ten `com.coredence.app`a taşındı; ürünün kendi adı var, artık kendi kimliği de var. macOS izinleri o kimliğe bağlıyor, yani bu derlemeyi yeni bir uygulama sayıyor ve verdiğin erişim gidiyor. Sistem Ayarları → Gizlilik ve Güvenlik → Tam Disk Erişimi'nden yeniden verene kadar Apple Notes ile Mesajlar okunmuyor. Kimliğinle ilgili başka hiçbir şey değişmiyor: aynı dosya aynı yerde, pencere ayarların da ilk açılışta eski kimlikten taşınıyor.
  • Pencere artık bir kaynağın engellendiğini, yok olduğunu değil söylüyor. Notlar ve Mesajlar macOS'un koruduğu dosyalarda; izin yokken dosya yerinde duruyor, yalnızca açılamıyor. Motor "bu var mı" diye soruyordu ve o sorunun cevabı iki durumda da hayır, yani ekran kaynağın orada olmadığını söyleyip insanı hiç kaybolmamış bir dosyayı aramaya yolluyordu. Artık açmayı deniyor ve olan buysa "izin yok — Tam Disk Erişimi gerekiyor" diyor. Var olup olmadığına bakmak yetmiyordu, `stat` de yetmiyor: sistem meta veriye izin verip içeriği reddediyor.
  • Sahnede kimliği güncelleyecek bir düğme var. Takımyıldız görünümünden damıtma başlatmanın tek yolu bir kısayoldu, yani Windows'ta ancak zaten biliyorsan mümkündü. Tur sürerken çıktısı ekranda duruyor ve düğme bekliyor: sessizce dönen bir tur, hiç başlamamış turdan ayırt edilemiyor.
  • Yol alan kaynaklar İndirilenler'de açılıyor. Belgeler'de açılıyordu, oysa ChatGPT ya da Claude dışa aktarımı oraya inmiyor.
  • Türkçe artık Türkçe gibi okunuyor. İki pencere ve sitenin tamamı cümle cümle geçildi. Cümleler İngilizce iskelete giydirilmiş Türkçe kelimelerdi: virgülden sonra "ve" — Türkçede öyle bir kullanım yok — İngilizcedeki gibi araya cümle sıkıştıran uzun tireler, yüklemsiz yan cümleler. Yüz otuz kadarı yeniden yazıldı. Okurken sitenin geride kalmış dört iddiası da çıktı; biri 1.4.0'da çıkmış bir özelliğin yokluğunu söylüyordu.
  • Windows gerçek uygulama ikonunu aldı; kurulum o güne kadar Flutter'ın varsayılanını taşıyordu.

1.6.2 (27)

Eylül 2026
  • Windows'ta bir kaynağa yol göstermek profili bozuyordu. Yol, ters bölüleri kaçırılmadan yazılıyordu ve TOML `\U` dizisini bir unicode kaçışının başlangıcı sayıyor — dosya bir daha ayrıştırılamıyor, ayrıştırılamayan bir profil de motorun her komutunu durduruyor. Yazma yolu düzeldi; bu şekilde bozulmuş bir profil de bir sonraki turda onarılıyor, çünkü "altıncı satırı kendin düzelt" diyen bir hatayı görebilmek için çalışan bir motor gerekiyor ve o yoktu.
  • Toplu iş kuyruğu gerçekte ucuz değildi. Üç yerden aynı olaylar iki kez ödeniyordu: saatlik tur bir saat sonra dönüp kuyruktaki olayları tek tek damıtıyordu; toplama damıtma günlüğüne yazmadığı için sonuç kimliğe girdikten sonra bile olaylar okunmamış görünüyordu; ve toplama güveni, kapsamı ve konuları yeniden hesaplamıyordu, yani aynı olaylar hangi yoldan geçtiğine göre başka bir kimlik üretiyordu.
  • Biten toplu işi artık saatlik tur kendisi topluyor. 24 saatlik bir gidiş dönüşün ikinci yarısını bir düğmeye bırakmak, pencereyi kapatan herkes için "sonrası kendi kendine ilerler" sözünü bozuyordu.
  • Maliyet rakamı artık tahmin değil ölçüm. Çıktının boyu ancak model çalışınca belli oluyor ve motor onu ölçülmüş bir oranla çarpıyordu; biten bir toplu iş her isteğin gerçekte ne harcadığını bildiriyor, o sayılar tutuluyor ve üç tur sonra tahminin yerini bu makinenin kendi oranı alıyor. Ekran hangisine baktığını söylüyor.
  • Ayarlar daha çoğunu söylüyor: asistan listesi yalnız kurulu olanları gösteriyordu, artık tanınan sekizi de görünüyor; motorun nerede olduğu ekranda, çünkü bir ayar Windows'ta sessizce çalışmadığında bakılacak ilk şey o; yol alan kaynaklar için dosya seçtiren bir düğme var; ve uzun bir damıtma sürerken sahnenin altından değişmesi kapatılabiliyor.

1.6.1 (26)

Eylül 2026yayınlanmadı
  • "Bu ne yapıyor" artık dördüncü bir şey söylüyor: kim okuyabiliyor. Bağlı asistanların adları ve paylaşım ilkesinin tek satırlık hâli — kanıtın nasıl gittiği, güven eşiği, kaç konunun gizli olduğu. "Ne okudu, ne çıkardı"nın hemen ardından gelen soru bu ve cevabı başka bir ekranda duruyordu.
  • Açıklama liste görünümünde de var. Düğmeyi yalnız sahne görünümüne koymuştuk; listeye bakan biri için ürünün kendini anlattığı yer yoktu.

1.6.0 (25)

Eylül 2026
  • Uygulama kendini anlatıyor. Pencereyi açan biri renkli noktalarla dolu bir sahne görüyordu; ürünün ne okuduğu ve ne çıkardığı yalnız sitede yazıyordu. Artık üst çubuktaki "?" — ve ilk açılışta kendiliğinden — üç şeyi gerçek veriyle söylüyor: şu an açık kaynaklar arkalarında ne olduğuyla, kaç olaydan kaç kural ve konu çıktığı, bir de kimliğinden en çok gözleme dayanan kural. Uydurma örnek yok: kimlik boşsa örnek de yok.
  • Dört renk: Kömür, Gece, Orman, Mürdüm. İki pencerede de, aynı adlarla. Değişen zemin ve vurgu; mürekkep her temada aynı çünkü bir temada okunmayan bir ekran tema değil arızadır ve sahnedeki düğüm renkleri temaya bağlı değil çünkü onlar veriyi anlatıyor.
  • macOS penceresinde de "ne değişti" var. Okuyucu baştan beri duruyordu ama onu gösteren bir ekran yoktu: Windows'ta aylık özetin yanındaki bağ kimliğin o ay ne kazandığını ve neyi solduğunu açıyordu, macOS'ta o bağ hiç yoktu.
  • Aynı jeton sayısı üç ayrı anlama geliyor ve ekran artık bunu biliyor. Kurulu Claude aboneliğiyle damıtan birine dolar tutarı gösteriliyordu; o kişi jeton başına para ödemiyor, kotasından yiyor. Şimdi kendi anahtarıyla çalışana tutar, aboneliğe ve plana "ne kadar okunacak" yazıyor. Toplu iş düğmeleri de yalnız çalıştıkları yerde duruyor: kuyruk Anthropic'in toplu iş API'sinde ve oraya ancak kendi anahtarınla girilir.

1.5.4 (24)

Eylül 2026
  • Başarısız bir damıtma, kendini onaracak turu da götürüyordu. Kurulum damıtma hatasında orada dönüyor, asistan bağlantıları ve saatlik tur adımlarına hiç gelmiyordu — oysa damıtmayı tekrar deneyecek olan şey tam da o saatlik tur. Model limiti dolmuş bir kullanıcıda kimlik kuruluyor ve bir daha hiç yenilenmiyordu. Damıtma hatası artık kurulumu durdurmuyor.
  • Ayarlardaki bir anahtar sessizce başarısız olmuyor. "Saatte bir güncelle" başarısız olduğunda anahtar eski hâline dönüyor ve hiçbir şey yazmıyordu; yani kimliğin saatte bir yenilenmediğini fark etmenin tek yolu, büyümediğini görmekti. Motorun söylediği şey artık ekranda kalıyor — başarı da hata da. Aynısı asistan bağlama için de geçerli.

1.5.3 (23)

Eylül 2026
  • Ayarlarda bir tutarın yerinde kodun kendisi yazıyordu. Dart'ın kaçış kuralı yüzünden değer düz metne dönüşmüştü; derleyici de çözümleyici de uyarmıyor ve o satırın değerini okuyan bir test yoktu. Artık kaynağı tarayan bir test bu yazımı yasaklıyor.
  • Ayarlardaki her satır kendi açıklamasını taşıyor. Bölüm başlığındaki paragraf tek bir satırın ne olduğunu anlatmıyordu: yanında ne olduğu yazmayan bir sayı, bilgi değil bilmece.
  • Bölümler öbeklendi: Veri, Görünüm, Sistem. Düz bir liste yedi maddeye kadar okunuyor ama "Ne görebilsin" ile "Yeni sürüm"ü aynı ağırlıkta gösteriyordu.

1.5.2 (22)

Eylül 2026
  • Windows'ta ayarlardaki kaynak listesi boştu ve sebebi görünmüyordu. Motor çıktıyı sistem kod sayfasıyla yazıyor (Türkiye'de cp1254), pencere ise UTF-8 bekliyordu: ilk Türkçe harfte çözümleme patlıyor ve o bölüm hiç yokmuş gibi duruyordu. Motor artık çıktıyı UTF-8'e zorluyor, pencere de bozuk bir bayta düşmeyen bir çözümleyici kullanıyor — çıktının tamamı okunabilirken hiçbirini göstermemek yanlış bir takas.
  • Ayarlar yedi bölüme ayrıldı: Kaynaklar, Asistanlar, Ne görebilsin, Açılış, Kimlik, Motor, Yeni sürüm. Hepsi tek bir uzun kaydırmadaydı ve hangi ayarın nerede olduğunu bulmak aramaya dönüyordu. Ayarların listesi, ayarların kendisinden önce görünmeli.
  • Kurulum penceresindeki kırmızı "ERROR" satırı kalktı. İlk kurulumda henüz zamanlanmış görev yok ve onu durdurmaya çalışan komut hata basıyordu; durdurulacak bir şey olmaması normalin ta kendisi.

1.5.1 (21)

Eylül 2026
  • Windows kurulumu bitince ürünü açıyor. Bitiş ekranındaki kutu kimlik belgesini açıyordu ve belge, makinede .md dosyalarını ne açıyorsa onunla — çoğu makinede bir metin düzenleyiciyle — açılıyordu. Kurulumu bitiren birinin gördüğü ilk şeyin bir metin dosyası olması, ürünü hiç görmemesi demekti. Kısayollar bir sürüm önce pencereye çevrilmişti; bu kutu unutulmuştu.
  • Kurulumun bitiş metni de eskimişti: "Windows'ta henüz pencere yok" diyordu, pencere iki sürümdür orada.
  • Renklerin ne anlattığı artık her kipte yazıyor. Sol alttaki gösterge yalnız konu kipinde çıkıyordu; katman, güven, yayılım ve tazelik kiplerinde ekranda anlamı yazmayan renkli noktalar kalıyordu. Katman kipi katmanları adıyla ve sayısıyla, sıralı kipler iki ucunu ve neyi ölçtüğünü yazıyor. On iki ve daha çok konuya yayılan kuralların beyaz halkası da kendi satırında — sorulan bir işaretin cevabı ekranda olmalı.
  • Üst çubuk elden geçti. Ayarlara giden düğme silik bir simgeydi ve yanındaki görünüm düğmesiyle karışıyordu; Windows'ta menü çubuğu olmadığı için ayarlara giden tek kapı o. Düğmeler artık dokunulabilir boyutta ve okunur, ayarlar düğmesi ayrıca dolgulu. "aylık özet" rozeti de kutusunun içinde ortalanmamıştı.

1.5.0 (20)

Eylül 2026
  • Damıtmanın ne tutacağı artık ölçülüyor. `coredence cost` bekleyen olayları pencerelere bölüyor, gönderilecek istemleri kuruyor ve jetonu sayıyor — tek bir çağrı yapmadan. Pencerede Ayarlar → Bekleyen damıtma aynı sayıları gösteriyor. Bu ürün fiyatı tahminle koymuyor ve kendi maliyetini de tahminle söylemiyor.
  • Ölçüm şaşırtıcı bir şey buldu: maliyeti okunan olaylar değil, kimliğin kendi boyu belirliyor. Her damıtma isteminde mevcut kuralların listesi, konular ve sınıflandırma yeniden gidiyor; 457 kurallık bir kimlikte bu, istemin %63'üydü. Yani kimlik büyüdükçe damıtma pahalılaşıyor, okunan olay sayısı sabit kalsa bile.
  • Tekrar eden bağlam artık önbelleğe alınıyor. İkinci pencereden itibaren aynı bağlam onda birine okunuyor — ölçülen fark pencere başına $0,178 yerine $0,105. Kendi anahtarıyla çalışanda da, plandan geçende de: vekil aynı işaretlemeyi kendi tarafında yapıyor.
  • Toplu iş kuyruğu. `coredence distill --batch` bütün pencereleri birlikte gönderiyor: acelesi olmayan iş için belirgin biçimde ucuz, karşılığında sonuç 24 saate kadar sürebiliyor. Sonuç geldiğinde `coredence collect` kimliğe işliyor; cevapsız kalan pencere kimliğe hiç girmiyor ve sayısı yüksek sesle söyleniyor.
  • Kota bittiğinde artık bir kapı var. Pencere "ay yenilenince devam eder" deyip susuyordu; oysa plan bir kolaylık, tek yol değil — kendi anahtarınla tavan yok ve maliyetine kullanıyorsun. Duvarı gerçek olduğundan büyük göstermek satış değil, yanlış bilgi.
  • Pencere çökerse artık iz bırakıyor: ne olduğu `~/.coredence/crash.log` dosyasına yazılıyor ve bir dahaki açılışta gösteriliyor. Göndermeye sen karar veriyorsun — bir çökme bildiricisi bağlamadık, çünkü soket açmayan bir pencere iddiası bir çökme raporundan değerli.
  • Windows'ta saatlik tur artık sesli. Görev Zamanlayıcı komutu bir kabuktan geçmediği için tur çöktüğünde çıktı da yığın izi de hiçbir yere gitmiyordu; Mac'te bunu launchd yapıyordu, yani hata yalnız Windows'taydı. Eski tanımla kurulmuş işler güncellemede yenileniyor.

1.4.0 (19)

Eylül 2026
  • Kimliğin bir dilimini paylaşmak. Bugüne kadar dışa aktarım ya hep ya hiçti: bir arkadaşına "kod hakkında ne düşünüyorum" göstermek, kişisel yaşamına dair her kuralı da göndermek demekti. Artık konuya, katmana ya da güven eşiğine göre bir dilim çıkarıyorsun. Dosyanın başında kaç kuralın bilerek dışarıda kaldığı yazıyor — kimliğinin bir parçasını, tamamıymış gibi okunmasın diye.
  • Yazım hatası kimliğin tamamını göndermiyor. Var olmayan bir konu adı yazdığında süzgeç düşüp her şeyi vermiyor; dosya hiç yazılmıyor ve neyin bulunamadığı söyleniyor. Bunun alternatifi sessiz bir felaketti.
  • Ne verildiği önce görülüyor. Paylaşmadan önce kaç kural gideceği ve dosyanın başına yazılacak cümle ekranda duruyor; kaydetme yeri ondan sonra soruluyor. "Bilerek paylaşmak", ne paylaşıldığının önceden görülmesine bağlı.
  • Ne görebilsin. Asistanın kimliğinin hangi katmanlarını görebileceğini, hangi konuların tamamen gizli kalacağını ve kanıt metinlerinin paylaşılıp paylaşılmayacağını sen seçiyorsun. Sınır istemcide değil motorda çiziliyor: istemci ne isterse istesin, gizlenen konu gitmiyor.
  • Kimliğin ne zaman değiştiği. Yeni gelen, güçlenen, zayıflayan ve emekliye ayrılan kurallar bir arada. Bir kimlik durağan değil ve bugüne kadar onun hareket ettiğini gösteren hiçbir ekran yoktu.
  • Coredence planı. Kendi anahtarını girmek istemeyenler için damıtmayı bizim vekilimiz üzerinden yapan bir seçenek — kurulumda, diğerlerinin yanında. Kalan hakkın pencerede yazıyor. Vekil ne kural ne metin saklıyor; sakladığı tek şey lisans başına harcanan jeton ve bunu koruyan bir test var.
  • Pencere çökerse artık iz bırakıyor. Ne olduğu `~/.coredence/crash.log` dosyasına yazılıyor ve bir dahaki açılışta gösteriliyor; göndermeye sen karar veriyorsun. Bir çökme bildiricisi bağlamadık, çünkü soket açmayan bir pencere iddiası bir çökme raporundan değerli.
  • Windows'ta saatlik tur artık sesli. Görev Zamanlayıcı komutu bir kabuktan geçmediği için tur çöktüğünde çıktı da yığın izi de hiçbir yere gitmiyordu — Mac'te bunu launchd yapıyordu, yani hata yalnız Windows'taydı. Eski tanımla kurulmuş işler de güncellemede yenileniyor.
  • Bu sürümdeki Windows penceresi de henüz bir insan tarafından çalıştırılmadı. Bir Windows makinesinde derleniyor ve 265 testi geçiyor; bu, birinin onu açmasıyla aynı şey değil.

1.3.0 (18)

Eylül 2026
  • Windows'un penceresi artık Mac'in penceresi. 1.2.0 Windows'a *bir* pencere koymuştu: iki bölme, kuralların listesi ve altındaki kanıt. Mac'te başka bir şey vardı — kimliğin içinde dolaşılabilen bir grafik — ve o günden beri her sürüm arayı açıyordu. Bu sürüm arayı kapatıyor. İki pencere artık aynı ürün ve aynılığı benzerlik değil testler tutuyor: paylaşılan JSON fixture'lar ve birbirini adıyla işaret eden testler. Bir sayı bir tarafta değişince öteki taraf düşüyor.
  • Sahne. Konular işaret noktaları, kurallar onların çevresindeki noktalar, aralarındaki ölçülmüş bağlar çizgiler. Uzaklık anlam taşıyor: bir kural en çok yaslandığı konunun yanında duruyor, bağlı konular birbirine yakın. Dört düzen, beş renk kipi, yazdıkça işaretleyen arama, üstüne gelince bir komşuluğu yakıp gerisini söndüren vurgu, yaklaştıkça resmi açan yakınlaştırma ve sürükleyip bıraktığın yerde kalan düğümler.
  • Ayrıntı paneli. Bir kurala tıkla, cümlesiyle, konularıyla ve geldiği olaylarla — senin gerçekten yazdığın şeylerle — açılsın. Ürünün iddiasının denetlendiği yer burası ve Windows'ta bugüne kadar denetlenemiyordu.
  • Bekleyenler. Motorun sana söylemek istediği her şey tek yerde: emin olduğu bir kurala ters düşen gözlemler, bulduğu boşluklar hakkındaki sorular, yalnız bir kez gördüğü kurallar ve aylık özet. Her biri senin kararını bekliyor, çünkü birinin ne olduğuna karar vermek ona ait.
  • Kimlik süzgeci. Motor ölçtüğü her şeyi saklıyor: zar zor emin olduğu kuralları, iki hafta süren bir ruh hâline ait olanları. Bunların resme girip girmeyeceği uygulamanın cevaplayabileceği bir soru değil, o yüzden bir ayar — ve gizlenen kural sayısı yüksek sesle söyleniyor, çünkü kimliğin üçte ikisini sessizce gösteren bir sahne ne kadar ölçüldüğü konusunda yalan söyler.
  • İngilizce. Pencere Türkçe ve İngilizce konuşuyor, Mac uygulamasının kullandığı çevirilerle. Arayüzün dili kimliğin kendi dilinden ayrı; o motorda duruyor.
  • Motor yazınca pencere kendini tazeliyor. Saatlik tur kimliği büyütüyor; bundan önce ekranda bunu söyleyen hiçbir şey yoktu. Seçimin ve sabitlediğin düğümler tazelemeyi atlatıyor.
  • Klavye komutları. Ara, yakınlaştır, başa al, sabitleri kaldır, yeniden yerleştir, şimdi güncelle. Mac'te bunlar menü çubuğunda; Windows'ta menü çubuğu yok ama komutların kendisi var olmak zorundaydı.
  • İki platformda birden bir hata: aylık özet yazılıyordu ama kuyruk boşken ulaşılamıyordu — tek giriş, ancak bekleyen bir şey varken beliren bir rozetti. Artık bir giriş var.
  • Bir tane daha: takımyıldız düzeninin açıklaması "on dokuz işaret asla üst üste binmez" diyordu. On dokuz, yazarın kendi konu sayısıydı. Artık bir sayı söylemiyor.
  • Bu sürümdeki Windows penceresi henüz bir insan tarafından çalıştırılmadı. Bir Windows makinesinde derleniyor, 214 testi geçiyor ve macOS'ta 457 kurallık gerçek bir kimliğe karşı gözle denetlendi. Bu, birinin onu açmasıyla aynı şey değil.

1.2.1 (17)

Eylül 2026
  • Kurulum artık pencerede yapılıyor, kurulum dosyasında değil. Bir kurulum dosyası, bir programın neyi okuyabileceğine karar verilecek yer değil — hele iddiası "yalnız izin verdiğini okurum" olan bir üründe. Obsidian bunu doğru yapıyor: kurulum aptaldır, uygulama ilk açıldığında ihtiyacı olanı sorar ve verilen her cevap sonradan değiştirilebilir kalır. Kurulum dosyası artık hiçbir şey sormuyor. Pencere iki şey soruyor — sana nasıl seslenileceğini ve neyle düşüneceğini — gerisini kendisi yapıyor.
  • Ayarlar her kaynağı anahtarıyla gösteriyor. Ne okunuyor, nereye bakıyor ve arkasında gerçekten bir şey var mı: "216 dosya", "var", ya da açık olduğu hâlde arkası boş olanlar için vurgulanmış bir "yok" — ki o, kapalı bir kaynaktan daha yanıltıcıdır. Asistan bağlantıları ve saatlik tur da orada, anahtarlarıyla. Sitede "yalnız izin verdiğini okur" yazıyor; o cümle ancak neye izin verildiği görülebiliyorsa doğru ve Windows'ta bugüne kadar görülmüyordu.
  • Yükseltme, kullandığı dosya yüzünden durmuyor artık. Çalışan bir kopyanın üzerine kurmak "Dosya yazmak için açılırken hata meydana geldi: …\python\python.exe" ile duruyordu: MCP sunucusu asistan açıkken ayakta kalıyor, saatlik tur da tur ortasında olabiliyor. Kurulum önce zamanlanmış işi bitiriyor, sonra yalnız kendi dizinindeki yorumlayıcıyı durduruyor — bütün python.exe süreçlerini öldürmek, o sırada çalıştırdığın her şeyi öldürürdü.
  • Motor kaynak listesini makineler için de yazıyor. Mac penceresi insan için yazılmış tabloyu ayrıştırıyordu ve tabloya bir sütun eklenince etiket sessizce "Claude Code oturumları 216 dosya" oluverdi. Kırılmadı, bozuldu, kimse fark etmedi. İki pencere de artık source --json okuyor.
  • Motordan gelen boş cevap artık cevap sayılmıyor. Eski bir motor --json bayrağını tanımıyor ve kullanım metni yazıyor; bunu "kaynak yok" diye göstermek yalandı.

1.2.0 (16)

Eylül 2026
  • Windows'un penceresi var. Bu geceye kadar Windows'ta ürün bir motordu ve uygulama yoktu: kimliği kuruyor, makinedeki asistanlara veriyor ve açılacak hiçbir şey bulunmuyordu. Eksik pencerenin yerine konan her şey aynı yerden düştü — bir anda açılıp kapanan konsol, sonra hangi düzenleyici kayıtlıysa onda açılan bir metin dosyası kısayolu. Bir .md dosyasının kısayolu uygulama değil ve ona uygulama demek onu uygulama yapmıyor.
  • Kurulum artık pencereyi de taşıyor. İki bölme: solda katmanlara ayrılmış ve güvene göre sıralı kuralların, arama kutusuyla; sağda seçtiğinin dayandığı gerçek anlar. Kimlik masaüstünden ve Başlat menüsünden açılıyor; kısayol adını değiştirince kırılan bir dosyaya değil uygulamaya gidiyor.
  • Flutter ile yazıldı ve var olma sebebi de bu: Windows, macOS ve Linux için tek kod. Pencere ~/.coredence/coredence.db dosyasını okuyor, hiç yazmıyor — kimliği değiştirmek motorun işi ve iki yazan, doğrunun iki sürümü demek. İçinde ağ kodu yok. Sunduğu her eylem motorun kendi komutunu çalıştırıyor ve çıktısını aktığı gibi gösteriyor.
  • Pencere Windows'ta henüz bir insan tarafından çalıştırılmadı. Bir Windows makinesinde derleniyor, testleri geçiyor ve macOS'ta 457 kurallık gerçek bir kimliğe karşı gözle denetlendi. Bu, birinin onu açmasıyla aynı şey değil. Açılmıyorsa bunu çabuk öğrenmek gerekiyor; motor, kurulum ve bu sürümdeki diğer her şey ondan etkilenmiyor.
  • ChatGPT ve Codex kimliği okuyabiliyor. İkisi tek bir MCP ayarını paylaşıyor (~/.codex/config.toml), yani bir kez bağlanmak ikisini birden bağlıyor. Ayarı JSON değil TOML olan ilk istemci ve dosya kişinin kendi ayarlarını taşıyor: model, proje güven seviyeleri, yorumlar. Ayrıştırıp yeniden yazmak bunların hepsini biçimsizleştirirdi, o yüzden yalnız kendi bloğumuza dokunuluyor. Gerçek bir ayar dosyasının kopyasında prova edildi: blok giriyor, dosya hâlâ ayrıştırılıyor ve bağlantı söküldükten sonra dosya bit bit eskisiyle aynı.

1.1.9 (15)

Eylül 2026
  • Claude Code sunucuyu hiç görmüyordu ve bunu kimseye söylemiyordu. coredence connect "bağlı" diyordu, girdi ~/.claude.json içinde doğru dosyada doğru anahtarın altında duruyordu, Claude Code onu yok sayıyordu. Öğrenmenin tek yolu bir asistana yalnız sunucunun cevaplayabileceği bir soru sorup başarısız olmasını izlemekti. Çalışan bir girdiyle kıyaslayınca fark tekti: "type": "stdio". Claude Code taşımasını beyan etmeyen girdiyi sessizce atıyor. Alan istemci tablosunda zaten vardı; yalnız bu istemci yanlış işaretlenmişti.
  • Kurulum artık cevap verecek kimsenin olmadığı yerde soru sormuyor. Kurulum dosyası motoru konsolsuz bir süreçte çalıştırıyor: input() orada hata fırlatıyor, kurulum onu yutuyor ve hiçbir şey üretmemişken — profil bile yokken — başarı bildiriyor. Ad sorulamadığında hesabın adı kullanılıyor ve bu açıkça söyleniyor. Çökmek üç seçeneğin en kötüsüydü.
  • Boş korpus kurulumun geri kalanını durdurmuyor. Bir önceki sürüm motora "hiçbir şey okumadıysan dur" demeyi öğretti; doğruydu ama yanlış yerde duruyordu: asistanlara bağlanmadan ve saatlik turu kurmadan önce. Okunacak şeyi olmayan biri, tamamlanmış görünen bir kurulum ve bağlı olmayan beş istemciyle kalıyordu. Boş korpus yalnız damıtmayı engeller; kimlik sonradan başka bir makineden gelebilir ve geldiğinde bağlantıların hazır olması gerekir.
  • Claude Code'a bağlıysan bir kez yeniden bağla, girdi yenilensin: coredence connect claude_code

1.1.8 (14)

Eylül 2026
  • Dört kaynak hiçbir şey okumuyordu ve kimse bunu göremiyordu. chatgpt, claude_code, claude_export ve claude_memory profildeki yolu alıp `~` işaretini açmadan kullanıyordu. Profil o yolları tilde ile yazıyor — kurulumun ürettiği varsayılan `~/.coredence/data/chatgpt-conversations.json` — yani belgelerin tarif ettiği akış, dışa aktarımını indir ve şuraya koy, sessizce hiçbir şey okumuyordu. İki platformda da, ilk sürümden beri. Dördü için de tilde ile yazılmış yolun arkasına dosya koyup okunmasını şart koşan test eklendi.
  • O hata başka bir hatanın izini sürerken çıktı ve yolun uzaması bu sürümün asıl konusu: motor neyi sakladığını söylüyordu, neye baktığını değil. "Eklenen: 0 Tekrar: 0 Atlanan: 0" üç ayrı arıza için aynı cümleydi — klasör bulunamadı, dosyalar okunamadı, ya da her kayıt elendi. Artık her toplayıcının kaç kayda baktığı da yazılıyor ve üçü birbirinden ayrılıyor. Sayaç tutmayan bir toplayıcı o satıra girmiyor: bakmadığımız yere "0 bakıldı" demek aynı yalanın yeni yeri olurdu.
  • Hiçbir şey okumayan bir kurulum bunu söylüyor. Kurulum sonuna kadar yürüyüp "kimliğin damıtıldı" diyor ve boş bir belge veriyordu. Artık duruyor, baktığı her kaynağı ve nereye baktığını sayıyor, üç de çıkış yolu veriyor — en yararlısı şu: başka bir makinede damıtılmış bir kimlik tek bir dosya ve onu buraya kopyalamak göçün tamamı.
  • coredence source her kaynağın arkasında gerçekten ne olduğunu gösteriyor: yol var mı, kaç oturum dosyası var. Tik "açık" demekti ve yazarı dahil herkes onu "bulundu" diye okudu.

1.1.7 (13)

Eylül 2026
  • Windows kurulumu artık terminal açmıyor. Kurulum siyah bir konsol penceresi açıp sorular sorarak bitiyordu; bir geliştiriciye gösterilecek makul bir şey, başka herkese gösterilecek yanlış şey. Mac'te kimse terminal görmüyor ve Windows'un farklı olması için bir sebep yoktu. Sihirbaz artık kurulumun kendi ilerleme bölmesinde çalışıyor ve tek bir soru soruyor — adını — çünkü kendi başına bulamadığı tek şey o: dil kurulum dilinden, model makinede aranıyor, bulduğu her asistan bağlanıyor.
  • Ve bitince ortada bir şey duruyor. Masaüstünde ve Başlat menüsünde kimliğini açan bir kısayol — belgenin kendisi, ürünün Windows'ta ortaya koyduğu şey. Gözle görülür hiçbir şeyi değiştirmeyen bir kurulum, hiç yapılmamış bir kurulumla aynı hissi veriyor.
  • Bitiş metni artık başarıyı varsaymak yerine motorun çıkış koduna bakıyor. Model bulunamadıysa kimliğin damıtılmadığını ve ne yapılacağını söylüyor; boş bir dosya için tebrik etmiyor.
  • Başka bir kurulumdan kalan saatlik iş buraya alınıyor. Önce zip'i açıp sonra kurulum dosyasını çalıştırdıysan zamanlanmış görev hâlâ açtığın klasörü gösteriyordu; status "kurulu" diyor, kurulum ona inanıyor ve o klasörü sildiğin gün saatlik tur tek kelime etmeden ölüyordu. Okuyamadığımız bir iş doğru sayılıyor: şüphede çalışan bir kurulumu bozmamak gerekiyor.
  • coredence where hangi dosyanın nerede olduğunu söylüyor: kimlik, asistanın okuduğu belge, veritabanı, profil, günlük. Kurulum o kısayol için kimlik dosyasını buradan buluyor — dosyanın adı profile göre değişiyor. İnsanların bugüne kadar belgelere yönlendirildiği bir soruya cevap veriyor.

1.1.6 (12)

Eylül 2026
  • Windows'un kurulum dosyası var. Çift tıkla, bitsin: kendi kullanıcı dizinine kuruluyor, yani Windows yönetici hakkı sormuyor ve UAC penceresi çıkmıyor; PATH'e ekleniyor, yani her terminalde coredence çalışıyor; ve bitince kimlik sihirbazını kendisi açıyor. Kurmadan çalıştırmak isteyen için zip duruyor.
  • Var olma sebebi ikinci bir şey daha: kod imzalama sertifikası alalım mı diye sorulduğunda dürüst cevap "imzalanacak bir şey yok"tu. Authenticode PE dosyalarını imzalıyor; ne .bat ne .zip imza taşıyabiliyor. İmzalanacak şeyi üretmek, imzalamanın ön koşulu. Kurulum hâlâ imzasız — Windows yayımcının bilinmediğini söyleyecek — ve SHA-256 özeti sürüm notunda, dosyanın yanında.
  • coredence uninstall, iki platformda da. Kurulumun geride bıraktığı iki şey dosya silmekle temizlenmiyor: saatlik zamanlanmış iş ve bağlı her asistanın ayarındaki MCP sunucusu girdisi. İkincisi kalırsa istemcin her açılışta orada olmayan bir sunucuyu başlatmaya çalışıyor. Komut ikisini de kaldırıyor. Kimliği kaldırmıyor — o senin verin ve çıkarken onu da alıp götüren bir programın ona "senin" demeye hakkı yok. --everything siliyor ve silmeden önce ne yapacağını söylüyor.
  • PATH'e kurulum betiği değil motor dokunuyor. NSIS'in dizeleri standart derlemede 1024 karakter ve bir geliştirme makinesinin PATH'i bundan rahatça uzun: okununca sessizce kırpılıyor, geri yazılınca kullanıcının PATH'inin yarısı yok oluyor. Kurulum başarılı görünürken makinedeki başka her şey bozuluyor. Motorun kayda yazması böyle bir sınır taşımıyor ve değerin türünü koruyor — içindeki %USERPROFILE% gibi değişkenler genişlemeye devam ediyor.

1.1.5 (11)

Eylül 2026
  • Motor Windows'ta çalışıyor. Pencere orada henüz yok ve bu bir eksiklik değil bir sıra: ürünün sözü asistanının seni tanıması ve bunun için motor ile MCP sunucusu yetiyor. Paket kendi Python'unu taşıyor — arşivi aç, coredence.bat'e çift tıkla; kurulum profilden saatlik tura kadar kendisi yürüyor ve makinedeki asistanları bağlıyor. Tekrar çalıştırmak zararsız: yapılmış adımı tekrarlamıyor. Kimlik %USERPROFILE%\.coredence içinde, Mac'tekiyle aynı tek dizinde ve aynı biçimde.
  • Saatlik tur artık günlük tutuyor. launchd'ye çıktı yolu verilmiyordu: bir tur başarısız olduğunda hiçbir yere hiçbir şey yazılmıyordu ve kimliğin neden büyümediği görünmüyordu. Uygulamanınki de motorunki de ~/.coredence/refresh.log dosyasına yazıyor. Güncelleme kurulu bir işe dokunmadığı için uygulama açılışta kendi işini onarıyor.
  • Kullanıcıya söylenen komut, o makinede var olan komut. On yedi satır sabit "coredence …" diyordu; Windows'ta çalıştırılabilir dosyanın adı coredence.bat ve söyleneni yazan kişi hata alıp hatanın kendisinde olduğunu sanıyordu. İkisi asistanın okuduğu kimlik belgesinin içindeydi.
  • Yeni profil ilk yazımdan itibaren korumalı. Dosya ancak içine API anahtarı eklendiğinde sahibine özel hâle geliyordu; arada geçen sürede kişinin adı, dili ve kaynak yolları makinedeki herkese açıktı.

1.1.4 (10)

Eylül 2026
  • Bağlantı sekmesi JetBrains IDE'lerini ve Gemini CLI'yı da buluyor. JetBrains tek satır, çünkü dosya tek: bütün JetBrains IDE'leri aynı AI Assistant ayarını okuyor, yani bir kez bağlanmak IntelliJ'i, WebStorm'u, PyCharm'ı, Rider'ı, GoLand'i ve Android Studio'yu birlikte bağlıyor. Gemini CLI aynı dosyada başka ayarlar da tutuyor; bağlanmak onlara dokunmuyor.
  • İkon küçük boyutlarda okunuyor. Çizgi çiziminin küçültülmesi ince çizgileri zeminle ortalıyor: ölçtüm, kontrast 512 pikselde 9,3:1 iken 32'de 2,7'ye düşüyordu — arayüz öğeleri için asgari kabul edilen 3:1'in altında, yani "Dock'ta gri bir kare gibi duruyor" cümlesinin aritmetiği bu. Çizgiler artık küçültme oranına göre kalınlaşıyor ve 128 piksel ve altında beyaza doğru çekiliyor. 512 ve 256 piksellik dosyalar bit bit eskisiyle aynı, yani çizimin kendisine dokunulmadı. Tek turuncu düğüm rengini koruyor: parlatma doygunluğa göre maskeleniyor, gri çizgiler tam pay alıyor, vurgu hiç almıyor.

1.1.3 (9)

Eylül 2026
  • Yeni sürüm çıkınca haber veriyor. Uygulama kendi kendini güncelleyemiyor ve şimdiye kadar bir sürümün çıktığını öğrenmenin tek yolu siteye geri dönmekti. Kontrol pencereye değil motora kondu: motor damıtırken zaten ağa çıkıyor, pencere ise hâlâ hiçbir soket açmıyor — gizlilik sayfasındaki cümle yazıldığı gibi duruyor. Motor günde bir kez github.com'a son sürümün hangisi olduğunu soruyor; o istekte seni tanıtan hiçbir şey yok ve cevap pencerenin okuduğu küçük bir dosya olarak diskte duruyor.
  • Ayarlar → Motor hem gösteriyor hem kapatıyor. Terminaldeki karşılığı coredence updates off.
  • Belgeler motorun "damıtırken seçtiğin modeli çağırıyor, başka hiçbir şey yapmıyor" diyordu. Bu özellik var olduğu an o cümle yanlış oldu; artık ikisini de sayıyor ve ikincisinin nasıl kapatıldığını söylüyor. O sayfadaki bir iddianın değeri doğrulanabilir olmasından geliyor ve yanlış kalan tek cümle diğerlerinin değerini düşürürdü.

1.1.2 (8)

Eylül 2026
  • Motor eski kod adını bıraktı. Ürünün bir adı olmadan önce motorun adı brain'di ve bu ad kimsenin bakmadığı yerlerde kalmıştı: Python paketi, ~/.coredence/brain.db dosyası, Xcode projesi. Hiçbiri uygulamada görünmüyordu, hepsi yanlıştı.
  • Yeniden adlandırma kolay yarısı. Zor yarısı şu: birinin makinesinde çalışan bir 1.1.1 kopyası eski adı elle çağırıyor — zamanlanmış işi "-m brain.cli" çalıştırıyor, bağlı bir istemcinin ayarında "-m brain.mcp" yazıyor. O dosyalar bir kez yazıldı ve kendiliğinden değişmiyor. Bu yüzden eski ad, yenisine yönlendiren bir kabuk olarak duruyor: güncellemede hiçbir şey kırılmıyor ve saatlik tur o iki dosyayı sessizce güncel ada çeviriyor. Yapman gereken bir şey yok; kimlik veritabanıyla birlikte kendi kendine geçiyor.
  • Pencere veritabanını iki adın hangisiyle duruyorsa onunla buluyor. Dosyayı motordan geçmeden doğrudan açıyor, yani güncelleyip ilk zamanlanmış turdan önce uygulamayı açan biri, geçmişi diskte önceki adla dururken boş bir kimlikle karşılaşırdı.

1.1.1 (7)

Eylül 2026
  • Saatlik güncellemeyi açmak seni macOS oturumundan atıyordu. Ayarlar → Motor'daki anahtar da kurulum ekranının son adımı da, zamanlanmış işi kurarken önce eskisini söküyor; sökme komutu işin adı yerine oturumun adını veriyordu ve launchd isteneni yapıp bütün oturumu kapatıyordu. Ekran kararıp giriş penceresi geliyordu. Hiçbir şey kaybolmuyordu ama dışarıdan bilgisayarın kendini kapatıp açması gibi görünüyordu — ve 1.1.0'da kurulumu tamamlayan herkes bunu ilk çalıştırmada yaşıyordu.
  • Apple Notes hiçbir şey okumuyordu. Toplayıcı not metnini Apple'ın biçiminde yanlış yerde arıyor, bulamıyor ve hiçbir şey söylemiyordu; kaynak açık görünürken tek bir not üretmiyordu. Artık okuyor: burada 115 notun hepsi çözülüyor.
  • Sır taşıyan notlar kimliğe girmiyor. Notes ilk kez okunduğunda sıradan notların içinde cüzdan kurtarma tümcecikleri ve canlı API anahtarları çıktı; o metin damıtılıp render edilen profile yazılacaktı. Bir sırrın adını anan ya da anahtar şeklinde bir şey taşıyan not hiç toplanmıyor.
  • Maskeleme Türkçe öğrendi. Kurallar yalnız İngilizce adları tanıyordu — API_KEY=, PASSWORD: — yani insanın gerçekten yazdığı biçimde bir sır olduğu gibi geçiyordu. Alt çizgi yerine boşlukla yazılan "API Key: …" de kaçıyordu.

1.1.0 (6)

Eylül 2026
  • Kimlik kendini güncel tutuyor. Kaynakları okumak ve damıtmak yalnız ilk kurulum ekranında oluyordu; kimlik kurulduğu günde kalıyordu. Artık saatlik bir tur var, istediğin an çalıştıracak ⇧⌘R var ve resmin sabit kalmasını istersen Ayarlar → Motor'da kapatacak bir anahtar var.
  • Bağlantı sekmesi makinede bulduğu her istemciyi listeliyor — Claude, Claude Code, Cursor, Windsurf, VS Code — ve zaten bağlı olan sunucularına dokunmadan herhangi birine tek düğmeyle bağlanıyor. Terminaldeki karşılığı coredence connect.
  • Model çağrılamadığında uygulama sebebini söylüyor. Dolmuş bir kullanım penceresi, hiç giriş yapılmamış bir Claude Code ve kopmuş bir bağlantı birbirinin aynı görünüyordu ve üçü de kullanım limiti diye raporlanıyordu — insanı asla değişmeyecek bir şeyi beklemeye gönderen bir cümle.
  • Modele ulaşamayan bir tur on dakika denemek yerine hemen söylüyor ve başarısız bir damıtmadan sonra kimlik dosyalarını yeniden yazmıyor.
  • Sahnedeki iki etiket İngilizce uygulamada Türkçe kalıyordu.

1.0.1 (5)

Eylül 2026
  • Uygulama İngilizce konuşuyor. Site İngilizceyken uygulama her yerde Türkçeydi; indiren kişi sayfayı okuyup ürünü okuyamıyordu. Sistem dilini izliyor ve kendin seçmek istersen Ayarlar → Sahne'de bir seçici var.
  • Ayarlar penceresini kaydırmak artık arkadaki sahneyi yakınlaştırmıyor. Sahne, uygulamanın her penceresinde kaydırma tekerini dinliyordu; ayarlara giden bir kaydırma oraya hiç ulaşmıyordu.
  • İlk açılış ekranı macOS'un bir klasörü okumak için izin isteyebileceğini ve reddetmenin neye mal olduğunu söylüyor — tarama eskiden hiçbir açıklama yapmadan susuyordu.

1.0 (4)

Eylül 2026
  • Motor uygulamanın içinde geliyor. Kurulacak Python yok, klonlanacak depo yok, terminal yok — tek indirme ve ilk ekran hangi komutları çalıştıracağını söylemek yerine kimliği kuruyor.
  • Bir MCP sunucusu: kullandığın asistanlar kimliği bir dosya olarak almak yerine okuyabiliyor — bir konuda ne düşündüğünü, tek bir kuralın neyden çıktığını. Makinende stdio üzerinden çalışıyor ve salt okunur.
  • Tek düğmeyle Coredence'ı Claude'a ekleyen bir bağlantı sekmesi ve eklentileri kendi kuran istemciler için bir paket.
  • Damıtma kendi API anahtarınla çalışabiliyor — Anthropic, OpenAI, ya da kendi makinende çalışan bir model dâhil OpenAI uyumlu her sunucu. Claude Code kuruluysa yine o kullanılıyor.
  • Motorun tuttuğu her şey artık ~/.coredence içinde. Var olan bir kurulum ilk açılışta kendini oraya taşıyor.
  • Bu derleme yalnız Apple silicon. Uygulama Intel için de derlenmişti ama içindeki motor derlenmemişti; açılan bir pencere ve hiç görünmeyen bir kimlik demek olurdu.

1.0 (3)

Eylül 2026yayınlanmadı
  • Ayarlar penceresi yeniden yapıldı: düzen ve renk seçenekleri neyi değiştirdiklerini söylüyor; hangi kuralların hiç çizileceğine karar veren üç eşiğe de ilk kez ulaşılabiliyor.
  • Bir güven tabanı, güncel durum katmanı ve taslak kurallar için anahtarlar. Gizlenen kurallar sahneden tamamen çıkıyor — renk aralıkları, kümelenme ve düğüm boyutları kalanlardan yeniden hesaplanıyor ve kaç tanesinin gizlendiği üst çubukta yazıyor.
  • Arama, yakınlaştırma, sabitleme ve yeniden yerleştirme için menü çubuğu ve klavye kısayolları.
  • Okunamayan veritabanı hatası yerine, üç şeyden hangisinin eksik olduğunu ve komutunu söyleyen bir ilk açılış ekranı.
  • Pencere, sistem ne olursa olsun koyu. Sahnenin paleti koyu bir zemine göre kurulmuştu; karşılama ekranı açık tema kullananlara onun üstüne siyah metin çiziyordu.

1.0 (1)

Eylül 2026yayınlanmadı
  • Kimlik, pencerenin tamamını dolduran tek bir sahne — resmi içindekiler tablosuna çeviren üç bölmeli görünümün yerine.
  • Dört düzen — serbest, takımyıldız, ızgara ve halka — ve dört renklendirme: konuya, katmana, güvene, yayılıma göre.
  • Kurallar kaç konuda göründüklerine göre üç kademede boyutlanıyor; her şeyi kesenler bir halka takıyor.
  • Eşleşmeleri yerinde işaretleyen arama, düğümü sürükleyip sabitleme, boşluğa tıklayıp kapatma.
  • Developer ID ile imzalı, sertleştirilmiş çalışma zamanı, Apple tarafından noterlenmiş.

Motor

Motorun kendi geçmişi var ve bundan uzun — aylardır okuyup damıtıyor. Commit'leri depoda, her değişikliğin gerekçesi burada özetlenmek yerine mesajının içinde duruyor.