Files
kolaytercih/package.json
bilalgursen 128c175327 fix(danisman): revizyon aracı atlanmasın — geçmiş araç kaydına indirgenir, beyan regex'i genişledi, soru formu Türkçe karakter (QA B1, B4)
Kök neden (B1): chat_messages yalnız metin tutar; başarılı revizyonun kaydı
("revize ediyorum… Liste yenilendi… 1-5") araçsız cevapla aynı görünüyordu ve
model sonraki turda bu kalıbı taklit edip liste_revize çağırmadan "yenilendi"
yazıyor, program adlarını eski cevaptan kopyalıyordu (eval: 8 revizyon
isteğinde 1 çağrı, 5 sahte beyan). Metnin altına "[araç çağrıldı]" işareti
eklemek işe yaramadı — model işareti de kopyaladı.

- sohbet-gecmisi.kayitliMesajModelMetni: modele giden pencerede başarılı
  revizyon turu kısa araç kaydına iner (meta.revizyon'dan), araçsız
  "yenilendi" diyen tur (düzeltme notu olmayan eski kayıtlar dâhil) uydurma
  listesiyle birlikte düşer; kayıt ve ekran değişmez. route.ts bunu kullanır.
- revizyonNiyetiVar + sohbet-akisi.ilkAdimAracZorunlu: niyet algılanınca ilk
  adımda tool_choice "required". VARSAYILAN KAPALI
  (SOHBET_REVIZYON_ARAC_ZORUNLU=1): ölçümde 7/8 çağrı, 0 sahte beyan verdi ama
  OpenRouter isteği Baidu yerine OpenInference'a yönlendirdi, gecikme 1-7 sn →
  80-112 sn, onlarca paralel araç çağrısı. Açmak Bilal'in kararı.
- danisman-prompt revizyon bölümü: 5 (geçmiş örnek değildir; önce aracı çağır)
  ve 6 (soru formunda Türkçe karakter).
- cikti-denetimi REVIZE_BEYANI: "değişiklikler yapıldı", "artık … tercihin …
  oluşuyor", "listeyi yeniden kurdum", "liste_revize çağrıldı" kalıpları.
- araclar.ts (B4): soru_sor açıklamasına Türkçe karakter kuralı; formdaki
  ASCII'ye düşmüş il adları koddan düzelir (ilAdlariniDuzelt: Istanbul →
  İstanbul, Eskisehir → Eskişehir; yalnız büyük harfle başlayan tam eşleşme).
- scripts/eval/revizyon-arac.ts (pnpm eval:revizyon): gerçek modelle 10
  senaryo, liste_revize çağrı oranı + sahte beyan; liste_revize çalıştırılmaz
  (mesajId yok). Sonuç dosyaları scripts/eval/sonuc/*-revizyon.json.

Kredi: değişmez. akis-denetim 9/9, revizyon-denetim 5/5, tsc ve lint temiz.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-09 00:16:35 +03:00

91 lines
2.8 KiB
JSON

{
"name": "kolaytercih",
"version": "2.0.0",
"private": true,
"scripts": {
"dev": "next dev",
"build": "next build",
"indexnow": "tsx scripts/indexnow.ts",
"start": "next start",
"lint": "eslint && pnpm tasarim:denetim",
"ingest": "tsx scripts/ingest.ts",
"refresh": "tsx scripts/refresh.ts",
"ozellik": "tsx scripts/program-ozellik.ts",
"detay": "tsx scripts/detay.ts",
"yokatlas:goc": "tsx scripts/yokatlas-goc.ts",
"gecmis-doldur": "tsx scripts/gecmis-doldur.ts",
"eski-arsivle": "tsx scripts/eski-arsivle.ts",
"veri-kalite": "tsx scripts/veri-kalite.ts",
"db:index": "tsx scripts/db-index.ts",
"logolar": "tsx scripts/logo-indir.ts",
"db:push": "drizzle-kit push",
"db:generate": "drizzle-kit generate",
"db:migrate": "node scripts/db-goc.mjs",
"tadimlik": "tsx scripts/tadimlik-uret.ts",
"tasarim:denetim": "tsx scripts/tasarim-denetim.ts",
"eval:robot": "tsx --conditions=react-server --env-file-if-exists=.env.local scripts/eval/robot.ts",
"eval:sohbet": "tsx --conditions=react-server --env-file-if-exists=.env.local scripts/eval/sohbet.ts",
"eval:revizyon": "tsx --conditions=react-server --env-file-if-exists=.env.local scripts/eval/revizyon-arac.ts"
},
"dependencies": {
"@ai-sdk/openai-compatible": "^3.0.62",
"@ai-sdk/react": "^4.0.130",
"@cds/city": "^1.1.0",
"@libsql/client": "^0.17.4",
"@shadcn/helpers": "^0.2.0",
"@shadcn/react": "0.3.1",
"ai": "^7.0.127",
"better-auth": "^1.6.23",
"better-sqlite3": "^12.11.1",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"drizzle-orm": "^0.45.2",
"iyzipay": "^2.0.69",
"lucide-react": "^1.25.0",
"marked": "^18.0.7",
"mermaid": "^11.16.0",
"motion": "^12.42.2",
"next": "16.2.10",
"next-themes": "^0.4.6",
"openai": "^7.4.0",
"radix-ui": "^1.6.3",
"react": "19.2.4",
"react-dom": "19.2.4",
"react-markdown": "^10.1.0",
"react-use-measure": "^2.1.7",
"remark-breaks": "^4.0.0",
"remark-gfm": "^4.0.1",
"resend": "^6.18.0",
"server-only": "^0.0.1",
"shiki": "^4.3.1",
"tailwind-merge": "^3.6.0",
"turkey-map-react": "^2.0.5",
"tw-animate-css": "^1.4.0",
"use-stick-to-bottom": "^1.1.6",
"zod": "^4.4.3"
},
"devDependencies": {
"@tailwindcss/postcss": "^4",
"@types/better-sqlite3": "^7.6.13",
"@types/iyzipay": "^2.0.3",
"@types/node": "^20",
"@types/react": "^19",
"@types/react-dom": "^19",
"drizzle-kit": "^0.31.10",
"eslint": "^9",
"eslint-config-next": "16.2.10",
"shadcn": "^4.13.1",
"tailwindcss": "^4",
"tsx": "^4.23.1",
"typescript": "^5"
},
"pnpm": {
"onlyBuiltDependencies": [
"better-sqlite3",
"esbuild",
"sharp",
"unrs-resolver"
]
}
}