كيف يعمل

Decision Gate هي آلية محددة رسميًا تحول التأكيدات المختارة من الوكلاء وانتقالات سير العمل إلى مطالبات مقبولة مدعومة بالأدلة. توضح هذه الصفحة كيفية: ما يجب أن تصبح عليه المطالبة قبل أن يمكن التحقق منها، وما يجب أن تثبته الأدلة قبل أن يمكن استخدامها، وما يعنيه "مقبول" بدقة كافية للبناء عليه. لا تدعي أنها تحل مشكلة الهلوسة. بل تدعي شيئًا أضيق وأكثر فائدة: أن المطالبات التي يختار سير العمل الاهتمام بها يمكن أن تُجعل تنتج دليلًا قبل أن تنتج عواقب.

وضع القراءة

الرسالة

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

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

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

قد يظل الممثل عشوائيًا. لا يجب أن يكون القبول كذلك.

الهلوسة هي جزء فقط من المشكلة

“الهلاوس” عادةً ما تشير إلى مخرجات نموذج تكون خاطئة أو مصنوعة. في الأنظمة الوكيلة، الفشل المهم تجارياً يكون أوسع: الوكيل يؤكد أن شرطاً ما قد تم تحقيقه، والنظام المضيف يتقدم كما لو أن التأكيد كان حقيقة تشغيلية. “جميع الاختبارات ناجحة.” “الحالة المذكورة موجودة.” “اكتملت الهجرة.” “العميل مؤهل.”

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

تبدأ Decision Gate برفض الاختصار الذي يسبب الضرر: اعتبار إعلان الممثل الطليق كسلطة قبول.

ما يعنيه معرفة شيء ما

قبل أي آلة، سؤال: ماذا يتطلب الأمر لمعرفة أن “الاختبارات ناجحة” هو أمر صحيح؟

ليس هناك يقين بالمعنى الفلسفي. التحقق دائمًا نسبي لإجراء ما: عملية معينة، باستخدام أدلة معينة من مصادر معينة، تحت افتراضات محددة، أثبتت فرضية محددة في وقت محدد. تحتوي تلك الجملة على أجزاء تحمل الأعباء. غير المصدر وستحصل على حقيقة مختلفة. غير النطاق، أي التزام، أي حساب، أي سجل، وستحصل على حقيقة مختلفة. غير الوقت، وقد لا تحصل على حقيقة على الإطلاق.

تقوم معظم الأنظمة بتسوية هذا إلى قيمة منطقية وتفقد كل ما جعل القيمة المنطقية ذات معنى. يحتفظ Decision Gate بالهيكل. ادعاؤه محدد عمدًا: يمكنه تحديد ما إذا كانت إجراءً مسمىً، باستخدام أدلة مسماة بموجب سياسة مسماة، قد أسست فرضية مسماة. تعتمد مصداقية النتيجة على القانون، والأدلة، والسلطات التي أنتجتها، ويكون النظام صادقًا بشأن ذلك الاعتماد بدلاً من إخفائه خلف درجة ثقة.

يتضح أن هذا الادعاء المحدود هو بالضبط ما يحتاجه سير العمل الوكالي، لأن سير العمل لا يحتاج إلى حقيقة ميتافيزيقية. يحتاج إلى معرفة ما إذا كان يمكنه المتابعة.

شروط الكتابة

تعذر التحقق من التعليمات الغامضة، لذا فإن التحويل الأول هو من النثر إلى التزامات إثبات مكتوبة. “أضف خمسة اختبارات وتأكد من نجاحها” تصبح مجموعة مغلقة من الاقتراحات:

P1: new_test_count == 5
P2: required_test_result_count == 5
P3: all(required_test_status == PASSED)
P4: tested_commit_digest == proposed_delivery_commit_digest

Completion law: P1 AND P2 AND P3 AND P4

التحرك المهم ليس أن اللغة أصبحت حقيقة. بل هو أن جملة غامضة أصبحت مجموعة مغلقة وقابلة للتفتيش من الالتزامات التي إما أن تكون صحيحة أو لا تكون.

