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

119 lines
14 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 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ü-**a**zerbaycan", "Kırgızistan-**t**ürkiye", "Türk-**k**azak" — ~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.**