# NELC Staging Validation Checklist

استخدم هذه القائمة بعد ضبط بيانات `.env` وتشغيل `php artisan nelc:diagnose --send-test`.

## 1) التحضير
- [ ] `NELC_LRS_ENABLED=true`
- [ ] `NELC_LRS_ENVIRONMENT=staging`
- [ ] بيانات staging صحيحة: endpoint / username / password / platform key
- [ ] `NELC_LMS_URL` يشير لدومين الإنتاج الرسمي
- [ ] Queue worker شغال: `php artisan queue:work`

## 2) اختبار الاتصال
```bash
php artisan nelc:diagnose --send-test
```
- [ ] HTTP 200
- [ ] UUID راجع في الإخراج

## 3) رحلة متعلم جديدة
> استخدم **متعلم جديد** و**دورة جديدة** فقط.

| الخطوة | الفعل في المنصة | Verb المتوقع |
|--------|------------------|--------------|
| 1 | شراء/تسجيل الدورة | `registered` |
| 2 | فتح أول درس/فيديو | `initialized` |
| 3 | مشاهدة 90% من الفيديو | `watched` |
| 4 | تسليم اختبار | `attempted` |
| 5 | تقدم بعد حدث تعلم | `progressed` |
| 6 | إكمال شروط الدورة | `completed` |
| 7 | تقييم الدورة | `rated` |
| 8 | اعتماد الشهادة | `earned` |

## 4) التحقق من السجلات
```bash
php artisan tinker
>>> \App\Models\Nelc\NelcStatement::latest()->get(['verb','status','nelc_uuid','error_message']);
```

- [ ] كل verb له سجل واحد على الأقل
- [ ] `status = sent`
- [ ] `nelc_uuid` موجود
- [ ] لا توجد أخطاء duplicate

## 5) البيانات المرسلة لـ NELC
أرسل إلى `integration@elc.edu.sa`:
- رقم هوية المتعلم
- إيميل المتعلم
- معرّف الدورة/المحتوى
- تاريخ تنفيذ الاختبار

## 6) بعد الموافقة
- [ ] تغيير `NELC_LRS_ENVIRONMENT=production`
- [ ] ضبط `NELC_LRS_PRODUCTION_URL`
- [ ] تفعيل الشارة في `LMS Front/src/configs/nelcBadge.js`
