انتقل إلى المحتوى

API — التشخيصات (للتطوير فقط)

ليست نقاط نهاية إنتاجية

وحدات التحكم الست /api/diagnostics/* هي للتطوير فقط. وهي موسومة بـ [AllowAnonymous] ومقيَّدة إلى IsDevelopment() — وخارج Development تُرجع 404. ثلاث منها تحمل تعليق مصدر صريحًا: "TODO: Remove or restrict to [Authorize(Roles="SuperAdmin")] before production." إنها أدوات تشخيصية، لا تكاملات ولا API مدعوم. لا تبنِ عليها.

الغرض

تشخيصات التطوير المحلي وUAT: فحص قواعد مصفوفة الاعتماد المُحلّلة، وعمليات كتابة التدقيق الأخيرة، ومطالبات الرمز الحالي، ومسح يدوي لانتهاء صلاحية الشهادات، وملخص للموظفين، ومصفوفة المهارات.

نقاط النهاية

Method Path Purpose
GET /api/diagnostics/approval-matrix/rules سرد قواعد مصفوفة الاعتماد
GET /api/diagnostics/approval-matrix/resolve تحليل مُعتمِد لسيناريو
GET /api/diagnostics/audit/recent أحداث التدقيق الأخيرة
POST /api/diagnostics/audit/test إصدار حدث تدقيق تجريبي
GET /api/diagnostics/auth/me إرجاع صدى مطالبات الرمز الحالي
POST /api/diagnostics/certifications/run-expiry-sweep تشغيل مسح انتهاء صلاحية الشهادات يدويًا
GET /api/diagnostics/employees/summary ملخص أعداد الموظفين
GET /api/diagnostics/skills/matrix تفريغ مصفوفة المهارات

المزالق

  • run-expiry-sweep هو الطريقة الوحيدة لإجراء تمريرة انتهاء صلاحية على الشهادات. لا توجد مهمة مجدولة/متكررة لها (انظر المهام الخلفية)؛ وتُطلقها نقطة نهاية التطوير هذه يدويًا. في الإنتاج لا يوجد حاليًا مسح تلقائي لانتهاء صلاحية الشهادات (الورقة 04).
  • مُحلِّل مصفوفة الاعتماد حقيقي لكنه مُستهلَك هنا فقط — موصول في DI وفي هذه التشخيصات، لكنه غير موصول في أي تدفق اعتماد حيّ (الورقة 06). لا تستنتج وجود محرك مصفوفة اعتماد إنتاجي من وجود نقطة النهاية هذه.
  • AllowAnonymous + IsDevelopment() — تُرجع هذه 404 في أي بيئة غير Development؛ وهي ليست سطحًا إداريًا مخفيًا.

حالة البناء

مخطط لها/للتطوير فقط — توجد هذه حصرًا لتشخيصات التطوير وهي مُقرَّرة للإزالة/التقييد قبل الإنتاج. ليست جزءًا من الـ API المدعوم.

ذات صلة

  • المهام الخلفية — لماذا مسح الشهادات يدوي.
  • Swagger: /swagger · أوراق الحقائق 04 (الشهادات)، 06 (مصفوفة الاعتماد)، 19 (التكاملات — تؤكد عدم وجود تكاملات إنتاجية).