"""بطاقات Command Feed تجريبية — deterministic، بدون شبكة.""" from __future__ import annotations def build_demo_command_feed() -> dict[str, object]: """ يُرجع قائمة بطاقات قرار إيراد (عرض توضيحي). أنواع البطاقات: opportunity, approval_needed, leak, compliance_risk, proof_update. """ cards: list[dict[str, object]] = [ { "type": "opportunity", "title_ar": "فرصة قطاع صحة — إشارة توظيف", "why": "شركة في الرياض نشرت وظائف مبيعات؛ إشارة نمو وتوسع.", "risk": "قد يكون التوقيت قبل الميزانية؛ يحتاج Why Now قصير.", "suggested_action": "إرسال مسودة ترحيبية + طلب ١٥ دقيقة بعد الموافقة.", "cta": "مراجعة المسودة", }, { "type": "approval_needed", "title_ar": "موافقة على حملة متابعة ثانية", "why": "ثلاث جهات لم ترد خلال ٤٨ ساعة؛ المتابعة الآمنة تحسّن التحويل.", "risk": "تكرار يُفسّر كإزعاجاً إذا تجاوز الحد الأسبوعي.", "suggested_action": "موافقة على نسخة قصيرة بلهجة مهنية مع خيار إيقاف.", "cta": "موافقة / تعديل", }, { "type": "leak", "title_ar": "تسريب بعد اجتماع بدون خطوة تالية", "why": "اجتماع أمس بدون محضر موافَق عليه أو تاريخ متابعة.", "risk": "فقدان زخم الصفقة خلال أسبوع.", "suggested_action": "إرسال ملخص + موعد مقترح + طلب تأكيد مصغّر.", "cta": "فتح غرفة الصفقة", }, { "type": "compliance_risk", "title_ar": "مراجعة سياسة قطاع قبل الإرسال الجماعي", "why": "القائمة تحتوي جهات خارج نطاق الموافقة السابقة.", "risk": "إرسال بدون مراجعة يخالف سياسة الوصول الداخلي.", "suggested_action": "تصفية القائمة أو طلب موافقة موسعة.", "cta": "عرض التفاصيل", }, { "type": "proof_update", "title_ar": "تحديث الدفتر — رد إيجابي مسجّل", "why": "رد عميل محتمل يؤثر على خط أنابيب هذا الشهر.", "risk": "التقديرات تقريبية حتى ربط CRM محاسبي.", "suggested_action": "إضافة الحدث إلى تقرير الأسبوع للإدارة.", "cta": "عرض السجل", }, ] return {"cards": cards, "demo": True}