Kabul kriterleri 6/6, atıf şartının karşılandığı yerler, şartnameden 4 sapma ve P2 ile merge kesişmesi. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
9.3 KiB
10 · P3 — URAP tek sayı: "Tür" kartıyla takas
Rol: yazilimci · Dal: gece/0922-urap · Tarih: 23 Eylül 2026
Commit'ler: 68cb69e (veri sabiti), 4932671 (okuma katmanı + kart takası + kaynak satırı + veri-kalite), <bu rapor>
Özet (5 madde)
src/lib/urap-siralama.tseklendi: 198 üniversitenin URAP Türkiye 2025-2026 sırası,/universite/[slug]slug'ına anahtarlı sabit +URAP_KAYNAK_URL,URAP_DONEM,URAP_TOPLAM+urapSirasiBul(). Yeni DB dosyası, göç, cron, çekme betiği yok.- Üniversite sayfası metrik ızgarasında takas yapıldı: URAP'ta olan üniversitede "Tür" kartının yerini URAP TÜRKİYE · 18 / 198 · 2025-2026 alıyor; olmayan 31 kurumda "Tür" yerinde duruyor. Kart sayısı 4'te kaldı,
lgızgara şablonu değişmedi, yeni bileşen icat edilmedi. - Tablonun altına ayrı ikinci kaynak satırı eklendi;
VeriKaynagikullanılmadı ve kopyalanmadı. Satırda dönem, payda, metodoloji uyarısı veurapcenter.org'a gerçek<a href>var (rel="noopener", yeni sekme, nofollow yok, adres sabitten). scripts/veri-kalite.ts'e dosyanın en sonuna 5 URAP kontrolü eklendi (mevcut satırlar yeniden düzenlenmedi;main()içine yalnız tek satırlık çağrı girdi). Beşi de geçiyor: 198/198 eşleşme, kesintisiz sıra, azalan puan, 31 kurumluk kapsama boşluğu.pnpm exec next typegen+tsc --noEmit+pnpm lint+pnpm buildtemiz; doğrulama üretilmiş statik HTML üzerinden yapıldı (tarayıcı/dev sunucusu açılmadı).
Değişen dosyalar
| Dosya | Ne |
|---|---|
src/lib/urap-siralama.ts (yeni, 242 satır) |
198 satırlık URAP_SIRA sabiti + URAP_DONEM/URAP_TOPLAM/URAP_KAYNAK_URL + urapSirasiBul(); dosya başındaki yorumda atıf şartı yazılı |
src/lib/katalog.ts (+7) |
UniDetay'e tek alan: urap: UrapSira | null; getUniversiteBySlug dönüşünde urapSirasiBul(slug) |
src/features/katalog/components/universite-icerik.tsx (+89/−10) |
Kart takası + UrapKaynakSatiri bileşeni (aynı dosyada, ızgaranın altındaki kaynak satırı) |
scripts/veri-kalite.ts (+89) |
Dosya sonuna urapKontrolleri() (5 kontrol) + main() sonunda tek satır çağrı + 3 satır import |
Veri kaynağı: docs/gece-vardiyasi/2026-09-22/05-urap.md §1-2'de tarif edilen çıkarım (rankings.byurlandgroup, 198 satır), veri mühendisinin scratchpad'e bıraktığı urap-2025.txt. Hiçbir sıra, ad ya da puan elle uydurulmadı; slug'lar üretimden önce DB'deki 322 ham üniversite adından uniSayfaSlug ile türetilen kümeyle karşılaştırıldı (198/198 tuttu, 0 karşılıksız).
Kabul kriterleri — 6/6
| # | Kriter | Durum | Nasıl doğrulandı |
|---|---|---|---|
| 1 | URAP'ta olan sayfada 4 kart, "Tür" yerinde URAP; olmayanda 4 kart, "Tür" duruyor; hiçbir sayfada "—"/boş kutu yok | ✔ | Üretilmiş statik HTML'den metin çıkarımı: koc-universitesi → "Program 53 · Fakülte/Birim 7 · URAP Türkiye 1 / 198 · 2025-2026 · En iyi sıralama 65"; bogazici-universitesi → "URAP Türkiye 18 / 198"; dogu-akdeniz-universitesi → "Program 276 · Fakülte/Birim 17 · Tür Kktc · En iyi sıralama 9.061" |
| 2 | URAP sayısının göründüğü her sayfada aynı ekranda aktif atıf linki ve dönem var | ✔ | koc-universitesi.html içinde: <a href="https://newtr.urapcenter.org/Rankings/2025-2026/GENEL-SIRALAMASI-2025" target="_blank" rel="noopener" …>; HTML'de nofollow geçmiyor. Dönem hem kartta (2025-2026) hem kaynak satırında. Sayı yalnız 1. sayfada çiziliyor, kaynak satırı da yalnız 1. sayfada |
| 3 | veri-kalite kontrolleri geçiyor, eşleşmeyen slug sessizce düşmüyor |
✔ | pnpm veri-kalite --yil 2026 --db data/yokatlas.db → 5 URAP satırı: "GEÇTİ … 198 slug'ın tamamı DB'de var", "kayıt 198, URAP_TOPLAM 198", "1..198 kesintisiz", "1152.91 → 70.82", "bilgi URAP dışında 31 kurum". Sonuç: 0 ZORUNLU kaldı (3 uyarı önceden var olan uyarılar, URAP'la ilgisiz) |
| 4 | Renk yok, rozet yok, /universiteler hub'ında URAP'a göre sıralama/filtre yok |
✔ | Kart mevcut rounded-xl border-slate-200 bg-white kutusunun içinde, metin text-slate-900/text-slate-500; SectionEyebrow/Badge kullanılmadı, yeni renk sınıfı girmedi. universite-listesi.tsx ve hub sayfaları hiç açılmadı (git diff --stat: 4 dosya) |
| 5 | 24'lük listeye, /sonuc tablosuna ve LLM prompt'una URAP girmez |
✔ | Dokunulan dosya kümesi bunu dışlıyor; src/lib/urap-siralama.ts'i içe aktaran yalnız katalog.ts, universite-icerik.tsx ve veri-kalite.ts |
| 6 | tsc + lint + build temiz |
✔ | next typegen ✓, tsc --noEmit çıktısız, pnpm lint çıktısız, pnpm build "Compiled successfully" + BUILD_ID üretildi (229 üniversite sayfası prerender). Build günlüğündeki BetterAuthError/Cal Sans uyarıları önceden var, worktree'de .env olmamasından |
Atıf şartı nerede karşılanıyor
- Veri dosyasının başında (
src/lib/urap-siralama.tsyorumu): izin şartı ve "link konulamayan yüzeyde sayı gösterilmez" kuralı yazılı — sonraki geliştirici sabiti başka bir yüzeye taşırken şartı görür. - Ekranda (
UrapKaynakSatiri): tablonun altında,VeriKaynagi'den ayrı ikinci satır. Kanonik cümle birebir: "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. Kaynak: urapcenter.org." AdresURAP_KAYNAK_URLsabitinden geliyor, elle yazılmadı. - OG görselinde URAP yok:
opengraph-imagedosyalarına dokunulmadı,uni.uraporaya hiç ulaşmıyor. - Boş durumda (31 kurum) sayı olmadığı için link de yok; yalnız tek cümlelik açıklama var. Şart "sayının göründüğü yüzey" için; burada sayı görünmüyor.
Şartnameden sapmalar
- Kaynak satırı yalnız 1. sayfada çiziliyor. Şartname "tablonun altına" diyor; üniversite tabloları sayfalanıyor (
/universite/<slug>/sayfa/2…) ve metrik ızgarası yalnız 1. sayfada var. URAP sayısı 2. sayfada görünmediği için kaynak satırını da orada çizmedim — aksi hâlde sayfa 2'de bağlamsız bir URAP cümlesi kalırdı. Tersi isteniyorsa tek koşul kaldırılır ({ilkSayfa ? <UrapKaynakSatiri … /> : null}). - Boş durum cümlesinin varyant seçimi
uniturüzerinden.KKTC/YURTDISI KAMU/YURTDISI VAKIF→ "URAP yalnız Türkiye'deki üniversiteleri sıralıyor."; diğerleri → "…2025-2026 listesinde yer almıyor." P2 ile kesişme: P2'nin düzelteceği 3 kurum (Kıbrıs Amerikan, Uluslararası Balkan, Uluslararası Saraybosna) bugünDEVLETetiketli olduğu için ikinci cümleyi alıyor. İki cümle de doğru, ama P2 merge edildikten sonra bu üç sayfa kendiliğinden doğru varyanta geçer — ek kod gerekmiyor. - 5. veri-kalite kontrolü şartnamedekinden farklı. Veri mühendisinin önerisi "bir önceki döneme göre listeden düşen üniversite" idi; elimizde önceki dönemin sabiti olmadığı için bunu koşturmak mümkün değil. Yerine aynı riski (sessiz düşme) yakalayan bir kontrol yazdım: URAP dışında kalan 150+ programlı bir Türkiye üniversitesi varsa UYARI — bu neredeyse her zaman ad değişikliği demektir. Bugün 0 (en büyük eksik Türkiye kurumu Mudanya, 78 program).
veri-kalite.ts'e 3 satır import eklendi (dosyanın en sonuna değil, import bloğunun sonuna). Kontrol gövdesi dosyanın en sonunda,main()içinde yalnız tek satırlık çağrı var; mevcut satırlar yeniden düzenlenmedi. P2 ile çakışma yüzeyi bu 4 satır.
Merge sonrası doğrulanması gerekenler
- P2 (
gece/0922-unitur-kacagi) merge edildikten sonra:dogu-akdeniz-universitesidışında, düzeltilen 3 kurumun sayfasında boş durum cümlesinin "URAP yalnız Türkiye'deki üniversiteleri sıralıyor." varyantına geçtiği. Kod değişikliği gerekmez, yalnız gözle bakılır. scripts/veri-kalite.tsmerge'ü: P2 aynı dosyaya "baz ad başına tekunitur" kontrolü ekliyor. Çakışma beklenen yer import bloğunun sonu; iki taraf da birleştirildikten sonrapnpm veri-kalite --yil 2026 --db data/yokatlas.dbbir kez koşturulmalı (0 ZORUNLU bekleniyor).- Yayın sonrası:
/universite/bogazici-universitesive/universite/dogu-akdeniz-universitesicanlıda açılıp kartın 4'te kaldığı ve kaynak satırındaki linkin URAP sayfasına gittiği bir kez doğrulanmalı.
Gözlem (kapsam dışı, düzeltilmedi)
"Tür" kartı artık yalnız URAP'ta olmayan 31 kurumda görünüyor ve bunların çoğu KKTC/yurt dışı. trBaslikDuzeni bu değerleri "Kktc", "Yurtdisi Kamu" diye yazıyor — eskiden de böyleydi ama şimdi bu yazım yalnız o sayfalarda kaldığı için daha görünür. Şartnamede yok, dokunmadım; backlog önerisi.
Bilal'den istenen
- URAP izin e-postasını
docs/altına koy (kanıt) — CEO kararı §5-3'te de yazıyor. ~2 dk. - İki sayfayı gözle gör:
/universite/bogazici-universitesi(URAP 18/198 kartı + alttaki kaynak satırı) ve/universite/dogu-akdeniz-universitesi("Tür" kartı yerinde + tek cümlelik boş durum). ~3 dk. - Karar: kaynak satırı derin sayfalarda (
/universite/<slug>/sayfa/2) da görünsün mü? Bugün görünmüyor, çünkü orada URAP sayısı da yok (sapma #1). ~1 dk.