Files
kolaytercih/docs/gece-vardiyasi/2026-09-23/00-gunluk.md
bilalgursen a42a1a9920
All checks were successful
Deploy / deploy (push) Successful in 17s
docs(ekip): 22-23 Eylül vardiya raporları, BACKLOG/KARARLAR/PROTOKOL güncellemeleri
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-23 11:43:11 +03:00

14 KiB
Raw Blame History

23 Eylül vardiyası — orkestratör günlüğü

Başlangıç 07:25. Gerekçe: orkestratör 01:25'te kendi kararıyla durmuştu (limit değil), Bilal bunu eleştirdi. Bkz. 00-brief.md.

Tur 1

Ajan İş Durum
veri-muhendisi programs_arsiv etiket düzeltmesi (BACKLOG #21) ✔
tasarimci CEO §6 açık soruları + URAP telafisi koşuyor
yapay-zeka-muhendisi Liste ücretsiz olursa kötüye kullanım eşiği (CEO §6) koşuyor

veri-muhendisi ✔ → 01-arsiv-etiketi.md

programs_arsiv'de 85 satır düzeldi (61 unitur + 24 il). Arşiv↔programs unitur farkı 2→0. Puan/sıra/kontenjan kolonlarında 0 değişiklik (45 kolon id üzerinden kıyaslandı). veri-kalite kontrol 13/14 artık arşivi de tarıyor; kusurlu DB'de ikisi de KALDI verdi, düzeltmeden sonra GEÇTİ. İdempotent. Commit'ler 9722689 (kod), c5fd2cb (veri), 178c56a (entegrasyon merge) — build temiz. Kullanıcıya bugünkü etkisi yok (src/ tarafında arşivi okuyan SQL yok); düzeltme önleyici. Dünkü O1 rakam hatası kayda geçti ve bağımsız doğrulandı: hub değişimi "170 → 166" değil, 132 → 129 kurum; entegrasyon build'inin ürettiği HTML Devlet 129 / Vakıf 78 gösteriyor.

Tur 2 (07:40) — Bilal "devam et" dedi

Vardiya içerik üretmeye de açıldı. Ama ilk iş duplikasyon tuzağına çarptı:

⚠️ BACKLOG bayat — dört yazı zaten yayında

BACKLOG #2 (KYK burs/kredi, "en geç 6 Ekim") ve #3'ün "bu hafta" üç yazısı (boş kontenjan yorumu, en çok öğrenci alan devlet üniversiteleri, en seçici devlet üniversiteleri) hâlâ aday görünüyor. Gerçekte dördü de yazılmış ve main'e girmiş: commit e21cda4 (22 Eyl 2026), git merge-base --is-ancestor e21cda4 main ✔. Dosyalar: content/rehber/kyk-burs-mu-kredi-mi.md, bos-kontenjanlar-ne-anlatiyor.md, en-cok-ogrenci-alan-devlet-universiteleri.md, en-secici-devlet-universiteleri.md. Orkestratör "devam et" emriyle doğrudan yazı işine geçseydi dördü de yeniden yazdırılacaktı. Ders: içerik işine başlamadan önce content/rehber ile plan karşılaştırılır; backlog durumu tek başına yeterli kanıt değil. Dün gece urun-yoneticisi backlog'u güncelledi ama bu dört maddeyi yakalamadı — kapanışları git geçmişinden değil, gece raporlarından okuduğu için.

Koşan işler

Ajan İş
seo-geo Plan ↔ content/rehber envanteri: ne yazıldı, ne kaldı, sırası ne
tasarimci CEO §6 açık soruları + URAP telafisi (ilk kopya 600 sn takıldı, mekanik tarama orkestratörce hazırlanıp yeniden salındı)
yapay-zeka-muhendisi Liste ücretsiz olursa kötüye kullanım eşiği hazırlığı (CEO §6)

Bilal'in 6 kararı hâlâ cevap bekliyor — merge ve radikal değişiklik gerektirenler onlara bağlı, bu turda yapılmıyor.

yapay-zeka-muhendisi ✔ (09:50) → 03-ucretsiz-liste-hazirlik.md

Bilal "liste paketsize ücretsiz olsun" derse iş hazır. Özet:

  • Kilit bugün sayıyı korumuyor: uretim-kilidi.ts kullanıcı başına aynı anda tek üretimi engelliyor (180 sn bayat kilit devri), ama kilit ~20 sn sonra bırakılıyor — ardışık üretimi durduran tek şey bugün kredi bakiyesi.
  • Önerilen eşik: kayan 24 saatte 5 başarılı üretim (paketsiz). Bugün tüm zamanlarda 3 üretim var → eşik 0 kullanıcıyı vuruyor; dürüst öğrencinin yeniden kurma ihtiyacı 3-4; tavanda 10,5 kuruş/kullanıcı/gün. Sayım yüzeyi mevcut credit_ledger — yeni tablo/göç yok.
  • Kredi çağrısı silinmemeli, tutar hasPaket ? 3 : 0 olmalı: 0 deltalı defter kaydı idempotency'yi (UNIQUE(reason, ref_id)), "önceki deneme başarısızdı" ayrımını ve günlük sayacı birlikte taşıyor. Yan etki: kredi-hatirlatma.ts:36 eşiği < RAPOR_KREDI → < 1.
  • Revizyon kapsam dışı — paketsiz zaten yapamıyor; "listem yanlış oldu" çıkışı tercih değiştirip yeniden üretmekten geçiyor ve o yol bu kararla zaten ücretsizleşiyor.
  • Büyüklük S: 13 dosya ~67 satır, göç yok, yeni ekran yok, şema senkronu gerekmiyor.

seo-geo ✔ (09:55) → 04-icerik-envanteri.md

İki plan mükerrerler birleştirilince 18 konu: 8 yazıldı, 9 açık, 1 düştü. Yazılanlar main'de: 902c7a1 (3 yazı, 21 Eyl) · 2602b6f (1) · e21cda4 (4, 22 Eyl). BACKLOG #2 ve #3 merge olarak kapatılmalı; #3'teki "kalan 7 yazı" sayısı da yanlış. Bayatlık: ikinci-universite-acikogretim düştü (CEO zaten reddetmişti + AÖF penceresi Ekim'de kapanıyor) · universitede-ilk-hafta penceresi kaçtı (üniversiteler 21 Eylül'de açıldı) → Bilal'e tek cümlelik karar: düşsün mü, 2027 Eylül'üne mi park edilsin · kac-siralama-ile-hangi-bolume-girebilirim.md başlığı hâlâ "(2025 Verileriyle)" diyor, katalog 2026'ya geçti → rehber-editoru işi. Kısıt: Ahrefs/Search Console bağlı değil → raporda hiç hacim/trafik rakamı yok, sıralama gerekçesi yalnız takvim. Sıradaki yazı: yks-2027-takvimi — ÖSYM'nin Kasım ortasında beklenen duyurusundan önce indekslenmeli.

Tur 3 (09:57)

rehber-yazari → gece/0923-rehber-2027 dalında 2027 takvimi yazısı. Kritik kısıt verildi: 2027 takvimi açıklanmadı, uydurma tarih yasak; çerçeve "henüz açıklanmadı, geçmiş desen şu, açıklanınca burası güncellenecek" olacak ve tahminler tek bölümde toplanacak ki duyuru günü tek paragraf değişsin.

tasarimci ✔ → 02-tasarim-acik-sorular.md

  1. Sihirbaz 3 adımda kalmalı, 2'ye inmemeli — 2'ye indirmek il adımına ikinci bir iş yükler (3. adımdan çıkardığımız hatanın aynısı), 375px'te kaydırmalı il listesiyle tür çiplerini aynı panele sıkıştırır.
  2. /meraklisina şema senkron borcu SIFIR — grep -rni "öncelik" src/features/pazarlama/ src/app/meraklisina/ → 0 satır. Ne SEMA düğümü, ne aria-label, ne figcaption öncelikleri anlatıyor. Değişecek olan belge değil, ekran.
  3. Sessiz regresyon tuzağı (iyi yakalama): Öncelikler kaldırılırsa tercih-farki.ts oncelikler'i kıyaslamaya devam ettiği için, hiçbir şey değiştirmemiş eski kullanıcı /listem'de kalıcı "Tercihlerin değişmiş → 3 kredi harca" uyarısı görür (eski params dolu, yeni profil boş). Dosyanın kendi 8-12. satırdaki ilkesine aykırı. Dört nokta, tek dosya. K5 onaylanırsa aynı commit'e girmeli.
  4. R7 hüküm: tek commit, 28 satır. 48'in 26'sı gerçek metin + 2 placeholder (düzeltilir), 11 dekoratif ikon, 4 fonksiyonel ikon (ayrı kural), 1 devre dışı, 4 dev paneli. Büyük punto: 0. Kör sed olmaz — aynı dosyalarda dokunulmaması gereken 11 ikon var.
  5. URAP telafisi XS: özet paragrafın ilk virgülüne "devlet üniversitesi"/"vakıf üniversitesi".

Tasarımcının kendi hatasının teşhisi (alıntı): bilginin "zaten var" olduğunu o sayfada hiç aratmadan, farklı bir sayfa tipindeki rozetlerden genellemeyle varsaymış; tek üniversitelik detay sayfasında rozet tekrar olacağı için hiç konmamış. Doğrulama tek grep'miş.

Tur 4 (10:05)

yazilimci → gece/0922-urap dalına URAP telafisi (dün silinen devlet/vakıf bilgisini özet cümleye geri koyma). Orkestratör kararı: bu yeni bir tasarım değil, dün gece bizim ürettiğimiz bir bilgi kaybının telafisi — Bilal'in 1 numaralı sorusunun (c) seçeneği. Ayrı commit, Bilal isterse almayabilir. trBaslikDuzeni yasaklandı: 6 unitur değerinin 4'ünde bozuk metin üretiyor; dün eklenen UNITUR_ETIKET haritası kullanılacak. Uygulanmayanlar (bilerek): R7 — CEO bu turda backlog'a havale etti, bütçe kararı Bilal'in. tercih-farki.ts düzeltmesi — K5 kararına bağlı, karar gelmedi.

yazilimci ✔ (10:10) → 06-urap-telafisi.md · gece/0922-urap @ 4c756c4

Özet paragrafın ilk virgülüne tür öbeği girdi: "Boğaziçi Üniversitesi (İstanbul), devlet üniversitesi; 2026 YKS yerleştirme sonuçlarına göre …". Yeni kutu/bileşen/rozet yok, ızgara 4 kart. UNITUR_ETIKET { kart, cumle } biçimine genişletildi — kart etiketi ile cümle öbeği tek kaynakta, ayrışamaz. trBaslikDuzeni kullanılmadı (yasaktı). Altı değerin beşi üretilen HTML'de doğrulandı; YURTDISI VAKIF sayfada hiç çıkmıyor (Manas/Yesevi'nin aynı slug'ında YURTDISI KAMU satırları da var, UniOzet.unitur KAMU'yu seçiyor) → koddan çıkarım olarak işaretlendi. Çift gösterim (URAP'sız sayfada hem "Tür" kartı hem cümle) tuhaf durmuyor, kaldırma önerilmedi. Entegrasyon tazelendi, pnpm build temiz — 1821 statik sayfa. Merged dağılım 129 devlet / 75 vakıf / 16 KKTC / 6 yurt dışı kamu / 3 vakıf MYO = 229.

Backlog'a gidecek yeni bulgular (bu vardiyadan, henüz yazılmadı)

  1. slug.ts trBaslikDuzeni tireden sonraki harfi büyütmüyor: "Bakü-azerbaycan", "Kırgızistan-türkiye", "Türk-kazak" — ~10 yurt dışı/KKTC sayfası. Eski hata, bu vardiyadan değil.
  2. BACKLOG #2 ve #3 merge olarak kapatılmalı (yazılar e21cda4 ile main'de); #3'teki "kalan 7 yazı" sayısı yanlış — doğrusu 04-icerik-envanteri.md'de.
  3. ikinci-universite-acikogretim konusu düştü; universitede-ilk-hafta penceresi kaçtı (Bilal kararı).
  4. kac-siralama-ile-hangi-bolume-girebilirim.md başlığı hâlâ "(2025 Verileriyle)" — rehber-editoru işi.
  5. R7 kontrast: tek commit 28 satır (tasarımcı ölçtü) — bütçe kararı Bilal'in.
  6. K5 onaylanırsa tercih-farki.ts düzeltmesi zorunlu (aksi hâlde kalıcı yanlış uyarı).

rehber-yazari ✔ (10:20) → 05-yazi-2027-takvimi.md · gece/0923-rehber-2027 @ 82dffc7

content/rehber/yks-2027-takvimi.md (146 satır). Başlık: "2027 YKS Ne Zaman? Başvuru ve Sınav Takvimi (Henüz Açıklanmadı)". Disiplin notu: Aritmetikle çıkan ve internette dolaşan "19–20 Haziran 2027" tarihini bilerek yazmadı — resmî tarihmiş gibi alıntılanmasın diye. 2027 kapsam/Maarif Modeli iddiasını da doğrulayamadığı için yazmadı. 2023–2026'nın tamamı ÖSYM duyurularından tek tek teyit edildi (22 kaynak URL'si yazının sonunda). Tahminler tek bölümde toplandı ("kasım", "haziranın ikinci yarısı" bantları; gün/tarih yok) → ÖSYM duyurduğu gün tek bölüm silinip tabloya sütun eklenerek ~15 dakikada güncellenir. İkinci tablo aslında asıl değerli kısım: aşamalar arası gün sayıları (sınav→sonuç ~1 ay, sonuç→tercih 1–2 hafta, tercih kapanışı→yerleştirme 1–2 hafta).

