feat(carcatonline): boş PL24 kataloglarının kategori ağacını gece carcatonline'dan doldur #273

Merged
root merged 3 commits from dev into main 2026-09-26 15:19:15 +03:00
Owner

dev → main promote.

  • feat(carcatonline) 1a209dd: pro.carcatonline.com (PartsLink24 aynası) yeni katalog kaynağı; P5_MODERN ve hiç kategorisi olmayan pl24 catalog_vehicles için kategori ağacı backfill'i. Sadece 20:00–07:00 Europe/Istanbul (tarama 30 dk'da bir, pencere dışında iş almaz); 1 çağrı/7 s, 429 → 40 dk kilit, günlük çağrı tavanı; yapraklar açıldığında parçalar on-demand. İsimler LLM çeviri kuyruğundan Türkçeleşir.
  • fix 0e5931b, 125d855: çağrı aralığı 7 s (dev'de 110 çağrı/2,2 s → 429 gözlendi).

Prod Coolify env: CARCATONLINE_ENABLED=true + hesap + pencere 20/7 girildi. Dev'de zorlanmış koşu: login, model cache, kademeli seçim, tarama ve 429 kilit/erteleme doğrulandı; ağaç insert yolu birim testli.

🤖 Generated with Claude Code

dev → main promote. - **feat(carcatonline)** `1a209dd`: pro.carcatonline.com (PartsLink24 aynası) yeni katalog kaynağı; P5_MODERN ve hiç kategorisi olmayan pl24 catalog_vehicles için kategori ağacı backfill'i. **Sadece 20:00–07:00 Europe/Istanbul** (tarama 30 dk'da bir, pencere dışında iş almaz); 1 çağrı/7 s, 429 → 40 dk kilit, günlük çağrı tavanı; yapraklar açıldığında parçalar on-demand. İsimler LLM çeviri kuyruğundan Türkçeleşir. - **fix** `0e5931b`, `125d855`: çağrı aralığı 7 s (dev'de 110 çağrı/2,2 s → 429 gözlendi). Prod Coolify env: CARCATONLINE_ENABLED=true + hesap + pencere 20/7 girildi. Dev'de zorlanmış koşu: login, model cache, kademeli seçim, tarama ve 429 kilit/erteleme doğrulandı; ağaç insert yolu birim testli. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
root added 3 commits 2026-09-26 15:19:13 +03:00
feat(carcatonline): boş PL24 kataloglarının kategori ağacını gece carcatonline'dan doldur
Some checks are pending
QA Gate (P0/P1) / Test affected app (pull_request) Waiting to run
1a209dd1fd
pro.carcatonline.com (PartsLink24 aynası, pcat-benzeri API) yeni katalog kaynağı.
Hedef: source='pl24', architecture P5_MODERN ve hiç kategorisi olmayan
catalog_vehicles satırları (prod'da ~770). Sadece 20:00–07:00 Europe/Istanbul
penceresinde çalışır; hem tarama hem araç işi pencere dışında kendini pencere
başına erteler, pencere kapanınca tarama yarıda kesilir.

- integrations/carcatonline: istemci (login → /widget HTML'deki 6 aylık JWT →
  api.carcatonline.com Bearer; Redis'te paylaşılan token), marka→katalog +
  model eşleyici (birebir / bölge-yıl soyma / gövde kodu katmanları, ölçülen
  prod verisiyle test), kademeli varyant seçimi + tam ağaç tarayıcı, isim
  tekilleştirme (categories unique index'i), throttle (1 çağrı/2,2 s Redis
  slot, 429 → 40 dk kilit, günlük çağrı tavanı, gece penceresi).
- carcatonline-backfill kuyruğu: 30 dk'da bir `scan` (pencere içinde, kuyruk
  boşsa 20 araç), `vehicle` işi ağacı `carcatonline` kaynaklı categories
  satırları olarak yazar (link_path `carcat:<catalog>:<car>:<group>`),
  catalog_vehicles.metadata.carcatonline'a eşleme/varyant/sonuç kaydeder,
  ağaç cache'ini siler, isimleri LLM çeviri kuyruğuna verir (processor
  'carcatonline' kaynağını da geri-doldurur). Eşleşmeyen/hatalı araçlar 7 gün
  sonra tekrar denenir.
- CatalogService: carcatonline düğümleri PL24 drill'ine gönderilmez; yaprak
  açıldığında parçalar + plate görseli on-demand tek çağrıyla çekilir (aynı
  throttle/kilit/bütçe, parça adları translateMany ile Türkçe).
- Env: CARCATONLINE_ENABLED/EMAIL/PASSWORD/DAILY_CALL_CAP/WINDOW_START/
  WINDOW_END/MIN_INTERVAL_MS/LOCKOUT_SECONDS/SCAN_BATCH (compose api+worker).
  Legacy P4 mimarileri (Hyundai/Kia/Nissan/Opel/Ford) kapsam dışı: katalog
  sayfası onları önce PL24'ten okuyor.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
fix(carcatonline): varsayılan çağrı aralığı 6,5 s (dev'de 110 çağrı/2,2 s → 429; kota ~100 çağrı/pencere)
Some checks are pending
QA Gate (P0/P1) / Test affected app (pull_request) Waiting to run
0e5931b1f8
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
fix(carcatonline): çağrı aralığı 7 s — spec, env şeması ve compose varsayılanları eşitlendi
Some checks are pending
QA Gate (P0/P1) / Test affected app (pull_request) Waiting to run
125d8552de
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
root merged commit fc0dd4d7f6 into main 2026-09-26 15:19:15 +03:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: root/sase.tr#273