# بوابة نشر Selim Add-ins R350

## حدود الإطلاق

- النطاق الجديد فقط: `addins.kayan-co.website`.
- لا تعديل أو حذف للنظام القديم أو رخصه.
- الرخص الجديدة تستخدم `HELLO-SELIM-ADDINS-V4` ومفتاح RSA الجديد.
- لا يتم توجيه إصدارات Revit القديمة إلى المنصة الجديدة.

## إعداد cPanel

1. إنشاء Subdomain باسم `addins.kayan-co.website`.
2. إنشاء قاعدة MySQL ومستخدم مستقل ومنحه `ALL PRIVILEGES` على هذه القاعدة فقط.
3. إنشاء Node.js Application بإصدار Node 20 أو أحدث، وApplication Root خاص خارج أي مشروع قديم.
4. رفع الحزمة وفكها في Application Root.
5. تشغيل `npm install --omit=dev`.
6. إضافة متغيرات البيئة المذكورة في `README_AR.md`.
7. تشغيل التطبيق ثم إصدار AutoSSL للنطاق.

## اختبارات القبول

- `/health` يعيد `ok: true` عبر HTTPS.
- إنشاء Owner وتسجيل دخوله.
- إنشاء رخصة مدفوعة وظهور المفتاح مرة أولى ثم إمكانية كشفه بصلاحية مناسبة.
- تفعيل جهاز أول ورفض الجهاز الثاني عند `max_devices=1`.
- إنشاء حملة 7 أيام بسقف 400 جهاز و20 EGP credits.
- إعادة نفس الجهاز تستعيد نفس تجربة الجهاز ولا تنشئ تجربة ثانية.
- إيقاف الحملة يمنع تفعيلات جديدة.
- إيقاف الرخصة يمنع التحقق التالي.
- تشغيل نسخة احتياطية تحتوي `platform.json` و`runtime-secrets.json`.

## بوابة ربط Revit

لا تُباع أي نسخة متصلة بالنطاق الجديد إلا بعد بناء Add-in يحتوي:

- API base: `https://addins.kayan-co.website`.
- المفتاح العام الموجود في `/functions/v1/license-public-key`.
- Product code الصحيح.
- اختبار Activate وValidate وOffline Grace على جهاز Revit فعلي.