Orkestratör entegrasyon doğrulaması (10:25)

gece/0923-rehber-2027 → gece/0922-entegrasyon @ 8c0fb61, çakışmasız. pnpm build Compiled successfully; rehber sayfası 33→34 html, yks-2027-takvimi.html prerender edildi. Üretilen HTML'de uydurma 2027 tarihi taraması temiz ((1[0-9]|2[0-9]) (Haziran|Temmuz|Ağustos|Şubat|Mart) 2027 → 0 eşleşme). BETTER_AUTH_SECRET uyarıları worktree'de env dosyası olmamasından — dünkü vardiyada da vardı, kodla ilgisi yok.

⛔ Tur 5 (10:45) — DURDURULDU: yerel main 16 commit geride

Bilal "push ve MR yapma, önce özet sun" dedi. Doğrulama sırasında gecenin en büyük sistem hatası çıktı:

Yerel main 9bd448b, origin/main c5769e2 — arada 16 commit var. Bütün gece vardiyası bayat bir temel üzerinde çalıştı.

Uzakta olup bizde olmayanlar arasında bu geceki işlerle doğrudan çakışanlar:

Uzaktaki commit Etkisi
2b350d0 content(rehber): gece vardiyasının 14 yeni yazısı İçerik envanteri (8 yazıldı/9 açık) geçersiz — uzakta 46 yazı var, yerelde 32
4acfd27 fix(kredi): paketliden liste ve revizyon kredisi düşmez "Ücretsiz liste" analizinin ekonomisi değişti (aşağıda)
daa232c fix(sonuc): boş harita ilk ekranı işgal etmez CEO'nun dün reddettiği K2 zaten yapılmış
552d5ce / e912665 tadımlık ve harita sırası Analitiğin /sonuc sayfa sırası önerisi zaten yapılmış
2373a9a content(tadimlik): "24 satırın tamamı" iddiası kalkar Maskeleme tartışmasının bir parçası zaten kapanmış

