---
read_when:
    - أنت تتحقق من صحة تحسينات الأداء وتقليص حجم الحزمة لشهر مايو 2026
    - أنت بحاجة إلى الأرقام التي تستند إليها تدوينة OpenClaw حول الأداء والتبعيات
    - أنت تغيّر بوابات الإصدار، أو ملف تثبيت إصدارات الحزم، أو حدود تبعيات Plugin
summary: ملخص مرئي وأدلة تقنية لتنظيف الأداء وحجم الحزمة والتبعيات وملف shrinkwrap في مايو 2026
title: مراجعة أداء الإصدار
x-i18n:
    generated_at: "2026-07-12T06:31:25Z"
    model: gpt-5.6
    postprocess_version: locale-links-v1
    provider: openai
    source_hash: 9e98ffc9d63e14e078a19368917eb4278695e1426048dc21942f928af145d5e1
    source_path: reference/release-performance-sweep.md
    workflow: 16
---

توثّق هذه الصفحة الأدلة الكامنة وراء عملية تنظيف الأداء،
وحجم الحزمة، والتبعيات، وملف shrinkwrap في OpenClaw خلال مايو 2026. وهي الرفيق التقني
لمنشور المدونة العام.

تُجمع هنا عمليتا تدقيق:

- **مسح أداء الإصدارات:** إصدارات GitHub من `v2026.5.28` رجوعًا حتى
  الإصدار المستقر `v2026.4.23`، باستخدام سير عمل `OpenClaw Performance`،
  والمسار `profile=smoke`، وموفّر وهمي. تمثل معظم صفوف الوسوم عينة واحدة؛ بينما
  تستخدم صفوف `v2026.5.27` و`v2026.5.28` أحدث عناصر فرع الإصدار
  المكررة 3 مرات.
- **سياق أبريل الأسبق:** خطوط أساس الموفّر الوهمي المنشورة في
  `clawgrit-reports` من `v2026.4.1` حتى `v2026.5.2`، والمستخدمة فقط لتجنب اعتبار
  إصدارات أواخر أبريل المعطّلة خط الأساس العام للأداء.
- **مسح بصمة التثبيت:** عمليات تثبيت جديدة عبر `npm install --ignore-scripts`
  في حزم مؤقتة، مع استخدام `du -sk node_modules` للحجم ومسح
  `node_modules` لحساب مثيلات الحزم.
- **مسح حجم حزمة npm:** تشغيل `npm pack openclaw@<version> --dry-run --json`
  للإصدارات المنشورة، مع تسجيل حجم ملف tarball المضغوط، والحجم بعد الفك، وعدد
  الملفات.

<Warning>
يستخدم مسح الأداء الرئيسي عينة smoke واحدة لكل وسم، باستثناء صفّي
`v2026.5.27` و`v2026.5.28` اللذين يستخدمان أحدث عناصر
فرع الإصدار المكررة 3 مرات. ويستخدم سياق أبريل الأسبق القيم الوسيطة المنشورة
للتكرار 3 مرات من `clawgrit-reports`. تعامل مع الأرقام بوصفها دليلًا على الاتجاهات
وإشارة للبحث عن التراجعات، لا إحصاءات لبوابة الإصدار.
</Warning>

## لقطة

تغطية الأداء: **77 إصدارًا مطلوبًا**، و**74 نقطة مدعومة بعناصر**،
و**3 عمليات CI غير متاحة**. أحدث نقطة مقاسة لإصدار مستقر: `v2026.5.28`.

<CardGroup cols={2}>
  <Card title="دورة الوكيل المستقرة" icon="gauge">
    **دورة باردة أسرع 5.1 مرة**

    - `v2026.4.14`: 9.8 ث
    - `v2026.5.28`: 1.9 ث

  </Card>
  <Card title="الحزمة المنشورة" icon="package">
    **ملف tarball بحجم 17.9MB**

    أحدث حزمة مستقرة، بانخفاض عن ذروة حجم الحزمة في مارس البالغة 43.3MB.

  </Card>
  <Card title="أحدث تثبيت مستقر" icon="hard-drive">
    **تثبيت جديد بحجم 361.7MiB**

    يقلّص شجرة تبعيات OpenClaw المتداخلة بحدة مقارنة بذروة إدخال
    shrinkwrap في `2026.5.22`، رغم أن شجرة متداخلة أصغر بحجم 259.7MiB لا تزال
    موجودة في تدقيق التثبيت المحلي.

  </Card>
  <Card title="رسم التبعيات" icon="boxes">
    **300 حزمة مثبّتة**

    جرى القياس بوصفها جذورًا فريدة لأسماء الحزم وإصداراتها في تثبيت جديد مع
    تعطيل السكربتات؛ أي أقل بـ71 جذرًا من الإصدار المستقر السابق.

  </Card>