كل شرط يعلن عن مجال ملاحظة وعبارة محددة عليه، والمجالات مغلقة عن عمد: الأعداد الصحيحة، الأعداد العشرية الدقيقة، القيم البوليانية، السلاسل المحدودة، التواريخ، اللحظات، السجلات المغلقة. المقارنات التي تبدو تافهة تخفي دلالات حقيقية. هل 1 تساوي 1.0؟ هل “contains” تعني جزء من سلسلة أو عضوية مجموعة؟ هل الحقل الغائب مختلف عن الحقل null؟ هل التاريخ هو لحظة UTC أم يوم محلي؟ يتطلب Decision Gate القانون للإجابة على هذه الأسئلة قبل التقييم. يتم رفض العمليات غير الصالحة أو غير المتوافقة عند إنشاء الشرط؛ فهي لا تتسرب إلى وقت التشغيل وتظهر مرة أخرى كخطأ مريح.

المعنى، مفصول عن الاسترجاع

تعرف الحالة ما تعنيه الاقتراح: نطاقها، وموضوعها، وما هي الأدلة الكافية لها. إنها لا تحدد عمدًا أي واجهة برمجة تطبيقات (API) يجب استدعاؤها، أو أي ملف يجب قراءته، أو أي مزود يجب الوثوق به. هذه ارتباط منفصل وصريح: مسار اكتساب يصف كيف يمكن إنتاج ملاحظة لحالة.

تعتبر مسألة الفصل أكثر أهمية مما تبدو في البداية. “يتطابق الالتزام المختبر مع الالتزام الخاص بالتسليم” هو شرط ذو معنى واحد. قد تصل التجزئات من إيصال CI تم تقديمه بواسطة الحزام المستدعي، أو من بيان بناء موقع في مستند محلي، أو من تكامل مسجل مستقبلي يسترجعها مباشرة. لا يتغير الشرط عندما تتغير الأنابيب. يبقى القانون الدلالي مستقراً بينما يختلف الاستحواذ حسب النشر، وحسب حدود الخصوصية، وحسب بيئة العميل.

الأنظمة التي تدمج بين الاثنين - حيث تكون الحالة ببساطة استعلام مزود - لا يمكنها إجراء هذا التمييز، وهذا يكلفها: كل تغيير في مصدر البيانات يتحول بصمت إلى تغيير في المعنى.

الأدلة هي منتج، وليست نتيجة

الاختصار الشائع هو تصنيف الأدلة على سلم ثقة واحد. يرفض Decision Gate القياس. تحمل الأدلة مجموعة من الحقائق المستقلة: كيف دخلت إلى النظام، ما الشكل الذي تتخذه محتوياتها، من أو ماذا أنتجها، مما تم اشتقاقها، ما النطاق الدقيق الذي يتعلق به، متى تم ملاحظتها، ما الحمايات التي تغطي سلامتها، ومدى استقلالية مصدرها عن الفاعل الذي يتم التحقق منه.

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

القبول ليس كافيًا أيضًا. تمر المادة أولاً بحدود القبول - محددة، موثقة، معادية بشكل افتراضي. ثم يتم تقييم الأدلة المقبولة وفقًا لسياسة الحالة، وكل شرط مطلوب من التقييم يحل بدقة بطريقة واحدة:

ResolutionMeaning
Presentقيمة مكتوبة تلبي السياسة متاحة.
ObservedAbsentملاحظة كاملة معترف بها تثبت الغياب في كون معلن.
Missingالتقييم ليس لديه أي مرشح لهذا الهدف على الإطلاق.
Insufficientتوجد مرشحات، لكن لا يوجد أي منها يلبي سياسة الاستخدام.

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

صحيح، خطأ، غير معروف

يؤدي استخدام دالة منطقية على دليل صالح إلى إنتاج واحدة من ثلاث نتائج دلالية. صحيح: الدليل المقبول يفي بالدالة. خاطئ: يتعارض مع الدالة. غير معروف: الدليل المقبول لا يحدد الدالة بموجب السياسة المعلنة.

تجبر الأنظمة الثنائية على أحد خطأين. إذا تم اعتبار العمل غير المحلولة كخطأ، فإنك تفقد التمييز بين “المتناقض” و”لم يثبت بعد” — يعاقب سير العمل على البيانات المفقودة كما لو كانت فشلاً. إذا تم اعتبار العمل غير المحلولة كصحيح أو “أفضل جهد”، فإن التقدم غير المدعوم يتجاوز الحدود. تسمح الدلالات ذات القيم الثلاثة لسير العمل بالاحتفاظ بأمان دون التظاهر في أي اتجاه. يمكن للوكيل الحصول على مزيد من الأدلة، إصلاح العمل، أو التصعيد، مع العلم تمامًا بأي التزام لا يزال غير محلول.

