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>
26 KiB
02 — Sevk yolları: ziyaretçiyi yapay zekâ listesine götüren yol haritası ve eleştirisi
Hazırlayan: Tasarımcı · 22 Eyl 2026 gündüz · Yöntem: koddan denetim (tarayıcı açılmadı, ekran ölçülmedi).
Sayısal kaynak: docs/ekip-raporlari/2026-09-21/03-donusum.md (Rybbit, 30g, iç trafik hariç).
Piksel/ekran tahminleri "koddan çıkarım" olarak işaretlendi; doğrulaması Bilal'de.
Sade özet (5 satır)
- "Yapay zekâ" kelimesi, ziyaretçinin ilk gördüğü ekranların hiçbirinde geçmiyor. Organik trafiğin indiği katalog sayfalarında funnel'ın tamamı (
cta-sira-form.tsxkompakt satır → çekmece → sihirbaz) ürünü "Programları gör" / "Ücretsiz tablonu gör" diye satıyor; 24'lük yapay zekâ listesinden ilk kez/sonuc'un ~3. ekranında söz ediliyor. Ziyaretçi kapılardan geçerken ardında ne olduğunu bilmiyor. - En büyük sıra kaynağı hiçbir yere gitmiyor.
sira_girildi{kaynak:kapi}30 günde 14 olayla en büyük kaynak (03-donusum §3); bu yol (+toast'ı → profil kapısı) sihirbazın 3 adımını da doldurtuyor, sonraprofilTamamlandinulldöndürüyor (use-tercih-profili.ts:346) ve kullanıcı "Tercihlerin kaydedildi." toast'ıyla kataloğda kalıyor. Liste için gereken her şey toplandı, liste teklif edilmedi. - Ürünün tek gerçek değer önizlemesi ölü bölgede.
TadimlikSatiri(gerçek LLM gerekçesi + risk + trend) yalnızca/sonuc'ta, 60 satırlık tablonun altında render ediliyor (sonuc/page.tsx:117);tadimlik_goruntulendi30 günde 0. Ana sayfada, katalogda, rehberde listenin çıktısı hiç gösterilmiyor — 3 kutu metin ve bir karşılaştırma tablosu var. /sonucödül sayfası olarak kurulmamış. Sihirbazı bitiren kullanıcının gördüğü ilk şey, hiç kullanmadığı manuel listenin boş gri placeholder'ı (manuel-harita.tsx:71-79); yapay zekâ paneli ~3–4 ekran aşağıda (koddan çıkarım). Ölçüm bunu doğruluyor: panel 17 anonimin 6'sına göründü, 0 tık.- Kapı sayısı fazla değil, kapıların sırası ve sessizliği sorun. Girişsiz kullanıcı için listeye giden en kısa yol 4 kapı / 7 ekran / ~9 tık; kapılardan ikisi (sihirbaz, giriş) meşru, ama ikisi de ne kazandıracağı söylenmeden açılıyor.
1. Yol envanteri — listeye ulaşan her yol
Ortak kısaltma: S = sihirbaz (3 adım: alan → il → devlet/vakıf, sihirbaz-adimlar.tsx:276, 296, 434).
Kapılar: K1 sıra girme · K2 sihirbaz · K3 Google girişi · K4 kredi (üretim 3 kredi, yeni hesapta 5 deneme kredisi).
Yol A — Ana sayfa (30g: 67 oturum → 11 sıra, %16,4; en iyi dönüşen yol)
| # | Ekran | Ne yapılıyor | Dosya |
|---|---|---|---|
| 1 | / hero |
puan türü çipi + sıralama + "Yapay Zeka listemi kur" | app/page.tsx:244 → hero-form.tsx:188-196 |
| 2–4 | Dialog (S) | 3 adım, son buton girişsizde "Ücretsiz tablonu gör" | hero-form.tsx:209-228, etiket :222 |
| 5 | /sonuc?hazir=1 |
harita placeholder → tablo → tadımlık → hazır panel | hero-form.tsx:104, sonuc/page.tsx:102-126 |
| 6 | /giris?callback=/listem?uret=1 |
sihirbaz-cagri-karti.tsx:245 |
|
| 7 | /listem?uret=1 |
üretim (~20 sn tipik, 60 sn sunucu sınırı) | liste-uretici.tsx:42-45 |
7 ekran · ~9 tık · 4 kapı. Girişli kullanıcıda 5. ekran boşa gider: /sonuc tam tabloyu render eder, sonra router.replace("/listem?uret=1") ile sekilir (sihirbaz-cagri-karti.tsx:209-219).
Yol B — /universite/[slug] ve /bolum/[slug] üst kompakt satır (30g: 464 oturum → 12 sıra, %2,6)
- Kompakt satır: başlık + özet paragrafının altında, tablo/istatistik ızgarasının üstünde (
universite-icerik.tsx:180, 290, 352;bolum-icerik.tsx:267). CTA: "Programları gör" (cta-sira-form.tsx:254). - Gönderince çekmece doğrudan sihirbaz adımıyla açılır (
cta-sira-form.tsx:145-148); kompakt varyantta çekmecenin tanıtım/kanıt ekranı (SectionEyebrow "Saniyede gör"+ "24 tercihlik plan / Risk analizi / YÖK Atlas verisi" üçlüsü) hiç render edilmez — koşul!kompakt && adim === "sira"(:296). - S 3 adım → "Ücretsiz tablonu gör" (
:334) →/sonuc?hazir=1(:172) → Yol A'nın 5–7. adımları.
8 ekran · ~9 tık · 4 kapı. Bu yolda ziyaretçi "yapay zekâ", "24 tercih", "risk analizi" ifadelerinin hiçbirini görmez (grep: src/features/katalog/components/*.tsx + kompakt dal → 0 eşleşme).
Yol C — Katalog alt kartı (tablonun ve sayfalamanın altı)
universite-icerik.tsx:381, bolum-icerik.tsx:297. Kart varyantı: başlık + KATALOG_CTA_ACIKLAMA (sayfalama.tsx:40) + "Sıralamanı gir, programları gör" → çekmecenin sıra adımı açılır (kanıt üçlüsü burada görünür) → S → /sonuc. 9 ekran, üstteki satırdan 1 tık fazla. 30g'de 20 satır/dilim × 3 dilim tablonun altında; mobilde ~1.500 px aşağıda (koddan çıkarım).
Yol D — + (tabloya program ekleme) kapısı — 30g'deki en büyük sıra kaynağı: 14 olay
- Tablodaki
+(program-ekle-butonu.tsx:105,size-11— dokunma hedefi doğru). - Profilsiz eklemede toast: "Seçtiklerine eklendi · Sıralamanı girersen bu programın risk seviyesini de gösteririz." + aksiyon "Sıralamamı gir" (
:69-83). - Aksiyon
profilToplamaAc(null, true, "arti_toast")→ kapı sıra adımıyla açılır → S 3 adım. hedef = null→profilTamamlandinulldöndürür → yönlendirme yok (use-tercih-profili.ts:327-346). Kullanıcı "Tercihlerin kaydedildi." toast'ıyla (tercih-profili-kapisi.tsx:238) kataloğa geri düşer.
Sonuç: 4 ekran, 2 kapı geçildi, liste teklif edilmedi. Aynı ölü uç manuel liste çekmecesindeki "Sıralamamı gir" butonunda da var (liste-cekmecesi.tsx:296-298, aynı çağrı).
Yol E — Navbar "Sıralama gir" (mobilde kalıcı, sticky 2. satır)
katalog-arama.tsx:366 (mobil) / :302 (lg+) → sonucaGitIste({dogrudanSira:true}) → kapı (tanıtım adımı atlanır, doğru) → S → hedef="sonuc" → sonucHref() parametresiz. /sonuc'ta hazir=1 olmadığı için hazır panel yerine genel panel ("24 tercihi tek tek elemek yerine, yapay zekâ kursun", sihirbaz-cagri-karti.tsx:312-336) çıkar — o da sayfanın en altında. 6 ekran · 3 kapı.
Yol F — Arama modalındaki funnel kartı
arama-funnel-karti.tsx:132-139 → "Yapay Zeka listemi kur" → profilToplamaAc("sihirbaz") → kapı → S → /sonuc?hazir=1 (girişsiz) / ?sihirbaz=1 (girişli). Niyeti doğru taşıyan tek kısayol — ama arama modalının arkasında, mobilde size-9 ikon butonla açılıyor (katalog-arama.tsx:379-386).
Yol G — Rehber (30g: 73 oturum → 5 sıra; %86 tek sayfa)
rehber-makale.tsx:115 — CTA kartı makalenin tamamının altında (mt-12), rehber/page.tsx:45 liste sayfasının altında. Yazı içinde funnel girişi yok.
Yol H — /listem doğrudan (boş durum)
/listem giriş duvarlı (listem-icerik.tsx:43 verifySession). Girişli + raporsuz kullanıcı: Sparkles + "Henüz Yapay Zeka listen yok" + profil yoksa CTA ana sayfaya atar (listem-bos-cta.tsx:30, href="/") → kullanıcı Yol A'nın 1. adımına döner. Profil varsa doğrudan ?uret=1 — bu dal doğru.
Yol I — /universite/*/sayfa/N (30g: 56 oturum → 0 sıra)
Üst satır burada da var (universite-icerik.tsx:352), ama sayfa metni "tablonun N. sayfası" bağlam cümlesi; listeye dair hiçbir vaat yok.
2. Her kapının hesabı
| Kapı | Şu anda gerekli mi? | Ardında ne olduğu ekranda söyleniyor mu? | Karar |
|---|---|---|---|
| K1 · Sıra girme | Evet — tablo da, havuz da sıralamayla hesaplanıyor (liste-queries.ts). Doğru kapı, doğru yerde. |
Kısmen. Kompakt satır "Sıralaman {X} tabanlarının neresinde? Ücretsiz, üyelik gerekmez." diyor (cta-sira-form.tsx:354-362) — tabloyu vaat ediyor, listeyi değil. |
Kalsın, vaadi büyüt. |
| K2 · Sihirbaz (3 adım) | Evet — havuzu kuran girdi (bkz. /meraklisina şeması, huni-semasi.tsx:16-19). Adım başına kayıp 1–3 kişi; sihirbazın kendisi sağlıklı. |
Hayır. Girişsizde son buton "Ücretsiz tablonu gör" (cta-sira-form.tsx:334, hero-form.tsx:222). Kullanıcı 3 adım doldurup "tablo" vaat ediliyor; yapay zekâ listesinden söz eden tek yer girişlilere gösterilen "(3 kredi)" etiketi. |
Kalsın, etiket vaadi söylesin. |
| K3 · Google girişi | Evet (liste kullanıcıya bağlı, kredi sayacı hesapta). 6/6 deneme başarılı — mekanizma sorunu yok. | Evet, iyi: /giris funnel dalında "Seçimlerin hazır — giriş yap, 5 deneme kredinle listen hemen üretilsin" (giris-karti.tsx:52-58). Kapının kendisi iyi; sorun oraya davet eden panelin görünmemesi. |
Kalsın. |
| K4 · Kredi (3/5) | Evet ve zararsız: yeni hesapta 5 kredi var, ilk liste ücretsiz. | Kısmen — "5 deneme kredin hazır" yalnızca /sonuc panelinde ve /giris'te. Katalog yolunda hiç geçmiyor. |
Kalsın. |
| K0 · Profil kapısının tanıtım adımı | Hayır. + dışındaki tüm girişler dogrudanSira ile bu adımı zaten atlıyor. Kalan dalda ekran şu: "Tercihine ışık tutabilmemiz için önce ne istediğini öğrenelim" + 4 satır paragraf + Vazgeç / Tercihlerimi belirle (tercih-profili-kapisi.tsx:297-338). Hiçbir girdi toplamıyor. |
— | Kaldırılabilir (bkz. Öneri 1 notu). |
Özet: Gereksiz kapı yok; gerekçesiz kapı var. Kullanıcı K1 ve K2'yi "tablo görmek için" geçiyor, K3'e geldiğinde ilk kez yapay zekâ listesini duyuyor — ve o an sayfanın 3. ekranında.
3. Katalog köprüsü — 992a01a sonrası hâl yeterli mi?
Yetersiz, üç sebeple.
- Konum. Satır, h1'in değil, 8–9 satırlık SEO özet paragrafının altında (
universite-icerik.tsx:287-290). 375 px'te üst uç ≈ 570 px, gönder butonu ≈ 840 px (koddan çıkarım: sticky başlık ~96 px + breadcrumb ~36 + logo/h1 bloğu ~144 + paragraf 8×28 ≈ 224 +mt-6). Yani buton ikinci ekranda./bolumtarafında paragraf kısa (2 satır), satır ilk ekranda (bolum-icerik.tsx:265-268) — iki sayfa aynı davranmıyor. - "Kompakt" yalnızca
lg'de kompakt.flex-col gap-3 lg:flex-row(cta-sira-form.tsx:195) ve input/butonflex-col sm:flex-row(:227). 375 px'te: 5 puan türü çipi 2 satıra sarar (~66 px) + input 48 + buton 48 + başlık 2–3 satır → ~270 px, yani mobilde tek satır değil, bir blok. Mobilin %74'ü tek sayfada çıkıyor; bu blok tek ekrana sığmıyor. - Vaat eksik. Kompakt dal kanıt üçlüsünü ve "Saniyede gör" eyebrow'unu render etmiyor (
:296koşulu). Ziyaretçiye "tabloda nerede olduğunu göster" deniyor; ürünün kendisi (24'lük liste) anlatılmıyor.docs/tasarim/cta-cekmece-tasarimi.md§1'deki "kart vaat eder → çekmece tahsil eder" algısı kompakt varyantta vaat kısmı düşerek uygulanmış.
4. /sonuc ve /listem — sihirbazı bitiren ne görüyor?
/sonuc sırası (sonuc/page.tsx:102-126): ManuelHarita → SonucProgramTablosu → TadimlikBolumu → SonucSihirbazi → dipnot.
- İlk ekran boş bir kutu. Manuel liste boşken (yeni gelen herkeste boş)
aspect-[1050/447]gri alan + "Tablodan + ile ekledikçe üniversiteler haritada belirir." (manuel-harita.tsx:71-79). 375 px'te ~143 px. Ödül sayfasının en üstünde, kullanıcının hiç kullanmadığı bir özelliğin boş durumu duruyor. - Tablo uzun. Dilim başına 20 satır (
liste-queries.ts:43), satır ~64 px → ~1.280 px (koddan çıkarım). - Tadımlık ~1.500 px'te, yapay zekâ paneli ~2.200 px'te (≈ 3,5 ekran). Ölçümle tutarlı: panel 17 anonimin 6'sına göründü,
tadimlik_goruntulendi= 0. - "Kaç saniyede geliyor" hiçbir yerde yazmıyor. Süre bilgisi yalnızca üretim başladıktan sonra,
/listem'de görünüyor: "Bu işlem yarım dakika kadar sürebilir, sayfayı kapatma." (liste-uretici.tsx:271). Karar anında (panel, sihirbaz son butonu) süre vaadi yok. - Panel metni uzun. 3 cümlelik tek paragraf + parantez içi kredi açıklaması (
sihirbaz-cagri-karti.tsx:286-291); 375 px'te ~8 satır.
/listem boş ekranı bir ilk kullanıcıya: giriş duvarının arkasında olduğu için ilk kullanıcı buraya ancak giriş yaptıktan sonra düşer. Gördüğü: Sparkles + "Henüz Yapay Zeka listen yok" + tek paragraf + tek buton. Profil yoksa buton ana sayfaya atıyor (listem-bos-cta.tsx:30) — kullanıcı sıfır noktasına döner. Ekranda ne alacağını gösteren hiçbir görsel yok (örnek satır, iskelet, ekran görüntüsü).
5. Değer önizlemesi — üretmeden önce ne gösteriliyor?
| Yüzey | Önizleme var mı? |
|---|---|
| Ana sayfa | Yok. Bölümler: Sorun / Nasıl çalışır (3 metin kartı) / Karşılaştırma tablosu / Fiyat / SSS / final CTA (app/page.tsx:267-660). Listenin çıktısından tek bir satır bile gösterilmiyor. |
Katalog (/bolum, /universite) |
Yok. |
| Rehber | Yok. |
/meraklisina |
Kurallar + mermaid şeması + kendi sıralamasına göre güncellenen sayılar (meraklisina-demo.tsx:105-130) — süreç anlatımı, çıktı değil. |
/sonuc |
Var ama görülmüyor: TadimlikSatiri gerçek rapor formatında tek satır (gerekçe + risk rozeti + trend, tadimlik-satiri.tsx:113-191). tadimlik_goruntulendi 30g = 0. |
Önemli teknik imkân: tadimlikSec(sira, tur, kategoriSlug?, tip?) (lib/tadimlik-havuzu.ts:107) kovaya göre çalışıyor ve her kovanın temsiliSira değeri sabit (:24-32). Yani ziyaretçinin sıralamasını bilmeden de ("örnek bir aday için" etiketiyle) gerçek bir tadımlık satırı render edilebilir; havuz canlıda dolu (522 satır). Yeni içerik üretimi, yeni LLM çağrısı, yeni bileşen gerekmiyor — mevcut TadimlikSatiri başka yüzeylere taşınabilir.
6. Tasarım önerileri (6)
Ortak kural: hiçbir öneri yeni rozet/pill/çarpı/buton varyantı icat etmez. Rozet gerekirse
SectionEyebrow(pixel-decor.tsx), CTA'da metin önce + sonda<ArrowRight className="size-4" aria-hidden />, çekmece/modal kapatma çarpısıdialog.tsxkanonik seti./meraklisinaşeması (huni-semasi.tsx:16-30) sihirbaz adım sayısını/sırasını ve havuz kurallarını belgeler; aşağıdaki önerilerin hiçbiri adım sayısını, sırasını, havuz kurallarını veya 24'lük dağılımı değiştirmiyor → şema senkronu gerekmiyor (Öneri 1'de yalnızca sihirbaz sonrası yönlendirme değişiyor, şemada o yok).
Ö1 — Kapı azaltma: sihirbazı bitiren herkes listeye çıksın (ölü uçları kapat)
(a) Ne değişiyor: + toast'ındaki "Sıralamamı gir" (program-ekle-butonu.tsx:82) ve liste çekmecesindeki eşi (liste-cekmecesi.tsx:298) profilToplamaAc(null, …) yerine profilToplamaAc("sihirbaz", …) çağırsın; navbar girişi (katalog-arama.tsx:115, sonucaGitIste → hedef:"sonuc") de "sihirbaz" hedefine geçsin. Ayrıca profilTamamlandi'nin hedef == null dalı (use-tercih-profili.ts:346) sonucHref({ hazir: "1" }) döndürsün — sihirbazı bitirmiş hiç kimse "kaydedildi" toast'ıyla yerinde bırakılmasın. tercih-profili-kapisi.tsx:238'deki başarı toast'ı bu dalda gereksizleşir (akış devam ediyor, bitmiyor).
(b) Neden: 30g'de en büyük sıra kaynağı kapi (14 olay) ve duzenle (5) bu ölü uçta bitiyor; ikisi birlikte tüm sıra girişlerinin ~%55'i. Kullanıcı K1 ve K2'yi geçmiş, tek eksik ona listeyi teklif etmek. Bu, liste yolunu 3 ekran kısaltır (kataloğa dönüp tekrar funnel'a girmek yerine doğrudan ödül ekranı).
(c) Büyüklük: S (davranış; src/ içinde 4–5 satır).
(d) Kural uyumu: görsel değişiklik yok; şema etkilenmez. Ölçüm: sira_girildi{kaynak:kapi} → sonuc_goruntulendi zinciri ilk kez kurulur.
Not (ayrı, opsiyonel): profil kapısının tanıtım adımı (tercih-profili-kapisi.tsx:297-338) hiçbir girdi toplamıyor ve dogrudanSira ile zaten çoğu yolda atlanıyor. ilkAdim'ı her zaman "sira" yapmak bir ekran daha siler. S.
Ö2 — Mobil tek ekran: katalog üst satırı başlığın altına, gerçekten tek satıra
(a) Ne değişiyor: /universite/[slug]'da ustSiraSatiri SEO özet paragrafının üstüne, h1'in hemen altına alınsın (universite-icerik.tsx:287-290 → :285 öncesi; /bolum zaten böyle). Kompakt varyantın mobil düzeni: (i) puan türü çipleri varsayılan "Sayısal" seçili tek satırda yatay kaydırmalı şeride (flex-nowrap overflow-x-auto + -mx-4 px-4) alınsın ya da başlangıçta gizlenip "Puan türü: Sayısal · değiştir" satırıyla açılsın; (ii) input + buton mobilde de yan yana (flex-row, buton shrink-0, yalnız ikon değil kısa metin: "Gör"→hayır, metin "Programları gör" kalsın, gerekirse buton alt satırda tam genişlik kalsın ama çipler tek satıra insin). Hedef: bloğun toplam yüksekliği ~270 px'ten ~150 px'e insin ve üst uç ~380 px'e çıksın → 375×667'de input + buton ilk ekranda.
(b) Neden: Katalog 464 oturum → 12 sıra (%2,6); mobil bounce %74. 992a01a satırı yukarı taşıdı ama /universite'de paragrafın altında ve mobilde tek satır değil (bkz. §3).
(c) Büyüklük: M.
(d) Kural uyumu: mevcut çip class seti (hero formuyla birebir) korunur; CTA deseni değişmez; yeni pill yok. Yatay kaydırmalı şeride geçilirse kaydırma göstergesi metinle desteklenmeli, çipler role="radio" kalmalı.
Ö3 — Değer önizlemesi kapıdan önce: tadımlık satırını kataloğa ve ana sayfaya taşı
(a) Ne değişiyor: Mevcut TadimlikSatiri bileşeni (yeni bileşen değil) iki yeni yerde render edilsin:
· Katalog: üst sıra satırının hemen altında, SectionEyebrow'u "Yapay zekâdan örnek satır" olarak, üstünde tek cümle: "Sıralamanı girince listendeki 24 satır böyle görünür." Sıra bilinmiyorsa kovaBul().temsiliSira ile "örnek bir aday için" etiketli hâli (tadimlik-havuzu.ts:24-32, 107); bölüm sayfasında bölümün kategorisi kategoriSlug olarak verilebilir.
· Ana sayfa: "Nasıl çalışır?" bölümünün 3 kartının altına, steps metinlerinin karşılığı olarak tek gerçek satır (app/page.tsx:340-358 sonrası).
Çekmecenin sıra adımındaki kanıt üçlüsü kompakt dalda da gösterilsin (cta-sira-form.tsx:296 koşulunun kompakt dalı).
(b) Neden: Ürünün çıktısı hiçbir yerde üretilmeden önce gösterilmiyor (§5); tek örnek /sonuc'un dibinde ve 30 günde 0 kez görüldü. "Bu kapının ardında ne var?" sorusunun cevabı budur.
(c) Büyüklük: M (yerleştirme + sırasız/kova varyantı; içerik hattı hazır).
(d) Kural uyumu: SectionEyebrow kanonik rozet; risk rozeti zaten metin etiketli (RISK_ETIKET, lib/risk.ts:9) — renk tek başına anlam taşımıyor. Tadımlık CTA'sı mevcut ok desenini kullanıyor (tadimlik-satiri.tsx:186-188).
Ö4 — /sonuc'u ödül sayfası yap: sıralamayı tersine çevir
(a) Ne değişiyor: sonuc/page.tsx:102-126 sırası şu olsun: (1) kısa ödül başlığı + yapay zekâ paneli (hazır panel / genel panel) → (2) tadımlık (girişsizde) → (3) program tablosu → (4) manuel harita, ve harita boşken hiç render edilmesin (manuel-harita.tsx:69-80 boş dalı null dönsün; CLS riski yok çünkü tablonun üstünde değil altında). Panel metni 3 cümleden 1 cümleye insin: başlık "Seçimlerin hazır — listen bir adım uzakta", gövde "Google ile 5 saniyede giriş yap; 5 deneme kredinle 24 tercihlik listen ~30 saniyede kurulur." (süre ilk kez karar anında söylenir, kaynak liste-uretici.tsx:42-44).
(b) Neden: Anonim kullanıcı /sonuc'ta medyan 33 sn kalıyor ve panele inmiyor; panel 6/17 gösterim, 0 tık. Ödül sayfasının ilk ekranı şu an kullanılmamış bir özelliğin boş durumu.
(c) Büyüklük: M.
(d) Kural uyumu: panel bileşeni ve CTA deseni aynen kalır; yalnız sıra ve metin değişir. "Ücretsiz tablo her zaman açık" güvencesi panelde tek cümleyle korunmalı (vaatsizlik).
Ö5 — /sonuc mobil sabit alt çubuk (anonim + seçimleri hazır)
(a) Ne değişiyor: Yeni bileşen değil: sihirbaz-cagri-karti.tsx'in girisBekliyor dalına, yalnız max-sm'de görünen sticky bir satır. İçerik: "Listeni kaybetme — Google ile kaydet" + <ArrowRight className="size-4" aria-hidden />, hedef girisUrl, olay giris_cta_tiklandi{kaynak:"sonuc_cubuk"}. Teknik gereklilikler: position: sticky; bottom: 0 (fixed değil — klavye açılınca zıplamasın), yükseklik ≥ 56 px, pb-[max(0.75rem,env(safe-area-inset-bottom))], sayfa altına eşdeğer scroll-padding/boşluk ki dipnot çubuğun altında kalmasın, prefers-reduced-motion'da giriş animasyonu yok.
(b) Neden: Panel mobilde 3,5 ekran aşağıda; anonim mobil oturumların medyan kalış süresi 33 sn. Çubuk görünürlüğü %100'e çıkarır.
(c) Büyüklük: S–M.
(d) Kural uyumu: CTA deseni (metin önce, sonda ok) birebir; yeni renk/pill yok; layout'taki pb-28 (app/layout.tsx:95) ile çakışma kontrol edilmeli.
Ö6 — Dil birliği: kapının ardındaki ödülü her etikette söyle
(a) Ne değişiyor: Üç etiket:
· Sihirbaz son butonu, girişsiz: "Ücretsiz tablonu gör" → "Listeme geç — ücretsiz tablon + yapay zekâ listen" ya da kısa hâli "Devam et — listeni gör" (cta-sira-form.tsx:334, hero-form.tsx:222, sihirbaz-cagri-karti.tsx:348).
· Kompakt satır başlığı: "Sıralaman {X} tabanlarının neresinde?" + "Ücretsiz, üyelik gerekmez" cümlesine ikinci cümle: "Sıralamanı girince yapay zekâ 24 tercihlik listeni de kurabilir." (cta-sira-form.tsx:354-362).
· /listem boş durumda profil yokken CTA ana sayfaya atmasın; aynı sayfada profil kapısını açsın (profilToplamaAc("sihirbaz")) — listem-bos-cta.tsx:30.
(b) Neden: Kullanıcı "tablo" vaadiyle 3 kapı geçiyor, ürünü /sonuc'un dibinde öğreniyor (§2). Boş /listem CTA'sı kullanıcıyı huninin başına geri atıyor.
(c) Büyüklük: S.
(d) Kural uyumu: yalnız metin + bir href; CTA ok deseni korunur. Yeni metinler vaat içermez ("kurabilir", "gör" — "yerleşirsin" değil).
7. Yan bulgular — tek kaynak / erişilebilirlik ihlalleri (öneri dışı, ucuz)
| Dosya:satır | Kural / sorun | Kullanıcıya etkisi | Düzeltme | Büyüklük |
|---|---|---|---|---|
sihirbaz-cagri-karti.tsx:269 |
AGENTS.md CTA deseni: <Link href="/listem">Listeni gör</Link> — sondaki ArrowRight yok |
Raporu olan kullanıcının gördüğü tek CTA sitedeki diğerlerinden farklı duruyor | Listeni gör<ArrowRight className="size-4" aria-hidden /> |
S |
sira-gerekli.tsx:61-62 |
CTA deseni: Trophy ikonu metnin başında ("başta ikon yok") |
Aynı eylem iki farklı biçimde | İkonu kaldır, sonda ArrowRight |
S |
liste-uretici.tsx:220-221 |
CTA deseni: RefreshCcw metnin başında ("Tekrar dene") |
Hata ekranındaki tek buton desen dışı | İkon sona ya da kaldırılsın | S |
liste-cekmecesi.tsx:297, 307 |
<ArrowRight data-icon="inline-end" /> — aria-hidden yok, kanonik className="size-4" aria-hidden değil (listem-govde.tsx:290,371 aynı yazım ama aria-hidden'lı) |
Aynı ok üç farklı yazımda | Tek yazıma indir | S |
tercih-profili-kapisi.tsx:393-398 |
Aynı eleman iki stilde: puan türü burada Select, hero/CTA formunda role="radiogroup" çipler (hero-form.tsx:143-164, cta-sira-form.tsx:199-220) |
Kullanıcı aynı soruyu iki farklı arayüzle cevaplıyor | Çip radiogroup'a birle (tek kaynak) | M |
katalog-arama.tsx:343, 366, 379 |
Mobilde funnel'ın kalıcı girişi h-9 / size-9 = 36 px dokunma hedefi (< 44 px) |
Trafiğin %90'ı mobil; ana funnel girişi ve arama küçük | h-11/size-11'e çıkar (ya da dokunma alanını ::before ile büyüt) |
S |
arama-funnel-karti.tsx:28, 42 |
Vaat/korku dili: "Doğru strateji, doğru yerleşme.", "Boş kalan tercih, kaçan fırsattır." — ürünün "yerleşme garantisi vermiyoruz" duruşuyla (app/page.tsx:393) çelişiyor |
Güven mesajını zayıflatıyor | İki satırı çıkar ya da yeniden yaz | S |
arama-funnel-karti.tsx:105, 125 |
Palet dışı yüzey: bg-[#0b1f3a] + text-cyan-300; sitenin funnel yüzeyi bg-primary + PixelField (sihirbaz-cagri-karti.tsx:275, liste-cekmecesi.tsx:269) |
Aynı işlevli panel iki ayrı marka dilinde | [BİLAL] — renk paleti kararı | S |
arama-funnel-karti.tsx:63 vs cta-sira-form.tsx:49 |
Aynı kanıt üçlüsü iki farklı etiketle ("24 tercih" / "24 tercihlik plan") ve iki renkte | Küçük ama ölçülebilir tutarsızlık | Tek sabit hâline getir | S |
8. Bilal'in gözle kontrol etmesi gereken ekranlar (375 px, mobil)
/universite/<uzun-adli-bir-üniversite>— kompakt sıra satırının üst ucu ilk ekranda mı, gönder butonu görünüyor mu; çipler kaç satıra sarıyor./bolum/hemsirelik— aynı satır (burada paragraf kısa; iki sayfa arasındaki fark ne kadar büyük)./sonuc(sıralama girmiş, girişsiz) — ilk ekranda boş gri harita kutusu görünüyor mu; yapay zekâ paneline kaç kaydırma gerekiyor; tadımlık görünüyor mu.- Katalog tablosunda
+→ toast → "Sıralamamı gir" → sihirbazı sonuna kadar doldur — ekran nerede kalıyor (Ö1'in kanıtı). - Navbar'daki "Sıralama gir" pill'i — parmakla ilk denemede isabet ediyor mu (36 px).
/listem(girişli, listesiz) — boş ekran ve CTA'nın gittiği yer.
9. Bilal'den istenen (en fazla 3)
- Yukarıdaki 6 ekranı telefonda sırayla aç, 3 ve 4 numaralıların ekran görüntüsünü ekibe bırak — 10 dk.
- Ö1'i (sihirbazı bitiren herkes
/sonuc'a çıksın) onayla ya da reddet; en büyük sıra kaynağını huniye bağlayan tek değişiklik bu — 2 dk. - Arama funnel kartının koyu lacivert/cyan yüzeyi kalsın mı,
bg-primaryfunnel diline mi dönsün — marka kararı — 2 dk.