</CardGroup>

## ما الذي تغيّر في 5.28

قلّصت عملية التنظيف بين `v2026.5.27` و`v2026.5.28` رسم
التثبيت الافتراضي بدلًا من إزالة الإمكانات نفسها.

<CardGroup cols={2}>
  <Card title="الرسم الافتراضي الجذري" icon="git-branch">
    انخفض عدد الجذور الفريدة لأسماء الحزم وإصداراتها من **371** إلى **300**. وانخفضت
    مثيلات الحزم من **372** إلى **301**.
  </Card>
  <Card title="الشجرة المتداخلة" icon="unplug">
    انخفض حجم `openclaw/node_modules` المتداخل من **656.1MiB** إلى **259.7MiB** في
    تدقيق التثبيت المحلي نفسه.
  </Card>
  <Card title="مخاريط التبعيات الأصلية الاختيارية" icon="cpu">
    توقّف مخروط الحزمة الأصلية `@napi-rs/canvas` لجميع المنصات عن الوصول إلى
    التثبيت الافتراضي.
  </Card>
  <Card title="سطح سلسلة التوريد" icon="shield">
    يعني انخفاض عدد الحزم الافتراضية عددًا أقل من ملفات tarball، والمشرفين، والملفات الثنائية
    الأصلية، وسلوكيات وقت التثبيت، ومسارات التحديث الانتقالية التي ينبغي الوثوق بها افتراضيًا.
  </Card>
</CardGroup>

<Tip>
لم يكن shrinkwrap هو المشكلة بحد ذاته، بل كان شكل الحزمة السيئ.
لا يزال `v2026.5.28` يشحن shrinkwrap، لكن شجرة التبعيات المتداخلة أصغر بكثير،
كما اختفى تشعّب canvas لجميع المنصات في التدقيق المحلي.
</Tip>

## الأرقام الرئيسية

لا تستخدم صفوف أواخر أبريل المعطّلة خطوط أساس عامة للأداء.
يُعد `v2026.4.23` و`v2026.4.29` دليلين مفيدين على التراجع، لكن الفروقات الكبيرة
من نمط `14x` تصف في الغالب التعافي من سلسلة إصدارات سيئة.

استخدم خط الأساس المنشور من أوائل أبريل مقياسًا لسرد المدونة.
خط الأساس هو `v2026.4.14` من تشغيل الموفّر الوهمي المنشور في
`clawgrit-reports` (التكرار 3؛ فشل ذلك التشغيل فقط لأن المخطط الزمني التشخيصي
لم يُصدر، لذلك تظل القيم الوسيطة للدورة الباردة والدافئة وRSS مفيدة
كمقياس تقريبي). تعامل مع هذا بوصفه سياقًا سرديًا، لا إحصاءً لبوابة
الإصدار.

| المقياس          | خط أساس أوائل أبريل | `v2026.5.28` |                    الفرق |
| --------------- | ---------------------: | -----------: | -----------------------: |
| دورة الوكيل الباردة |                9,819ms |      1,908ms | أقل 80.6%، وأسرع 5.1 مرة |
| دورة الوكيل الدافئة |                7,458ms |      1,870ms | أقل 74.9%، وأسرع 4.0 مرات |
| ذروة RSS للوكيل  |                686.2MB |      581.0MB |              أقل 15.3% |

ضمن مسح مايو، تحرك صف فرع الإصدار الأحدث بصورة ملموسة مقارنة
بـ`v2026.5.2`:

| المقياس          | `v2026.5.2` | `v2026.5.28` |       الفرق |
| --------------- | ----------: | -----------: | ----------: |
| دورة الوكيل الباردة |     3,897ms |      1,908ms | أقل 51.0% |
| دورة الوكيل الدافئة |     3,610ms |      1,870ms | أقل 48.2% |
| ذروة RSS للوكيل  |     613.7MB |      581.0MB |  أقل 5.3% |

مقارنة بالإصدار المستقر السابق:

| المقياس          | `v2026.5.27` | `v2026.5.28` |       الفرق |
| --------------- | -----------: | -----------: | ----------: |
| دورة الوكيل الباردة |      2,231ms |      1,908ms | أقل 14.5% |
| دورة الوكيل الدافئة |      2,226ms |      1,870ms | أقل 16.0% |
| ذروة RSS للوكيل  |      649.0MB |      581.0MB | أقل 10.5% |

