1نظرة عامة على المعمارية
الواجهات
تطبيق الطبيب — FlutteriOS و Android · عربي RTL
بوابة المحامي — ويبمراجعة · تحرير · اعتماد
لوحة الإدارة — ويبتشغيل · محتوى · حوكمة
↓ HTTPS · REST API v1 · Sanctum ↓
الخلفية — Laravel 12
الهوية والصلاحياتSanctum · Policies · RBAC
القضايا وسير العملآلة حالات · إسناد · مهل
المستنداتتشفير · روابط موقّعة · عارض آمن
المراجعة والإصداراتتتبع تغييرات · توقيع · قفل
التنبيهات والاشتراكاتPush · SMS · بوابة دفع
التدقيقسجل إلحاقي لكل اطلاع وإجراء
↓ قوائم انتظار (Redis + Horizon) ↓
خدمة الذكاء الاصطناعي
OCR وتطبيع العربيةPDF وصور ومسح ضوئي
إخفاء الهويةقبل أي استدعاء للنموذج
الاسترجاع الهجينمتجهي + نصي + إعادة ترتيب
التحليل والصياغةمخرجات منظمة بالاستشهادات
التحقق والتقييماستشهادات · أمانة · تكلفة
↓
البيانات
PostgreSQL 17بيانات التطبيق + pgvector
Redisقوائم · تخزين مؤقت · جلسات
تخزين كائنات مشفّرS3-compatible داخل المملكة
نسخ احتياطييومي مشفّر + استعادة لحظية
↓
خدمات خارجية
نموذج لغوي (LLM)عبر API بعدم احتفاظ بالبيانات
بوابة دفع محليةمدى · Apple Pay · بطاقات
SMS / FCM / APNsOTP والإشعارات
النفاذ الوطنياختياري حسب الموافقة
2تطبيق Flutter (الطبيب)
البنية
- تقسيم حسب الميزة (feature-first) مع طبقات: العرض، المنطق، البيانات.
- إدارة الحالة: Riverpod مع توليد الكود، أو BLoC — يُحسم في Sprint 0 حسب الفريق.
- التنقل: go_router مع روابط عميقة من الإشعارات إلى القضية.
- الشبكة: dio مع معترضات للتوثيق وإعادة المحاولة؛ نماذج بيانات غير قابلة للتغيير (freezed).
- بيئات منفصلة (dev / staging / prod) بإعدادات flavors.
الأمان على الجهاز
- تخزين الرموز في flutter_secure_storage (Keychain / Keystore).
- دخول حيوي عبر local_auth وقفل تلقائي بعد الخمول.
- منع لقطات الشاشة في شاشات المستندات والمسودات، وإخفاء المحتوى في مبدّل التطبيقات.
- تثبيت الشهادات (certificate pinning) وكشف الأجهزة المعدّلة.
- لا تُخزّن المستندات محليًا إلا مشفرة ومؤقتة.
تجربة المستخدم
- واجهة عربية RTL كاملة، خط عربي واضح، أحجام خطوط ديناميكية.
- التاريخ الهجري والميلادي عبر intl.
- مسح المستندات بالكاميرا مع القص والتحسين، ورفع قابل للاستئناف.
- تحديثات فورية لحالة القضية عبر الإشعارات.
الجودة والنشر
- اختبارات وحدات وواجهات (widget/golden) واختبارات تكامل للمسار الرئيسي.
- CI لبناء ونشر نسخ TestFlight و Google Play Internal Testing.
- مراقبة الأعطال والأداء (Crashlytics أو Sentry).
3الخلفية: Laravel 12
تنظيم الكود
- PHP 8.3+، وحدات حسب المجال: Auth، Cases، Documents، Reviews، Knowledge، Billing، Audit.
- متحكمات رفيعة، منطق الأعمال في Actions/Services، تحقق عبر Form Requests، استجابات عبر API Resources.
- Enums لحالات القضية والمراحل، وآلة حالات تمنع الانتقالات غير المسموحة.
- واجهة REST بإصدار /api/v1 وتوثيق OpenAPI.
الصلاحيات والتدقيق
- Sanctum لرموز تطبيق الجوال وجلسات بوابات الويب.
- Policies لكل مورد (القضية، المستند، المسودة) — المحامي يرى المُسند إليه فقط.
- سجل تدقيق إلحاقي لكل اطلاع وتعديل واعتماد، مع عنوان IP والجهاز.
- تحديد معدل الطلبات على الدخول وOTP والرفع.
المعالجة غير المتزامنة
- Redis + Horizon لقوائم الانتظار: OCR، التحليل، الإشعارات، الفوترة.
- كل مهمة بعدد محاولات ومهلة ومعالجة فشل، وآمنة لإعادة التنفيذ.
- مجدول المهام لتذكيرات المواعيد والمهل والتصعيد قبل انتهاء SLA.
بوابات الويب
- لوحة الإدارة وبوابة المحامي على Laravel (مثل Filament للإدارة، وواجهة مخصصة لمساحة المراجعة).
- محرر نصوص منسق مع تتبع التغييرات بين الإصدارات.
- عارض مستندات آمن بعلامة مائية باسم المستخدم.
- اختبارات Pest للمسارات الحرجة (الإسناد، الاعتماد، الصلاحيات).
4محرك الذكاء الاصطناعي (RAG)
أ. بناء قاعدة المعرفة (Ingestion)
ب. تحليل القضية وصياغة الرد
ج. القرارات التقنية المقترحة
| المكوّن | المقترح | ملاحظات |
|---|---|---|
| خدمة الذكاء الاصطناعي | خدمة مستقلة (Python / FastAPI) تستدعيها Laravel عبر مهام الانتظار | منظومة OCR والتضمين والتقييم أنضج في Python؛ وتبقى Laravel مالكة للبيانات والصلاحيات |
| النموذج اللغوي | نموذج مؤسسي متقدم عبر API (مثل عائلة Claude من Anthropic) بسياسة عدم الاحتفاظ بالبيانات | نماذج أصغر للمهام البسيطة (التصنيف والاستخراج) لخفض التكلفة؛ يُقارن البديل في Sprint 0 |
| التضمين (Embeddings) | نموذج متعدد اللغات يدعم العربية (مستضاف ذاتيًا مثل BGE-M3 أو عبر API) | الاستضافة الذاتية تعزز الإقامة المحلية للبيانات |
| قاعدة المتجهات | PostgreSQL + pgvector | قاعدة واحدة أبسط للتشغيل والنسخ الاحتياطي والصلاحيات |
| البحث | هجين: دلالي + نصي (BM25) مع إعادة ترتيب متعدد اللغات | أرقام المواد والمصطلحات النظامية تحتاج مطابقة نصية دقيقة |
| OCR | مقارنة مزود سحابي يدعم العربية مع بديل مفتوح المصدر | المعيار: دقة المستندات الممسوحة وخط اليد، وموقع المعالجة |
د. الضوابط والجودة
- مخرجات بمخطط محدد (JSON Schema) تُرفض إن لم تطابقه، وكل فقرة تحمل معرّفات المقاطع المستشهد بها.
- حد أدنى لدرجة الصلة؛ دونه يرفض المحرك الإجابة ويقترح التحويل لمحامٍ.
- نصوص المستندات تُمرَّر كبيانات معزولة لمنع حقن التعليمات.
- مجموعة تقييم معتمدة من المحامين (قضايا وأسئلة مع الاستشهادات الصحيحة) تُشغَّل قبل كل تحديث: دقة الاستشهاد، الأمانة للمصدر، نسبة التعديل، الزمن والتكلفة لكل قضية.
- تتبع كل تشغيل: النموذج والإصدار، المصادر المسترجعة، الزمن، التكلفة — للمراجعة والتدقيق.
قرار يُحسم في Sprint 0: موقع معالجة النموذج اللغوي. الخيار الافتراضي: إخفاء الهوية قبل الإرسال + اتفاقية عدم احتفاظ بالبيانات. وإن اشترطت متطلبات الامتثال المعالجة داخل المملكة بالكامل، يُعتمد نموذج مستضاف محليًا مع تقييم أثره على الجودة والتكلفة.
5الأمان والامتثال
حماية البيانات (PDPL)
- تقليل البيانات: المريض برمز.
- موافقات صريحة ومسجلة.
- حقوق الوصول والتصحيح والحذف.
- سياسات احتفاظ وإتلاف.
- إجراءات الإبلاغ عن الحوادث.
التشفير والوصول
- TLS 1.2+ و AES-256.
- تشفير على مستوى الحقول الحساسة.
- مفاتيح مُدارة عبر خدمة إدارة المفاتيح.
- RBAC + Policies + MFA للإدارة.
- روابط مؤقتة موقّعة للمستندات.
الضمان والتحقق
- مواءمة مع NCA ECC.
- OWASP ASVS للـ API و MASVS للجوال.
- اختبار اختراق مستقل قبل الإطلاق.
- فحص الاعتماديات آليًا في CI.
- سجل تدقيق إلحاقي.
6البنية التحتية والتشغيل
الاستضافة
- مزود سحابي بمنطقة داخل المملكة (مثل Google Cloud – الدمام، Oracle Cloud – جدة/الرياض، أو STC Cloud) — يُختار في Sprint 0.
- حاويات Docker، وبيئات dev / staging / production منفصلة.
- توافر مستهدف 99.5% مع إمكانية التوسع الأفقي للخدمات وعمال الانتظار.
التسليم والمراقبة
- CI/CD عبر GitHub Actions: اختبارات، فحص أمني، نشر تلقائي لبيئة staging.
- مراقبة الأخطاء والأداء وتنبيهات التشغيل.
- لوحة صحة الخدمات وجودة الذكاء الاصطناعي (كما في نموذج لوحة الإدارة).
- نسخ احتياطي يومي مشفّر واختبار استعادة دوري.
7المكدس التقني المقترح
| الطبقة | التقنية |
|---|---|
| تطبيق الجوال | Flutter 3 · Dart · Riverpod/BLoC · go_router · dio · freezed · flutter_secure_storage · local_auth · Firebase Messaging |
| الخلفية | Laravel 12 · PHP 8.3+ · Sanctum · Horizon · Pest · OpenAPI |
| بوابات الويب | Laravel + Filament (الإدارة) · واجهة مراجعة مخصصة بمحرر نصوص منسق |
| الذكاء الاصطناعي | Python · FastAPI · OCR يدعم العربية · نموذج تضمين متعدد اللغات · LLM مؤسسي عبر API · مُعيد ترتيب |
| البيانات | PostgreSQL 17 + pgvector · Redis · تخزين كائنات S3-compatible مشفّر |
| التشغيل | Docker · GitHub Actions · مراقبة الأخطاء والأداء · نسخ احتياطي مُدار |
8محركات التكلفة التشغيلية
تُقدَّر الأرقام بعد اعتماد النطاق وحجم الاستخدام المتوقع؛ وهذه البنود الرئيسية: