جاهزية الإصدار
تُبلِّغ صفحة الإصدار حالة البوّابات الآمنة-للعموم عبر الكود، والحزم، والتوثيق، وبيانات البوابة، ومواد العرض، والأمان، والنشر. ويبقى نشر الإنتاج محظورًا حتى تجتاز مجموعة البطاقات-الخضراء الكاملة.
✅ حالة البوّابات
| البوّابة | الحالة الراهنة | سياسة الأدلّة |
|---|---|---|
| الفحص والتنسيق | التحقّق مطلوب | يجب أن يجتاز uv run ruff format --check . وuv run ruff check . دون أي ملاحظات. |
| فحص الأنواع | التحقّق مطلوب | يجب أن يجتاز uv run mypy packages tests tools examples تحت البيئة المُقفَلة. |
| سجلّ النثر | التحقّق مطلوب | يجب أن يجتاز uv run python tools/check_prose_register.py على كل سطح عامّ. |
| الاشتقاق الكود-أولًا | التحقّق مطلوب | يجب أن يجتاز uv run python tools/check_code_first.py. |
| ترويسات الترخيص | التحقّق مطلوب | يجب أن يجتاز uv run reuse lint وuv run python tools/license_header.py check كلاهما. |
| فحص الأسرار | التحقّق مطلوب | يجب ألّا يُبلِّغ gitleaks detect --source . --redact --config .gitleaks.toml عن تسرّبات. |
| بناء التوثيق | التحقّق مطلوب | يجب أن يكتمل npm --prefix site run build وnpm --prefix site run check لمساحة العمل الراهنة. |
| بيانات البوابة | التحقّق مطلوب | يجب أن يجتاز uv run pytest tests/site وأن يُسجِّل التشغيل قبل الترقية. |
| التغطية | التحقّق مطلوب | يجب أن يُسجِّل uv run coverage run -m pytest وuv run coverage report نتيجة عتبة مُجتازة. |
| خطّ أساس الوصولية | التحقّق مطلوب | يجب فحص بيانات SVG الوصفية، ونصّ alt، والضوابط المُعنونة، والتخطيط المتجاوب عبر اختبارات الموقع أو تدقيق الوصولية. |
| فحص الروابط | التحقّق مطلوب | يجب أن يحلّ بناء الموقع روابط التنقّل والصفحات المُوثَّقة لمساحة العمل الراهنة. |
| بناء الحزمة | التحقّق مطلوب | يجب أن يُصدِر uv run python tools/build_packages.py مُنتَجات بناء وتجزئات قبل ترقية الحزمة. |
| فحص دخاني لتثبيت الحزمة | التحقّق مطلوب | يجب أن تُثبَّت العجلات المبنية في بيئة افتراضية جديدة وأن تستورد كل مساحة أسماء عامّة. |
| تصدير حزمة الأدلّة | التحقّق مطلوب | يجب أن تُعاد توليد الجداول والأشكال والملحق من حملة مُرشَّحة-بالإفصاح. |
| إعادة تشغيل الحملة التجريبية | التحقّق مطلوب | يجب أن تستأنف الحملات التجريبية المحدودة، وتُعيد التشغيل من بذور مُسجَّلة، وتُعيد إنتاج صادرات تحليل حتمية. |
| الحملات الكاملة المرشّحة | التحقّق مطلوب | يجب أن يُجسِّد tools/build_campaign_evidence.py 30 مسألة لكل ملف تعريف، ويُشغِّل حملات مقارِنة/استئصال/حساسية، ويُصدِّر حِزَمًا مُرشَّحة-بالإفصاح. |
| تدقيق الاعتماديات | التحقّق مطلوب | يجب أن يكتمل uv run pip-audit --path <site-packages> --progress-spinner off دون ملاحظات حاجبة-للإصدار. |
| SBOM | التحقّق مطلوب | يجب توليد JSON CycloneDX من بيئة Python المُدقَّقة، مُثرى بتراخيص المكوّنات والتجزئات وعناوين URL للحزم وحواف الاعتماد. |
| CI المُستضاف | مُبوَّب بتوافر المُشغِّل | يجب أن يجتاز .github/workflows/ci.yml على Ubuntu وWindows وmacOS وPython 3.12-3.14 قبل الادّعاءات العامة. |
| مُنتَجات الإصدار | سير عمل يدوي | يبني .github/workflows/release.yml التوزيعات، والتجزئات، وحِزَم توقيع Sigstore، وإثباتات مُنتَجات GitHub، وأدلّة SBOM؛ ويتطلّب إصدار GitHub والنشر على PyPI مدخلات صريحة. |
| النشر | سير عمل يدوي | ينشر .github/workflows/pages.yml المجلّد site/out فقط بعد إدخال تأكيد النطاق المعتمَد. |
حزمة البوّابات العامة متاحة بصيغة gate-summary.json.
📦 قنوات النشر
صُمِّم DispatchAtlas لقنوات نشر متعدّدة، لكن لكل قناة حالة جاهزية مختلفة:
| القناة | الحالة الراهنة | دليل الترقية |
|---|---|---|
| العجلات وsdists المحلية | نشطة للفحوص الدخانية | بناء الحزمة مع فحص دخاني للاستيراد في venv-جديد. |
| فهرس حزم Python | مُبوَّب | الإصدار، والبيانات الوصفية، ونجاح سير عمل الإصدار، والنشر الموثوق، والاعتماد الصريح للإصدار. |
| موقع التوثيق | جاهز-للبناء | بناء الموقع وفحص الأنواع، واختبارات عقد الموقع، وفحوص الروابط، وحِزَم بيانات آمنة-للعموم، واعتماد Pages يدوي. |
| مجموعات بيانات البوابة الساكنة | جاهزة-للمعاينة | حِزَم JSON/CSV مُرشَّحة-بالإفصاح بوسوم أدلّة وبلا مدخلات خاصة. |
| حِزَم الأدلّة | جاهزة-كمرشّح | بيان، وجداول، وأشكال، وملحق، وإعادة تشغيل حتمية فوق دليل الحملة المرشّحة. وتبقى ادّعاءات المتن مُبوَّبة بعدم-التعادل وكفاية الجدوى. |
| مُنتَجات الأمان | نشطة محليًّا | تدقيق الاعتماديات، وSBOM مُثرى، وفحص الأسرار، ومراجعة أذونات سير العمل، وOpenSSF Scorecard، وفحص التشابه. |
لا ينبغي ترقية أي قناة بنسخ الملفات المُولَّدة يدويًّا. رقِّ بإعادة تشغيل الأمر أو سير العمل المالك وبإبقاء دليل البوّابة المقابل أخضر.