توثيق ERPOSالمرجع التنفيذي للمطورين

فحص تعارض المصالحConflict of interest check

B16الاستقبال والتعارضمتطلب وارد في الملفات يحتاج اعتمادًا قانونيًا اقتراح هندسي

قبل أن يجلس عميل محتمل مع محامٍ، وقبل تنشيط أي ملف، يبحث النظام في كل أطراف المكتب الحالية والسابقة والزوار وسوابق الموظفين عن تعارض محتمل، ويعرض النتائج على الشريك أو مسؤول التعارض ليقرر. تشابه الاسم وحده لا يرفض عميلًا ولا يُصدر قرارًا: هو معلومة للمراجعة.

بطاقة الميزة

البندالقيمة
1. اسم الميزةفحص تعارض المصالح — Conflict of interest check
2. المعرّف (Feature ID)B16
3. مصدر المتطلبدليل المطور ص31-32 (الميزة 4)، الوثيقة المعمارية: التطبيع وRapidFuzz، تقييم القرارات الهندسية: إلغاء دليل المطابقة المصوّر
4. تصنيف المحتوىمتطلب وارد في الملفات أنواع التعارض وخطورتها الافتراضية، أوقات الفحص، التطبيع، المعرفات الدقيقة، شبكة العلاقات، سرية الفحص، القرار البشري. يحتاج اعتمادًا قانونيًا جدول الخطورة ومدد التبريد. اقتراح هندسي أوزان المطابقة.
الوحدةالاستقبال والتعارض
الأدوار المعنيةشريك، مسؤول التعارض، محامٍ، سكرتارية
درجة الخطورةحرجة
حالة الاعتماديحتاج اعتمادًا قانونيًا
المنصات المرتبطةوزارة التجارة — واثق (بيانات السجل التجاري)

5الهدف التجاري والمشكلة التي تعالجها

نظام المحاماة يمنع قبول وكالة ضد موكّل الخصم في النزاع نفسه أو المرتبط «بنفسه أو بواسطة محامٍ آخر» حتى بعد انتهاء الوكالة (دليل المطور ص31) يحتاج اعتمادًا قانونيًا؛ الفحص على مستوى المكتب كله.

أنواع التعارض في الدليل (دليل المطور ص31) وخطورتها الافتراضية (كلها في جدول قابل للتعديل يحتاج اعتمادًا قانونيًا):

النوعالخطورة الافتراضية في الدليلالسند كما ورد
مباشر: الخصم موكّل حاليمنع—
مثّلنا الخصم سابقًا في النزاع نفسه أو المرتبطمنعالمادة 15 كما ذكرها الدليل يحتاج اعتمادًا قانونيًا
جهة عمل سابقة لمحامٍ في المكتب ضمن مدةمنعالمادة 14 كما ذكرها الدليل يحتاج اعتمادًا قانونيًا
عقد جزئي سابق ضمن مدةمنعالمادة 14 يحتاج اعتمادًا قانونيًا
طرف مرتبط (شركة يملكها الموكّل، قريب)يحتاج قرارًا—
تعارض تجاري (متنافسان في صفقة)يحتاج قرارًا—
مصلحة شخصية (قرابة محامٍ بطرف)إفصاح—
تشابه اسم فقطمعلومة—

حتى «منع» في الجدول توصية للمراجع لا رفض آلي: النظام لا يرفض عميلًا ولا يرسل رسالة رفض من تلقاء نفسه. القرار مكتوب ومسبب من إنسان.

7المستخدمون والأدوار والصلاحيات

السكرتارية أو المحامي يطلب الفحص ويرى فقط «لا تطابق» أو «تطابق محتمل أُحيل للمراجعة». الشريك ومسؤول التعارض يرون التفاصيل ويقررون (دليل المطور ص32).

8شروط البدء والاعتماديات

B02 الموكّلون والأطراف والعلاقات الأطراف بالتطبيع والبصمات، Related Party، Staff Prior Engagement. خوارزمية فحص تعارض المصالح وتطبيع الأسماء والنصوص العربية.