### بصمة التثبيت

| المقياس                                          |  خط الأساس | `v2026.5.28` |       الفرق |
| ----------------------------------------------- | --------: | -----------: | ----------: |
| حجم التثبيت من ذروة `2026.5.22`              | 1,020.6MB |     361.7MiB | أقل 64.6% |
| حجم التثبيت من أحدث إصدار `2026.5.27`    |  767.1MiB |     361.7MiB | أقل 52.8% |
| التبعيات من الذروة الشهرية `2026.2.26`      |       645 |          300 | أقل 53.5% |
| التبعيات من أحدث إصدار `2026.5.27`    |       371 |          300 | أقل 19.1% |
| `openclaw/node_modules` المتداخل من `2026.5.22` |   911.8MB |     259.7MiB | أقل 71.5% |
| `openclaw/node_modules` المتداخل من `2026.5.27` |  656.1MiB |     259.7MiB | أقل 60.4% |

### حجم حزمة npm

| الإصدار     | ملف tarball المضغوط | الحزمة بعد الفك |  الملفات | الملاحظات                             |
| ----------- | -----------------: | ---------------: | -----: | --------------------------------- |
| `2026.1.30` |             12.8MB |           33.5MB |  4,607 | حزمة مبكرة بعد تغيير العلامة التجارية           |
| `2026.2.26` |             23.6MB |           82.9MB | 10,125 | نمو الميزات                    |
| `2026.3.31` |             43.3MB |          182.6MB | 21,037 | ذروة حجم الحزمة           |
| `2026.4.29` |             22.9MB |           74.6MB |  9,309 | ظهور أثر تقليم الحزمة           |
| `2026.5.12` |             23.4MB |           80.1MB | 12,035 | فصل رئيسي للـPlugin الخارجية       |
| `2026.5.22` |             17.2MB |           76.9MB | 12,386 | استبعاد الوثائق والأصول من الحزمة |
| `2026.5.27` |             17.8MB |           79.0MB | 12,509 | الحزمة المستقرة السابقة           |
| `2026.5.28` |             17.9MB |           81.0MB |  9,082 | أحدث حزمة مستقرة             |

يمثّل `2026.5.12` محطة استخراج الـPlugin الظاهرة في سجل التغييرات:
نُقلت Amazon Bedrock وBedrock Mantle وSlack وبيئة OpenShell المعزولة وAnthropic Vertex
وMatrix وWhatsApp خارج مسار تبعيات النواة، بحيث تُثبَّت مخاريط تبعياتها
مع تلك الـPlugins بدلًا من كل تثبيت للنواة.

## ملخص دورة وكيل Kova

تتضمن سلسلة أبريل المستقرة قصتين مختلفتين. كان أوائل أبريل بطيئًا
لكن يمكن تمييز نمطه. أما أواخر أبريل فتحولت إلى هاوية تراجع. ويمثل `v2026.5.2`
النقطة التي ينخفض عندها مسار الموفّر الوهمي لأول مرة إلى نطاق 3-5 ثوانٍ ويبدأ
بالنجاح باستمرار في المسح المقدَّم.

السياق المنشور الأسبق:

| الإصدار      | Kova | الدورة الباردة | الدورة الدافئة | ذروة RSS للوكيل |
| ------------ | ---- | --------: | --------: | -------------: |
| `v2026.4.10` | فشل |  11,031ms |   7,962ms |        679.0MB |
| `v2026.4.12` | فشل |  11,965ms |   8,289ms |        713.5MB |
| `v2026.4.14` | فشل |   9,819ms |   7,458ms |        686.2MB |
| `v2026.4.20` | فشل |  22,314ms |  18,811ms |        810.8MB |
| `v2026.4.22` | فشل |   9,630ms |   7,459ms |        743.0MB |

المسح المقدَّم:

| الإصدار             | Kova | الدورة الباردة | الدورة الدافئة | ذروة RSS للوكيل |
| ------------------- | ---- | --------: | --------: | -------------: |
| `v2026.4.23`        | فشل |  47,847ms |   8,010ms |      1,082.7MB |
| `v2026.4.24`        | فشل |  48,264ms |  25,483ms |        996.0MB |
| `v2026.4.25`        | فشل |  81,080ms |  59,172ms |      1,113.9MB |
| `v2026.4.26`        | فشل |  76,771ms |  54,941ms |      1,140.8MB |
| `v2026.4.27`        | فشل |  60,902ms |  33,699ms |      1,156.0MB |
| `v2026.4.29`        | فشل |  94,031ms |  57,334ms |      3,613.7MB |
| `v2026.5.2`         | نجح |   3,897ms |   3,610ms |        613.7MB |
| `v2026.5.7`         | نجح |   3,923ms |   3,693ms |        654.1MB |
| `v2026.5.12`        | نجح |   7,248ms |   6,629ms |        834.8MB |
| `v2026.5.18`        | نجح |   3,301ms |   2,913ms |        630.3MB |
| `v2026.5.20`        | نجح |   3,413ms |   2,952ms |        643.2MB |
| `v2026.5.22`        | نجح |   4,494ms |   4,093ms |        654.3MB |
| `v2026.5.26`        | نجح |   2,626ms |   2,282ms |        660.4MB |
| `v2026.5.27-beta.1` | نجح |   2,575ms |   2,217ms |        635.3MB |
| `v2026.5.27`        | نجح |   2,231ms |   2,226ms |        649.0MB |
| `v2026.5.28`        | نجح |   1,908ms |   1,870ms |        581.0MB |

## مجسّات المصدر

تم تخطي مجسّات المصدر لـ17 مرجعًا أقدم ناجحًا لأن أشجار المصدر تلك
لم تكن تحتوي بعد على نقاط دخول المجسّ المطلوبة. ولا تزال مقاييس دورة الوكيل
موجودة لتلك المراجع.

نقاط تمثيلية لمجسّات المصدر:

| الإصدار             | القيمة الوسطية p50 لـ`readyz` الافتراضي | القيمة الوسطية p50 لـ`readyz` مع 50 Plugin | القيمة الوسطية p50 لصحة CLI | أقصى RSS للـPlugin |
| ------------------- | -------------------: | ----------------------: | -------------: | -------------: |
| `v2026.4.29`        |              2,819ms |                 2,618ms |        1,679ms |        389.0MB |
| `v2026.5.2`         |              2,324ms |                 2,013ms |        1,384ms |        377.2MB |
| `v2026.5.7`         |              1,649ms |                 1,540ms |        1,175ms |        387.6MB |
| `v2026.5.18`        |              1,942ms |                 1,927ms |          607ms |        426.5MB |
| `v2026.5.20`        |              1,966ms |                 1,987ms |          621ms |        455.0MB |
| `v2026.5.22`        |              2,081ms |                 1,884ms |        5,095ms |        444.2MB |
| `v2026.5.26`        |              1,546ms |                 1,634ms |          656ms |        400.4MB |
| `v2026.5.27-beta.1` |              1,462ms |                 1,548ms |          548ms |        394.0MB |
| `v2026.5.27`        |              1,491ms |                 1,571ms |          553ms |        401.5MB |
| `v2026.5.28`        |              1,457ms |                 1,474ms |          623ms |        386.1MB |

تظهر قفزة صحة CLI في `v2026.5.22` في هذا الجدول رغم استمرار
نجاح مسار دورة الوكيل. احتفظ بمجسّات المصدر عند التحقيق في
تراجعات مستهدفة في CLI أو Gateway.

## تدقيق بصمة التثبيت

تستخدم عينات التبعيات إصدارًا مستقرًا واحدًا لكل شهر، بالإضافة إلى حدث
إدخال shrinkwrap في `2026.5.22` وأحدث إصدار `2026.5.28`.

| النقطة              | التبعيات المثبّتة | التثبيت الجديد | حزمة OpenClaw | `openclaw/node_modules` المتداخلة | ملف shrinkwrap الجذري | سلوك تثبيت Canvas                                |
| ------------------ | ----------------: | -------------: | ------------: | --------------------------------: | --------------------- | ------------------------------------------------ |
| يناير `2026.1.30`  |               605 |        438.4MB |        45.8MB |                             2.4MB | لا                    | مغلّف علوي + `darwin-arm64`                       |
| فبراير `2026.2.26` |               645 |        575.7MB |       110.1MB |                             3.5MB | لا                    | مغلّف علوي + `darwin-arm64`                       |
| مارس `2026.3.31`   |               438 |        584.1MB |       234.8MB |                               0MB | لا                    | مغلّف علوي + `darwin-arm64`                       |
| أبريل `2026.4.29`  |               392 |        335.0MB |        97.4MB |                               0MB | لا                    | لم يُثبّت شيء                                     |
| `2026.5.22`        |               401 |      1,020.6MB |     1,020.4MB |                           911.8MB | نعم                   | متداخلة: جميع حزم `@napi-rs/canvas` الاثنتي عشرة |
| مايو `2026.5.26`   |               371 |        767.5MB |       767.4MB |                           656.4MB | نعم                   | متداخلة: جميع حزم `@napi-rs/canvas` الاثنتي عشرة |
| `2026.5.27`        |               371 |       767.1MiB |      766.9MiB |                          656.1MiB | نعم                   | متداخلة: جميع حزم `@napi-rs/canvas` الاثنتي عشرة |
| الأحدث `2026.5.28` |               300 |       361.7MiB |      361.6MiB |                          259.7MiB | نعم                   | لم يُثبّت شيء                                     |

