طبقة المعرفة والحوكمة

تجيب الحوكمة في ContextMint عن سؤال «هل قاعدة الكود هذه سليمة؟» (خريطة الجودة، نتائج DRY، بوابات التصحيح). تجيب علامة تبويب المعرفة في Engine عن سؤال «ماذا اكتشفت الفهرسة، وماذا فعل النظام؟» — حقائق بنيوية إضافةً إلى تدقيق أنشطة منقَّح. معاً، يمنحان المشغّلين وقادة الفرق مساراً قابلاً للتحقق دون فتح ملفات JSON الجانبية أو VS Code.

أين تفتحها: ContextMint Engine ← شريط التنقل الأيسر ← المعرفة (http://localhost:1420 في تطوير المتصفح، أو نافذة سطح المكتب بعد npm run tauri dev). يتطلب تشغيل contextmint serve على الاتصال الداخلي (loopback).

واجهتان — لا تخلط بينهما

السؤال علامة تبويب Engine المستخدم النموذجي
هل لدينا تكرار / مخالفة لسياسة الإعداد / ملفات ضخمة؟ الجودة (+ درج الحوكمة في VS Code) القائد التقني، المهندس المعماري
ما المسارات والخدمات والمستندات التي فهرسناها؟ من يستورد ممن؟ المعرفة ← البنية هندسة المنصة، SRE، مراجع الأمان
هل استخدمت المحادثة مسار الحوكمة السريع؟ ما كان زمن الاستجابة؟ أي مساحة عمل؟ المعرفة ← النشاط الامتثال، الدعم، المشغّل

تعمّق في بوابات التصحيح وفحوصات الجودة: التصحيحات والحوكمة. نظرة عامة على صينية Engine: دليل مشغّل Engine.

المعرفة ← البنية

بعد الفهرسة، يكتب ContextMint ملفات طبقة المعرفة الجانبية ضمن <workspace>/.contextmint/registries/ — المسارات والخدمات والمستندات والأقسام، و(عند توفّر مستخرِجات لها) السياسات. قسم البنية هو متصفّح قابل للبحث فوق هذه الكائنات، وليس بحثاً مباشراً في ملفات المصدر.

تبويبات النوع

  • المسارات — طريقة HTTP + المسار، ملف المعالج، مركز التسجيل (app/api.py)، والتركيب في main.py
  • الخدمات — رموز الخدمة، ملف التعريف، مستوردو المستهلكين
  • المستندات — أقسام PDF/Markdown مفهرَسة ككائنات مستندات
  • الأقسام — أقسام wiki/HTML (عند تشغيل مستخرِجات الموصلات)
  • السياسات — قواعد سياسة الحوكمة/CI (وقت الفهرسة؛ تنمو مع شحن المستخرِجات)

يعرض كل صف درجة توافق (Agreement) (0–1) من إشارات وقت الفهرسة — شبيهة من حيث الروح ببيانات الثقة الوصفية للحوكمة في المحادثة، لكنها لثقة الاستخراج البنيوي.

معاينة الرسم البياني (اللوحة اليمنى)

  • المسار — سلسلة رأسية: التركيب ← التسجيل ← المعالج ← المسار
  • الخدمة — بطاقة تعريف + قائمة مستهلكين (وليست سلسلة طويلة واحدة مضلِّلة)
  • تركيز المستند / الملف — الملف المركَّز + جوار الاستيرادات / المستوردة منه
علامة تبويب المعرفة في Engine — قائمة بنية المسارات ورسم بياني التسجيل
المسارات: اختر صفاً لرؤية توصيل التركيب ← app/api.py ← المعالج.

المعرفة ← النشاط

يتابع قسم النشاط سجل التدقيق JSONL الإلحاقي فقط للخادم. تشمل الأحداث بثوث المحادثة، وقرارات المسار السريع للحوكمة، ومعالم الفهرسة، وتغييرات ACL، وتأكيدات الإجراءات — بدون نص استعلام خام (خصوصية بالتصميم).

  • التصفية حسب مساحة العمل، ونوع الحدث type (مثل governance_fast_path)، والبحث النصي في البيانات الوصفية
  • قائمة منذ المنسدلة: 15 دقيقة، ساعة واحدة، 6 ساعات، أو 24 ساعة — هذا مرشّح عرض، وليس حذفاً
  • تصدير JSON — تنزيل أحداث منقَّحة لمراجعة الدعم أو الامتثال
علامة تبويب المعرفة في Engine — تدفق تدقيق النشاط مع أحداث governance_fast_path
النشاط: أثبت أن إجابة محكومة استخدمت مسار مخزن النتائج (رشّح بـgovernance_fast_path).

هل تُحفَظ البيانات لمدة 24 ساعة فقط؟

لا. الاستمرارية ونافذة زمن الواجهة أمران مختلفان.

البيانات مستمرة؟ الموقع حد الواجهة
البنية (المسارات، الخدمات، المستندات…) نعم — حتى إعادة الفهرسة التالية <workspace>/.contextmint/registries/*.json لا يوجد (قائمة مقسَّمة إلى صفحات؛ غير مبنية على الزمن)
تدقيق النشاط نعم — JSONL إلحاقي فقط ~/.contextmint/audit/<workspace_id>.jsonl (تجاوز: AUDIT_DIR) العرض الافتراضي: آخر ساعة؛ الحد الأقصى المنسدل: 24 ساعة؛ حتى 2000 حدث لكل طلب
نتائج الجودة نعم — مخزن الفحص خريطة جودة مساحة العمل (انظر علامة تبويب الجودة) غير متاح في علامة تبويب المعرفة

تدور ملفات التدقيق عندما يتجاوز حجم الملف الواحد ~50 ميغابايت (تُعاد تسميته بلاحقة زمنية)؛ تبقى الأسطر القديمة على القرص. لا يحذف ContextMint حالياً سجلات JSONL تلقائياً حسب العمر — سقف الـ24 ساعة هو فقط ما تحمّله واجهة Engine افتراضياً لسرعة الاستجابة. للتاريخ الأقدم، اقرأ الملفات مباشرةً ضمن ~/.contextmint/audit/ أو استخدم تصدير JSON ضمن أوسع نافذة.

قابليات ضبط المشغّل: engine.audit_tail_default_since_minutes، وengine.audit_tail_max_since_minutes (1440 = 24 ساعة) في إعدادات الخادم الافتراضية — انظر مرجع الإعدادات.

أمثلة عملية — الحوكمة والمعرفة معاً

المثال 1 — تحقّق من إجابة DRY محكومة (C4 UAT)

  1. في VS Code، اسأل ضمن مسار Repo: «هل هناك منطق مكرَّر دون داعٍ في قاعدة الكود هذه؟»
  2. معيار النجاح: إشعار إجابة من خريطة الجودة؛ يُظهر التفكير مسار مخزن النتائج.
  3. في Engine ← المعرفة ← النشاط، اضبط «منذ» على 24 ساعة، ورشّح النوع governance_fast_path.
  4. تأكد من وجود صف جديد: معرّف مساحة العمل، زمن الاستجابة، بيانات وصفية اختيارية لـgovernance_path / النتائج في JSON المصدَّر (بدون نص استعلام).

تُظهر علامة تبويب الجودة ماذا وُجد؛ ويُظهر النشاط أن المسار السريع قد تشغّل — معاً يدعمان أسئلة التدقيق من الأمان أو إدارة المشاريع.

المثال 2 — التحقق المتقاطع لنتيجة سياسة إعداد

  1. Engine ← الجودة — لاحظ نتيجة سياسة إعداد على app/services/foo.py (مهلة مضمَّنة بالنص).
  2. Engine ← المعرفة ← البنية ← الخدمات — ابحث عن foo.
  3. اختر صف الخدمة؛ تسرد لوحة الرسم البياني المستهلكين — الملفات التي تستورد الخدمة.
  4. قرّر نطاق التأثير قبل إعادة الهيكلة: مستهلكون أكثر ← مخاطرة حوكمة أعلى للتطبيق المُساعَد.
علامة تبويب المعرفة في Engine — قائمة الخدمات مع رسم بياني للمستهلكين
الخدمات: تدعم قائمة المستهلكين فرز الحوكمة بعد نتيجة جودة.

المثال 3 — الثقة بإجابة محادثة بنيوية (B3)

  1. مسار Repo في VS Code: «ما المسار الذي يعالج POST /api/v1/chat/stream؟»
  2. يجب أن تستشهد الإجابة بـapp/routers/chat.py والتسجيل في app/api.py.
  3. Engine ← المعرفة ← المسارات — ابحث عن chat/stream.
  4. يجب أن تتطابق درجة التوافق وسلسلة الرسم البياني مع الإجابة. توافق منخفض أو سجل فارغ ← أعد الفهرسة أو تحقّق من ثغرات المستخرِج قبل الوثوق بأسئلة توجيه الإنتاج.

المثال 4 — حوكمة المستندات (الدليل الإرشادي / ADR)

  1. Engine ← المعرفة ← المستندات — ابحث عن ADR أو كلمة سياسة مفتاحية.
  2. اختر صف قسم؛ يُظهر الرسم البياني جوار الملف لموقع ذلك المستند في المستودع.
  3. استخدمه عند التوفيق بين السياسة المكتوبة (المستندات) ونتائج سياسة الكود (علامة تبويب الجودة) — سيتقارب نوع السياسات مع نفس النموذج وقت الفهرسة بمرور الوقت.
علامة تبويب المعرفة في Engine — قائمة المستندات مع رسم بياني لتركيز الملف
المستندات: تُختصر التسميات الطويلة في الجدول؛ النص الكامل في التلميح / لوحة الرسم البياني.

قائمة تحقق لقطات الشاشة (للمستندات والعرض الدوّار)

التقط بعرض 1280 بكسل (السمة الداكنة). احفظ ضمن contextmint-ai/src/assets/img/screenshots/ ثم شغّل npm run build.

اسم الملف ما الذي يجب التقاطه
engine-knowledge-structure.png قسم البنية — منتقي مساحة العمل، تبويبات النوع مع العدادات، تقسيم الجدول + الرسم البياني
engine-knowledge-routes.png تبويب المسارات — مسار API واحد محدَّد؛ ظهور رسم بياني التركيب ← api.py ← المعالج
engine-knowledge-services.png تبويب الخدمات — التعريف + قائمة المستهلكين (بعد فحص جودة اختياري)
engine-knowledge-documents.png تبويب المستندات — صف ADR أو دليل إرشادي؛ رسم بياني لتركيز الملف
engine-knowledge-activity.png قسم النشاط — منذ = 24 ساعة؛ رشّح governance_fast_path؛ ظهور حدث واحد على الأقل
engine-knowledge-export.png النشاط — زر تصدير JSON + تنزيل من المتصفح أو إشعار (اختياري)

قبل التقاط الصور:

  • افهرس مستودعك في VS Code؛ شغّل محادثة محكومة واحدة على الأقل (استعلام C4) حتى يحتوي النشاط على أحداث
  • شغّل فحص جودة حتى تتمكن من الإشارة إلى نتيجة حقيقية في سيناريو المثال 2
  • استخدم npm run dev في engine/desktop + contextmint serve

الاقتران مع واجهة حوكمة VS Code

  • درج الحوكمة (Context Lens) — نتائج حيّة أثناء المحادثة؛ لا تكرّرها المعرفة
  • شريحة الثقة (Governance · HIGH) — ثقة الإجابة؛ يثبت تدقيق النشاط المسار المتّبع
  • الجدول الزمني للتفكير — موجَّه للمطوّرين؛ يستخدم المشغّلون Engine لإثبات إجمالي

ملاحظات المؤسسات / الامتثال

  • يحذف JSONL التدقيق المطالبات الخام ونص الاستعلام — يحتفظ فقط بالتجزئات (hashes) والبيانات الوصفية
  • التصدير + حزمة الدعم (علامة تبويب حول) للاستجابة للحوادث
  • تظهر أحداث منح/إلغاء ACL في النشاط عند تفعيل مصادقة المؤسسات
  • انظر الثقة والأمان و BYOK والمؤسسات

المشكلات: استكشاف الأخطاء وإصلاحها ← Engine. مرجع المطوّر: documentation/ENGINE-D-023-KNOWLEDGE-AUDIT-DASHBOARD.md في مستودع المنتج.