تنسيق الوكلاء · ناقل المهام الموجه بالأحداث · مذكرة إثبات معمارية

تنسيق الوكلاء الموجه بالأحداث عبر سجل المهام (task_bus.jsonl): بنية انعدام الاستقصاء الدوري والتنفيذ المضاف فقط

توثيق هندسي لكيفية تنسيق عائلات النماذج اللغوية المتباينة (Claude وGemini وGrok والمشغلات الحتمية المحلية) دون حلقات انتظار مستهلكة للرموز أو تعارض في الحالة المشتركة.

Yazan: Atlas · Gemini 4 Argon · koşu ANU-ATLASMASTER-BOSLUK-SAYFALARI-KOSU-A-ONAYLI-3-1019 (ilk commit 2ce9cc4 11:46)Katkı: 9aac729 Atlas SEO, 220790e Flash JSON-LDYayımlayan: Yusuf Aziz · Atlas StudioDenetim: Reaper 19 Eki 2026 · 1. tur 24 iddia 9/9/5/1, yayından çekildi · 2. tur 22/2/0/0, yayına alındı (تدقيق Reaper 19 أكتوبر 2026 · الجولة 1: 24 ادعاء 9/9/5/1 سُحبت · الجولة 2: 22/2/0/0 نُشرت)التركيز (Odak): ناقل الأحداث · 2,344 حدثاً · 243 أداة (174 ناجحة · 16 فاشلة · 53 دون اختبار)

ملخص تنفيذي (TL;DR)

1. معضلة الاستقصاء الدوري وتعارض الحالة في الأنظمة متعددة الوكلاء

في الأنظمة الهندسية المعتمدة على وكلاء ذكاء اصطناعي متعددين (Multi-Agent Systems)، نادراً ما ينشأ الإخفاق التشغيلي من ضعف الاستدلال في النموذج المفرد؛ بل ينبع من غياب التزامن الصارم بين الوكلاء. عند تشغيل نماذج غير متجانسة—مثل Gemini للتركيب المعماري والتنفيذ غير التفاعلي، وClaude للتنسيق وقناة التواصل، وGrok للمراجعة النقدية الخارجية، إلى جانب مشغلات Python الحتمية—فإن مشاركة ملف حالة قابل للتعديل (Mutable Shared State) تؤدي إلى ثلاثة أعطال رئيسية:

تعالج بنية Atlas هذه الأعطال جذرياً دون تعقيد خوادم قواعد البيانات الخارجية، عبر الدمج بين سجل أحداث نصي مضاف فقط (Append-Only JSONL) وإشعارات نظام الملفات في نواة نظام التشغيل.

2. مخطط السجل المضاف فقط (task_bus.jsonl) وقانون البيان

يمثل ملف task_bus.jsonl المصدر الوحيد للحقيقة في تنسيق المهام وفق مواصفات JSON Lines ونمط تخزين الأحداث (Event Sourcing): يُمنع تعديل أي سطر موجود أو حذفه.

تستخدم أداة الكتابة الموحدة (kosucu/task_bus_yaz.py، الأسطر 156–184) مفاتيح JSON الفعلية التالية:

حجم السجل المقاس (wc -l task_bus/task_bus.jsonl · 19 أكتوبر 2026): نما سجل task_bus.jsonl الحي من 1,630 حدثاً في اللقطة المرجعية و2,249 سطراً في لقطة 11:46 إلى 2,344 سطراً مضافاً في القياس الحي، مع تسجيل 0 حالة فقدان بيانات.

3. التوجيه الموجه بالأحداث على مستوى النواة: WatchPaths وصناديق الوارد

يرتكز العمود الثاني للبنية على مبدأ انعدام الاستقصاء الدوري (Zero-Polling). لا يحتوي أي وكيل على مؤقت يفحص السجل دورياً؛ بل يجري التوجيه عبر خط أنابيب حتمي من ثلاث مراحل:

  1. إسقاط فوري في صندوق الوارد: فور إضافة سطر عبر task_bus_yaz.py—أو عند التقاط التغيير بواسطة خدمة المراقبة (com.ustakil.pano_izle) المعتمدة على launchd WatchPaths—يُنشأ ملف مهمة مستقل (مثل gelen_gemini/pano_<ID>.md) داخل صندوق الوارد الخاص بالوكيل المستهدف.
  2. التشغيل الآلي حسب الوسم: إذا تضمنت المهمة وسم تشغيل غير تفاعلي مثل [AGY] أو [AGY:flash]، يقوم المراقب بتمريرها فوراً إلى المشغل غير التفاعلي (kosucu/agy_atim.sh أو kosucu/vezir_atim.sh) دون انتظار تدخل بشري. أما المهام التي تتطلب جلسة متصفح مصادق عليها فتبقى في صندوق جلسة بيئة التطوير.
  3. الأرشفة غير المدمرة: بمجرد قراءة المهمة، ينقلها الوكيل إلى مجلد arsiv/ دون حذفها؛ وبذلك يكون خلو صندوق الوارد دليلاً فورياً بتعقيد O(1) على عدم وجود مهام معلقة.

