Sunucu artık paketliden kredi düşmüyor; arayüz hâlâ "3 kredi düşer" ve
"Listemi güncelle — 3 kredi" diyordu. raporKredi prop'u paketliye 0
iner, modal tek `ucretsiz` bayrağıyla üç metin yerini buna bağlar.
Kredi mantığı (krediYeter, KrediYetersiz dalı) olduğu gibi kalır.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
/paket "liste ve revizyon dâhil" diyor, kod her üretimde 3 kredi
düşüyordu. Tek `maliyet = user.hasPaket ? 0 : RAPOR_KREDI` değişkeni
harcama, iade ve dönen bakiye satırlarını birden kapatıyor.
spendCredits/grantCredits çağrıları bilerek duruyor: ledger'daki
UNIQUE(reason, ref_id) üretimin tek idempotency çapası ve DUPLICATE
dalındaki "önceki deneme başarısızdı" çıkarımı refund satırının
varlığına dayanıyor. İade tutarı da koşullu — yoksa harcaması 0 olan
paketli her başarısız denemede bedava 3 kredi kazanırdı.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>