راجع قبل التطبيق
قارن السلوك الفعلي بالنتيجة المتوقعة. إذا فشل فحص، تحقّق من السبب قبل إجراء تغييرات إضافية.
تحقق من عقد بحث صحيحة ذات مرجعين للابنين.
def is_strict_bst(root):
pending, seen, checks = [(root, None, None)], set(), []
while pending:
node, low, high = pending.pop()
if node is None:
continue
if type(node) is not list or len(node) != 3 or type(node[0]) is not int:
raise ValueError("tree.node")
if id(node) in seen or len(seen) == 1000:
raise ValueError("tree.structure")
seen.add(id(node))
value, left, right = node
checks.append((value, low, high))
pending.extend([(right, value, high), (left, low, value)])
return all((low is None or low < value) and
(high is None or value < high) for value, low, high in checks)قارن السلوك الفعلي بالنتيجة المتوقعة. إذا فشل فحص، تحقّق من السبب قبل إجراء تغييرات إضافية.
اضبط نقطة اتصال متوافقة مع OpenAI أو Anthropic باستخدام العنوان الأساسي ومفتاح API عند الحاجة. اختبر الاتصال. يجب أن يعمل خادم النموذج المحلي؛ وقد ترسل الأدوات البعيدة البيانات بشكل منفصل.
اختبر الشجرة الفارغة وحدود الأسلاف وأعد خطأ للمفاتيح المكررة وارفض الدورات والأبناء المشتركين والعقد المعيبة أو أكثر من 1000 عقدة.
def is_strict_bst(root):
pending, seen, checks = [(root, None, None)], set(), []
while pending:
node, low, high = pending.pop()
if node is None:
continue
if type(node) is not list or len(node) != 3 or type(node[0]) is not int:
raise ValueError("tree.node")
if id(node) in seen or len(seen) == 1000:
raise ValueError("tree.structure")
seen.add(id(node))
value, left, right = node
checks.append((value, low, high))
pending.extend([(right, value, high), (left, low, value)])
return all((low is None or low < value) and
(high is None or value < high) for value, low, high in checks)يمنح TreeSentinel صيانة البيانات المهيكلة مساحة مشروع على Windows ومحادثة ذكاء اصطناعي مرتبطة بملفات المصدر. ابدأ بإظهار موضع تلقي التطبيق للبنية وكيف يستخدم نتيجة التحقق. اطلب من النموذج فحص هذا الحد كاملا قبل اقتراح فحص أبسط أو اجتياز مختلف.
مثلا، قد تستقصي مهمة حول bst_order.py شجرة يبدو أبناؤها المباشرون مرتبين بينما تخالف قيمة أعمق حدا لأحد الأسلاف. أدرج البنية المخفقة والنتيجة المتوقعة. ثم اسأل عن معالجة العقد المشوهة والمراجع المتكررة، كي لا يغفل إصلاح الترتيب افتراضات عن الشكل الجاري اجتيازه.
راجع المقترح الناتج لنتائج متميزة: شجرة صالحة وإخفاق في الترتيب وبنية مشوهة. شغل فحوص المشروع ذات الصلة وافحص وصول كل نتيجة إلى الكود المستخدم. أبق أي تغيير في سياسة المفاتيح المكررة صريحا. فقد يغير ما يبدو تعديلا طفيفا للمقارنة البيانات التي يقبلها التطبيق المحيط.
يتصل TreeSentinel بنقاط نهاية مدعومة متوافقة مع OpenAI أو تابعة لـ Anthropic، مع بيانات الاعتماد عند الحاجة. يمكنك اختيار نموذج أزيلت منه آليات التقييد إذا أتاحته نقطة نهايتك. تظل قيود مزوده وحدود سياقه وأدواته المتاحة جزءا من الإعداد؛ وينبغي أن تعتمد المراجعة على بنى ملموسة ونتائج مرصودة لا على ثقة النموذج.
قد تنجح مقارنة محلية بينما تخالف عقدة سليلة حد سلف أسبق. قدم حالة صغيرة متداخلة تكشف الفرق وحدد النتيجة المتوقعة. راجع الاجتياز المقترح على أساسها قبل قبول تبسيط لمنطق التحقق.
حدد ذلك في عقد التطبيق. يفرض المثال ترتيبا صارما يستبعد المفاتيح المتساوية. افحص تمييز الكود المستخدم بين مدخل مشوه وبنية سليمة الشكل تخفق في الترتيب، وحافظ على اصطلاحات الاستجابة في التعديل المقترح.
قد يعني أن المدخل ليس على شكل الشجرة الذي تتوقعه الدالة، حتى لو بدت القيم المفردة مقبولة. أدرج حالة مرجع مشترك أو دورة حيث يناسب. افحص انتهاء التنفيذ وسلوك الرفض بدلا من الاعتماد حصرا على أمثلة متداخلة عادية.
فقط بعد مراعاة البنية وسلوك الفشل اللذين يحتاجهما المستدعي. قد يخفي فحص قيم مسطحة عقدا مشوهة أو افتراضات اجتياز. اطلب من النموذج شرح المفاضلات باستخدام المصدر الفعلي قبل تغيير عقد التحقق.
TreeSentinel · آخر تحديث 2026-10-25