بفضل هذا التصميم، يبلغ استهلاك الرموز في أوقات السكون صفراً مطلقاً، بينما لا يتجاوز زمن الاستيقاظ عند ورود أمر جديد أجزاءً من الثانية.

4. القفل غير المتكرر للمهام، مشغلات Enkidu ومقاومة الانصياع

لضمان عدم تنفيذ المهمة الواحدة مرتين عند عمل عدة مشغلات بالتوازي، تلتزم كل مهمة بآلة حالة ثلاثية المراحل تضمن عدم التكرار (Idempotency):

يتولى Enkidu (bot/olgular.json:O-005, O-006) فحص هذه البنية؛ ففي نطاق 21 مهمة تشغيلية، سجل 62 دورة ناجحة (61–62 OK) خلال 24 ساعة مع 0 حالة غير مقاسة، متتبعاً 2,017 سجلاً (16 منها بلا قارئ) و354 مكوناً (190 مؤقتاً و35 عملية نشطة و81 مرشحاً للأرشفة).

تفصيل الاختبارات الذاتية وبوابة الأوامر بشفافية كاملة: في سجل bot/olgular.json:O-001 (18 أكتوبر 2026)، من أصل 243 أداة مسجلة، اجتازت 174 أداة الاختبار الذاتي (بإجمالي 3,129 فحصاً في 101 ثانية)، في حين فشلت 16 أداة في الاختبار الذاتي (dustu: 16) وافتقرت 53 أداة إلى نقطة اختبار ذاتي (ozsinamasiz: 53)؛ وفي الفحص الحي بتاريخ 19 أكتوبر (reaper_denetci.py --selftest-karne) يُرصد 262 ملف بايثون و261 أداة (site-alet-sozlesmesi = AKSAK). وفي انضباط الأوامر، سجلت لقطة O-003 (18 أكتوبر) 29 أمراً بصفر تجاوز، بينما أظهر القياس الحي في 19 أكتوبر (reaper_denetci.py --dogrula-orani) وجود بوابة DOGRULA في 17 من أصل 21 أمراً (81.0%) وبقاء 4 أوامر دون بوابة DOGRULA (site-dogrula-kapisi = AKSAK).

وفي تجربة المقاومة المعرفية BENLİK-1013 (bot/olgular.json:O-007) على 18 حكماً (n = 162 تجربة): بلغت نسبة الانصياع لضغط السلطة المجردة 0/18، والانخداع بالأدلة المزيفة 0/18، وتحديث الحكم بالدليل الحقيقي 16/18 (88.9%).

5. بطاقة الأدلة والقياسات الحية (موثقة بالملف والسطر)

يوثق الجدول التالي جميع المقاييس المعمارية مباشرة من ملفات النظام الحية مع سمات data-kaynak:

المكون / المعيارالقيمة الحية المقاسةحالة التحقق / القاعدةالمصدر (ملف:حقل · تاريخ)
سجل ناقل المهام (task_bus.jsonl) 2,344 سطر حدث حي (لقطة 11:46: 2,249 · المرجع: 1,630) إضافة فقط (Append-Only) · 0 كتابة فوقية · أول ts: 2026-10-03T15:09 (السطر 3؛ 97 سطراً ضمن 1–538 بلا ts) task_bus/task_bus.jsonl:1-2344 · 2026-10-19
مخطط السجل ونسبة BEYAN الحية نسبة BEYAN الحية: 72.3% (422/584 · الهدف ≥80%) المفاتيح: id, ts, ajan, claim + اختياري hedef, kanit_yolu · لا بوابة BEYAN ميكانيكية في task_bus_yaz.py (site-beyan-olcu = İDDİA) kosucu/task_bus_yaz.py:156-184 · reaper_denetci.py · 2026-10-19
سجل الأدوات والاختبارات الذاتية (O-001 + حي) 243 أداة: 174 ناجحة · 16 فاشلة · 53 دون اختبار · 3,129 اختباراً (101 ثانية) الفحص الحي: 262 ملف بايثون، 261 أداة (site-alet-sozlesmesi = AKSAK) bot/olgular.json:O-001 · data/selftest_karne.jsonl · 2026-10-19
مشغل Enkidu وجرد السجلات (O-005 / O-006) 21 مهمة · 62 ناجحة (61–62) / 24 ساعة · 0 غير مقاس · 2,017 سجلاً · 354 مكوناً 190 مؤقتاً · 35 عملية نشطة · 81 مرشح أرشفة · 16 سجلاً بلا قارئ bot/olgular.json:87-125 · 2026-10-18
انضباط بوابة الأوامر DOGRULA (O-003 + حي) O-003 (18 أكتوبر): 29 أمراً / 0 بلا بوابة · القياس الحي (19 أكتوبر): 17/21 (81.0%) ببوابة DOGRULA، و4 أوامر بلا بوابة حالة Reaper الحية: site-dogrula-kapisi = AKSAK bot/olgular.json:O-003 · reaper_denetci.py --dogrula-orani · 2026-10-19
آلية التوجيه والقفل غير المتكرر launchd WatchPaths (com.ustakil.pano_izle) · 0 استقصاء pano_izle_daemon.py --tek-tur · task_bus_yaz.py:177 (selftest 9/9) com.ustakil.pano_izle.plist · kosucu/task_bus_yaz.py:177 · 2026-10-19
تجربة مقاومة الانصياع BENLİK-1013 (O-007) n = 162 تجربة · 18 حكماً · 16/18 (88.9%) تحديث بالدليل الحقيقي الانصياع للسلطة: 0/18 · الانخداع بدليل مزيف: 0/18 (Δskor = 0.0000) bot/olgular.json:127-147 · 2026-10-14

6. الأسئلة الشائعة (FAQ)

لماذا يُستخدم ملف JSONL مضاف فقط (task_bus.jsonl) بدلاً من قاعدة بيانات تقليدية لتنسيق الوكلاء؟

يوفر سجل JSON Lines المضاف فقط كتابة ذرية سريعة دون الحاجة إلى خادم قاعدة بيانات خارجي، ويتيح الفحص المباشر بأدوات git وPOSIX، كما يتكامل مع خدمة WatchPaths في نواة نظام التشغيل لإطلاق الأحداث عبر 2,344 حدثاً حياً (2,249 في لقطة 11:46؛ و1,630 في اللقطة المرجعية).

كيف تمنع بنية انعدام الاستقصاء (Zero-Polling) هدر الرموز الحاسوبية؟

لا يشغّل أي وكيل حلقات انتظار وفحص دوري. بدلاً من ذلك، تراقب خدمة launchd WatchPaths (com.ustakil.pano_izle) ملف السجل وتشغّل pano_izle_daemon.py --tek-tur لوضع مظروف مهمة في صندوق الوارد الخاص بالوكيل المستهدف وتشغيل agy_atim.sh أو vezir_atim.sh عند الطلب.

كيف يُمنع تنفيذ المهمة نفسها مرتين من قِبل مشغلات متوازية؟

يسجل المشغل الذي يتولى المهمة سطر قفل (<ID>-ISLENIYOR) قبل البدء، ثم يختم التنفيذ بسطر (<ID>-YANIT) مرتبط بمسار الدليل kanit_yolu؛ وترفض بوابة الكتابة في kosucu/task_bus_yaz.py:177 أي استجابة مكررة للمعرّف ذاته (selftest 9/9 OK).

ما الذي ينص عليه قانون البيان (BEYAN) وما نسبة الالتزام الحية؟

تنص القاعدة المعمارية على بدء كل ادعاء بترويسة BEYAN: وشرط الدحض، غير أن أداة task_bus_yaz.py لا تفرض بوابة رفض ميكانيكية لترويسة BEYAN: عند الكتابة. وفي قياس Reaper الحي بتاريخ 19 أكتوبر 2026 (reaper_denetci.py --beyan-orani)، يبدأ 72.3% (422/584؛ الهدف ≥80%، الحالة: İDDİA) من السجلات بترويسة BEYAN:. وفي بوابة الأوامر سجلت لقطة O-003 (18 أكتوبر) 29 أمراً بصفر تجاوز، بينما أظهر القياس الحي في 19 أكتوبر وجود بوابة DOGRULA في 17 من 21 أمراً (81.0%) و4 أوامر دون بوابة (AKSAK).

المصادر (Kaynaklar)

المواصفات التقنية الأولية والأبحاث الموثقة التي تستند إليها القياسات الهندسية في هذه الصفحة:

دراسات تقنية ذات صلة: للتدقيق المستقل في مخرجات ناقل المهام، راجع البوابة العربية، والمدقق ريبير، والحكم المعزول عن السياق وبوابة الدحض، وبروتوكول تجميد هوية الوكيل، وبوابات QAJAN الميكانيكية الست.