### حدّ shrinkwrap

صدر الإصدار `2026.5.20` من دون ملف shrinkwrap جذري ومن دون شجرة تبعيات كبيرة
ومتداخلة لـ OpenClaw. أضاف الإصدار `2026.5.22` ملف shrinkwrap جذريًا وثبّت 911.8MB
ضمن `openclaw/node_modules` المتداخلة. يحتفظ الإصدار `2026.5.28` بملف shrinkwrap
ولا يزال يثبّت 259.7MiB ضمن `openclaw/node_modules` المتداخلة، لكنه لم يعد يثبّت
أي حزم `@napi-rs/canvas` في تدقيق التثبيت المحلي الجديد.

يؤكد فحص حزمة tarball المنشورة هذا الحد:

| الإصدار     | هل نُشر كمستقر؟ | `npm-shrinkwrap.json` الجذري | ملاحظات                                         |
| ----------- | --------------- | ---------------------------- | ------------------------------------------------ |
| `2026.5.20` | نعم             | لا                           | آخر إصدار مستقر قبل إضافة shrinkwrap             |
| `2026.5.21` | لا              | غير منطبق                    | لا يوجد إصدار npm مستقر                          |
| `2026.5.22` | نعم             | نعم                          | أُضيف shrinkwrap                                 |
| `2026.5.23` | لا              | غير منطبق                    | لا يوجد إصدار npm مستقر                          |
| `2026.5.24` | لا              | غير منطبق                    | لا يوجد إصدار npm مستقر                          |
| `2026.5.25` | لا              | غير منطبق                    | لا يوجد إصدار npm مستقر                          |
| `2026.5.26` | نعم             | نعم                          | لا تزال شجرة التبعيات المتداخلة موجودة           |
| `2026.5.27` | نعم             | نعم                          | لا تزال شجرة التبعيات المتداخلة موجودة           |
| `2026.5.28` | نعم             | نعم                          | أصبحت شجرة التبعيات المتداخلة أصغر بكثير         |

التمييز المهم: **ملف shrinkwrap بحد ذاته ليس المشكلة**.
لا يزال الإصدار `v2026.5.28` يتضمن ملف shrinkwrap جذريًا. كانت المشكلة في بنية
الحزمة التي جعلت npm ينشئ شجرة تبعيات كبيرة ومتداخلة لـ OpenClaw وجميع حزم
منصات `@napi-rs/canvas` الاثنتي عشرة. أصبحت الشجرة المتداخلة أصغر في
`v2026.5.28`، ولم يعد التوسع عبر منصات Canvas يظهر في التدقيق المحلي.

للاطلاع على شرح مبسّط لملف shrinkwrap وعمليات فحص الحزم على مستوى المشرفين،
راجع [ملف shrinkwrap في npm](/ar/gateway/security/shrinkwrap).

## تفسير سلسلة التوريد

عدد التبعيات مقياس للأمن التشغيلي، وليس مجرد مقياس لحجم التثبيت. توسّع كل حزمة
نطاق المشرفين وحزم tarball والتحديثات المتعدية والملفات الثنائية الأصلية
الاختيارية وسلوكيات وقت التثبيت التي يجب على المشغّلين الوثوق بها.

اتجاه التنظيف هو:

- إبقاء الإمكانات الثقيلة والاختيارية خارج التثبيت الأساسي الافتراضي
- جعل حزم Plugin تملك مخطط تبعيات وقت التشغيل الخاص بها
- تجنب إصلاح مدير الحزم في وقت التشغيل أثناء بدء تشغيل Gateway
- الحفاظ على عمليات تثبيت حتمية دون التسبب في إنشاء حزم أصلية لجميع المنصات
- إبقاء نصوص التثبيت البرمجية معطّلة في مسارات قبول الحزم وقياسها
- اكتشاف أشجار التبعيات المتداخلة والتضخم في التبعيات الأصلية الاختيارية قبل
  النشر

مستندات ذات صلة:

- [حل تبعيات Plugin](/ar/plugins/dependency-resolution)
- [قائمة حصر Plugin](/ar/plugins/plugin-inventory)
- [التحقق الكامل من الإصدار](/ar/reference/full-release-validation)
