Documentation Index
Fetch the complete documentation index at: https://docs.mmmytics.com/llms.txt
Use this file to discover all available pages before exploring further.
Per-Brand Benchmark Override
v0.7.57+58+60 (Phase 24) ile gelen per-brand benchmark override özelliği, sektör default eşik değerleri yerine markaya özel KPI sınırlarını tanımlamanıza olanak tanır. CEO/CMO rolündeki kullanıcılar Settings → Benchmark Override sekmesinden channel × metric matrisinde override girerek composer raporlama pipeline’ını (Phase 24 A2) etkileyebilir.
Neden Override?
Sektör template’leri genel benchmark değerleri sağlar (örn: FMCG için CPClow_warn = 1.5 TL). Ancak markanızın gerçek operasyonel sınırları farklı olabilir:
- Premium otomotiv markası → CPC eşiği daha yüksek (target audience pahalı)
- Niche e-ticaret markası → CTR
high_infodaha düşük (conversion yerine awareness) - Telco MNP campaign → ROI
low_warnagresif (churn prevention öncelik)
Yetki
| Rol | Yetki |
|---|---|
CEO | ✅ Override CRUD (Create / Read / Update / Delete) |
CMO | ✅ Override CRUD |
Analytics | 👁️ Read-only (override’ları görür, düzenleyemez) |
Agency | ❌ Erişim yok (org admin yetkisi yok) |
platform_admin | ✅ Tüm org’larda override yönetebilir |
UI Flow
Marka seçici (multi-brand org'larda)
brands.length > 1 ise dropdown render edilir. Hangi markaya override yazacağınızı seçin. Single-brand org’larda otomatik aktif marka.Override tablosu
Mevcut override’lar flat tablo halinde listelenir:Boş tablo “No overrides for this brand yet” empty state gösterir.
Add Override (dialog form)
”+ Add Override” butonu → dialog form:
- Channel dropdown (Google Ads, Meta Ads, TV, OOH, Linear TV, TikTok, YouTube, vb. —
ChannelTypeenum) - Metric dropdown (CPC, CTR, ROI, conversion_rate, vb.)
- 4 threshold input:
low_warn,low_info,high_info,high_warn(numeric, validation sıralama kuralı uygular)
PATCH /admin/brands/{brand_id}/benchmark-overrides veya PATCH /brands/{brand_id}/benchmark-overrides (Phase 24 A3 org-scoped).Channel × Metric Matrisi
Aşağıdaki kanal-metrik kombinasyonları desteklenir:| Channel | Desteklenen Metrikler |
|---|---|
google_ads | cpc, ctr, roi, conversion_rate, quality_score |
meta_ads | cpc, ctr, roi, conversion_rate, frequency |
tiktok_ads | cpc, ctr, roi, engagement_rate |
youtube | cpv, ctr, roi, view_rate |
tv (Linear TV) | cpm, roi, reach, frequency |
ooh | cpm, roi, impressions |
print | cpm, roi |
affiliate | roi, conversion_rate, cps |
Yeni kanal eklenirse (örn: connected TV, programmatic) backend
ChannelType enum’u güncellenir, frontend otomatik yeni kanalı dropdown’da gösterir.Ordering Rule
Threshold değerleri artan sırada olmalı:low_warn→ bu değerin altı kırmızı uyarı (KPI çok düşük, acil aksiyon)low_info→ bu değerin altı sarı bilgi (KPI düşük, izleme)high_info→ bu değerin üstü yeşil bilgi (KPI iyi, optimum aralık)high_warn→ bu değerin üstü mavi uyarı (KPI çok yüksek, anomali kontrolü)
JSON Merge Stratejisi (Deep Merge)
Override yazıldığında backend deep merge uygular — mevcut override’ları silmez, yalnızca yeni gönderilen path’i günceller:null değeri sentinel olarak kabul eder ve ilgili metric/channel entry’sini siler. Kullanıcı kazara veri kaybetmesin diye PUT replace yerine PATCH merge tercih edildi.
Composer Integration (Phase 24 A2)
Override yazıldıktan sonra manuel re-run gerekmez. Composer pipeline her rapor üretimindelookup_benchmark helper’ı çağırır:
- Composer query brand’i (Phase 24 A2 loader propagation pattern) →
benchmark_overridesJSONB additive lookup_benchmark(channel, metric)3-way dispatch:- Override library off →
None(sektör default) - Override library on + brand override off →
get_threshold(sektör default) - Her ikisi on →
get_threshold_with_brand_override(marka-spesifik değer)
- Override library off →
- Rapor render edilirken doğru eşik değer otomatik kullanılır
FEATURE_BRAND_BENCHMARK_OVERRIDE flag true (Phase 24 A2’de canlıya alındı). Override aktif konsume ediliyor; cache invalidation gerekmez. Detay: Composer LLM Cache Invalidation.Audit Log
Her override işlemi audit log’a yazılır:brand_benchmark_override_updated— Add veya Editbrand_benchmark_override_cleared— Delete veya Clear All
user_id, brand_id, channel, metric, before_value, after_value, timestamp.
Sorun Giderme
BENCHMARK_OVERRIDE_ORDER_INVALID
Sebep: Threshold değerleri yanlış sırada.
Çözüm: Değerleri artan sırada gir: low_warn < low_info < high_info < high_warn. Detay: Sorun Giderme.
Override yazdım ama raporda görmüyorum
Olası nedenler:- Cache’lenmiş eski rapor → Yeni rapor üret (
L7 Reports→ “CEO Brief Oluştur”) - Yanlış brand’e yazdın → Marka seçici aktif markayı kontrol et
- Flag off (geçmiş bir snapshot) →
FEATURE_BRAND_BENCHMARK_OVERRIDEflag aktif (v0.7.58sonrası canlı)
Override’lar geri geldi (clear all sonrası)
Sebep: Clear All yerine Edit’lediniz — backend deep merge mevcut entry’leri korur. Çözüm: Her override’ı null sentinel ile manuel sil veya Clear All butonunu kullan.Sonraki Adım
Multi-brand Portföy
Birden fazla markayı tek hesaptan yönet
L2 Model Studio
Sektör template + adstock/saturation prior’lar