Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
6.5 KiB
01 · Arşiv tablosundaki yanlış unitur etiketi kapatıldı (BACKLOG #21)
Dal: gece/0922-unitur-kacagi (dünkü dalın devamı) · Kaynak: 2026-09-22/09-p2-unitur.md §5-A, BACKLOG.md #21
Commit'ler: 9722689 kod · c5fd2cb veri
Özet (5 madde)
programs_arsiv'de 85 satır düzeldi: 61unitur(DEVLET→YURTDISI KAMU; 31 ULUSLARARASI BALKAN + 30 ULUSLARARASI SARAYBOSNA) ve 24il(Balkan'daSARAYBOSNA - BOSNA - HERSEK→ÜSKÜP-MAKEDONYA). Arşiv ileprogramsarasındauniturfarkı olan kurum: 2 → 0.- Puan/sıra/kontenjan/yerleşen kolonlarında değişen satır: 0. Her iki tablonun 45 kolonu id üzerinden tek tek karşılaştırıldı;
netlerveveri_metade dokunulmadı. Fark raporu §2'de ve veri commit'inin gövdesinde. - Denetim de genişledi:
veri-kalitekontrol 13 ve 14 artık arşivi de tarıyor. Genişletme olmadan iki tablo sessizce ayrışabilirdi — kusur duran DB'de ikisi deKALDIverdi (çıkış kodu 1), düzeltmeden sonraGEÇTİ. Son durum: 0 ZORUNLU kontrol kaldı, 3 uyarı (üçü de dünküyle birebir aynı, hiçbiri bu işten doğmadı). - Dünkü yanlış rakam kayda geçti.
ctodenetimi (12-kod-denetimi.mdO1) haklı:1df86cfgövdesindeki "hub'da Devlet listesi 170 → 166" yanlıştı; 170/166 hamprograms.universitead sayısıdır. Doğru hub değişimi 132 → 129 kurum. Yeni kod commit'inin gövdesinde düzeltme yazılı; entegrasyon build'inin ürettiği HTML de 129 gösteriyor (.next/server/app/universiteler.html). - Betik idempotent, entegrasyon dalı tazelendi:
gece/0922-entegrasyon'a merge edildi (çakışma yok,scripts/veri-kalite.tsauto-merge),pnpm buildtemiz.tsc+eslinttemiz.
1. Ne değişti
| Dosya | Değişiklik |
|---|---|
scripts/unitur-onar.ts |
Aşama D (KURUM_DUZELT) artık programs ve programs_arsiv üzerinde koşuyor (tablo varsa). A/B/C aşamaları programs'ta kaldı — arşivde NULL unitur yok. Kapanış dağılımı iki tablo için basılıyor. |
scripts/veri-kalite.ts |
Kontrol 13 (baz ad başına tek unitur) ve 14 (DEVLET etiketi Türkiye ili ile destekli) kaynak ilişkisi programs → programs ∪ programs_arsiv. Tek yeni sabit (KURUMLAR), kontrol gövdeleri aynı. |
data/yokatlas.db |
85 satır, ayrı commit. |
Neden arşivde vardı: kapanan programlar programs'tan arşive olduğu gibi taşınıyor, yanlış etiket de beraberinde gitmiş. Dün Aşama D yalnız programs'a uygulandığı için arşiv geride kaldı.
Kapsam dışı bırakılan (bilerek): Saraybosna Ü.'nin il değeri (kurum gerçekten Saraybosna'da), arşivdeki 28 boş il (eksik, eksik olarak görünmeli), ad normalizasyonu (arşivde tire-boşluklu duplikat ad yok — sorguyla doğrulandı). Kıbrıs Amerikan'ın arşivde hiç satırı yok.
2. Fark raporu (öncesi/sonrası)
Düzeltme öncesi DB sqlite3 -readonly … .backup ile scratchpad'e alındı; ATTACH ile her tablonun her kolonu id üzerinden karşılaştırıldı.
programs: eski 21493 → yeni 21493 | 45 kolon | kayıp/yeni id 0 | DEĞİŞEN: yok
programs_arsiv: eski 3735 → yeni 3735 | 45 kolon | kayıp/yeni id 0 | DEĞİŞEN: unitur=61, il=24
netler: eski 62975 → yeni 62975
veri_meta: eski 37 → yeni 37
her iki tabloda 34 yıl/ölçü kolonu (sıra/puan/kontenjan/yerleşen + 2025 ek
kontenjanları, 2021-2026) Σ sağlaması: BİREBİR AYNI ✓
unitur dağılımı (programs_arsiv): DEVLET 1106→1045, YURTDISI KAMU 8→69; toplam 3735 sabit. programs dağılımı hiç değişmedi.
Dosya 4 KB (bir sayfa) büyüdü — WAL checkpoint; satır sayıları sabit.
3. Kabul kriterleri
| # | Kriter | Sonuç |
|---|---|---|
| 1 | Arşivde üç kurumun unitur/il değerleri programs ile tutarlı |
✅ programs_arsiv ↔ programs unitur farkı olan kurum: 0 (önce 2). Balkan arşivde YURTDISI KAMU, ili ÜSKÜP-MAKEDONYA (24) / boş (7); Saraybosna YURTDISI KAMU |
| 2 | pnpm veri-kalite --yil 2026 --db data/yokatlas.db → 0 ZORUNLU |
✅ Sonuç: 0 ZORUNLU kontrol kaldı, 3 uyarı. |
| 3 | Puan/sıra/kontenjan kolonlarında hiçbir değişiklik yok, fark raporu commit'te | ✅ §2; rapor c5fd2cb gövdesinde |
| 4 | tsc + lint temiz |
✅ npx next typegen && npx tsc --noEmit → 0; npx eslint scripts/unitur-onar.ts scripts/veri-kalite.ts → 0 |
| 5 | İdempotent | ✅ İkinci koşu: programs 0/0, programs_arsiv 0/0, A/B/C 0 |
Denetimin gerçekten yakaladığının kanıtı — kusur duran DB'de (yalnız arşiv yanlış, programs dün düzeltilmişti) genişletilmiş kontroller:
KALDI baz ad başına tek unitur — … ULUSLARARASI BALKAN ÜNİVERSİTESİ/YURTDISI KAMU,DEVLET/81 ;
ULUSLARARASI SARAYBOSNA ÜNİVERSİTESİ/YURTDISI KAMU,DEVLET/68
KALDI DEVLET etiketi Türkiye ili ile destekli — … BALKAN/SARAYBOSNA - BOSNA - HERSEK/31 ; SARAYBOSNA/30
Sonuç: 2 ZORUNLU kontrol kaldı (çıkış kodu 1)
Kalan 3 uyarı (dünküyle aynı, bu işten doğmadı): il boş 110 satır, kimlik ATLANDI (data/ham repoda yok), yetim netler 2066.
4. Kullanıcıya yansıyan etki
Bugün: yok. src/ tarafında programs_arsiv'i okuyan hiçbir SQL yok (tablo yalnız src/lib/kapanan-sluglar.ts'te bir yorumda geçiyor); sihirbaz havuzu ve katalog yalnız programs'tan besleniyor. Bu düzeltme önleyici: arşiv ileride okunduğunda (kapanan program sayfası, "bu bölüm kapandı" bilgisi) aynı sızıntı — devlet filtresine giren Bosna/Makedonya programları — geri gelmesin diye. Entegrasyon build'inin HTML'inde hub sayıları değişmedi: Devlet 129, Vakıf 78.
5. Entegrasyon
gece/0922-entegrasyon dalı git merge --no-edit gece/0922-unitur-kacagi ile tazelendi — çakışma yok (scripts/veri-kalite.ts auto-merge, dünkü 0e689e6 "Tür" kartı düzeltmesiyle çatışmıyor). pnpm build temiz: 259 üniversite sayfası + 493 sayfalama yolu prerender edildi, hata/uyarı yok. Çalışma ağacı temiz.
Bilal'den istenen
- Dünkü rakam düzeltmesini gözden geçir —
9722689gövdesinde "170 → 166 yanlıştır, doğrusu 132 → 129" satırı duruyor; merge mesajına taşımak istersen oradan alabilirsin. ~2 dk. - Karar: §5-B (
data/yokatlas.db-shm/-walgit'ten çıkarılsın mı) hâlâ açık — dün.gitignore'da commit'lenmemiş değişiklikleriniz olduğu için dokunmadım, bugün de dokunmadım. ~2 dk. - Yok (2. madde dışında bu iş için istenen bir şey kalmadı).