feat: update app.db and BACKLOG.md with new decisions and adjustments
All checks were successful
Deploy / deploy (push) Successful in 7m45s
All checks were successful
Deploy / deploy (push) Successful in 7m45s
- Updated the app.db file to reflect recent changes in the application state. - Modified BACKLOG.md to include new entries regarding the removal of certain wizard steps, adjustments to priority chips, and the introduction of special quota conditions for candidates. - Added details on the decision to link priority chips to data sources and clarified the implications for user experience and data handling.
This commit is contained in:
@@ -139,6 +139,37 @@ async function main() {
|
||||
);
|
||||
zorunlu(`sira${yil} var, puan${yil} yok`, siraPuanTutarsiz === 0, `${siraPuanTutarsiz} satır`);
|
||||
|
||||
// 6b. Kontenjan türü kırılımı (detay --kirilim; `…1` alanları bir önceki
|
||||
// yıla yazılır, bu yüzden en yeni kırılım yılı yıl-1 olabilir). Türlerin
|
||||
// toplamı genel kontenjanı aşamaz; yerleşen toplamı yıl toplamıyla uyuşmalı.
|
||||
// Bilinen fark: refresh.ts `yerlesen()` toplamına y34kY dahil değil; bu
|
||||
// kontrol o farkı görünür kılar (BACKLOG, 6 Eki 2026).
|
||||
const kirilimYili = [yil, onceki].find((y) => kolonlar.has(`gk${y}`) && kolonlar.has(`y34k${y}`));
|
||||
if (kirilimYili == null) {
|
||||
bilgi("kontenjan türleri", false, "kırılım kolonu yok (detay --kirilim koşulmamış); atlandı");
|
||||
} else {
|
||||
const ky = kirilimYili;
|
||||
const turToplamAsan = sayi(
|
||||
`SELECT COUNT(*) AS n FROM programs WHERE kontenjan${ky} IS NOT NULL
|
||||
AND COALESCE(obk${ky},0) + COALESCE(sgy${ky},0) + COALESCE(dprm${ky},0) + COALESCE(y34k${ky},0) > kontenjan${ky}`
|
||||
);
|
||||
zorunlu(
|
||||
`kontenjan türleri ≤ kontenjan${ky}`,
|
||||
turToplamAsan === 0,
|
||||
`özel kontenjan toplamı genel kontenjanı aşan satır: ${turToplamAsan}${turToplamAsan ? ` ör. ${ornek(`SELECT id FROM programs WHERE COALESCE(obk${ky},0)+COALESCE(sgy${ky},0)+COALESCE(dprm${ky},0)+COALESCE(y34k${ky},0) > kontenjan${ky} LIMIT 3`)}` : ""}`
|
||||
);
|
||||
const kirilimli = sayi(`SELECT COUNT(*) AS n FROM programs WHERE gkY${ky} IS NOT NULL AND yerlesen${ky} IS NOT NULL`);
|
||||
const yerlesenUyumsuz = sayi(
|
||||
`SELECT COUNT(*) AS n FROM programs WHERE gkY${ky} IS NOT NULL AND yerlesen${ky} IS NOT NULL
|
||||
AND COALESCE(gkY${ky},0) + COALESCE(obkY${ky},0) + COALESCE(sgyY${ky},0) + COALESCE(dprmY${ky},0) + COALESCE(y34kY${ky},0) <> yerlesen${ky}`
|
||||
);
|
||||
bilgi(
|
||||
`yerlesen${ky} = türlerin yerleşen toplamı`,
|
||||
kirilimli > 0 && yerlesenUyumsuz / kirilimli > 0.02,
|
||||
`uyuşmayan ${yerlesenUyumsuz}/${kirilimli} (y34kY refresh toplamında yok; fark o kadarsa beklenen)`
|
||||
);
|
||||
}
|
||||
|
||||
// 7. Kategorik alanlar
|
||||
const bozukTur = sayi(
|
||||
`SELECT COUNT(*) AS n FROM programs WHERE tur NOT IN (${TURLER.map(() => "?").join(",")}) OR onlisans NOT IN (0, 1)`,
|
||||
|
||||
Reference in New Issue
Block a user