تخطَّ إلى المحتوى

سجلّات قرارات المعمارية

الـ ADR يوثّق لماذا اتخذنا قرارًا مكلف التراجع. نكتب ADR للقرارات المكلفة فقط (database أو auth model أو framework أو حدّ ملكية بيانات)، ولا نكتبه لتغيير رخيص — إن كان التراجع عنه PR صغيراً فلا ADR له. اختبار التفصيل: إن كان التعديل التالي سيغيّر رقماً فهذا معايرة لا قرار، مكانه وثيقة تصميم الميزة؛ وإصلاحات الأخطاء ليست ADRs أبداً. الـ ADRs تعيش داخل كل repo في /docs/adr مع ملف README.md كفهرس إلزامي. الـ ADRs قابلة للإضافة لا للتعديل: تُلحق قسم Amendment مؤرّخاً عند التنقيح، ويُكتب ADR جديد يَنسخ القديم عند العكس فقط. حقل Enforcement يجب أن يذكر فحصاً موجوداً فعلاً على الـ branch، أو كلمة Review-only بصراحة. الـ ADR يُدمج في نفس الـ PR الذي ينفّذه.

stateDiagram-v2
  [*] --> Proposed
  Proposed --> Accepted
  Proposed --> Rejected
  Accepted --> Accepted: amended (dated, append-only)
  Accepted --> Superseded: decision reversed
  Accepted --> Deprecated
  Superseded --> [*]
  Deprecated --> [*]

للتفاصيل الكاملة والأمثلة انظر النسخة الإنجليزية: Architecture Decision Records.

👤 المسؤول: Wahid Bitar🗓 آخر مراجعة: 2026-07-25

Read this page in English