docs(ekip): 22-23 Eylül vardiya raporları, BACKLOG/KARARLAR/PROTOKOL güncellemeleri
All checks were successful
Deploy / deploy (push) Successful in 17s

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
bilalgursen
2026-09-23 11:43:11 +03:00
parent a8c75ce4a7
commit a42a1a9920
27 changed files with 3508 additions and 8 deletions

View File

@@ -131,3 +131,75 @@ Kayıt biçimi:
- Yetki: [KARAR] (erteleme) · [BİLAL] (maske/gelir kararı)
- Gerekçe: Sezon 10 Ağu 2026'da kapandı; hız ~95 ziyaret/hafta ve haftada ~0,5 liste (`01-ai-listesi-hunisi` §5.1). Bu hacimde hiçbir oran makul sürede okunamıyor (`§5.2`: en iyi aday bile ~6 hafta, `/listem`→liste ~36 hafta) ve A/B her kolu 47 ziyaret/haftaya düşürür. Bu hafta onaylanan 5 iş "ölçülemeyecek deney" değil, koddan kesin gösterilmiş **kusur ve çelişki** düzeltmesidir. Kurucunun inceleme kapasitesi günde 1–2 saat (`docs/urun/vizyon.md`); onaylanan iş = inceleme borcu.
- Yerine geçtiği karar: —
## 2026-09-22 — Gece vardiyası Tur 2: bu gece 4 iş onaylandı, gerisi reddedildi
- Karar: Sezon dışı + okunamaz örneklem (801 temiz oturum, 3 liste üretimi, 5 kilit görüntüleme, 0 tamamlanmış ödeme) gerçeğiyle bu gece yalnız dört iş onaylandı; dördü de "yanlış olanı düzelt" ya da "ölç" sınıfında, hiçbiri deney değil. P1 `gece/0922-risk-etiketi`, P2 `gece/0922-unitur-kacagi`, P3 `gece/0922-urap`, P4 `gece/0922-olcum`. Push ve merge yok.
- Yetki: [KARAR]
- Gerekçe: Bilal'in gece ölçütü ("kolay akış, gereksiz şey yok, over-engineering yasak") + `01-analitik.md` §2/§4 örneklem büyüklükleri; ayrıntı `docs/gece-vardiyasi/2026-09-22/06-ceo-kararlari.md`.
- Yerine geçtiği karar: —
## 2026-09-22 — Riskin adı satırda yazıyla görünür (P1)
- Karar: `/sonuc` program tablosunda risk göstergesine metin etiketi eklenir (`RISK_ETIKET`, tek kaynak `src/lib/risk.ts`); `/listem`'de etiketin `sr-only sm:not-sr-only` sınıfı kaldırılır, mobilde de görünür. Yeni bileşen/sabit/olay yok. Dal: `gece/0922-risk-etiketi`.
- Yetki: [KARAR]
- Gerekçe: `AGENTS.md` risk dili kuralının iki ihlali — `src/features/liste/components/program-tablosu.tsx:306-314` risk yalnız renkli nokta ve `aria-hidden`, `RISK_ETIKET` o dosyada hiç kullanılmıyor; `src/features/rapor/components/rapor-listesi.tsx:267` etiketi 390px'te gizliyor (trafiğin ~%90'ı mobil). Aynı zamanda `01-analitik.md` önceliği #1'in ("karar veren bilgi tıklamasız görünsün") nedensellik iddiası gerektirmeyen parçası.
- Yerine geçtiği karar: —
## 2026-09-22 — Sihirbaz havuzundaki `unitur` sızıntısı kapatılır (P2, BACKLOG #9)
- Karar: Kıbrıs Amerikan, Uluslararası Balkan ve Uluslararası Saraybosna için 100 satır `unitur` + 26 satır `il` düzeltilir; `scripts/unitur-onar.ts`'e NULL koşulsuz `KURUM_DUZELT` haritası, `scripts/veri-kalite.ts`'e "baz ad başına tek `unitur`" kontrolü eklenir. Kod ve `data/yokatlas.db` binary'si AYRI commit'ler. Kapsam dışı: `il` boş 19 satır, B4 burs/dil adları, `kategoriBul`. Dal: `gece/0922-unitur-kacagi`; merge [BİLAL].
- Yetki: [KARAR] (uygulama) · [BİLAL] (merge, bekliyor)
- Gerekçe: `src/lib/db.ts:79-82` devlet filtresi `unitur='DEVLET'`, vakıf filtresi `unitur<>'DEVLET'` → öğrenci "devlet" dediğinde havuza 27 program sızıyor, "vakıf" dediğinde aynı 27'si eksik kalıyor. Kök neden ilk CSV ingest'inde (`05-urap.md` §6.2); `unitur-onar.ts`'in çelişki koruması tam ad üzerinden çalıştığı için aynı kurumun iki yazımı çelişki sayılmıyor.
- Yerine geçtiği karar: —
## 2026-09-22 — URAP yerleşimi: "Tür" kartıyla takas; uyarı ve atıf ayrı kaynak satırında (P3)
- Karar: `/universite/[slug]` metrik ızgarasında "Tür" kartının yerine URAP kartı gelir (başlık + `18 / 198` + `2025-2026`); ızgara 4 kart kalır, şablon değişmez. Metodoloji uyarısı ve atıf karta değil, tablonun altındaki AYRI ikinci kaynak satırına girer — `VeriKaynagi` kullanılmaz/kopyalanmaz (dönemi ve tarihi başka). Kanonik cümle: "URAP Türkiye Sıralaması 2025-2026 (198 üniversite arasında) — akademik yayın ve araştırma performansını ölçer; eğitim kalitesini ya da iş bulma oranını ölçmez." URAP'ta olmayan 31 kurumda kart çizilmez ve "Tür" yerinde kalır (hiçbir sayfada "—" ya da delik yok), eksiklik alttaki kaynak satırında tek cümleyle söylenir. Atıf şartı pazarlık dışı: gerçek `<a href>`, `rel="noopener"`, yeni sekme, **nofollow yok**, adres `URAP_KAYNAK_URL` sabitinden; URAP sayısının göründüğü her yüzeyde aynı ekranda bulunur, link konulamayan yüzeyde (OG görseli) sayı gösterilmez. Uygulama: `src/lib/urap-siralama.ts` 198 satırlık sabit (`uni-koordinatlar.ts` deseni) + `katalog.ts` okuma katmanı + `veri-kalite.ts` 5 kontrol. Yeni DB dosyası, göç, cron ve çekme betiği YOK. Dal: `gece/0922-urap`; yayın [BİLAL].
- Yetki: [KARAR] (uygulama) · [BİLAL] (yayın, bekliyor)
- Gerekçe: Bilal'in izni (brief §4) + `05-urap.md` §2 (198/198 birebir slug eşleşmesi, ek normalleştirme kuralı gerekmiyor) + `02-tasarim.md` §6-A (kart sayısı artmıyor; "Tür" üç yerde daha var) + `03-acilar-ve-rakipler.md` §5 (tablo gürültü, tek satır ilaç; URAP metodolojisi forumda eleştiriliyor). `/universite/*` en kalabalık yüzey (`01-analitik.md` §1: 405 mobil oturum).
- Yerine geçtiği karar: —
## 2026-09-22 — URAP bu sürümde yalnız üniversite sayfasında yaşar
- Karar: URAP sayısı 24'lük liste satırına, `/sonuc` tablosuna, `/universiteler` hub'ının sıralama/filtresine ve LLM prompt'una GİRMEZ. "En iyi üniversiteler" listesi/başlığı yapılmaz, URAP'a göre program sıralanmaz, renk dili uygulanmaz (URAP risk dili değildir). `06-uni-veri.md`'deki 8 göstergenin hepsinin birden kutu alması reddedilir.
- Yetki: [KARAR]
- Gerekçe: `02-tasarim.md` §6 (aynı üniversite listede 3 kez geçerse sayı 3 kez tekrarlanır; 8 gösterge = 8 kutu = istemediğimiz tablo yığını), `03-acilar-ve-rakipler.md` §5 ("öznel sıralama yok" ilkesi), `04-liste-maliyet-ve-oneriler.md` öneri 5 reddi (metin diyeti, `rapor.ts:83`).
- Yerine geçtiği karar: —
## 2026-09-22 — İki ölçüm deliği kapatılır; `sihirbaz_adim` serisi kırılır (P4)
- Karar: (1) `sihirbaz_adim{adim:1}` modal açılışında tam bir kez atılır (bugün yalnız ileri geçişte atıldığı için 1. adım hiç düşmüyor). (2) Kaynaksız 10 `/paket` linkine `?kaynak=` eklenir. Görsel değişiklik yok. Dal: `gece/0922-olcum`. **Ölçüm notu:** bu dal yayına girdiği tarihten önceki `sihirbaz_adim` serisinin paydası farklıdır; öncesi/sonrası karşılaştırılmaz (21 Eylül'deki `program_eklendi` notuyla aynı mantık).
- Yetki: [KARAR]
- Gerekçe: `01-analitik.md` §5 delik #1 ve #2; `sihirbaz-adimlar.tsx:205` (`if (yeniAdim > adim)`) ve 14 `/paket` linkinin 10'unda kaynak parametresi yok (koddan doğrulandı; analitiğin "10/16" sayısı 10/14'tür).
- Yerine geçtiği karar: —
## 2026-09-22 — Net/OBP verisinin vitrine çıkarılması: yön doğru, bu gece uygulanmaz
- Karar: "Net detayını açan oturum 3 kat daha çok sıra giriyor" bulgusu üzerine katalog satırı YENİDEN TASARLANMAZ; bulgunun korelasyon olduğu (ters nedensellik) kabul edilir. Pazarlama cümlesi ("YÖK Atlas'ın kaldırdığı son yerleşen netleri bizde duruyor") iki doğrulama gelmeden yayına GİRMEZ: (a) YÖK Atlas'ta verinin bugün gerçekten olmadığının ekran teyidi, (b) arşiv verisini yayımlamanın uygunluğu. Ayrıca cümlede yıl aralığı ZORUNLU: `netler` tablosu 2023–2025'i kapsar, **2026'yı kapsamaz** (sqlite: 21.341 / 20.813 / 20.821 satır). Net butonunun görünür etiket kazanması da aynı doğrulamaya bağlandı — iki kez yapmamak için.
- Yetki: [BİLAL] (bekliyor)
- Gerekçe: `01-analitik.md` §1 (GA'lar ayrışıyor ama niyet değişkeni kontrol edilmemiş), `03-acilar-ve-rakipler.md` §4 doğrulama notu (kaynak: şikâyet + köşe yazısı; resmî duyuru bulunamadı), `program-netleri.tsx:101-102` (buton yalnız `ListChecks` ikonu + `sr-only`). Protokol kuralı 9: doğrulanmamış rakam/atıf yayına giremez.
- Yerine geçtiği karar: —
## 2026-09-22 — Sezon bandının kaldırılması reddedildi (K1)
- Karar: `site-top-banner.tsx` sezon dışında da çizilmeye devam eder. Tasarımcının K1 kesimi reddedildi.
- Yetki: [KARAR]
- Gerekçe: Bilal bu bandın sezon-dışı metnini 22 Eylül 01:38'de iki alternatif arasından bizzat seçti (`84fc88e`, dal `bilal/sezon-bant-metni-B`) ve "375 px'te alt satıra taşar" bedelini commit mesajında açıkça kabul etti. `02-tasarim.md` K1'in kanıtı "koddan çıkarım" bir piksel tahmini; verilmiş kararı bozacak yeni kanıt değil.
- Yerine geçtiği karar: —
## 2026-09-22 — K2, K3, K4 ve yapay zekâ B-önerileri bu gece reddedildi
- Karar: Reddedilenler: K2 (`/sonuc` boş harita kutusu), K3 (iki giriş panelinden biri), K4 (kilitli satırların tek tek açılması), S1–S8, R3–R11, vaat dili regex denetimi + kurtarma ölçümü, B-1 (tek cümleyle sihirbaz ön-doldurma), B-2/B-3 (hazır çipler), B-4 (veliye e-posta paragrafı), marka'nın "ücretsiz yolu da var" cümlesi, `kosullar/page.tsx:15` yorumunun silinmesi. K4, K2, R7, R11 ve rehber kaydırma olayı backlog'a önerildi (BACKLOG'a dokunulmadı, sahibi `urun-yoneticisi`).
- Yetki: [KARAR]
- Gerekçe: K3 için tasarımcının kendi notu ("hangisinin kalacağını rakam belirlemeli", `02-tasarim.md` §8) ve kesimin koşullu olması; K4 için izleyici sayısı (tüm zamanlarda kilidi gören 5 gerçek oturum); vaat dili filtresi ve eval için üretilmiş toplam 3 liste; B-1 için sihirbazda kopma olmaması (adım 2→3 geçişi %96,9, tamamlama %80,6); B-4 için tamamlanmış ödeme sayısının sıfır olması. Onaylanan iş = Bilal'in inceleme borcu; bir turda dörtten fazlası onaylanmaz.
- Yerine geçtiği karar: —
## 2026-09-22 — Üç rapor iddiası koddan yanlış çıktı; düzeltmeler kayda geçer
- Karar: (1) "`/bolum/[slug]` detayında `CtaSiraForm` hiç yok" iddiası YANLIŞ — form var ve üstte (`bolum-icerik.tsx:267` `konum="ust"`, `:297` `konum="alt"`); üniversite tarafında da tablonun üstünde (`universite-icerik.tsx:290`, `:352`), analitiğin "tablonun altında" notu da yanlış. Analitik önceliği #4 düşürüldü. (2) "`/paket` sayfasında iade politikası hiç görünmüyor" iddiası YANLIŞ — `paket-satinal.tsx:96`'da "Paketi al" butonunun hemen altında `/kosullar#iade` linki var; konu kapandı. (3) `kosullar/page.tsx:15`'teki "MVP taslağıdır" bir JS yorumudur, kullanıcıya render edilmez; silinmesi için iş açılmaz. Satıcı kimliği eksikliği ayrı bir konudur ve 21 Eylül kararıyla ertelenmiş durumdadır, yeniden açılmadı.
- Yetki: [KARAR]
- Gerekçe: Bu vardiyada CEO'nun kod doğrulaması (`06-ceo-kararlari.md` §2, satır 4, 14, 15).
- Yerine geçtiği karar: —
## 2026-09-22 — "/sonuc parametre şişmesi" bulgusu düşürüldü
- Karar: 2026-09-21 turunda CTO listesine giren "/sonuc parametre şişmesi" maddesi kapatılır; iş açılmaz.
- Yetki: [KARAR]
- Gerekçe: `01-analitik.md` §2 — dünkü "143 oturumda 1.602 görüntüleme" iç trafik eseriymiş; gerçek kullanıcıda `/sonuc` medyanı 1 sayfa görüntüleme, 37 sn (30 gerçek oturum).
- Yerine geçtiği karar: 2026-09-21 turundaki CTO maddesi (parametre şişmesi)
## 2026-09-22 — Bilal'e giden altı karar (tavsiyelerle, bekliyor)
- Karar: (1) Sihirbazın 3. adımındaki "Öncelikler" 7 çipi kalksın mı — **tavsiye: kalksın**; `huni-semasi.tsx` bu adımı zaten anlatmıyor, `01-analitik.md` §3'e göre tamamlayanların çoğu hiç seçmiyor (20/29, GA %51–83), `04-liste-maliyet-ve-oneriler.md` §1 listenin yapısını kodun kurduğunu gösteriyor; alan tipte geriye uyumlu bırakılır. (2) Liste üretimi paketsiz kullanıcıya ücretsiz olsun mu — **tavsiye: evet**; kredi bir maliyeti karşılamıyor, asıl paywall (maskeleme) değişmiyor, kötüye kullanım kullanıcı başına günlük sınırla kapanır (`uretimKilidiAl`, 9bd448b). "Veri bekleyelim" seçeneği elendi: karar ekonomiyle veriliyor, örneklem Kasım'dan önce okunur hâle gelmiyor. (3) URAP paketinin yayını + izin e-postasının `docs/` altına konması. (4) P2 `unitur` düzeltmesinin merge'i. (5) Net/OBP vitrin cümlesi için iki doğrulama. (6) Rybbit panelinde iç trafik filtresi + Web Vitals (yayın sonrası trafiğin %70'i iç; `01-analitik.md` §6).
- Yetki: [BİLAL] (altısı da bekliyor)
- Gerekçe: `docs/gece-vardiyasi/2026-09-22/06-ceo-kararlari.md` §5.
- Yerine geçtiği karar: —