# 19 — Rehber yazarı: `yapay-zekaya-tercih-sordum-guvenilir-mi` **Rol:** rehber-yazari · **Şartname:** `02-seo-konu-plani.md` §0 + §2 Dalga E konu 19 · **Dosya:** `content/rehber/yapay-zekaya-tercih-sordum-guvenilir-mi.md` (2.851 kelime, commit'lenmedi) ## Özet (5 madde) 1. Yazı iddia etmiyor, **gösteriyor**: genel sohbet botunun dört yapısal hata mekanizması (kesme tarihi, olmayan program–üniversite eşleşmesi, kapanmış/kod değişmiş program, eskimiş kontenjan-koşul) her biri kendi DB rakamıyla kanıtlanmış hâlde anlatıldı. "Yapay zekâ yanlış yapar" cümlesi tek başına hiçbir yerde geçmiyor. 2. **Kendi testimiz yapıldı ve yazıya girdi** ama bir sohbet botuna değil, botun okuduğu kaynağa: 22 Eyl 2026'da "Boğaziçi Bilgisayar Mühendisliği 2026 taban puanı" araması yapıldı; başlığında 2026 yazan sayfalar taban sırası **1.448** / puan **533,05003** gösteriyordu — bunlar bizim DB'mizdeki **2025** değerleriyle birebir aynı. DB'deki gerçek 2026: **4.560 / 526,75435**. Rakip/site adı verilmedi, gözlem "sayfa türü"ne bağlandı. 3. `/meraklisina` şemasıyla **satır satır** eşleştirildi (aşağıda tablo). Çelişen tek cümle bulunmadı; yazıdaki "Bizim yaklaşımımız" bölümü şemanın altı düğümünü sırasıyla tekrarlıyor, fazladan hiçbir yetenek iddia etmiyor. 4. Marka bölümü **ölçülü**: "kapattığı 3 hata türü" ve "kapatmadığı 4 şey" ayrı ayrı listelendi; `riskHesapla`'nın determinist olduğu ve **yerleşme olasılığı hesaplanmadığı** açıkça yazıldı (`src/lib/risk.ts:71-76` yorumuyla uyumlu). Vaat dili yok. 5. Üç iddia kanıtlanamadığı için **çıkarıldı** (madde "Yazılmayan iddialar"). ## /meraklisina şemasıyla uyum doğrulaması (satır satır) Kaynak: `src/features/pazarlama/components/huni-semasi.tsx` `SEMA` + `src/features/pazarlama/components/meraklisina-icerik.tsx` §4 + `src/lib/risk.ts`. | Şema düğümü / kural | Yazıdaki karşılığı | Durum | |---|---|---| | `T` "Sıralamanla açılan tüm programlar" | Madde 1: "Sıralamanı girdiğinde o sıralamayla açılan gerçek programlar listelenir" | uyumlu | | `A` alan — "adına ve bağlı olduğu fakülteye göre" | Madde 2, aynı ifadeyle | uyumlu | | `B` il — "programı olan tüm iller, seçtiğin alanlardaki program sayısına göre yeniden sayılır" | Madde 2, aynı ifadeyle | uyumlu | | `C` devlet/vakıf — "sayılar hem alanı hem ili hesaba katar" | Madde 2, aynı ifadeyle | uyumlu | | `H` havuz — "yalnızca en son tercih kılavuzunda yer alanlar; kapanan ya da kodu değişip eski kaydı kalan önerilmez" | Madde 3, aynı ifadeyle | uyumlu | | `S`/`G` — 24'ün altına düşerse "önce il, sonra alan" gevşetilir, listede belirtilir | Madde 4, sıra dahil aynı | uyumlu | | `U` — havuz dar kalırsa liste eldekiyle kurulur, dağılım uyarlanır, açıkça söylenir | Madde 4, ikinci cümle | uyumlu | | `Y` — "en fazla 24 tercih seçer, havuzda olmayan bölümü yazamaz, her satıra gerekçe yazar" | Madde 5, aynı üç unsur | uyumlu | | `R` — "risk notu ve trend gerçek sıralama geçmişinden, yapay zekâ yorumu değildir" | Madde 6 + "kapattığı hatalar" 3. madde | uyumlu | | `L1/L2/L3` — hayal 5 / dengeli 13 / **güvenli** 6, "havuz elverdiğince" | Madde 6: "5 / 13 / 6, havuz elverdiğince"; görünen ad **Güvenli** (`DILIM_ETIKET`), "garanti" kelimesi yazıda hiç geçmiyor | uyumlu | | `riskHesapla` determinist, olasılık yok (`src/lib/risk.ts:71`) | Tablonun "Olasılık" satırı + "Kapatmadığı şeyler" 1. maddesi: "ürün yerleşme olasılığı hesaplamaz" | uyumlu | | Koşul filtresi **yok** (koddan çıkarım: `risk.ts`/`rapor` içinde koşul geçmiyor) | "Kapatmadığı şeyler" 2. maddesi: özel koşulları senin durumunla eşleştirmiyoruz | uyumlu, eksiklik açıkça yazıldı | Biçim kontrolü: 1 `flowchart TD`, `%% aria:` + `%% altyazi:` var, 2 tablo, H2'ler soru biçiminde, "Kaynaklar" + erişim tarihi (22 Eyl 2026), slug'da yıl yok, frontmatter yalnız `baslik`/`aciklama`/`tarih`, `aciklama` tırnaksız. Renk sınıfları ürünün risk diliyle aynı; **her düğümün ilk satırında büyük harfli metin etiketi** var, renk tek başına anlam taşımıyor. `/tercih-robotu`'na link verilmedi. ## Kullanılan SQL sorguları (hepsi `sqlite3 -readonly data/yokatlas.db`) ```sql -- 1) Bir yıllık taban oynaması (9.160 program, medyan %14,9; >%20: 2.877; >%50: 297) WITH t AS (SELECT ABS(sira2026-sira2025)*100.0/sira2025 d FROM programs WHERE onlisans=0 AND sira2025 IS NOT NULL AND sira2025>0 AND sira2026 IS NOT NULL) SELECT COUNT(*), ROUND((SELECT d FROM t ORDER BY d LIMIT 1 OFFSET (SELECT COUNT(*)/2 FROM t)),1), SUM(CASE WHEN d>20 THEN 1 ELSE 0 END), SUM(CASE WHEN d>50 THEN 1 ELSE 0 END) FROM t; -- 2) İlk 100 bin bandı (3.034 program, medyan 4.014 sıra; >10.000: 686) WITH t AS (SELECT ABS(sira2026-sira2025) d FROM programs WHERE onlisans=0 AND sira2025 IS NOT NULL AND sira2025<=100000 AND sira2026 IS NOT NULL) SELECT COUNT(*), (SELECT d FROM t ORDER BY d LIMIT 1 OFFSET (SELECT COUNT(*)/2 FROM t)), SUM(CASE WHEN d>10000 THEN 1 ELSE 0 END) FROM t; -- 3) Kılavuzdan düşen lisans programları (572 program, 11.587 yerleşen) SELECT COUNT(*), SUM(yerlesen2025) FROM programs_arsiv WHERE onlisans=0 AND yerlesen2025>0 AND id NOT IN (SELECT eski_kod FROM programs WHERE eski_kod IS NOT NULL); -- 4) Kodu değişen program sayısı (466) SELECT COUNT(*) FROM programs WHERE eski_kod IS NOT NULL; -- 5) Kontenjan değişimi (11.540 karşılaştırılabilir; 5.192 değişti, 3.907 azaldı) SELECT COUNT(*), SUM(kontenjan2026<>kontenjan2025), SUM(kontenjan2026