> ## Documentation Index
> Fetch the complete documentation index at: https://forgekit-docs-mintlify-fa544438.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# بوابات التحقق

> التحقق المستقل، وعَلَم الرمز المُهلوَس، والمواصفة-كعقد، وبوابة المهارات — فحوصات يمكنك تشغيلها تُقلِّل الأخطاء لكنها لا تُشهد بالصحة أبدًا.

لا شيء يُعد "منجَزًا" دون فحص يمكنك تشغيله — اختبار، أو رمز خروج من البناء، أو لقطة شاشة.
تضيف كل من بوابات التحقق في Forge حاجزًا إضافيًا للاصطياد. مع معدل إخفاق لكل مهمة قدره
`1 − p` ومعدل اصطياد للبوابة `c`، تنخفض الإخفاقات الصامتة إلى `(1 − p)(1 − c)`، وكل بوابة
هنا هي `c` إضافية.

<Warning>
  **التحقق يُقلِّل الأخطاء، ولا يُشهد بها.** مُحقِّقو الفريق (Crew) وعَلَم الرمز المُهلوَس يقلّلان
  عبء المراجعة؛ لكنهما لا يثبتان صحة الشيفرة. الاختبارات والتصحيحات البشرية تفوز دائمًا.
</Warning>

## التحقق المستقل — `forge verify`

بوابة مستقلة: تُشغّل اختبارات المستودع الحقيقية، وتضع علامة على الرموز المُهلوَسة،
وتتحقق من المصدر (provenance).

```bash theme={null}
forge verify              # tests + hallucinated-symbol + provenance
forge verify --deep       # multi-lens consensus — several independent checks must agree
```

<Note>
  يُصعّد `--deep` (v0.19+) إلى إجماع متعدد العدسات: يجب أن يجتاز التغيير عدة عدسات
  تحقق مستقلة، لا عدسة واحدة فقط.
</Note>

يُبلِّغ `forge verify --deep` عن `status` رباعي الحالات، لا نجاح/إخفاق ثنائيًا:

* `PASS` — اتفقت جميع العدسات **و** حالة اختبارات `forge verify` الأساسية هي أيضًا
  `PASS`. هذه الحالة وحدها تُعدّ تحققًا.
* `FAIL` — أبلغت عدسة واحدة على الأقل عن إخفاق حقيقي.
* `INCOMPLETE` — لم تتمكن عدسة من الإنهاء (مهلة، أو تعطل، أو تبعية مفقودة). لم يُدحَض
  شيء، لكن لم يُثبَت شيء كذلك.
* `NOT_CONFIGURED` — لا توجد عدسات موصولة بهذا المستودع، فلم يجد `--deep` ما يفحصه.

قاعدة أن `PASS` تستلزم `PASS` في الفحص الأساسي مقصودة: لا يمكن لإجماع عميق أخضر أن
يتجاوز تشغيلًا أساسيًا أحمر، لذا فإن `INCOMPLETE` أو `NOT_CONFIGURED` على عدسة الاختبار
الأساسية يُخفّض نتيجة الفحص العميق لتطابقها.

## عَلَم الرمز المُهلوَس — `forge atlas has`

`forge atlas has <symbol>` هو فحص الهلوسة: إذا استدعى النموذج رمزًا ليس في الرسم البياني
للشيفرة، تضع البوابة علامة عليه.

```bash theme={null}
forge atlas build          # index this repo's symbols → .forge/atlas.json
forge atlas has useAuth    # "not found" = likely hallucinated
```

الأطلس (atlas) هو JSON عادي عن قصد — يقرأ Codex وCursor وGemini وAider ملف
`.forge/atlas.json` عبر CLI أو `jq` العادي، دون أي اعتماد على MCP.

## المواصفة-كعقد — `forge spec`

ثبِّت السلوك في مواصفة واكتشف الانحراف عنها:

```bash theme={null}
forge spec init            # scaffold an OpenSpec contract
forge spec lock            # lock the current spec as the contract
forge spec check           # report drift against the locked contract
```

## بوابة المهارات — `forge scan`

قبل تثبيت مهارة أو خادم MCP، افحصه بحثًا عن الحقن، أو تنفيذ الشيفرة عن بُعد (RCE)،
أو تسريب البيانات:

```bash theme={null}
forge scan <path-to-SKILL.md-or-.mcp.json>
```

<Warning>
  الفحص النظيف **ليس شهادة أمان.** لا تصطاد الاستدلالات المدمجة سوى أشكال الهجمات المعروفة
  (الحرجة) وعدد قليل من الأنماط عالية الخطورة؛ اجتيازها يعني *"لم يُكتشف توقيع حرج"*،
  وليس *"آمن للتثبيت"*. راجع دائمًا المصدر، والأذونات، ومصدر الحزمة، وسلوك الشبكة بنفسك.
  النتيجة عالية الخطورة **high** لا تُوسم آمنة رغم أنها لا تحجب فعليًا. الماسح الخارجي
  اختياري ولا يجري أي استدعاء شبكي إلا إذا مكّنتَه.
</Warning>

## التصليب — `forge harden`

وصِّل ضوابط الأمان التي تُبقي الأسرار والتغييرات غير الآمنة خارج المستودع:

```bash theme={null}
forge harden               # gitleaks pre-commit + sandbox settings
```

## بوابة على مستوى الالتزام — `forge precommit`

<Note>
  `forge precommit` (v0.19+) هي بوابة على مستوى الالتزام (commit) — تُشغّل الحد الأدنى للتحقق
  وقت الالتزام حتى يُصطاد العمل الجزئي أو غير المُتحقَق منه قبل أن يهبط.
</Note>

## بوابة الإكمال — الدليل الاختباري مطلوب

لم تعُد بوابة إكمال مسار Stop (راجع
[الذاكرة عبر الجلسات](/ar/concepts/cross-session-memory)) تقبل تسليم الوكيل دليلًا على
اكتمال تغييرات الشيفرة. بالنسبة لأي جلسة لمست شيفرة المصدر، تشترط البوابة **دليلًا
اختباريًا حقيقيًا**:

* ملف اختبار مُعدَّل في فرق الجلسة، **أو**
* تشغيل ناجح طازج لـ `forge verify` مُسجَّل مقابل التغييرات الحالية.

لا تكفي لقطة `forge handoff` وحدها لاجتياز البوابة — فهي تُسجّل النية، لا التحقق. إن
غاب كِلا الدليلَين، تحجب البوابة مرة واحدة مع قائمة إصلاح:

```bash theme={null}
forge verify                              # produce the test evidence
forge handoff "<done>" --next "<next>"    # then snapshot the session
```

الجلسات التي لا تمس الشيفرة — كالتغييرات على التوثيق فقط، أو الإعدادات فقط، وغيرها —
لا تتأثر؛ فمطلب الدليل الاختباري يُطلَق فقط حين يُغيّر فرق الجلسة الشيفرة فعلًا.

## فحوصات واجهة المستخدم — `forge uicheck`

فحوصات UI حتمية، دون LLM ودون لقطات شاشة لأول ثلاث عدسات:

```bash theme={null}
forge uicheck contrast <fg> <bg>     # WCAG contrast ratio
forge uicheck fingerprint <file...>  # deterministic design fingerprint
forge uicheck design <file...>       # slop-distance + conformance gate
forge uicheck visual <file-or-url>   # Playwright-rendered check (opt-in tier)
```

قرن ذلك مع `forge taste` لاختيار اتجاه بصري واحد (brutalist، corporate،
editorial، minimalist، playful) ومعايرة عتبات بوابة `design`.
