fix: doküman sınıflandırması ilanın tamamını tarayıp yanlış sonuç üretiyordu — yalnızca işin konusu taranıyor, eski kayıtlar geçersiz

This commit is contained in:
2026-08-30 01:52:31 +03:00
parent 495118ef9e
commit 80bb4bc6c4
3 changed files with 49 additions and 6 deletions
+7 -4
View File
@@ -17,7 +17,7 @@ import crypto from 'node:crypto';
import path from 'node:path';
import { fileURLToPath } from 'node:url';
import { readDtTenders } from './dt-store.mjs';
import { SECTOR_RULES, INSTITUTION_RULES, classify, sektorBul, SEKTOR_ETIKETLERI, KURUM_ETIKETLERI } from './siniflandir.mjs';
import { SECTOR_RULES, INSTITUTION_RULES, classify, sektorBul, SEKTOR_ETIKETLERI, KURUM_ETIKETLERI, ilanKonusu } from './siniflandir.mjs';
import { loginWithGoogle, userFromAuthHeader } from './auth.mjs';
import { emailConfigured, sendEmail, tenderDigestHtml, emailFrom } from './email.mjs';
import { aiConfigured, availableProviders, analyzeSpec } from './ai.mjs';
@@ -334,11 +334,14 @@ async function sektorZenginlestir() {
await Promise.all(grup.map(async (t) => {
try {
const det = await getDetail(t.id.replace(/^ilan-/, ''));
const sek = sektorBul(t.baslik || '', det.aciklama || '');
sonuc.push({ id: t.id, sektor: sek });
// İlanın TAMAMI değil, yalnızca işin konusu taranır: standart
// hukuki metin ("e-imza ile imzalanarak", "numune sunulması")
// sınıflandırmayı zehirliyordu.
const sek = sektorBul(t.baslik || '', ilanKonusu(det.aciklama || ''));
sonuc.push({ id: t.id, sektor: sek, kaynak: 'dokuman-v2' });
} catch (e) {
// Metin alınamadıysa 'Genel' yaz — sonsuz yeniden deneme olmasın.
sonuc.push({ id: t.id, sektor: 'Genel' });
sonuc.push({ id: t.id, sektor: 'Genel', kaynak: 'dokuman-v2' });
}
}));
// Kaynağı yormamak için gruplar arasında kısa duraklama.