الـ unknown له معنى دقيق، وليس مجرد سلة مهملات. إنه نتيجة دلالية مشتقة من أدلة مقبولة بشكل صحيح. فشل التحليل ليس unknown. انتهاء المهلة ليس unknown. شاهد مزور، رفض تفويض، حمولة مشوهة - هذه هي حالات فشل تشغيلية وفشل في النزاهة، محفوظة في عائلاتها المخصصة، لأنها تتطلب معالجة مختلفة: إعادة المحاولة، إنذار، تدقيق، رفض. نظام يغسل فشله إلى unknown قد دمر بهدوء تصنيف فشله الخاص.

جبر المتطلبات

تقرر الشروط الفردية نادراً أي شيء مثير للاهتمام. تتكون المتطلبات منها:

ALL(tests_passed, coverage_met, NOT critical_vulnerability_present)

ANY(primary_registry_match, two_independent_attestations)

QUORUM(2 of: ci_passed, security_scan_passed, reviewer_approved)

تقييم المتطلبات هو تركيبي وحتمي، ويحتفظ بالنتائج غير المحلولة: تظل المتطلبات المتعلقة بالمدخلات True وFalse وUnknown غير معروفة عندما لا يمكن للمدخلات أن تقررها بعد، بدلاً من أن تتجه افتراضيًا في أي اتجاه.

تمييز هيكلي واحد يقوم بعمل حقيقي هنا. اكتمال المرحلة - هل تم إنجاز هذه الوحدة من العمل؟ - قد يستخدم منطقًا غنيًا على نتائج الشروط، بما في ذلك النفي القانوني، لأن حقيقة الدليل ليست أحادية: يمكن اكتشاف ثغرة. طوبولوجيا سير العمل - أي المراحل يمكن أن تفتح بعد ذلك؟ - مقيدة بمتطلبات أحادية على التقدم المكتمل، لأن التقدم يجب ألا يتلألأ: بمجرد أن تكون المرحلة جاهزة لأن متطلباتها السابقة اكتملت، لا يمكن أن يجعلها أي تقدم غير ذي صلة غير جاهزة. منطق غني داخل مرحلة؛ حركة للأمام فقط من خلال سير العمل.

التقدم هو رسم بياني

سير العمل الحقيقي ليست قوائم. المهام تتفرع وتعيد الانضمام؛ الإصدار يحتاج إلى اثنين من ثلاثة مراجعات؛ المكونات غير المرتبطة تسير بالتوازي. نموذج Decision Gate يصور طوبولوجيا السيناريو كرسمة اعتماد نهائية — سلاسل، تفرعات، ماسات، جذور متعددة، مكونات غير متصلة — مع استعداد المرحلة المستمد من التقدم المكتمل المقبول بموجب قانون المتطلبات الأحادية.

كل مرحلة تكون في واحدة من أربع حالات بالضبط: غير جاهزة، حيث إن متطلباتها لم تتحقق بعد؛ جاهزة ولكن غير مفتوحة؛ مفتوحة وغير مكتملة؛ أو مكتملة، مما يعني أن قانون اكتمالها تم تقييمه على أنه صحيح في طفرة مقبولة. فتح مرحلة لا يعين أي وكيل، ولا يحتفظ بشيء، ولا يلغي شيئًا - يبقى جدولة العمل خارجًا، حيث تنتمي. وتنتهي السيناريوهات فقط من خلال قانون اكتمالها المعلن صراحةً على المراحل المكتملة، وليس من خلال حادث هيكلي مثل “تم الوصول إلى العقدة الأخيرة في المخطط.”

الرسم البياني هو ما يمنع السرد السلس للتقدم من أن يصبح مؤشر سير عمل ضمني. يمكن للنظام دائمًا أن يجيب، من الحقائق المقبولة بدلاً من النص: أي المراحل مؤهلة بشكل مثبت الآن؟

قيم أولاً، اقبل ثانياً

التقييم نقي. يقوم المقيّم باستهلاك القانون المعتمد، والتقدم المقبول، ولقطة الأدلة المعترف بها، ولا يقوم بأي إدخال/إخراج - لا قراءة ملفات، لا ساعة، لا شبكة، لا تخزين. من تلك المدخلات يستنتج مرشحًا: ربما دلتا إكمال وحدود جديدة، ربما محاولة خاطئة أو غير معروفة لا تغير شيئًا.

