14 yeni rehber yazısı (hepsi editör denetiminden geçti, 46 yazıda 829 iç link tarandı, 0 kırık hedef; 180+ DB rakamı yazıların kendi filtreleriyle yeniden koşuldu): taban-siralamalari-alti-yilda-nasil-degisti · kac-net-ile-hangi-bolum · siralama-bandlari-hangi-kapilar-acilir · ayni-bolum-farkli-universite-siralama-farki · hangi-bolumlerin-kontenjani-azaldi · yeni-acilan-bolumler-nasil-degerlendirilir · bilgisayar-mi-yazilim-muhendisligi-mi · kktc-universiteleri-okunur-mu · yapay-zekaya-tercih-sordum-guvenilir-mi · ek-madde-1-puanim-yetiyor-mu · universitede-ilk-hafta-ders-kaydi-muafiyet-kayit-dondurma · yks-2027-takvimi · rehber-ogretmenler-icin-veri-kaynaklari · bolumumu-sevmedim-hangi-kapilar-var İki canlı yazı düzeltildi: - veliler-icin-tercih-rehberi: veli diliyle kapanış; altındaki "sıralamanı gir" kutusu artık veliye ölü uç değil - bos-kontenjanlar-ne-anlatiyor: "birkaç yüz kişilik fark" aslında ~9 bin (ÖSYM 265.356 ↔ bizim 256.532); payda açıklaması tersti — ek kontenjan paydaya girseydi oran düşerdi. guncelleme alanı eklendi (sitemap lastmod). Kurallar (AGENTS.md): - Yayın sonrası arama motoru bildirimi: URL denetimi yalnız canlıda 200 dönen adrese; kota sayacı; mülk/hesap notu; sitemap grep kuralı - Yıkıcı git komutları yasak: reset/checkout --/restore/clean/stash - Tarayıcı açma: tasarımcı ve UX gerekli gördüğünde açabilir (yetenek için .claude/agents/tasarimci.md'ye tarayıcı araçları eklendi) docs/gece-vardiyasi/2026-09-22/ — 34 rapor: CEO kararları ve kapanış turu, marka/ödeme analizi, sıfır ödeme teşhisi, SEO konu planı, veri kalitesi, editör denetimi, CTO şartnamesi, yazılımcı ve güvenlik raporları, SABAH-OZETI. docs/ekip/YAYIN-KUYRUGU.md — Search Console bildirim kuyruğu. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
12 KiB
37 — Yazılımcı: navbar taşması + G1 harita/metin düzeltmesi
Tarih: 22 Eylül 2026 · Rol: yazilimci · Şartname: 36-tasarimci-g1-ve-navbar.md
İşaret: [D] koşarak doğruladım · [Ç] koddan çıkarım
Özet (5 madde)
- İki dal, sırayla, ayrı ayrı commit'lendi.
duzeltme/navbar-tasmasi(1 commit,main'den) vefunnel/sonuc-ilk-ekran(mevcut dala 2 commit eklendi, geçmiş yeniden yazılmadı). Push/merge yok,main'e commit yok. - Navbar: tasarımcının Alternatif 1'i uygulandı — iki etiket span'inden hem
xlhemsmgörünürlük sınıfları kaldırıldı.aria-label'ların ikisi de zaten yerindeydi, doğrulandı; erişilebilirlik değişmedi. Alternatif 2'ye (Nasıl çalışır?) dokunulmadı. - G1 (a):
<ManuelHarita />tablonun altına alındı (silinmedi, geri getirilmedi). Yeni sıra: tadımlık → tablo → harita → sihirbaz → dipnot. Sıraya bağlı stiller yeni sıraya göre denetlendi; harita ilk çocuk olmaktan çıktığı için kendimt-16boşluğunu almak zorunda kaldı (bkz. §Sapmalar 1). - G1 (b):
tadimlik-satiri.tsxparagrafına "ilk üçü hemen açılır" eklendi; ayrı[Bilal]commit'i, dalın tepesinde. İki[Bilal]commit'inin de tek tek düşürülebilir olduğu ters yama denemesiyle doğrulandı [D]. - Doğrulama iki dalda da temiz:
next typegen✓ ·tsc --noEmit→ 0 ·pnpm lint→ 0 [D].pnpm install/pnpm buildtalimat gereği koşulmadı; tarayıcı/dev sunucusu açılmadı.
Bana ait olmayan 19 commit'lenmemiş dosyaya dokunulmadı — hiçbiri stage'lenmedi, git add -A/. kullanılmadı, dosyalar yol vererek eklendi. Yasaklı komutların (reset, checkout --, restore, clean, stash) hiçbiri koşulmadı; ters yama denemeleri bile git apply --check ile ağaca dokunmadan yapıldı.
DAL 1 — duzeltme/navbar-tasmasi
Taban: main 9bd448b. 1 commit.
| SHA | Mesaj |
|---|---|
9abfdf4 |
fix(navbar): pill etiketleri her genişlikte gizli — çakışma kapanır |
Dokunulan dosyalar (2):
src/features/kullanici/components/user-nav.tsx · src/features/liste/components/listem-butonu.tsx
Ne değişti
user-nav.tsx:59→className="hidden sm:inline lg:hidden xl:inline"→className="hidden"(span korundu, metin DOM'da amadisplay:none).listem-butonu.tsx:39→ aynı değişiklik.- Her iki yerdeki eski yorum ("lg–xl arasında metin gizli") artık yanlış olacağından yeniden yazıldı; kök neden (konteyner 1152'de kilitli,
xlyeni yer açmıyor, sağ kümenin bütçesi ~304 px) kodun yanına not düşüldü. - Kapsam dışı bırakılan:
user-nav.tsx:73'teki kredi etiketi (hidden md:inline lg:hidden) — şartname yalnız iki etiket span'ini sayıyor, dokunulmadı.
Kabul kriterleri
| Kriter | Durum | Nasıl doğrulandı |
|---|---|---|
grep -n "xl:inline|sm:inline" iki dosyada 0 sonuç |
✔ | GREP_EXIT=1 (eşleşme yok) [D] |
aria-label her iki dosyada var |
✔ | user-nav.tsx:52 aria-label="Yapay Zeka Listem" · listem-butonu.tsx:33 aria-label={\Kendi listem — ${liste.length}/${MANUEL_LISTE_MAX} program`}` [D] |
| Alternatif 2 uygulanmadı | ✔ | katalog-arama.tsx dalın diff'inde yok [D] |
| Tasarımcının hesabı (375 → 284,5/351 · 768 → 555,8/736 · 1280+ pozitif) | ✔ [Ç] | Kod değişikliği tasarımcının hesapladığı girdiyi birebir üretiyor; piksel ölçümü onun raporundan, ben ölçmedim |
Not — grep kriterini kirleten tuzak: ilk yazdığım yorum gerekçeyi anlatırken
xl:inlinedizesini literal geçiriyordu ve kabul kriteri grep'i 1 sonuç dönüyordu. Yorum, anlamı koruyarak dizeyi içermeyecek biçimde yeniden yazıldı. Kriter artık gerçekten 0.
Doğrulama çıktıları
$ pnpm exec next typegen
Generating route types...
✓ Types generated successfully
$ pnpm exec tsc --noEmit ; echo "TSC_EXIT=$?"
TSC_EXIT=0
$ pnpm lint ; echo "LINT_EXIT=$?"
> kolaytercih@0.1.0 lint
> eslint
LINT_EXIT=0
DAL 2 — funnel/sonuc-ilk-ekran
Mevcut dalın tepesine (d2e1190) 2 commit eklendi; geçmiş yeniden yazılmadı, hiçbir commit amend/rebase edilmedi.
| # | SHA | Mesaj | Dosyalar |
|---|---|---|---|
| 7 | e912665 |
fix(sonuc): harita tablonun altına alınır — hidrasyon kayması kapanır |
sonuc/page.tsx, manuel-harita.tsx, tadimlik-satiri.tsx |
| 8 | e3519a5 |
[Bilal] content(tadimlik): paragraf maskenin gerçeğini söyler |
tadimlik-satiri.tsx |
Dalın [Bilal] commit'leri: d2e1190 (6.) ve e3519a5 (8., tepe).
Dalın main'den toplam diff'i hâlâ aynı 6 dosya; yeni dosya eklenmedi.
(a) e912665 — harita tablonun altına
Yeni sıra src/app/sonuc/page.tsx içinde:
118 <TadimlikBolumu sira={sira} tur={turKey} />
124 <SonucProgramTablosu … />
131 <ManuelHarita />
135 <SonucSihirbazi … />
Gerekçe (B1) kodun yanına yorum olarak yazıldı: sunucu snapshot'ı hep boş liste döndüğü için harita yukarıdayken kayıtlı listesi olan dönüş ziyaretçisinde hidrasyondan sonra ~368 px'lik bir blok <main>'in tepesine giriyor, impact fraction ~1. Aşağıda belirince yalnızca sihirbaz + dipnot iteliyor.
Sıraya bağlı stiller — tek tek denetlendi
| Eleman | Kural | Yeni sırada durum |
|---|---|---|
tadimlik-satiri.tsx:127 <section className="mt-16 min-w-0 first:mt-0"> |
first:mt-0 |
✔ Sağlamlaştı. Harita artık üstünde olmadığı için bu <section> <main>'in ilk DOM çocuğu; kural her durumda eşleşiyor, eskiden "harita null'sa" koşuluna bağlıydı. Yorum yeni gerçeğe göre güncellendi. |
program-tablosu.tsx:175 <section className="mt-16"> |
sabit üst boşluk | ✔ Değişmedi; tadımlık render edilmediğinde (girişli kullanıcı) ilk çocuk olup mt-16 alıyor — G1 öncesindeki davranışın aynısı, bu commit'in getirdiği bir değişiklik değil. |
sihirbaz-cagri-karti.tsx:321 <section className="… mt-16 …"> |
sabit üst boşluk | ✔ Değişmedi. |
manuel-harita.tsx:74 kök <div> |
boşluğu yoktu | ⚠ Düzeltildi — bkz. Sapmalar 1. |
(b) e3519a5 — [Bilal] metin artığı
tadimlik-satiri.tsx:135 civarı:
Sıralamana uygun bir programın gerekçesi, yerleşme riski ve taban trendi — 24 tercihlik listenin her satırı bu formatta kurulur**, ilk üçü hemen açılır.**
- Sayı yazıldı, bulanıklaştırılmadı (Bilal'in seçtiği yön).
- Garanti/vaat dili yok; cümle bir şey eklemiyor, var olan iddiayı sınırlıyor.
3elle yazıldı:ACIK_SATIRsrc/lib/rapor-maske.ts:12'de ve o dosyaserver-only;tadimlik-satiri.tsxise"use client"— sabit import edilemiyor. Tek kaynak bağı kodun yanına yorum olarak iliştirildi:ACIK_SATIRdeğişirse bu cümle aynı commit'te değişmeli. [D —rapor-maske.ts:12okundu, değer 3]
[Bilal] commit'lerinin tek tek düşürülebilirliği — doğrulandı [D]
Dizilim … 2373a9a → d2e1190 [Bilal] → e912665 → e3519a5 [Bilal] olduğu için d2e1190 tepede değil; düşürme yolu git revert (yıkıcı komut yasağına da uygun olan tek yol). Ters yamanın temiz uyguladığı, çalışma ağacına dokunmadan sınandı:
$ git show d2e1190 | git apply --check --reverse - → EVET (temiz ters yama)
$ git show e3519a5 | git apply --check --reverse - → EVET (temiz ters yama)
Hunk'lar birbirinden uzak ve kesişmiyor: d2e1190 → satır 188 ve 202 (CTA metni), e3519a5 → satır 133-142 (paragraf). Aralarındaki e912665 ise 123-127 (yorum) bölgesine dokunuyor.
Ana commit'ler [Bilal] commit'leri olmadan derlenir mi?
e912665için [D]:tscvelinttam olarak bu commit'in ağacı üzerinde koşuldu (commit'ten hemen önce), ikisi de 0.d2e1190düşürülürse: o commit yalnızca iki metin dizesini değiştiriyor (Giriş yap ve listeni oluştur→Kendi listemi oluşturve alt satıra bir cümle), hiçbir tanımlayıcıya dokunmuyor — geri alınması derlemeyi kıramaz [Ç].
Doğrulama çıktıları (dal 2, tepe commit'in ağacında)
$ pnpm exec next typegen
Generating route types...
✓ Types generated successfully
$ pnpm exec tsc --noEmit ; echo "TSC_EXIT=$?"
TSC_EXIT=0
$ pnpm lint ; echo "LINT_EXIT=$?"
> kolaytercih@0.1.0 lint
> eslint
LINT_EXIT=0
/meraklisina şeması el değmedi [D]:
$ git diff --name-only 9bd448b..HEAD | grep -E "huni-semasi|meraklisina|analitik.ts|rapor-maske|credits.ts"
(boş)
Şartnameden sapmalar (2)
manuel-harita.tsx'in kök<div>'inemt-16eklendi — şartname yalnızpage.tsx'te yer değişimi istiyordu. Gerekçe: haritanın kök öğesinin üst boşluğu yoktu, çünkü<main>'in ilk çocuğuyken boşluğumain'inpy-12'sinden alıyordu. Tablonun altına taşınınca tabloya yapışık kalacaktı; sayfadaki diğer bölümlerin hepsimt-16kullanıyor (tablo<section>'ı, sihirbaz kartları, tadımlık). Bu bir ritim düzeltmesi, davranış değişikliği değil. Dosya zaten G1'in sahiplik kümesinde. Gözle kontrol edilmeli (aşağı, Bilal'den istenen 1).- İki commit'te yorum güncellemeleri —
tadimlik-satiri.tsx:123'tekifirst:mt-0yorumu haritanın üstte olduğunu varsayıyordu,page.tsx'teki hiyerarşi yorumu da eski sırayı anlatıyordu. İkisi de yeni sıraya göre yeniden yazıldı; kod değil belge düzeltmesi, ama diff'e giriyor.
Kapsam dışı bırakılanlar (bilerek)
- B3 (Suspense fallback
max-w-6xl↔ içerikmax-w-4xl, 256 px genişlik farkı) —sonuc/page.tsx:47. Bu işin parçası değil, dokunulmadı. Aynı dosyada duruyor; A3 (/sonuc<h1>) dalıyla birlikte gitmesi ucuz olur. - B4 ("Giriş sonrası liste hemen üretilir" kredisiz kullanıcıda tutmuyor) —
tadimlik-satiri.tsx:188-189, yanid2e1190'ın kendi hunk'ı. Dokunmadım; düzeltilecekse o[Bilal]commit'iyle birlikte ele alınmalı. - Navbar'daki küçük bulgular (kredi link'inin erişilebilir adının salt "12" olması, <640 px'te 36 px dokunma hedefi) — şartname bunları istemedi.
- Alternatif 2 (
Nasıl çalışır?gizleme) — Bilal A'yı seçti.
Merge sonrası doğrulanması gerekenler
pnpm buildiki dalda da alınmadı (disk talimatı). Push edilecek commit'in kendisi üzerinde alınmalı — çalışma ağacı kirli olduğu için buradaki bir build zaten yanıltıcı olurdu (AGENTS.md "Push öncesi build zorunlu").- Navbar, girişli oturumda 375 / 768 / 1280 px — header tek satıra indi mi, pill'ler ikon+rozet hâliyle tanınabiliyor mu. Tasarımcının hesabı bunu söylüyor ama ölçüm hesapla yapıldı, gözle değil.
- Ekran okuyucuyla iki pill — etiket artık yalnız
aria-label'dan geliyor; VoiceOver/NVDA'da "Yapay Zeka Listem, bağlantı" ve "Kendi listem — 3/24 program, düğme" duyuluyor mu. /sonuc, kayıtlı manuel listesi olan oturumda — harita hidrasyonda tablonun altında belirip üstündeki hiçbir şeyi itmiyor mu (B1'in asıl testi), ve tabloyla arasındakimt-16boşluğu doğru duruyor mu.- Analitik serisi —
tadimlik_goruntulendiiçin 32 numaralı raporun uyarısı geçerliliğini koruyor; tadımlık hâlâ ilk ekranda, bu commit'ler paydayı değiştirmedi.
guvenlik-uyum denetimi gerekmiyor: iki dalda da para, giriş kimlik doğrulaması ya da kişisel veri akışına dokunulmadı — değişenler yerleşim sırası, iki CSS sınıfı ve bir cümle.
Bilal'den istenen (3 madde)
manuel-harita.tsx'e eklediğimmt-16'yı gözle onayla — harita artık tablonun hemen altında, aradaki boşluk diğer bölümlerle aynı ritimde mi, yoksa fazla/az mı? ~2 dk.e3519a5([Bilal] content(tadimlik): paragraf maskenin gerçeğini söyler) onayı — "…24 tercihlik listenin her satırı bu formatta kurulur, ilk üçü hemen açılır." senin dilin mi? Hayırsagit revert e3519a5; altındaki hiçbir şey etkilenmez (ters yama temiz doğrulandı). ~2 dk.- Navbar'da kalan 1024–1151 px bandı — Alternatif 1 bu dar bantta profilsiz + liste dolu durumda −48 … −1 px açık bırakıyor (tasarımcının hesabı). Alternatif 2'yi (
Nasıl çalışır?yalnız ≥1280 px) isteyecek misin, yoksa bu bant kabul mü? ~3 dk.