
إطار عمل لتحليل أمان العقود الذكية وتوليد PoC باستخدام الذكاء الاصطناعي
`# Aether v6.0 — إطار عمل تحليل أمان العقود الذكية
الإصدار 6.0 | ما الجديد في v6.0 | سجل التغييرات
Aether هو إطار عمل مبني على Python لتحليل العقود الذكية المكتوبة بـ Solidity، وتوليد نتائج الثغرات، وإنتاج اختبارات إثبات المفهوم (PoC) القائمة على Foundry، والتحقق من الاستغلالات على تفرعات الشبكة الرئيسية (mainnet forks). يجمع بين تحليل AST لـ Solidity، وتحليل taint، وتحليل مخطط تدفق التحكم، وتحليل العقود المتقاطعة، والتنفيذ الرمزي عبر Halmos، وأكثر من 180 كاشفًا ثابتًا قائمًا على الأنماط، وخط أنابيب LLM تعاوني متعدد الوكلاء (GPT/Gemini/Claude) مع ذاكرة مؤسسية مشتركة SAGE، و14 نموذجًا أوليًا للبروتوكولات، وقاعدة معرفة تضم أكثر من 75 استغلالًا، وكشفًا معايرًا بالتعلم الآلي، وكشفًا لشذوذ التوكنات، واستخراج الثوابت، وحل سياق العقود ذات الصلة، وتصفية متقدمة مراعية للسياق — كل ذلك في واجهة TUI واحدة ثابتة بملء الشاشة.
خط أنابيب الوكلاء التعاوني — يتحول خط التحليل العميق من 5 تمريرات مستقلة إلى 5 وكلاء تعاونيين يتبادلون المعرفة المنظمة من خلال الذاكرة المؤسسية SAGE:
docker compose up -d للبدء.الذاكرة المؤسسية SAGE — يتعلم Aether الآن من كل تدقيق، مما يقلل من النتائج الإيجابية الخاطئة ويحسن جودة النتائج بمرور الوقت:
SageFeedbackManager.sync_detector_accuracy() أجهزة الكشف عالية/منخفضة الأداء ويخزن تأملات حول ما يجب وما لا يجب فعلهdocker compose up -d يبدأ SAGE؛ الإعداد عبر sage_enabled/sage_url في ~/.aether/config.yamlالمساهمون: شكرًا لـ @sashavdv لإصلاح متغيرات المسارات المكتوبة بشكل ثابت (PR #1) و @pro258b لتحديد الدالة المفقودة validate_anthropic_key() (PR #2).
SAGE هو نظام ذاكرة مؤسسية دائم يعمل بإجماع BFT. راجع مشروع SAGE للاطلاع على الوثائق الكاملة.```bash
pip install sage-agent-sdk
docker compose up -d
python aether.py
python -c "from core.sage_seeder import SageSeeder; SageSeeder.generate_seed_fixtures()"
### كيف يحسّن SAGE عمليات التدقيق```
Audit 1 → Findings + FPs → Record outcomes in SAGE
↓
Audit 2 → SAGE recalls FP patterns → Fewer false positives
↓
Audit 3 → Richer institutional context → Better severity calibration
↓
Audit N → Institutional expert-level knowledge → Bug-bounty-quality findings
التنفيذ التلقائي لـ PoC — أصبحت اختبارات PoC المولّدة بواسطة Foundry تُجمَّع وتُنفَّذ تلقائيًا:
forge test --json يشغّل PoC فورًا بعد التجميعPoCTestResult لإعداد تقارير منظمة عن النجاح/الفشل/الخطأPOC_TESTING جديدة في JobManager لتتبّع التقدم المباشر في TUIالتنفيذ الرمزي Halmos — التحقق الرسمي عبر التنفيذ الرمزي:
HalmosRunner لتنفيذ اختبارات Halmos الرمزية مقابل الخصائص المولّدةHalmosPropertyGenerator لتوليد خصائص التحقق تلقائيًا من الثوابت المستخرجةHalmosSymbolicNode مدمجة في مرحلة التحقق Stage 1.95enable_symbolic_verification, halmos_timeoutتحليل مخطط تدفق التحكم — فهم تدفق التحكم على مستوى المترجم:
BasicBlock, CFGEdge, ControlFlowGraph في solidity_ast.pybuild_cfg(), get_dominators(), get_loop_headers(), format_cfg_for_llm() للتحليل الهيكليparse_assembly_block() لدعم التجميع المضمّنحلقة التغذية الراجعة للتعلم الآلي — معايرة مبنية على النتائج التاريخية:
AccuracyTracker.record_finding_outcome() لتتبّع نتائج التقديم وأرباح المكافآتget_detector_accuracy() و get_detector_weights() لإحصائيات الأداء لكل كاشفDetectorStats لتتبع الإيجابيات الحقيقية/الخاطئة والدقة التاريخيةEnhancedVulnerabilityDetector استنادًا إلى سجل الكاشفسياق العقود ذات الصلة — تحليل LLM يرى الآن الكود المصدري الكامل للتبعيات:
RelatedContractResolver يكتشف تلقائيًا عقود الوالد والواجهة والمكتبة والتبعية.sol المجاورة للسياقتنظيف الديون التقنية — إزالة 8,500 سطر من الكود الميت:
ai_ensemble.py, audit_engine.py, fork_verifier.pyslither_project_cache من مدير قاعدة البياناتتحليل AST الخاص بـ Solidity — يضيف Aether v4.0 تحليلًا للكود مدعومًا بالمترجم عبر py-solc-x، متجاوزًا التحليل الثابت القائم على regex فقط:
solc --ast-json لحل الوراثة بشكل صحيح، ورؤية الدوال، وتخطيط التخزين مع أرقام الفتحات، وتتبّع قراءة/كتابة متغيرات الحالة لكل دالةمحرك تحليل التلوث (Taint) — يتتبّع المدخلات التي يتحكم بها المستخدم عبر العقود لتحديد تدفقات البيانات الخطرة:
التحليل عبر العقود (Pass 3.5) — مرحلة تحليل عميق جديدة تستهدف الثغرات متعددة العقود:
قاعدة بيانات سلوكيات التوكنات غير القياسية — 12 فئة من سلوكيات ERC-20 غير القياسية التي تسبب استغلالات حقيقية:
مدمجة في خط أنابيب الكشف الثابت وقوائم التحقق الخاصة بالنماذج الهيكلية.
محرك الدقة المحسّن — اكتشاف متقدم لثغرات التقريب والدقة:
توليد PoC قابل للتشغيل — اختبارات Foundry المولّدة تُجمَّع وتُشغَّل فعليًا الآن:
تحسينات خط أنابيب LLM:
محرك التحليل العميق — يحوّل Aether v3.5 جذريًا طريقة اكتشاف الأداة للثغرات، منتقلًا من استدعاء LLM أحادي "ابحث عن الأخطاء" إلى خط أنابيب منظم من 6 مراحل يحاكي أسلوب المدققين المحترفين في مراجعة الكود: افهم أولًا، ثم هاجم منهجيًا.
بدلًا من إرسال العقد بالكامل إلى LLM بمطالبة واحدة، يشغّل Aether الآن ست مراحل تحليل متتالية مع سياق متراكم:
تُخزَّن المرحلتان Pass 1-2 مؤقتًا بناءً على هاش محتوى العقد، لذلك تخطي عمليات إعادة التدقيق مرحلة الفهم. تستلم كل مرحلة لاحقة كل السياق السابق، مما يبني نموذج هجوم شامل. مُفعّل عبر وسم الميزة AETHER_DEEP_ANALYSIS=1 (مفعل افتراضيًا)؛ ويتراجع إلى المطالبة الواحدة عند الفشل.
قبل تحليل الأخطاء، يكتشف Aether نوع البروتوكول الذي ينفّذه العقد ويحمّل قوائم تحقق خاصة بالنموذج:
إجمالي 10 نماذج، لكل منها 3-7 عناصر محددة مستمدة من استغلالات العالم الحقيقي.
قاعدة بيانات منظمة تضم أكثر من 50 نمط استغلال حقيقي مصنف، تحل محل القائمة الثابتة السابقة المكونة من 10 أنماط:
يتضمن كل نمط مؤشرات كود، وحمايات مفقودة، وآلية استغلال خطوة بخطوة، وسوابق من العالم الحقيقي (مع مبالغ بالدولار). تُصفى الأنماط حسب النموذج المكتشف ومجال تركيز الوكيل.
يستخرج تلقائيًا ثوابت البروتوكول من ثلاثة مصادر:
@invariant في تعليقات العقد عبر NatSpecينشئ مجموعات اختبار Foundry باسم invariant_*() تعمل كإثباتات تحقق رسمي خفيف — فشل اختبار الثبات يثبت أن الخطأ حقيقي.
division_by_zero وinteger_underflow وغيرها إلى منخفضة بشكل عشوائي. الآن يتحقق ما إذا كان الاكتشاف داخل كتلة unchecked{}، أو قرب تحويلات القيمة، أو في حسابات الأسعار، أو في سياقات الأوراكل قبل اتخاذ القرار"pending" تمر الآن إلى تحليل LLM (سابقًا كانت فقط النتائج "validated" تمر، مما أسقط بصمت الكثير من النتائج الحقيقية)(line // 10) * 10 الذي كان يقسم النتائج المتباعدة بسطرين إلى مجموعات مختلفةDeFiVulnerabilityDetector (تحليل مرحلي للحضور/الغياب) يعمل الآن في محرك التدقيق المحسّن الرئيسي، وليس فقط في خط الأنابيب القائم على التدفقواجهة TUI نصية مضمّنة بالكامل — Aether v3.0 تطبيق دائم بملء الشاشة لا يهبط أبدًا إلى طرفية خام. كل عملية — عمليات التدقيق، توليد PoC، إنشاء التقارير، اختيار نطاق GitHub، إعدادات التهيئة — تتم بالكامل داخل TUI:
app.suspend() — لا تختفي TUI أبدًا، ولا انتقالات طرفية مزعجةEnter على أي مهمة لرؤية المخرجات المتحركة الحية، وشريط تقدم المراحل، والبيانات الوصفيةa/n للكل/لا شيء، اكتب للتصفية، العقود المدققة سابقًا ملوّنةn تدقيق جديد، r استئناف، h السجل، p PoCs، التقارير، جلب، الإعدادات، خروجأربعة أنواع من المهام الخلفية: جميع العمليات الثقيلة تعمل كخيوط Daemon خلفية عبر AuditRunner، مع التقاط المخرجات بواسطة ThreadDemuxWriter وعرضها في JobDetailScreen:
| نوع المهمة | الوصف |
|---|---|
local | تدقيقات عقد واحد أو متوازية |
github | تدقيقات مستودعات GitHub مع نطاق محدد مسبقًا |
دعم LLM من ثلاثة مزودين: OpenAI (GPT-5/5.3)، Google Gemini (2.5/3.0)، وAnthropic Claude (Sonnet 4.5/Opus 4.6) لأقصى مرونة وتكرارية.
توليد PoC محسّن: تحليل العقد القائم على AST، وإصلاحات ترجمة تكرارية، ومطالبات LLM جاهزة للإنتاج تولّد استغلالات مناسبة لتقديمها كمكافآت لأخطاء الأمان.
تصفية متقدمة للإيجابيات الخاطئة: التحقق متعدد المراحل يخفض الإيجابيات الخاطئة من 66% إلى حوالي 20-25%، محسنًا الدقة من 33% إلى 75-80%:
script/, .s.sol, forge-std/Script.sol) تُستبعد تلقائيًا من تحليل الثغرات[PRODUCTION]/[DEPLOYMENT SCRIPT] لتركيز النماذج على كود الإنتاجonlyDistributor, authorized) تُستخرج من مصدر العقد ويتم التعرف عليها إلى جانب الأنماط المبرمجةتكامل قاعدة بيانات ثغرات Move: أنماط من 128 نتيجة حرجة/عالية عبر 77 تدقيقًا، مُكيَّفة لـ Solidity/EVM:
python setup.py # Interactive installer (recommended)
### 2. تشغيل Aether```bash
python aether.py # Launches the full-screen Textual TUI
هذا كل شيء. توجهك واجهة TUI عبر كل شيء من خلال اختصارات لوحة المفاتيح والحوارات المنبثقة.
OPENAI_API_KEY (لنماذج GPT)GEMINI_API_KEY (لنماذج Gemini)ANTHROPIC_API_KEY (لنماذج Claude)ETHERSCAN_API_KEY (اختياري، لجلب العقود الموثقة)إذا كنت تفضل التثبيت اليدوي:```bash
curl -L https://foundry.paradigm.xyz | bash && foundryup export PATH="$PATH:$HOME/.foundry/bin"
pip install solc-select solc-select install 0.4.26 0.8.0 0.8.19 0.8.20 latest
python -m venv venv && source venv/bin/activate pip install -r requirements.txt
## الإعدادات
معالج الإعداد (`python setup.py`) يتولى كل شيء. يمكنك أيضًا التهيئة من داخل TUI عبر `s` (الإعدادات):
- **تهيئة مفاتيح API** — مطالبات تسلسلية لمفاتيح OpenAI وGemini وAnthropic وEtherscan مع قيم حالية مقنّعة
- **تهيئة النماذج** — اختيار النماذج لكل مزوّد من الخيارات المتاحة
- **المعالج الكامل** — تشغيل مفاتيح API متبوعًا باختيار النموذج
- **إعدادات الفرز** — ضبط عتبات الخطورة ومستويات الثقة والحد الأقصى للنتائج
أو اضبط متغيرات البيئة مباشرة:```bash
export OPENAI_API_KEY=sk-...
export GEMINI_API_KEY=...
export ANTHROPIC_API_KEY=...
Configuration is stored in ~/.aether/config.yaml.
Database locations:
~/.aether/aetheraudit.db~/.aether/aether_github_audit.dbتتم جميع التفاعلات عبر اختصارات لوحة المفاتيح من الشاشة الرئيسية:
n — تدقيق جديدمعالج متعدد الخطوات مع ثلاثة أنواع من المصادر:
ملف أو مجلد محلي:
رابط GitHub:
a/n للكل/لا شيء)رابط مستكشف الكتل / عنوان:
r — استئناف التدقيقجدول بجميع تدقيقات GitHub قيد التنفيذ مع اسم المشروع والنطاق والتقدم (N/M عقود) ووقت آخر تحديث. حدد أحدها للتحقق من العقود المعلقة وتشغيلها كمهمة خلفية.
h — سجل التدقيقعرض موحد لجميع التدقيقات السابقة من قاعدتي البيانات (المحلية + GitHub). حدد أي إدخال لقائمة فرعية:
p — إنشاء PoCsحدد مشروعًا، واضبط الحد الأقصى للعناصر، والحد الأدنى للخطورة، وفلترة الإجماع فقط. يعمل إنشاء PoC كمهمة خلفية — راقب التقدم في جدول المهام.
o — التقاريرحدد المشروع والنطاق والصيغة (markdown/json/html/all). يعمل إنشاء التقرير كمهمة خلفية.
f — جلب عقداختر شبكة من أكثر من 10 سلاسل مدعومة، وأدخل عنوانًا أو الصق رابط مستكشف، واجلب الكود المصدري الموثق، ويمكنك تدقيقه فورًا اختياريًا.
s — الإعداداتEnter — تفاصيل المهمةاضغط Enter على أي صف في جدول المهام لعرض:
q — خروجيخرج من واجهة TUI. إذا كانت المهام تعمل، يطلب التأكيد.
build_cfg() يبني كتلًا أساسية مع أشجار المسيطرين واكتشاف رؤوس الحلقات؛ تحليل كتل التجميع؛ تغذية سياق CFG في التحليل العميق ونشر التلوثRelatedContractResolver لسياق التبعياتHalmosRunner + HalmosPropertyGenerator للتحقق الرسمي من الثوابت؛ مدمج في مرحلة التحقق 1.95؛ تدهور سلس إذا لم يكن Halmos مثبتًاAccuracyTracker يسجل نتائج التقديم ويولّد أوزان ثقة لكل كاشف؛ معايرة الخطورة من البيانات التاريخية تُحقن في التحليل العميقRelatedContractResolver يكتشف عقود الأصل والواجهة والمكتبة والتبعيات؛ نظام ميزانية لكل تمريرة مع تلخيص المكتبات القياسية./output/ — الجذر العام للإخراج./output/reports/ — التقارير المولدة./output/pocs/ — مجموعات PoC الخاصة بـ Foundry المولدة./output/exploit_tests/ — نتائج اختبار الاستغلالaether.py — نقطة الدخول الوحيدة؛ تشغّل واجهة TUI الخاصة بـ Textualcli/interactive_menu.py — طبقة رقيقة تنشئ JobManager + AetherAppcli/tui/app.py — AetherApp(App) — تطبيق Textual الرئيسي مع اختصارات لوحة المفاتيح ومؤقت تحديث كل ثانية واحدةcli/tui/)MainScreen (جدول المهام + شريط التكلفة)، JobDetailScreen (سجل مباشر + المرحلة + البيانات الوصفية)، NewAuditScreen, HistoryScreen, ResumeScreen, PoCScreen, ReportsScreen, FetchScreen, SettingsScreenJobsTable (DataTable يستعلم JobManager)، CostBar (تكلفة الجلسة حسب المزود)، LogViewer (RichLog مع تحديث تدريجي)، PhaseBar (تقدم كتل Unicode)ConfirmDialog, , , , , — جميعها فئات فرعية من ModalScreencli/audit_runner.py — فئة AuditRunner التي تشغّل التدقيقات وPoCs والتقارير وتدقيقات GitHub في خيوط خلفيةcore/job_manager.py — مفردة JobManager: سجل مهام الجلسة (QUEUED/RUNNING/COMPLETED/FAILED/CANCELLED)core/audit_progress.py — ContractAuditStatus مع مخازن سجل لكل مهمة، وThreadDemuxWriter لالتقاط stdout/stderrcore/llm_usage_tracker.py — مفردة آمنة للخيوط مع snapshot() لفروق التكلفة لكل مهمةcli/main.py — فئة AetherCLI (~2600 سطر) — منسق التدقيق الداخلي المستخدم بواسطة AuditRunnercore/enhanced_audit_engine.py — محرك التدقيق الرئيسي مع تكامل التحليل العميقcore/post_audit_summary.py — لوحة ما بعد التدقيق مع تفصيل التكلفة حسب المزودcore/deep_analysis_engine.py — خط أنابيب LLM من 6 تمريرات بالإضافة إلى التمريرة 3.5 (عبر العقود): الفهم ← سطح الهجوم ← الثوابت ← عبر العقود ← عبر الدوال ← عدائي ← الحالات الطرفية؛ اختيار مستوى النموذج، والتخزين المؤقت، وأمثلة few-shot، وفرض سلسلة التفكير، وسياق CFG في التمريرة 2، ومعايرة الخطورة بالتعلم الآلي في التمريرة 5، وسياق العقود المرتبطة لكل تمريرةcore/protocol_archetypes.py — اكتشاف النموذج الأصلي للبروتوكول (14 نوعًا بما فيها LIQUID_STAKING, PERPETUAL_DEX, CDP_STABLECOIN, YIELD_AGGREGATOR) مع قوائم ثغرات لكل نموذجcore/exploit_knowledge_base.py — أكثر من 75 نمط استغلال حقيقي مصنف عبر 14 فئة (بما فيها CROSS_CONTRACT, SIGNATURE_AUTH, TOKEN_INTEGRATION, PROXY_UPGRADE, TYPE_SAFETY)core/invariant_engine.py — استخراج الثوابت (NatSpec + LLM + نمط) وإنشاء اختبارات ثوابت Foundry + إنشاء خصائص Halmoscore/solidity_ast.py — تحليل AST الخاص بـ Solidity عبر py-solc-x مع بديل regex للوراثة والرؤية وتخطيط التخزين وتتبع قراءة/كتابة الحالة؛ بناء مخطط تدفق التحكم (build_cfg(), get_dominators(), get_loop_headers())core/taint_analyzer.py — تحليل تدفق البيانات / التلوث مع 8 أنواع مصادر و12 نوعًا من المصارف واكتشاف المعقّمات وتتبع عبر العقود ونشر CFG المراعي للفروعcore/enhanced_vulnerability_detector.py — الكاشف الأساسي مع أكثر من 60 نمطًاcore/business_logic_detector.py, core/state_management_detector.py, core/data_inconsistency_detector.py, core/centralization_detector.py, core/looping_detector.py — كاشفات مستوحاة من Movecore/defi_vulnerability_detector.py, core/mev_detector.py, core/oracle_manipulation_detector.py — كاشفات خاصة بـ DeFi (كاشف DeFi مدمج في المحرك المحسّن في v3.5)core/arithmetic_analyzer.py, core/precision_analyzer.py, core/gas_analyzer.py, , — محللات متخصصة (محلل الدقة محسّن باكتشاف تضخم الحصص واتجاه التقريب واقتطاع القسمة واستغلال الغبار وتجاوز المجمّعات)core/validation_pipeline.py — خط أنابيب متعدد المراحل: فحص الحماية المدمجة، واكتشاف الحوكمة، والتحقق المراعي للتلوث (المرحلة 1.85)، والتحقق الرمزي Halmos (المرحلة 1.95)، والتحقق من النشر، والتحقق المحليcore/governance_detector.py, core/deployment_analyzer.py, core/llm_false_positive_filter.pycore/control_flow_guard_detector.py, core/inheritance_verifier.pycore/nodes/halmos_node.py — عقدة HalmosSymbolicNode في خط الأنابيب للتحقق من التنفيذ الرمزيcore/enhanced_llm_analyzer.py — تحليل LLM منظم (GPT/Gemini/Claude) مع إخراج JSON وتناوب متعدد المزودينcore/enhanced_prompts.py — قوالب مطالبات إنتاجية مع تحميل ديناميكي لأنماط الاستغلال من قاعدة المعرفة، وأمثلة few-shot، ومعايرة الخطورة، وفرض سلسلة التفكيرcore/foundry_poc_generator.py (~8000 سطر) — تحليل قائم على AST، وتغذية راجعة تكراريّة للترجمة (حتى 5 محاولات)، وتنفيذ تلقائي عبر forge test --json مع تحليل PoCTestResult ودعم وضع الفرعcore/llm_foundry_generator.py — إنشاء اختبارات قائم على LLM مع توثيق API وهمي وأنماط setUp موصى بهاcore/enhanced_foundry_integration.py — التحقق من Foundry وتنسيقهcore/poc_templates.py — قوالب عقود وهمية (MockERC20, MockOracle, MockWETH, MockFlashLoanProvider)core/poc_setup_generator.py — إنشاء ذكي لـ setUp(): استخراج معاملات المُنشئ، ونشر العقود الوهمية، ومعالجة العقود القابلة للترقية، وسك التوكنات والموافقاتcore/database_manager.py — DatabaseManager (التدقيقات المحلية) + AetherDatabase (تدقيقات GitHub)core/analysis_cache.py — تخزين مؤقت ذكي لتحليل متكرر أسرع بمرتينcore/accuracy_tracker.py — حلقة التغذية الراجعة بالتعلم الآلي: نتائج التقديم، وأرباح المكافآت، وإحصاءات دقة كل كاشف، وإنشاء أوزان الثقةcore/github_auditor.py — استنساخ المستودعات، واكتشاف الأطر، واكتشاف العقود، وتنسيق التحليلcore/etherscan_fetcher.py, core/basescan_fetcher.py — جلب العقود الموثقة من مستكشفي الكتلcore/exploit_tester.py — التحقق من الاستغلالات ضد فروع Anvilتُعرَّف تدفقات التدقيق في إعدادات YAML (configs/). خط أنابيب التدقيق المحسّن:
FileReaderNode -> StaticAnalysisNode -> LLMAnalysisNode -> EnhancedExploitabilityNode -> [FixGeneratorNode -> ValidationNode -> HalmosSymbolicNode] -> ReportNode
2059 اختبارًا عبر 76 ملف اختبار، تعمل في حوالي 23 ثانية:```bash python -m pytest tests/ # All tests (~23s, 2059 tests) python -m pytest tests/test_enhanced_detectors.py -v # Single file python -m pytest tests/test_enhanced_detectors.py::TestArithmeticAnalyzer -v # Single class python -m pytest tests/ -k "governance" -v # Pattern match python -m pytest tests/ --cov=core --cov-report=html # With coverage
## استكشاف الأخطاء وإصلاحها
- **لم يتم العثور على Foundry** — تأكد من تثبيت `forge`/`anvil` وأنهما على `PATH` (`foundryup` و `export PATH="$PATH:$HOME/.foundry/bin"`)
- **لم يتم العثور على solc** — ثبّت `solc-select` والإصدارات المطلوبة: `solc-select install 0.8.20 latest`
- **ميزات LLM لا تعمل** — تحقق من تعيين مفاتيح API. قد تكون بعض النماذج غير متاحة في حسابك/منطقتك؛ يتراجع النظام تلقائيًا إلى البديل
- **قاعدة البيانات غير موجودة** — بالنسبة لتقارير GitHub، تأكد من تشغيل سير عمل التدقيق أولاً
- **Textual لا يتم تحميله** — شغّل `pip install textual>=1.0.0` إذا كان مفقودًا
---
## سجل التغييرات
### v4.7 — التنفيذ التلقائي لـ PoC، التحقق الرمزي عبر Halmos، تحليل CFG وحلقة التغذية الراجعة للتعلم الآلي
- **التنفيذ التلقائي لـ PoC** — تُجمَّع PoCs المُولَّدة لـ Foundry وتُنفَّذ تلقائيًا عبر `forge test --json` مع تحليل `PoCTestResult` ودعم وضع fork؛ مرحلة `POC_TESTING` لتتبع TUI المباشر
- **التنفيذ الرمزي عبر Halmos** — عقدة خط المعالجة `HalmosRunner` و`HalmosPropertyGenerator` و`HalmosSymbolicNode` (مرحلة التحقق 1.95) للتحقق الرسمي من الثوابت؛ مع تدهور سلس إذا لم يتم تثبيت Halmos
- **تحليل الرسم البياني لتدفق التحكم** — `BasicBlock` و`CFGEdge` و`ControlFlowGraph` مع `build_cfg()` وأشجار المسيطِر واكتشاف رؤوس الحلقات وتحليل كتل التجميع؛ يُحقن سياق CFG في التحليل العميق Pass 2؛ نشر تلوث مراعٍ للفروع
- **حلقة التغذية الراجعة للتعلم الآلي** — يسجل `AccuracyTracker` نتائج الإرسال مع `get_detector_accuracy()` و`get_detector_weights()` لإحصائيات كل كاشف على حدة؛ تعديل أوزان الثقة في `EnhancedVulnerabilityDetector`؛ معايرة الخطورة في التحليل العميق Pass 5
- **سياق العقود ذات الصلة** — يكتشف `RelatedContractResolver` العقود الأبوية وعقود الواجهات والمكتبات وعقود التبعيات مع نظام ميزانية لكل مرحلة (200K/100K/50K حرفًا)؛ تلخيص المكتبة القياسية؛ اكتشاف العقود الشقيقة في ملف واحد
- **تنظيف الديون التقنية** — إزالة 8,500 سطر من الكود الميت: حُذفت `ai_ensemble.py` و`audit_engine.py` و`fork_verifier.py`؛ وأُزيلت جميع الإشارات إلى ai_ensemble من CLI ومشغّل التدقيق وشاشات TUI ومولّد التقارير
- **2059 اختبارًا** ناجحًا عبر 76 ملف اختبار
### v4.0 — تحليل AST لـ Solidity، تحليل التلوث وتتبع تدفق البيانات
- **محلل AST لـ Solidity** — تكامل كامل مع solc عبر py-solc-x لحل الوراثة بشكل صحيح ورؤية الدوال وتخطيط التخزين وتتبع قراءة/كتابة الحالة؛ مع تراجع سلس إلى regex
- **محرك تحليل التلوث** — يتتبع المدخلات التي يتحكم بها المستخدم عبر 8 أنواع مصادر إلى 12 مصرفًا (sink) خطرًا مع اكتشاف التعقيم والتتبع عبر العقود
- **تكامل خط المعالجة** — تُغذى بيانات AST في Pass 1، وبيانات التلوث في Pass 2، مع مرحلة تحقق 1.85 واعية بالتلوث
- **1839 اختبارًا** ناجحًا عبر 67 ملف اختبار (~23 ثانية)
### v3.8 — اكتشاف محسّن وتوليد PoC
- **التحليل عبر العقود** — Pass 3.5 جديد مع محلل العلاقات بين العقود واكتشاف حدود الثقة وتجميع union-find
- **قاعدة بيانات شذوذ التوكنات** — 12 فئة من سلوكيات ERC-20 غير القياسية (رسوم عند التحويل، إعادة التحجيم، ERC-777، إلخ)
- **محرك دقة محسّن** — اكتشاف تضخم الحصص، وتحليل اتجاه التقريب، وتتبع اقتطاع القسمة، واستغلال البقايا الدقيقة، وفيضان المجمِّع
- **توليد PoC قابل للتشغيل** — مكتبة عقود وهمية (ERC20 وOracle وWETH وFlashLoan) ووظيفة `setUp()` ذكية ورفع الحد الأقصى لمحاولات الترجمة من 3 إلى 5
- **أمثلة few-shot** في مراحل التحليل العميق 3 و4 و5 مع أمثلة حقيقية للثغرات وأمثلة للإيجابيات الكاذبة
- **معايرة الخطورة** — عتبات محددة (حرجة >$1M، عالية >$100K، متوسطة >$10K، منخفضة نظرية)
- **فرض سلسلة التفكير** — استدلال إلزامي من 5 خطوات قبل إخراج JSON
- **إيقاف مجموعة الذكاء الاصطناعي (AI ensemble)** — استُبدلت بتناوب متعدد الموفرين عبر مراحل التحليل العميق
- **التناوب متعدد الموفرين** — Gemini Flash (مراحل رخيصة)، Anthropic Claude (الاستدلال)، OpenAI GPT (التنوع)
- **1682 اختبارًا** ناجحًا
### v3.7 — نماذج أولية موسعة وأنماط استغلال
- **4 نماذج أولية جديدة للبروتوكولات** — LIQUID_STAKING وPERPETUAL_DEX وCDP_STABLECOIN وYIELD_AGGREGATOR (من 10 إلى 14 إجمالاً)
- **25 نمط استغلال جديد** — فئات CROSS_CONTRACT وSIGNATURE_AUTH وTOKEN_INTEGRATION وPROXY_UPGRADE وTYPE_SAFETY (من 50 إلى 75 إجمالاً)
- **ماسح عقود محسّن** — تُقيَّم العقود المجردة الآن، مع تعديل العتبات لدعم المستودعات المتعددة (monorepo)
- **1528 اختبارًا** ناجحًا
### v3.5.2 — الحد من الإيجابيات الكاذبة
- **اكتشاف السكربتات أثناء اكتشاف العقود** — الملفات الموجودة ضمن `script/`/`scripts/` وملفات `.s.sol` والعقود التي تستورد `forge-std/Script.sol` أو ترث `is Script` تُوسم كسكربتات نشر وتُستبعد من تحليل ثغرات LLM. يلغي فئة كاملة من الإيجابيات الكاذبة الناتجة عن تحليل مساعدات نشر Foundry ككود إنتاج
- **علامات سياق الملف في مطالبات LLM** — يتضمن المحتوى المجمّع الآن علامات `// FILE: <name>` لكل ملف، وتتلقى مرحلتا التحليل العميق 1 و3 ترويسة `## Project Files` تصنف كل ملف على أنه `[PRODUCTION]` أو `[DEPLOYMENT SCRIPT]` حتى تركز نماذج LLM على الكود الصحيح
- **اكتشاف المعدِّلات الديناميكية** — يستخرج `GovernanceDetector` الآن معدِّلات التحكم في الوصول المخصصة المعرّفة في العقد (مثل `onlyDistributor` و`onlyMinter` و`authorized`) عبر فحص تعريفات المعدِّلات ذات بادئة `only` أو فحوصات `msg.sender`. وتُدمج هذه مع قائمة المعدِّلات المثبتة في الكود من أجل `has_access_control()` و`is_governance_function()`
- **إزالة التكرار على نطاق الدالة** — يجمع `VulnerabilityDeduplicator` الآن النتائج حسب `(function_name, vuln_type)` عندما يكون كود العقد متاحًا، ليحل محل مطابقة الأسطر الدقيقة الهشّة التي كانت تفوّت التكرارات المتجاورة داخل نفس الدالة. ويتراجع إلى تجميع مجموعات من 20 سطرًا عندما لا يتوفر سياق الدالة
- **توسيع نطاق التسامح السطري لمجموعة الذكاء الاصطناعي** — زيد تسامح `_findings_match_fuzzy()` من ±5 إلى ±15 سطرًا لالتقاط التكرارات داخل نفس الدالة عبر الوكلاء
- **نمط الإيجابية الكاذبة للمنشئ الذرّي** — يكتشف `_check_constructor_context()` الآن عندما يُنشر عقد (`new`/`Create2`) ويُهيَّأ (`.initialize()`) في نفس المنشئ، ويصنف مخاوف التقدم على المعاملات (front-running) كإيجابيات كاذبة لأن العمليات ذرّية
- **نمط التحقق من LLM رقم 18** — أُضيف "النشر الذرّي + التهيئة" إلى قائمة التحقق المكونة من 18 نمطًا للإيجابيات الكاذبة في مطالبة التحقق من LLM
- **1489 اختبارًا** ناجحًا عبر 56 ملف اختبار (~40 ثانية)، ارتفاعًا من 1461
### v3.5 — محرك التحليل العميق
- **خط معالجة تحليل عميق من 6 مراحل** — يستبدل استدعاءات LLM لمرة واحدة باستدلال منظم متعدد المراحل: فهم البروتوكول ← رسم سطح الهجوم ← تحليل خرق الثوابت ← التفاعل عبر الدوال ← النمذجة العدائية ← الحالات الحدّية والحافة. تتلقى كل مرحلة السياق المتراكم من المراحل السابقة. تُخزَّن المرحلتان 1-2 مؤقتًا حسب تجزئة المحتوى لإعادة تدقيق سريعة
- **اكتشاف النموذج الأولي للبروتوكول** — يحدد تلقائيًا نوع البروتوكول (خزنة ERC-4626، مجمع إقراض، DEX/AMM، جسر، Staking، حوكمة، Oracle، سوق NFT، توكن، دفتر أوامر) مع قوائم تحقق من الثغرات خاصة بكل نموذج مستمدة من استغلالات العالم الحقيقي
- **قاعدة معرفة الاستغلالات** — أكثر من 50 نمط استغلال مصنفًا عبر 9 فئات (التضخم/الحصص، Reentrancy، Oracle، الحوكمة، الجسور، الدقة/التقريب، التحكم في الوصول، الاقتصادي/DeFi، المنطق) لتحل محل القائمة الثابتة المكونة من 10 أنماط. يتضمن كل نمط مؤشرات الكود والحراسات المفقودة وآلية الاستغلال خطوة بخطوة وسوابق من العالم الحقيقي بمبالغ بالدولار وقابلية التطبيق حسب النموذج الأولي
- **محرك الثوابت** — يستخرج ثوابت البروتوكول من وسوم NatSpec `@invariant` وتحليل LLM و6 كاشفات أنماط شائعة (انحفاظ الخزنة، تتبع الأرصدة، محاسبة العرض، حاصل الضرب الثابت في AMM، تغطية القروض بالضمانات، مكافآت Staking). يولّد مجموعات اختبار Foundry `invariant_*()` كإثباتات تحقق رسمي خفيف
- **معايرة خطورة واعية بالسياق** — تستبدل تخفيضات الخطورة الشاملة بفحوصات سياق المخاطر. النتائج داخل كتل `unchecked{}` أو بالقرب من تحويلات القيمة (`call{value:}` و`_mint` و`safeTransfer`) أو حسابات الأسعار أو سياقات Oracle تحافظ على خطورتها الأصلية
- **إصلاح بوابة التحقق** — تمر النتائج ذات الحالة `"pending"` الآن إلى تحليل LLM مع علامة `needs_llm_validation`. ولا يُسقط سوى النتائج الصريحة `"false_positive"` (سابقًا، كانت جميع النتائج غير `"validated"` تُفلتر بصمت)
- **عقوبة ثقة واعية بالتخصص** — النتائج أحادية الوكيل المطابقة لتخصص الوكيل (مثل AnthropicReasoningSpecialist + الهجمات الاقتصادية) تحصل على عقوبة -0.05؛ بينما تحتفظ النتائج غير المتخصصة بعقوبة -0.15
- **إصلاح إزالة التكرار حسب مجموعات الأسطر** — أُزيل التجميع `(line // 10) * 10` الذي كان يسبب مشكلات حدود اعتباطية (الخطان 9 و11 في مجموعتين مختلفتين). تستخدم إزالة التكرار الآن نوع الثغرة المُطبَّع فقط، مع معالجة `_findings_match_fuzzy()` للقرب السطري
- **دمج كاشف DeFi** — يعمل `DeFiVulnerabilityDetector` (تحليل دلالي من مرحلتين للوجود/الغياب) الآن في محرك التدقيق المحسّن إلى جانب `EnhancedVulnerabilityDetector`
- **أنماط استغلال ديناميكية في المطالبات** — يقوم `enhanced_prompts.py` الآن بتحميل الأنماط من ExploitKnowledgeBase مصفاة حسب مجال التركيز، مع التراجع إلى الأنماط الثابتة
- **1461 اختبارًا** ناجحًا عبر 55 ملف اختبار (~50 ثانية)
### v3.2 — إحصائيات المهام وإصلاحات الواجهة
- **إصلاح ظهور إحصائيات نتائج/تكلفة/LLM للمهمة بصفر دائمًا** — يلتقط عامل التدقيق الآن قاموس النتائج من `run_audit()` لاستخراج عدد النتائج؛ أُزيل `LLMUsageTracker.reset()` الذي كان يترك مراجع singleton يتيمة؛ جميع أنواع العمال الأربعة تحسب إحصائيات كل مهمة من فروق اللقطات
- **إصلاح خلل إعادة رسم الواجهة عند تبديل النوافذ** — استُبدلت الحاويات القابلة للتمرير بحاوية `Container` بسيطة مع `overflow: hidden` في JobDetailScreen لمنع إطارات مُركِّب قديمة
- **نقل "Job Details" إلى border_title** لتقديم لوحة بيانات وصفية أنظف
- إزالة `CLAUDE.md` من تتبع git
### v3.0 — واجهة TUI من Textual مضمّنة بالكامل
- **صفر استدعاءات `app.suspend()`** — لا تنخفض الواجهة أبدًا إلى طرفية خام؛ كل عملية تعمل بشكل مضمّن
- **توليد PoC في الخلفية** — يعمل كخيط خفي عبر `AuditRunner.start_poc_generation()` مع مخرجات مباشرة في JobDetailScreen
- **توليد التقارير في الخلفية** — يعمل كخيط خفي عبر `AuditRunner.start_report_generation()` مع مخرجات مباشرة
- **تدقيقات GitHub في الخلفية** — اختيار النطاق عبر نوافذ حوار Textual، ويعمل التدقيق كخيط خفي عبر `AuditRunner.start_github_audit()`
- **ContractSelectorDialog** — نافذة مشروطة متعددة التحديد وقابلة للتصفية وشبه ملء الشاشة تحل محل `ScopeManager.interactive_select()` المبنية على curses. مفتاح المسافة للتبديل، `a`/`n` للكل/لا شيء، اكتب للتصفية، وعقود تم تدقيقها سابقًا مرمّزة بالألوان
- **GitHubAuditHelper** — غلاف مفكك حول `GitHubAuditor`/`AetherDatabase` يوفر عمليات ذرّية (`clone_and_discover` و`get_scope_state` و`save_new_scope` و`get_pending_contracts` و`handle_reaudit`) قابلة للاستدعاء من شاشات Textual
- **إعدادات مضمّنة** — تكوين مفتاح API والنموذج عبر TextInputDialog/SelectDialog الأصليين دون الحاجة إلى معالج إعداد خارجي
- **إدارة نطاق GitHub مضمّنة** — متابعة أو إعادة تدقيق أو إنشاء نطاق جديد عبر SelectDialog؛ اختيار العقود عبر ContractSelectorDialog
- **إعادة كتابة 6 شاشات** — PoCScreen وReportsScreen وSettingsScreen وNewAuditScreen وHistoryScreen وResumeScreen — جميعها مضمّنة بالكامل
- **770 اختبارًا** ناجحًا عبر 50 ملف اختبار
### v2.2 — لوحة تحكم TUI عبر Textual
- واجهة TUI نصية ملء الشاشة مع تطبيق دائم وارتباطات مفاتيح ومؤقت تحديث كل ثانية واحدة
- MainScreen مع جدول مهام مباشر وشريط تكلفة الجلسة
- JobDetailScreen مع عارض سجلات مباشر وشريط تقدم المراحل وبيانات وصفية
- نوافذ حوار مشروطة (تأكيد، إدخال نص، تحديد، خانة اختيار، منتقي مسار) تحل محل مطالبات questionary
- تنفيذ التدقيق في الخلفية عبر AuditRunner مع التقاط المخرجات بواسطة ThreadDemuxWriter
- JobManager باعتباره singleton لسجل مهام الجلسة
- تتبع تكلفة كل مهمة عبر لقطات LLMUsageTracker
### v2.1 — تدقيقات متوازية وإزالة Slither وتنظيف الاختبارات
- محرك تدقيق متوازٍ — تشغيل عدة عقود في وقت واحد مع `ThreadPoolExecutor`، قابل للتهيئة حتى 8 عمال متوازيين
- تتبع تقدم آمن للخيوط — `ContractAuditStatus` مع أقفال، و`ThreadDemuxWriter` لتعدد إرسال stdout
- ملخص ما بعد التدقيق — عرض نتائج موحّد بعد اكتمال التدقيقات المتوازية
- تتبع استخدام LLM — تتبع استخدام الرموز والتكاليف واستدعاءات API عبر جميع الموفرين الثلاثة
- إزالة Slither بالكامل — حُذفت جميع التبعيات وكود التكامل والاختبارات (~1200 سطر)؛ كاشفات الأنماط + Foundry ABI + regex هي أدوات التحليل الوحيدة
- تنظيف مجموعة الاختبارات — إزالة أكثر من 40 ملف اختبار قديم/بطيء/تكامل
### v2.0 — واجهة TUI تفاعلية قائمة على القوائم
- واجهة TUI تفاعلية تعتمد على القوائم كواجهة أساسية
- معالج تدقيق موجّه مع اختيار المصدر وخانات اختيار الميزات والتأكيد
- إمكانية استئناف التدقيق لتدقيقات GitHub قيد التنفيذ
- متصفح موحّد لتاريخ التدقيق عبر قاعدتي البيانات المحلية وGitHub
- سير عمل متكامل لتوليد PoC والتقارير من القائمة
- جلب عقود متعدد السلاسل مع خيار تدقيق فوري اختياري
- إدارة الإعدادات من القائمة
- تشغيل الكونسول أو العودة إليه من القائمة
### v1.5 — دعم LLM بثلاثة موفرين وتحليل محسّن
- دمج Anthropic Claude (Sonnet 4.5 وOpus 4.6 وHaiku 4.5) كموفر LLM ثالث
- مجموعة ذكاء اصطناعي من 6 وكلاء: وكيلان OpenAI + وكيلان Gemini + وكيلان متخصصان من Anthropic
- تراجع تلقائي عبر الموفرين لتحقيق أقصى توافر
- تحديث نماذج OpenAI (GPT-5.3) ونماذج Google Gemini (3.0 Flash/Pro)
- تحديث معالج الإعداد ليشمل تكوين مفتاح API لـ Anthropic واختيار النموذج
- إصلاح أمر generate-foundry CLI المعطّل
---
## الترخيص
يُوزَّع Aether بموجب **رخصة MIT**. راجع ملف [LICENSE](https://github.com/l33tdawg/aether/blob/HEAD/LICENSE) للتفاصيل.
## المؤلف
**Dhillon Andrew Kannabhiran** (@l33tdawg)
- البريد الإلكتروني: [email protected]
- تويتر: [@l33tdawg](https://twitter.com/l33tdawg)
- GitHub: [@l33tdawg](https://github.com/l33tdawg)
## المساهمة
المساهمات مرحب بها! لا تتردد في إرسال المشكلات (issues)، أو عمل fork للمستودع، أو إنشاء طلبات سحب (pull requests).
| الفئة | الخطورة | أمثلة التوكنات |
|---|
| رسوم على التحويل | عالية | USDT, STA, PAXG |
| توكنات إعادة الضبط (Rebasing) | عالية | stETH, AMPL, OHM |
| استدعاءات ERC-777 | عالية | imBTC |
| قابل للصك الفوري (Flash-mintable) | عالية | DAI |
| إرجاع غير قياسي | متوسطة | USDT القديم |
| توكنات القائمة السوداء | متوسطة | USDC, USDT |
| توكنات قابلة للإيقاف المؤقت | متوسطة | USDC |
| توكنات ذات كسور عشرية منخفضة | متوسطة | USDC (6), WBTC (8) |
| خطافات التحويل | متوسطة | LINK (ERC-677) |
| سباق الموافقة | منخفضة | متعددة |
| نقاط دخول متعددة | منخفضة | TUSD |
| توكنات قابلة للترقية | منخفضة | USDC v2 |
| المرحلة | الغرض | مستوى النموذج |
|---|
| Pass 1 | فهم البروتوكول — ما هو البروتوكول، ثوابته، تدفقات القيمة، افتراضات الثقة | رخيص (مخزّن مؤقتًا) |
| Pass 2 | رسم سطح الهجوم — كل نقطة دخول، قراءات/كتابات الحالة، نوافذ إعادة الدخول | رخيص (مخزّن مؤقتًا) |
| Pass 3 | تحليل انتهاك الثوابت — فحص كل ثابت منهجيًا مقابل كل مسار كود | قوي |
| Pass 4 | التفاعل عبر الدوال — تحليل تبعيات الحالة، التبعيات الزمنية، تسلسلات القروض الفورية | قوي |
| Pass 5 | النمذجة العدائية — منظور المهاجم الصريح مع القروض الفورية وMEV وحسابات متعددة | قوي |
| Pass 6 | حالات الحدود والحواف — العمليات الأولى/الأخيرة، القيم الصفرية، القيم القصوى، العمليات ذات المرجع الذاتي | متوسط |
| النموذج | أمثلة عناصر قائمة التحقق |
|---|
| خزنة ERC-4626 | تضخم المُودِع الأول، اتجاه التقريب، التلاعب بسعر السهم عبر التبرعات |
| مجمع إقراض | التلاعب بسعر الأوراكل، التلاعب بحدود التصفية، سلسلة الديون المعدومة، التلاعب بأسعار الفائدة |
| DEX/AMM | تلاعب مزود السيولة الأول، هجمات الساندويتش، أوراكل السعر عبر الاحتياطيات |
| جسر (Bridge) | إعادة تشغيل عبر السلسلة، اختراق المدققين، عدم تطابق تعيين التوكنات، تزوير إثبات السحب |
| تخزين (Staking) | التلاعب بحساب المكافآت، فيضان معدل المكافأة، إعادة دخول إلغاء التخزين |
| حوكمة | هجمات الحوكمة عبر القروض الفورية، تجاوز القفل الزمني، التلاعب بالنصاب |
| أوراكل | بيانات أسعار قديمة، انحراف السعر، توقف متسلسل L2 |
| الفئة | الأنماط | أمثلة |
|---|
| هجمات التضخم/الحصص | 6 | المُودِع الأول ERC-4626، تضخم توكن LP، التلاعب القائم على التبرعات |
| إعادة الدخول | 7 | الكلاسيكية، للقراءة فقط، عبر الدوال، عبر العقود، خطافات ERC-777/1155، استدعاءات القروض الفورية |
| أوراكل | 5 | التلاعب بالسعر الفوري، التلاعب بـ TWAP، التقادم، عدم تطابق الكسور العشرية، متسلسل L2 |
| الحوكمة | 4 | التصويت بقرض فوري (Beanstalk)، تجاوز القفل الزمني، التلاعب بالنصاب |
| الجسور | 5 | إعادة تشغيل الرسائل (Nomad)، اختراق المدققين (Ronin)، تعيين التوكنات (Wormhole) |
| الدقة/التقريب | 4 | اتجاه التقريب، فيضان غير مفحوص، رسوم على التحويل، انحراف التوكنات المعاد ضبطها |
| التحكم في الوصول | 5 | بروكسي غير مهيأ، تصادم التخزين، تصادم المحددات، حقن delegatecall |
| اقتصادي/DeFi | 8 | هجمات الساندويتش، سيولة JIT، سلسلة الديون المعدومة، قنبلة بيانات الإرجاع، إعادة تشغيل التوقيع |
| منطقي | 6 | خطأ واحد زائد/ناقص، غياب الموعد النهائي/الانزلاق، إرجاعات غير مفحوصة، محاسبة النقل الذاتي |
ofsqpoc | توليد إثبات المفهوم الخاص بـ Foundry |
report | توليد تقرير التدقيق (markdown/json/html) |
forge test --json مع دعم وضع الفرعTextInputDialogSelectDialogCheckboxDialogPathDialogContractSelectorDialogGitHubAuditHelper — عمليات تدقيق GitHub المجزأة لتكامل TUItheme.tcss — CSS الخاصة بـ Textual بسمة سماويةcore/cross_contract_analyzer.pyRelatedContractResolvercore/token_quirks.py — قاعدة بيانات شذوذ التوكنات (12 فئة من سلوكيات ERC-20 غير القياسية)core/halmos_runner.py — مشغل التنفيذ الرمزي Halmos للتحقق الرسميcore/halmos_property_generator.py — يولّد تلقائيًا خصائص تحقق Halmos من الثوابتcore/accuracy_tracker.py — حلقة التغذية الراجعة بالتعلم الآلي: تتبع دقة كل كاشف، وضبط أوزان الثقة، ومعايرة الخطورةcore/input_validation_detector.pycore/data_decoding_analyzer.pycore/token_quirks.py