بطاقة عنوان رئيسية لمقال 'Code Review Agent Benchmark' تعرض العنوان الرئيسي 'Code Review Agent Benchmark' مع عنوان فرعي 'كيف تقيّم مُراجعًا — وتشغّل c-CRAB على كودك الخاص'، وتدفقًا من ثلاث خطوات PR إلى Review إلى Pass لبطاقات دائرية الحواف، وزخرفة قمع تضييقي بسيط، وشعار OrcaRouter مركّب في الزاوية السفلية اليمنى.
Guides & Insights

معيار وكيل مراجعة الكود: كيفية تقييم المراجع، وتشغيل c-CRAB على الكود الخاص بك

الكاتب

Alistair Wren

تاريخ النشر

أحدث النماذج · 20عرض جميع النماذج
المعايير: Artificial Analysis · يُحدَّث يوميًا
العودة إلى جميع المقالات

كيف تعرف ما إذا كان وكيل مراجعة الكود جيدًا؟ في معظم تاريخ هذا المجال القصير، كانت الإجابة هي «قياس مدى قرب تعليقاته من تعليقات مراجع بشري» — وهو ما يبدو معقولًا حتى تجرّبه فعليًا، لأن مراجِعَين قد يثيران المشكلة نفسها بكلمات مختلفة تمامًا. إن معيار وكيل مراجعة الكود — الورقة البحثية على arXiv:2603.23448، ومجموعة بياناتها c-CRAB — هو أول محاولة جادة لتقييم المراجعة بناءً على ما ينتجه العمل بها بدلًا من صياغتها. لقد حوّل 234 تعليقًا بشريًا لمراجعات إلى اختبارات قابلة للتنفيذ، واختبر أربعة مراجعين واسعي الاستخدام ضدها — PR-Agent وDevin وClaude Code وCodex — ووجد أن الأربعة مجتمعين يجتازون 41.5% من تلك الاختبارات، «حوالي 40% فقط» على حد تعبير الورقة البحثية. هذه الصفحة هي دليل عملي: كيف تقرأ تلك النتيجة دون تحريفها، وكيف تشغّل c-CRAB بنفسك، وماذا تفعل عندما لا تكون قاعدة الشيفرة البرمجية لديك ضمن المعيار أصلًا.

الرقم الرئيسي في العنوان هو أقل شيء مفيد في هذه الصفحة. الأمور المفيدة هي المنهجية وأنماط الفشل: لماذا كان كل نظام تقييم سابق يقيس الشيء الخطأ، وما تكلفة تقييم مراجعة باستخدام اختبارات قابلة للتنفيذ بدلاً من ذلك، ولماذا تُعد عبارة "وكلاء المراجعة لا يلتقطون سوى 40% من الأخطاء" قراءة خاطئة من ثلاثة أوجه للنتيجة الفعلية. كل ما هنا هو قراءة مجتمعية للمعيار المنشور ولخبرات الممارسين في تشغيله — وليس توجيهات من البائعين من صنّاع الأدوات المعنيين.

لماذا لا تعمل المقاييس الواضحة

قبل c-CRAB، كانت تقييمات وكلاء مراجعة الكود تقع ضمن عدد صغير من العائلات، ويوضح جدول المقارنة الخاص بالورقة (الجدول 1) هذا النسب. الأقدم هو تداخل النصوص — BLEU وROUGE وchrF وما يشابهها، المستخدمة في معايير مثل CodeReviewer وContextCRBench. الفكرة هي أن تعليق الوكيل يكون جيدًا عندما تتطابق n-grams الخاصة به مع تعليق بشري. تنهار هذه الفكرة في النوع الوحيد من الحالات المنتشر في مراجعة الكود: العيب نفسه الموصوف بكلمات مختلفة.