لم يتقدم المرشح بعد. كل عملية تشغيل لها تاريخ مقبول واحد فقط برأس حالي دقيق، ولا يلتزم المرشح إلا إذا كان الرأس الذي تم اشتقاقه منه لا يزال هو الرأس. قد يتسابق عاملان لتمديد نفس التشغيل؛ أحدهما يلتزم، ومرشح الآخر قديم — ليس فاسدًا، وليس مطبقًا جزئيًا، بل مشتق من حالة ملغاة، وقابل لإعادة الاشتقاق. تؤدي التقديمات المتكررة لنفس العملية إلى إعادة تشغيل النتيجة الأصلية بدلاً من التطبيق المزدوج. عندما تكون نتيجة الالتزام غير معروفة حقًا — قد يكون التخزين قد التزم بينما كانت الاستجابة مفقودة — فإن البروتوكول يبلغ عن تلك الحالة بصدق بدلاً من التخمين.

الفصل هو ما يجعل النظام بأكمله قابلاً للتدقيق: التقييم هو دالة حتمية يمكنك إعادة تشغيلها، والقبول هو نقطة تسلسل يمكنك فحصها.

القبول ليس له تأثير

قد تحمل الطفرة المقبولة نية: إرسال المبلغ المسترد، نشر الأثر، نشر الإصدار. يثبت القبول أن النية تنتمي إلى مراجعة مقبولة من التشغيل وهي مؤهلة للإرسال. لا يثبت أن النظام الخارجي قد استلمها أو نفذها أو نفذها مرة واحدة بالضبط. تعيش الآثار خارج الحدود، في أنظمة لها أنماط فشل خاصة بها، والتظاهر بخلاف ذلك هو كيف تأتي سير العمل لتؤمن بمبالغ مستردة لم تحدث أبداً.

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

ما الذي لا يحله هذا

تعمل Decision Gate على تعزيز سير العمل ضد المطالبات غير المدعومة والزائفة التي يمكن التعبير عنها كالتزامات إثبات صريحة. تحتوي تلك الجملة على حواف، وهي تحمل الحمولة.

لا يقوم بتفكيك النثر العشوائي تلقائيًا إلى الاقتراحات الصحيحة؛ المؤلف لعملية العمل، أو أداة سابقة، يحدد ما هو مهم. لا يجعل الأدلة الضعيفة قوية: ينتج عن predicate مكتوب بشكل كسول أو سياسة دليل متساهلة بالضبط علاقة الإثبات التي يعلنها، ويتم التحقق منها بدقة. لا يرى الاستدلال المخفي، ولا يحكم في التفسير المتنازع عليه، ولا يكتشف الخداع خارج الحقائق المضمونة التي تسميها السياسة. يمكن استجواب مصدر بصدق ومع ذلك يكون خاطئًا؛ تحدد السياسة مقدار الاستقلال والنزاهة التي يتطلبها فئة الادعاءات.

ما يتم إزالته هو أضيق وهيكلية: طلاقة الممثل كسلطة حاسمة. يجب أن تنتج كل مطالبة تختار سير العمل حجبها أدلة تتجاوز سياسة معلنة، وكل قبول يترك سجلاً بالضبط لما تم تأسيسه، من ماذا، تحت أي قانون.

أين يتركنا هذا

تم تحديد الآلية بشكل رسمي؛ تم تأسيس خصائصها الدلالية والبروتوكولية؛ توجد تنفيذات عملية، ونماذجها الرسمية وحدودها موثقة بدلاً من أن تُهمل. ما يغيره اعتمادها عن سلوك الوكلاء عبر النماذج، والأدوات، والمجالات هو برنامج تجريبي مفتوح - هذا النظام هو الأداة التي تجعل السؤال قابلًا للاختبار، وليس ادعاءً بأن الإجابة موجودة بالفعل.

سيستمر الوكلاء في اقتراح الواقع بطلاقة. الأنظمة من حولهم تتخذ القرار بشأن ما إذا كانت الاقتراحات ستصبح حقائق. Basics تعلم المفردات الأساسية، وApplications تظهر الحدود داخل المنتجات الحقيقية، والمستندات تحمل المعالجة الرسمية الكاملة: جبر المتطلبات، نموذج الرسم البياني، معايير الأدلة، وإثباتاتها.