test(eval): sohbet eval verisi ve altyapısı güncellendi (iş 6) [KARAR]

- s104/s105: havuz düzeltmelerinden (B2) sonra öncül değişti; soru ve beklenti yeniden yazıldı.
- s084: icermemeli 'garanti' sorumluluk reddine takılıyordu; daraltıldı.
- s018/s033/s039/s048: kabul edilebilir cevapta araç şartı kaldırıldı (04 raporu §H).
- s088: adın kabul edilmesi metin kontrolüyle yakalanır.
- Kilitli (paketsiz) senaryoda Jev hakem bağlamına ürün bilgisi eklendi (299 TL, /paket yanlış alarmı).
- Paketsiz liste özeti kırpması danisman-prompt.ts'e taşındı (sohbetListeOzeti); route.ts ve eval aynı fonksiyonu kullanır, kopya kalktı. Davranış aynı.
- --tekrar N, tutarlılık özeti, ortalama araç çağrısı ve soru başı maliyet eklendi.
- Vaat regex'i 'AIS'e girersin', 'sınava girersin' cümlelerine takılmıyor.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
bilalgursen
2026-10-05 08:14:51 +03:00
parent e06c486b1a
commit 080dcc9909
5 changed files with 74 additions and 31 deletions

View File

@@ -20,6 +20,19 @@ import { ACIK_SATIR } from "@/lib/rapor-maske";
*/
export const PROFIL_ONAY_SOR = true;
/**
* Sohbet prompt'una giren liste özeti. Paketsiz kullanıcıda yalnız açık
* satırlar kalır — aksi halde danışman kilitli listeyi sözle sızdırabilir.
* route.ts ve eval betiği aynı fonksiyonu kullanır.
*/
export function sohbetListeOzeti(tamOzet: string, kilitli: boolean): string {
if (!kilitli) return tamOzet;
return [
...tamOzet.split("\n").slice(0, ACIK_SATIR),
`… kalan ${24 - ACIK_SATIR} tercih kilitli.`,
].join("\n");
}
export function sistemPromptu(opts: {
params: RaporParams;
listeOzeti: string;