9السيناريو الأساسي خطوة بخطوة

  1. الفحص يُطلق عند: حجز زيارة (بالأسماء)، فتح ملف (بالمعرفات الكاملة)، إضافة طرف، تعيين موظف جديد، وتغيّر بيانات طرف في ملف مفتوح (دليل المطور ص31).
  2. تطبيع الأسماء والبحث في: أطراف الملفات المفتوحة والمغلقة، الزوار، سوابق الموظفين، ملاك الشركات من وزارة التجارة — واثق (بيانات السجل التجاري) عند توفرها.
  3. مطابقة دقيقة بالمعرّف (بصمة HMAC) = «مؤكد» بغض النظر عن الاسم.
  4. مطابقة تقريبية للاسم بدرجة 0–100 وعتبة من الإعداد، وعلاقات حتى قفزتين.
  5. كل نتيجة Conflict Hit بسبب المطابقة والدرجة والخطورة المقترحة.
  6. المراجع يقرر: لا تعارض / قبول بشروط (ينشئ حاجزًا B06 فريق الملف وحواجز المعلومات) / اعتذار. القرار مسبب ومقفل.
  7. الملف لا يصبح «نشطًا» إلا بفحص معتمد B03 ملف العمل القانوني.

10السيناريوهات البديلة والاستثناءات

تغيير القرار: فحص جديد؛ المعتمد لا يُعدّل (دليل المطور ص32). الاعتذار للعميل: رسالة مهذبة لا تذكر السبب B17 الزوار والاستقبال والمواعيد. تنازل الأطراف بموافقتهم: لا يُبنى زر قبل جواب قانوني (دليل المطور ص32) يحتاج اعتمادًا قانونيًا. تجاوز الشريك للبدء قبل اكتمال الفحص (زيارة): مسجل بسبب B17 الزوار والاستقبال والمواعيد.

11المدخلات والحقول

الاسم العربيالاسم البرمجيالنوعإلزاميالتحققالقيمة الافتراضيةمصدر البيانات
نوع الموضوعsubject_typeSelectنعمزيارة / ملف / طرف جديد / موظف جديد—(دليل المطور ص32)
الموضوعsubjectDynamic Linkنعم——المُطلِق
نفّذه / وقتهrun_by / run_atUser / Datetimeتلقائي——الخادم
الحالةstatusSelectتلقائيقيد الفحص / لا نتائج / نتائج للمراجعة / مقرر——
القرارdecisionSelectعند المراجعةلا تعارض / قبول بشروط / اعتذار—المراجع
سبب القرارdecision_reasonTextنعم مع القرار30 حرفًا على الأقل افتراض تنفيذي—المراجع
قررهdecided_byLink → Userتلقائيشريك أو مسؤول تعارض——
النتيجة: الاسم المفحوصchecked_nameData———Conflict Hit
النتيجة: الطرف/الملف/الصفةhit_party / hit_matter / hit_roleLink / Link / Data———Conflict Hit
النتيجة: سبب المطابقةmatch_reasonSelect—معرّف / اسم كامل / أول+عائلة / لاتيني / علاقة—الخوارزمية
النتيجة: الدرجةscoreFloat—0–100—الخوارزمية
النتيجة: الخطورة المقترحةseveritySelect—منع / قرار / إفصاح / معلومة—Conflict Rule

12المخرجات والإشعارات والسجلات والتقارير

قائمة مراجعة لمسؤول التعارض. إشعار فوري عند تعيين محامٍ جهة عمله السابقة خصم في ملف مفتوح (دليل المطور ص32). سجل قرارات.

13قواعد العمل بصيغة قابلة للتحويل إلى كود