Somut zarar: yks-2027-takvimi yazısı bu sabah ikinci kez yazdırıldı — uzakta 22 Eylül tarihli 151 satırlık sürümü zaten vardı. İki yazar ajanı (OBP SSS + rehber bakımı) 32 yazılık bayat ağaçta çalışırken durduruldu; bakım turunun ölü link/yıl taraması 14 yazıyı hiç görmediği için sonucu geçersiz olurdu. gece/0923-* dalları silindi.

Kök neden: Vardiya git fetch yapmadan yerel main'i gerçek sanıp oradan dal açtı. Sabah backlog bayatlığını yakaladım ama teşhisi eksik koydum — "backlog bayat" dedim, asıl sorunun "çalışma ağacı bayat" olduğunu görmedim. Kural: Vardiya açılışında ilk komut git fetch; dallar origin/main'den açılır, yerel main'den değil.

İyi haber — dört kod/veri paketi ayakta

origin/main üzerinde deneme merge'i: 0922-risk-etiketi, 0922-olcum, 0922-unitur-kacagi, 0922-urap → dördü de çakışmasız. Yalnız silinen yazı dalı çakıştı. Ayrıca dördü de hâlâ gerekli (origin/main'de kontrol edildi): program-tablosu.tsx'te RISK_ETIKET yok, yalnız RISK_NOKTA var · rapor-listesi.tsx:259,267 sr-only sm:not-sr-only duruyor · kaynaksız /paket linki 10 · sihirbaz-adimlar.tsx:205 hâlâ yalnız ileri geçişte atıyor · universite-icerik.tsx:316-319 "Tür" kartı trBaslikDuzeni ile duruyor.

"Ücretsiz liste" kararı şekil değiştirdi

origin/main rapor-actions.ts:158: const maliyet = user.hasPaket ? 0 : RAPOR_KREDI; Yani paket sahibi artık kredi ödemiyor; kredi yalnız paketsiz denemeciden alınıyor. Dünkü analizin "60 kredi = 20 üretim" ekonomisi geçersiz. Soru artık "kredi indirilsin mi" değil: kredi bugün yalnızca ürünü denemek isteyen kişiyi durduruyor, para ödemiş hiç kimseyi durdurmuyor.