دراسة الحالة في الورقة هي المثال الأوضح. في طلب سحب في python-telegram-bot (PR #3514)، أشار كل من المراجع البشري وCodex إلى نفس الخطأ المتعلق بمتانة الفهرسة المتداخلة. كانت مراجعة Codex صحيحة سلوكيًا — فقد أنتج وكيل برمجي تصرف بناءً عليها إصلاحًا اجتاز الاختبار التنفيذي. ومع ذلك، سجلت مقاييس النص لها BLEU-4 0.00 وROUGE-L 7.02 وchrF 20.74 وتشابه التضمين 54.59. لم يكن هناك أي تداخل في n-gram، ومع ذلك كانت المراجعة صحيحة. نفس المشكلة، بكلمات مختلفة: مقاييس السلاسل لم تستطع رؤيتها. تشابه التضمين هو تحسن جزئي — 54.59 مقابل نجاح مؤكد لا يزال بعيدًا عن أي عتبة قابلة للاستخدام — وهو يرث نفس المشكلة بشكل أخف.

محكّم LLM، حيث يقارن نموذجٌ مراجعةَ الوكيل بمراجعة الإنسان ثم يصوّت، يحل مشكلة المفردات لكنه يستورد ثلاث مشكلات جديدة تسمّيها الورقة مباشرة: التحيز، وعدم الاستقرار، والحساسية لتصميم الموجّه. أجرِ المقارنة نفسها مرتين وقد يعطيك الحَكَم أحكامًا مختلفة؛ أعد صياغة موجّه الحكم فتتحرك الترتيبات. عندما تختار بين مراجِعَين تفصل بينهما ثلاث نقاط على المعيار نفسه، فإن حَكَمًا بهذا التباين لا يمكنه تأييد قرار — والدرجة التي لا يمكنك إعادة إنتاجها ليست درجة.

ما الذي يوفره الأوراكل القابل للتنفيذ — وما تكلفته

الفكرة التي يقوم عليها c-CRAB بسيطة وجذرية في آن واحد: بدلاً من أن تسأل "هل تبدو المراجعة كمراجعة إنسان؟"، اسأل "إذا عملت بموجب المراجعة، هل يتم إصلاح الكود؟". يُحوَّل كل تعليق مراجعة بشري مُعتمَد إلى اختبار قابل للتنفيذ يلتقط المشكلة الأساسية. يُعد تعليق المراجعة صحيحًا إذا أدى العمل به إلى إصلاح صحيح سلوكيًا يجعل الاختبار ينجح — وكل مثيل يأتي مع بيئة Docker قابلة للتشغيل، لذا فإن "جعل الاختبار ينجح" حقيقة وليس تقييمًا.

تُعرّف الورقة نوعين من الاختبارات. الاختبارات السلوكية «تستورد وتنفّذ الكود المُختبَر في وقت التشغيل»، وتستدعي الدوال «بمدخلات محددة»، وتتحقق من «المخرجات أو التحقق من الاستثناءات». الاختبارات الهيكلية «تفحص نص الكود المصدري، وتطابق الأنماط، وتتحقق من أسطح واجهات البرمجة لتحديد ما إذا كانت تغييرات الكود المطلوبة قد أُجريت». التقسيم النهائي هو 42 اختبارًا سلوكيًا (17.9%) و192 اختبارًا هيكليًا (82.1%) — وهذا الانحراف يستحق جملة صريحة: معظم هذا المرجع هو مطابقة الأنماط على نص المصدر، وليس تنفيذ الكود. المعيار الذهبي هو الاختبار السلوكي؛ أما غالبية مجموعة البيانات فهي النسخة العملية منه.

بناء الأوراكل هو قمع من أربع مراحل، وكل مرحلة تتخلص من أشياء:

• مجموعة البيانات الأولية — 671 طلب سحب، 1,313 تعليق مراجعة.

• تصفية المراجعات — 410 طلبات سحب، 595 تعليقًا. مصنّف LLM، تمت معايرته مقابل مجموعة ذهبية مكوّنة من 100 تعليق مُعلَّق يدويًا، يُبقي فقط على القضايا القابلة للتحقق موضوعيًا ويتجاهل الملاحظات الحوارية أو الذاتية.

• بناء البيئة القابلة للتنفيذ — 410 طلبات سحب، 595 تعليقًا. صورة Docker واحدة لكل طلب سحب، مع حلّ التبعيات بالرجوع إلى وكيل برمجة عند فشل الأتمتة.

• تحويل تعليقات اللغة الطبيعية إلى اختبارات — 339 طلب سحب، 481 تعليقًا. تم إنشاؤها باستخدام GPT-5.2 ضمن حلقة تحسين موجهة بالتنفيذ (حتى ثلاث محاولات)؛ يتم الاحتفاظ بالاختبار فقط إذا فشل على الإصدار السابق ونجح على الإصدار اللاحق.

• التحقق باستخدام وكيل برمجي — 184 طلب سحب (PRs)، 234 تعليقًا (نهائي). يحاول Claude Code على خلفية Sonnet-4.6 إصلاح الكود بالاعتماد على تعليق المراجعة البشرية فقط؛ ويُستبعد أي حالات لا يتمكن فيها من اجتياز الاختبار.

Infographic of the c-CRAB curation funnel with four descending wide bars: Initial dataset — 671 PRs / 1,313 comments; After review filtering — 410 PRs / 595 comments; After test generation — 339 PRs / 481 comments; Validated — 184 PRs / 234 comments, with a footer 'About 27% of starting PRs survive · Source: arXiv:2603.23448', and the OrcaRouter logo composited bottom-right.

حوالي 27% من طلبات السحب الأولية تنجو. اذكر هذا بصراحة، لأنه الثمن الصادق لأي مُحكِّم قائم على الاختبارات: إذا لم تكن التعليقة قابلة للتنفيذ بما يكفي لتصبح اختبارًا فاشلًا، أو تعذَّر بناء البيئة، أو لم يستطع وكيل برمجة كفؤ إصلاح الكود من التعليقة وحدها، فإن المثيل يُسقَط. وهذا أيضًا هو سبب صغر حجم المعيار. إن 184 مثيلًا لطلبات السحب و234 تعليقة مُتحقَّقة منها هي مجموعة بيانات يمكنك قراءتها، وليس مجموعة نصوص قد تغرق فيها — وبالنسبة لمُحكِّم يجب عليه تشغيل بيئات Docker حقيقية، فإن الصغر هو ميزة.

على سبيل المقارنة: يمسّ المثيل المتوسط 418.1 سطرًا معدَّلًا، ويبلغ متوسط الاختبارات 31.8 سطرًا، ويوجد 1.27 اختبارًا لكل مثيل. وقد اتّفق اثنان من المعلّقين في 84% من الحالات — عبر 50 مثيلًا مختارًا — على ما إذا كان الاختبار المُولَّد قد التقط بأمانة قلق المراجع البشري.

من العيوب الببليوغرافية التي ستواجهها إذا قرأت الورقة بنفسك: جدول البيانات (الجدول 4) يسرد 67 مستودعًا، بينما يقول قسم تهديدات الصلاحية "184 مثيلًا لطلبات السحب مع 234 أوراكل قابلة للتحقق عبر 56 مستودعًا." تعطي الورقة كلا الرقمين في مواضع مختلفة ولا توفق بينهما. لا تختر رقمًا مفضلًا ولا تحسب المتوسط — بل استشهد بكل رقم في موضعه. مثل هذه التناقضات هي بالضبط التفاصيل التي يستخدمها القراء لتحديد ما إذا كان المعيار يستحق وقتهم.

بخصوص العناية الواجبة بشأن الاستقلالية: تكشف الورقة أن أحد المؤلفين مرتبط بشركة SonarSource، وتذكر أن النتائج لا ينبغي تفسيرها على أنها "تقييم لجودة منتجات SonarSource." هذا هو إخلاء المسؤولية الخاص بهم، مُقتبس وليس مُعاد صياغته.

كيفية قراءة النوتة الموسيقية على c-CRAB دون تحريفها

المقياس الرئيسي هو معدل النجاح: لكل حالة، حصة اختبارات ذلك الـ PR التي تنجح، بمتوسط عبر الحالات الـ 184. إليك جدول النتائج الكامل من الورقة، سطر واحد لكل مراجع. صف البشر هو علامة مقياس وليس منافسًا — فالبشر كتبوا المعيار الذهبي، لذا يحققون 100% بحكم البناء:

Scoreboard of the c-CRAB results titled 'c-CRAB results — the scoreboard': Claude Code 32.1%, Devin 24.8%, PR-Agent 23.1%, Codex 20.1%, Union of all four 41.5%, Human 100% by construction, with a footer reading 'Pass rate = average share of a PR's executable tests that pass · Source: arXiv:2603.23448', and the OrcaRouter logo composited bottom-right.

• Claude Code — 1,336 تعليقًا، 7.3 لكل PR، الإجمالي 32.1% (السلوكي 38.1%، الهيكلي 30.7%).

Devin — 1,344 تعليقًا، 7.3 لكل PR، إجمالي 24.8% (سلوكي 31.0%، هيكلي 23.4%).

• PR-Agent — 524 تعليقًا، 2.8 لكل PR، الإجمالي 23.1% (السلوكي 38.1%، الهيكلي 19.8%).

• Codex — 324 تعليقًا، 1.8 لكل PR، الإجمالي 20.1% (السلوكي 38.1%، البنيوي 16.1%).

• بشري — 234 تعليقًا، 1.3 لكل PR، 100% بحكم البناء.

ثلاث تصحيحات، لأن عبارة "حوالي 40% فقط" في الملخص هي أكثر رقم يُساء اقتباسه في هذا الجانب من محادثة مبرمجي الذكاء الاصطناعي حاليًا. أولًا، رقم 41.5% — 97 من أصل 234 اختبارًا نجح بها أداة واحدة على الأقل — هو اتحاد عبر جميع المراجعين الأربعة: الاختبار يُحتسب مرة واحدة إذا نجح أي وكيل به. لم يحقق أي وكيل واحد نسبة 41.5%؛ أفضل نتيجة فردية هي 32.1% لكلود كود. ثانيًا، صف الإنسان هو الأوراكل، وليس منافسًا؛ تكراره كـ"البشر يتفوقون على الروبوتات" هو خطأ فئوي. ثالثًا، والأهم: c-CRAB لا يمنح أي ائتمان لمشكلة صحيحة لم يثرها المراجع البشري. الأوراكل هو نية المراجعة البشرية. الوكيل الذي يجد خطأً حقيقيًا لم يذكره أحد يسجل صفرًا مقابل ذلك. لذا فقول "وكلاء مراجعة الذكاء الاصطناعي يكتشفون فقط 40% من الأخطاء" خاطئ ثلاث مرات — إنه اتحاد، وليس معدل اكتشاف للأخطاء، ويقيس التوافق مع المراجعين البشر، وليس الصحة الكلية.

حجم التعليقات هو الفخ.

الرقم الأكثر إثارة للاهتمام في النتائج ليس رقم الفائز. فقد نشر كلٌّ من Claude Code وDevin أكثر من 1,300 تعليق — أي حوالي 7.3 تعليق لكل PR — ليصلا إلى 32.1% و24.8%. ونشر Codex 324 تعليقًا، أي حوالي 1.8 تعليق لكل PR، ووصل إلى 20.1%. أما خط الأساس البشري فهو 1.3 تعليق لكل PR. الحجم ليس تغطية؛ فخمسة أضعاف التعليقات تقريبًا تحقق أقل بكثير من ضعف معدل النجاح. إذا كنت تختار مراجعًا، فإن التكلفة الحقيقية لكل تلك التعليقات الإضافية هي إرهاق المراجعة البشرية — فكل تعليق ينشره وكيل هو قرار تقديري يتعين على شخصٍ ما فرزُه.

استنتاج الفائدة يسير في الاتجاه المعاكس، وهو الجزء الذي يمنع هذا من أن يكون مجرد قصة رخيصة من نوع «الروبوتات مزعجة». لقد فحص المؤلفون يدويًا 92 تعليقًا عبر 6 طلبات سحب (PRs) وقيّموا 84% (77/92) منها بأنها مفيدة — PR-Agent 94%، Codex 88%، Devin 85%، Claude Code 78%. لذا فإن معظم التعليقات التي تفشل في الاختبار ليست ضجيجًا؛ بل إنها تتعلق بشيء لم يثره المراجع البشري. العينة صغيرة — 92 تعليقًا و6 طلبات سحب — ومن الجدير ذكر هذا في نفس السياق الذي تُذكر فيه النسب المئوية.

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

الممارسون الذين خاضوا هذه التجربة يصلون إلى النتيجة ذاتها. تقرير مفصّل كتبه دانيال فوغان ويطلق على العمل اسم CR-bench يخلص إلى الاستنتاج نفسه ويحوّله إلى سير عمل: اترك للوكيل مهمة المسح الشامل للمتانة والصحة، وأبقِ البشر على التصميم والأعراف والبنية المعمارية — الفئات التي يسجّل فيها الوكلاء أسوأ النتائج — ووجّه الوكيل بتعليمات مراجعة تسمّي الفئات الضعيفة. أكثر تحذيراته فائدةً لأي شخص يقرأ لوحة المتصدرين: {{KEEP}}"usefulness is not the same as pass rate"{{/KEEP}}، لأن مجموعة الاختبارات تتطلب مطابقة الإصلاح الذي قصده الإنسان، وأي إصلاح بديل صالح يفشل في الاختبار. المسار من 20% إلى درجة أعلى بشكل ملموس، في قراءته، ليس ترقية للنموذج — بل هو عمل في الإعدادات والتهيئة.

تشغيل c-CRAB بنفسك

كل ما سبق هو قراءة لنتائج الآخرين. حزمة إعادة الإنتاج تجعل المعيار قابلاً للتشغيل — وتوجد في c-CRAB-Benchmark/dataset على GitHub — وملف README صريح بشأن ما يتطلبه الأمر.

المتطلبات: code>uv sync/code>؛ Docker؛ وإما code>OPENAI_API_KEY/code> أو code>ANTHROPIC_API_KEY/code> (يقرأ Claude Code أيضًا بيانات الاعتماد من code>~/.claude/.credentials.json/code>، المثبّتة في الحاويات افتراضيًا). يتكوّن التخطيط من خمسة أدلة: code>pipeline//code> (منطق خط الأنابيب والموجّهات)، code>execution//code> (مُنشئو صور Docker ومساعدو وقت التشغيل)، code>results_preprocessed//code> (مجموعة المعايير المنشورة)، code>results_pipeline_funnel//code> (ملفات JSONL من المراحل 0–4 وملخص القمع)، و code>raw_results_compressed//code> (مخرجات التجارب الخام). الخطوات الخمس، بالترتيب:

1. قم ببناء بيئات Docker — code>uv run python -m execution.build_swe_care --split test --instance results_preprocessed/instance-ids.txt --max-workers 4/code>. الصور المبنية مسبقًا منشورة أيضًا ضمن c-CRAB-Benchmark GitHub packages org إذا كنت تفضل تخطي البناء.

2. توليد الاختبارات — code>./run_testgen_full.sh --instances-file results_preprocessed/instance-ids.txt --workers 4 --output-dir results_testgen/code>.

3. اجمع مراجعات الأساس — code>uv run python run_batch_baselines.py --split test --instances-file results_preprocessed/instance-ids.txt --tools pr-agent devin claude-code codex --output-dir baselines_output --workers 4/code>. قم بتكوين بيانات اعتماد الأدوات الخارجية المقابلة قبل هذه الخطوة.

4. تشغيل تحليل الوكيل — code>uv run python run_batch_agent_resolution.py --stage3-file results_pipeline_funnel/stage3_testgen_verified.jsonl --testgen-dir results_testgen --output-dir results_agent_resolution --workers 4/code>.

5. قيّم — كرّر مرة واحدة لكل أداة: code>uv run python run_batch_tool_eval.py --tool pr-agent --stage3-file results_pipeline_funnel/stage3_testgen_verified.jsonl --testgen-dir results_testgen --tool-results-dir baselines_output --output-dir results_eval_pr-agent --workers 4/code>.

Screenshot of the c-CRAB-Benchmark/dataset GitHub repository page: the repo header (c-CRAB-Benchmark/dataset, Public, 11 stars, 2 forks) and the top-level directory listing showing the pipeline directories execution, pipeline, raw_results_compressed, results_pipeline_funnel and results_preprocessed.

أمران لا يُبرزهما ملف README. إضافة مُراجِعٍ خامسٍ تعني تعديل code>run_batch_baselines.py/code> — فهناك تكمن مطالبات مراجعة خط الأساس لكل أداة، ولا توجد واجهة إضافات؛ ولا يوثّق ملف README نقطة امتداد أنظف. كما أن المستودع لا يحوي ملف ترخيص صريحًا، لذا لا تفترض أن الكود يخضع لترخيص MIT أو Apache — فالورقة العلمية مرخّصة بترخيص CC BY 4.0، وشروط استخدام الكود نفسه غير مذكورة.

التكلفة هي البند الآخر غير المُعلَن. لا تنشر الورقة أي أرقام بالتوكنز أو بالدولار لتشغيل خط المعالجة، لذا تعامل مع أي رقم تكلفة تراه منقولًا على الإنترنت باعتباره غير موثوق. ما يلمح إليه الهيكل واضح بما يكفي: صورة Docker واحدة لكل PR عبر 184 مثيلًا، بالإضافة إلى تمريرة حل لعامل الترميز وتمريرة تقييم لكل أداة. هذا ليس نزهة على نطاق حاسوب محمول — خصّص للحوسبة الحقيقية.

عندما لا تستطيع تحمّل الأوراكل القابلة للتنفيذ

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

الحَكَم الذي يعمل على نموذج المراجِع نفسه يتفق مع نفسه: يقرأ المراجعة، ويجدها معقولة، ويُبلِغ عن النجاح دون أن يغيّر أي شيء. أما الحَكَم من بائع مختلف فيُقلِّل من هذا الاتفاق الذاتي — فهو لا يُحوِّل الحَكَم إلى اختبار، لكنه يوقف الختم المطاطي. يمكننا أن نُريك مثالًا ملموسًا وقابلًا للتحقق من هذا الحاجز بالتحديد لأن أداة الاختبار الخاصة بنا مفتوحة المصدر: Orca-Code-Reviewعلى GitHub مرخّص بموجب رخصة MIT، ووصفة التوجيه الخاصة به تنص على القاعدة بكلمات المستودع نفسه — الحَكَم «يجب ألّا يذكر اسم النموذج الافتراضي»، لأنه «عندما يعمل على نموذج المراجِع نفسه يتفق مع نفسه، لذا تصبح التمريرة خاملة بينما ما زالت تُبلِغ عن النجاح». الإجراء لا يذكر اسم نموذج أبدًا؛ الوصفة هي التي تقرر. وكما هو مُهيَّأ، فإن النموذج الافتراضي للمراجِع هو deepseek/deepseek-v4-flash-0731، وقاعدة تطابق الترويسة code>x-cr-lens: judge/code> تُرسِل تمريرة الحَكَم إلى z-ai/glm-5.3 — وهو بائع مختلف. هذا توازٍ في التصميم مع حجة c-CRAB، وليس نتيجة: نحن لسنا ضمن المعيار ولا توجد درجة c-CRAB لمراجِعنا. لكنه التخفيف العملي المتاح لأي شخص لا يستطيع بناء أوراكلات قابلة للتنفيذ، وهو غير مكلف عندما يمكن للحَكَم والمراجِع أن يتواجدا على مزودين مختلفين خلف مفتاح واحد — وهذا هو الغرض من الموجّه. وعلى OrcaRouter، يكون المراجِع وحَكَمه سطرين في لغة توجيه مخصصة (DSL)، وتدفع السعر الرسمي للمزود دون أي زيادة.

عندما لا يكون كودك ضمن المعيار

إن 184 طلب سحب (PR) عبر 56 أو 67 مستودعًا عامًا ليست قاعدة شيفرتك، ولم تكن لتكون كذلك أبدًا. الجزء القابل للنقل هو المنهجية، ويمكنك تشغيلها على تاريخك الخاص على نطاق أصغر بكثير. خذ طلبات السحب المدمجة التي كانت تحتوي على تعليقات مراجعة بشرية. بالنسبة لعينة من تلك التعليقات، اكتب اختبارًا يفشل قبل تنفيذ المراجعة وينجح بعدها — خاصية الفشل ثم النجاح هي اللعبة كلها. شغّل مُقيّمك المرشّح على الفرق (diff) قبل المراجعة. ثم تحقق مما إذا كان العمل بتعليقاته يجعل الاختبار ينجح. ما تحصل عليه هو رقم يُحتسب على الشيفرة التي تشحنها فعليًا، وهو يستحق أكثر من مجرد مركز في لوحة الصدارة. وما يكلفه هو بالضبط الجدار الذي اصطدمت به الورقة: تحتاج إلى بيئات قابلة لإعادة الإنتاج لكل طلب سحب، لأن الاختبار الذي ينجح فقط على حاسوبك المحمول ليس مرجعًا موثوقًا.

لا تحتاج إلى 234 اختبارًا. دزينة اختبارات منتقاة بعناية على طلبات السحب (PRs) التي تناقش فيها فريقك فعلًا ستخبرك عن مراجعك أكثر مما سيخبرك به أي مؤشر معياري. ويتسم تحليل عملي موازٍ لهذه العائلة من المؤشرات المعيارية بالصراحة بشأن البوابة: تتراوح دقة مصنّف نموذج اللغة الكبير (LLM) في تحديد ما إذا كان التعليق مشكلة صحيحة وقابلة للتحقق بين 66% و85%، لذا تعامل مع التصفية الآلية بوصفها قائمة مختصرة، وأبقِ خطوة تحكيم بشري قبل أن يتحول أي شيء إلى اختبار. ويشير التقرير نفسه إلى أن ReviewBench من LangChain، المبني بشكل مستقل على فكرة تحويل التعليقات إلى اختبارات نفسها، يسترجع نحو 30% من مشكلاته الأساسية في أفضل الأحوال — وهو النطاق نفسه الذي تسجله c-CRAB تقريبًا بنسبة 20–32%، وتذكير بأن الفروق ذات الأرقام الأحادية في لوحات المتصدرين بين الأدوات غالبًا ما تكون أصغر من الضوضاء في بيئتك الخاصة.

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

الأسئلة الشائعة

هل 41.5% هي أفضل نتيجة للوكيل؟ لا. 41.5% هي النتيجة الموحّدة عبر الأدوات الأربع جميعها — يُحتسب الاختبار مرة واحدة إذا اجتازه أيٌّ منها. أفضل نتيجة فردية هي 32.1% لـ Claude Code.

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

هل "تغلب" المراجعون البشريون على الروبوتات؟ صف البشر 100% هو المرجع نفسه — البشر هم من كتبوا الاختبارات — لذلك فهو مؤشر قياس، وليس منافسًا.

هل c-CRAB هو نفس الشيء مثل CR-bench؟ نعم. مجموعة البيانات هي c-CRAB؛ بعض التغطيات من جهات خارجية تسميها CR-bench، لكن يوجد معيار واحد فقط هنا.

كم تبلغ تكلفة تشغيله؟لا تنشر الورقة أرقامًا للتكلفة. صورة Docker واحدة لكل PR عبر 184 مثيلًا، بالإضافة إلى تمريرة حلّ الوكيل، تعني حوسبة حقيقية — وليست ظهيرة بمقياس كمبيوتر محمول.

خلاصة القول

مساهمة c-CRAB ليست في لوحة الصدارة — بل في إثبات أن المراجعة يمكن تقييمها بتنفيذ توصياتها، وأن الأساليب السابقة القائمة على التشابه النصي والتحكيم عبر LLM كانت تقيس الشيء الخطأ. إذا أردت أن تخرج بشيء واحد، فليكن التصحيح الثلاثي: 41.5% هو اتحاد، والصف البشري هو المعيار المرجعي، والمعيار لا يمنح أي رصيد للعيوب التي لم يثرها البشر قط. وإذا أردت رقمًا يمكنك العمل به، فالمنهجية قابلة للنقل — اختبارات تفشل ثم تنجح على طلبات الدمج الخاصة بك، وخطوة تحكيم بشري، وإن لم تستطع بناء معايير تنفيذية، فعلى الأقل مُحكِّم يكون نموذجه مستقلًا عن نموذج المراجِع.

إذا كنت تفضل قياس مُراجِع بدلاً من الجدال حوله، فابدأ بأداة اختبار يمكنك قراءتها. OrcaCode Review يقوم بجولة مراجعة بالإضافة إلى حكم تحقق مستقل، لكل توكن وليس لكل مقعد، وكل برومبت فيه عام — لذا يمكنك توجيهه إلى معيار مثل هذا والحصول على رقمك الخاص بدلاً من رقمنا.

مقارنات في هذه المقالة1

مستخرج من هذه المقالة · المعايير: Artificial Analysis · يُحدَّث يوميًا

© 2026 OrcaRouter

لمقدمي الخدمات

هل تدير منصة استدلال؟ اعرض نماذجك على OrcaRouter.

providers@orcarouter.ai

انضم إلى مجتمعنا

Discordsupport@orcarouter.aiXGitHubYouTube