معيار الإنجاز (Definition of Done)
ماذا ستتعلّم: متى يكون تغييرك «منجَزًا» فعلًا — قائمة تحقّق إلزاميّة.
علّم التغيير منجَزًا فقط عند استيفاء كل بند:
الصحّة والطبقة
- التغيير في الطبقة الصحيحة فقط — لا ترقيع في مكان الاستعمال (BF-09, BF-10).
- بدأ من YAML إن كان مدفوعًا بالبيانات؛ لم تُحرَّر أي
generated/يدويًّا. - أُعيد التوليد، وYAML + المُولَّد متطابقان في نفس الـcommit.
التنفيذ المزدوج والاختبار
- الدعم مضاف في المفسّر والمترجم (أو
@skip_compilerموثّق بسبب صريح). - اختبار
.صجديد (إيجابيّ + سلبيّ) بصيغة@expectedالصحيحة. -
runner.py --level P0(وقسم الميزة) يمرّ 100%. -
runner.py --level P1يمرّ قبل أي PR — لا تراجع (BF-29). -
sadcيبني بلا أخطاء، وsad-runيعمل بلا تراجع.
الجودة والتوافق
- تعليقات مزدوجة اللغة على كل API عام (CW-08).
- التوافق الخلفيّ محفوظ (لا تغيير معنى opcode/token/خطأ موجود — CW-24).
- قائمة الملفّات محدَّثة بكل ما تغيّر (بما فيه المُولَّد).
تزامن الدليل (إن مسّ التغييرُ سلوكًا موثَّقًا)
- رُوجِع الفصل المرتبط في دليل المطوّرين (المزامنة)، وثُبِّتت
البصمات بـ
python scripts/check_sync.py --updateفي dev-guide.
الفروع (عند العمل المحكوم)
- العمل على فرع
agent/*منdev(لا commit مباشر علىdev/graphic). - كل الـcommits موقّعة GPG.
- الدمج عبر PR إلى
dev.
الحوكمة (إن مسّت _bmad-output/)
- سطر إقرار السياسة مكتوب + تحديث
status/بدليل فعليّ (GR-01).
ممنوعات صريحة
❌ تحرير generated/ يدويًّا · ❌ تعطيل/تبسيط اختبار لتفادي فشله · ❌ ادّعاء نجاح اختبارات
غير موجودة/غير ناجحة · ❌ دعم المفسّر فقط بلا @skip_compiler موثّق · ❌ اعتبار P0 كافيًا لـPR.
اقرأ بعده: نظام الحوكمة.