عن المشروع

## ما هو AlleleForge هو إطار عمل تصميم موجه نحو الأبحاث لتحرير الجينوم باستخدام CRISPR، يبدأ من أليل تالف بدلاً من دليل (guide). تقوم بتزويده بمتغير — مدخل ClinVar، أو rsID، أو HGVS، أو VCF أو إحداثيات خام — ويقوم المسار بمعالجته، وتوجيهه إلى كيمياء التحرير المؤهلة، وتعداد الأدلة/pegRNAs المرشحة، وتقييمها، وإعادة قائمة مصنفة من التعديلات المرشحة. يغطي الإطار ثلاث كيمياء تحرير: SpCas9 nuclease، ومحررات القواعد (ABE/CBE)، والتحرير الأولي (prime editing)، والذي يعامله المشروع كنمط أساسي. يحمل كل مرشح نتيجة تعديل متوقعة، وفترة عدم يقين، وتقريرًا عن الأهداف غير المقصودة (off-target). يتم توفير كل شيء من خلال ثلاث واجهات فوق نواة واحدة: مكتبة Python، وواجهة سطر أوامر `aforge` ، وواجهة مستخدم ويب (خلفية FastAPI مع واجهة أمامية Next.js). ## تقارير عدم اليقين والسلامة التوقعات ليست مجرد أرقام عائمة؛ فكل نتيجة رقمية تأتي مع فترة زمنية، والطريقة التي أنتجتها، وعلامة `calibrated` تشير إلى ما إذا كانت الفترة قد تم ضبطها مقابل تغطية مستبعدة. بشكل افتراضي، تكون القيم الافتراضية الخالية من الأوزان عبارة عن استدلالات وتقدم تقرير `calibrated=False`. يستخدم إعادة معايرة الفترات طرق split-conformal، وتستخدم معايرة الاحتمالات الانحدار المتساوي (isotonic regression)، مع ظهور `empirical_coverage`/ECE عند الحاجة لأي منهما. تحليل الأهداف غير المقصودة يراعي السكان والأنماط الفردانية (haplotype)، ولكنه اختياري صراحةً: المشروع لا يوفر بيانات gnomAD، لذا يتطلب الفحص الطبقي حسب الأصل أن يوفر المستخدم مصدر تردد (`--gnomad` أو `--haplotypes` أو `--patient-vcf`). وبدون ذلك، يكون الفحص مرجعيًا فقط ويذكر المخرج ذلك. يتم الإبلاغ عن مخاطر الأصل كأكثر السكان تضررًا بدلاً من المتوسط، مع تطبيق عتبة حمل متطابقة على مسارات السكان والأنماط الفردانية. يجمع الترشيح بين نموذجين للتحديد (CFD و MIT)، ويسجل كلا الدرجتين لكل موقع. يتم تأمين ذاكرة التخزين المؤقت للأهداف غير المقصودة عبر التشغيلات لتكون مقتصرة على عمليات البحث المرجعية وبالمقيم الافتراضي. ## القابلية للتكرار والنهج الهندسي تؤكد قرارات التصميم الموثقة في README على القابلية للتكرار: نتائج معنونة بالمحتوى، وتقسيمات وذاكرات تخزين مؤقت (مع إعادة التحقق من السلامة)، وبيئات مثبتة، وبذور حتمية، ونقاط تفتيش مشفرة بالمحتوى. يمنع رمز artifact `null` التنزيل عن قصد. يتم تحميل النماذج من خلال بوابة موافقة/ترخيص/مجموع تحققي؛ العمود الفقري الافتراضي (Nucleotide Transformer v2 500M) يخضع لرخصة CC-BY-NC-SA-4.0 ويُرفض استخدامه التجاري عند التحميل، مع عدم توفير أوزان حقيقية. يوجد مسار تصدير ONNX للعمود الفقري. توفر حزمة Rust/PyO3 (`aforge_native`) نوى تسريع اختيارية — بحث FM-index BWT، وبذر k-mer، والمشي في الأنماط الفردانية، والمحاذاة المنتفخة (bulged alignment) — ولكل منها بديل Python نقي متطابق بايتياً واختبارات تكافؤ؛ وتعمل المكتبة وتجتاز الاختبارات بدون هذه الحزمة. ومن الجدير بالذكر أن القياسات المرجعية دفعت المشروع لجعل تصفية FM-index و k-mer seed اختيارية بدلاً من افتراضية، حيث تم قياس كليهما كتكلفة صافية على مستوى الفحص. ## القياس المرجعي والحالة يوفر القياس المرجعي العام، CRISPR-Bench، مهام، وتقسيمات مجمدة، ومقاييس، ومشغل، ولوحة متصدرين؛ كما يقوم نص برمجي لدراسة المعايرة/التعميم بإعادة توليد ECE لكل مهمة، وفجوة التعميم عبر أنواع الخلايا، وتقارير إعادة المعايرة. يتم إنشاء أشكال SVG قابلة للتكرار بواسطة مصير (renderer) خالٍ من التبعيات. تم تحديد جميع المراحل الخمس عشرة من خارطة طريق v0.1.0 كمكتملة (الأنواع الأساسية، الوصول إلى الجينوم، سجل البيانات، محلل المتغيرات، محرك الأهداف غير المقصودة، حديقة النماذج/التقييم، الكيمياء الثلاثة، المصمم، التقارير، CLI، الويب، القياس المرجعي، والوثائق). أما المسارات ما بعد v0.1.0 نحو v1.0 فهي مدرجة كقيد التنفيذ أو لم تبدأ بعد، بما في ذلك تثبيت رموز artifact الحقيقية ودراسة التحقق/المعايرة. ## شكل التثبيت التثبيت الأساسي خفيف عمدًا (نماذج مكتوبة، تكوين، تحليل بطاقة النموذج) مع إضافات اختيارية لـ `core` و `genome` و `variant` و `cli` و `web` و `ml` و `cas9-rs3` و `docs` و `dev`. يتطلب Python ≥ 3.11. تحتاج إضافة `variant` إلى ترويسات عميل PostgreSQL لأن `hgvs` تعتمد على `psycopg2`؛ ويشير README إلى أن هذا جعل أمر التثبيت الموثق سابقًا غير قابل للتنفيذ. ينص المشروع بوضوح على أنه أداة بحثية وليس جهازًا طبيًا، وأن ترشيحات الأهداف غير المقصودة هي حسابية ويجب التحقق منها تجريبيًا.