قواعد
RULE B16.1  exact id_hmac match -> match_reason "معرّف", score 100, "مؤكد"
RULE B16.2  name similarity alone -> severity at most "معلومة" unless rule table says otherwise; NEVER auto-decide
RULE B16.3  requester view: {status} only; details visible to Managing Partner / Conflict Officer
RULE B16.4  decision submitted -> immutable (submittable DocType); change = new check
RULE B16.5  decision "قبول بشروط" -> B06 wall for conflicted users
RULE B16.6  Legal Matter.status -> "نشط" requires decision in (لا تعارض, قبول بشروط)
RULE B16.7  party data change on open matter -> enqueue re-check

14حالات السجل وانتقالاتها وشروطها

منإلىالشرط
قيد الفحصلا نتائجلا تطابق فوق العتبة
قيد الفحصنتائج للمراجعةتطابق واحد على الأقل
لا نتائج / نتائج للمراجعةمقررقرار مسبب من المراجع (حتى «لا نتائج» يحتاج تأكيد المراجع في الملفات افتراض تنفيذي)

15نموذج البيانات والعلاقات والقيود والفهارس

Conflict Check 1 → n Conflict Hit؛ Conflict Rule؛ Related Party؛ Staff Prior Engagement. فهارس على normalized_name وبصمات المعرفات.

16DocTypes المطلوبة في Frappe

17الشاشات والعناصر والأزرار ورسائل الخطأ

شاشة المراجع: النتائج مرتبة بالخطورة ثم الدرجة، مع «لماذا تطابق؟» لكل سطر. شاشة الطالب: «تطابق محتمل أُحيل للمراجعة.» فقط.

18خدمات Backend ومسؤولية كل خدمة

legal_erp.conflicts.run(subject) في طابور short، legal_erp.conflicts.decide، الخوارزمية في Frappe بـ RapidFuzz (الوثيقة المعمارية).

19واجهات API الداخلية

POST /api/method/legal_erp.api.v1.conflicts.run

تشغيل فحص.

الصلاحية: سكرتارية، محامٍ، شريك.

JSON · الطلب
{
  "subject_type": "زيارة",
  "names": [
    "مُحمّد بن عبدالله التجريبي",
    "شركة الاختبار المحدودة"
  ]
}
JSON · الاستجابة
{
  "check": "CC-2026-0031",
  "status": "نتائج للمراجعة"
}

20الأحداث والمهام الخلفية والجدولة وإعادة المحاولة

إعادة فحص عند تغيّر بيانات الأطراف، وعند تعيين موظف. لا فحص دوري ثقيل بلا سبب اقتراح هندسي.

21التكاملات المرتبطة بالميزة وحدودها

وزارة التجارة — واثق (بيانات السجل التجاري) لملاك الشركات بعد الاعتماد يحتاج تحققًا أو موافقة رسمية.

22الأمن والخصوصية والتدقيق والاحتفاظ والحذف

الفحص نفسه سري (دليل المطور ص32): لا يكشف وجود ملفات لا يملك الطالب صلاحيتها. القرارات غير قابلة للحذف.

23حالات الاختبار

المعرّفالنوعالسيناريوالنتيجة المتوقعة
B16-T01قبول«مُحمّد بن عبدالله العتيبي» مقابل «محمد عبد الله العتيبي»تطابق (دليل المطور ص32).
B16-T02قبولمعرّف مطابق باسم مختلفمؤكد.
B16-T03قبولخصم كان موكّلًا في ملف مغلق قبل سنواتيظهر.
B16-T04قبولتعيين محامٍ جهة عمله السابقة خصم في ملف مفتوحتنبيه فوري.
B16-T05أمنيالطالب يرى تفاصيل ملف ليس في فريقهلا.
B16-T06سلبيتنشيط ملف دون قراريُمنع.
B16-T07سلبيتشابه اسم فقطلا قرار آلي ولا رسالة رفض.

24معايير القبول

25تعريف الاكتمال (Definition of Done)

26القرارات المفتوحة والمخاطر والاعتمادات المطلوبة

جدول الخطورة ومدد التبريد والمواد يحتاج اعتمادًا قانونيًا (OD-03). زر التنازل مؤجل.