Hurl يوقف انحراف Vibe Coding

جدار الأشهر الثلاثة


إذا انهار تطبيقك المبني بـ vibe coding بعد 3 أشهر، إذا كنت تعاني من مشكلة الانحراف حيث يُعيد الذكاء الاصطناعي كتابة المنطق الموجود، إذا كنت تريد حماية عقود API من تغييرات الكود — Hurl والسقاطة هما الحل.

تبني SaaS بـ vibe coding. في البداية سريع. “اصنع تسجيل دخول” — 30 ثانية. “أضف الدفع” — دقيقتان. MVP يخرج في 3 أسابيع.

بعد 3 أشهر، تحدث أشياء غريبة. الذكاء الاصطناعي “يرتب” منطق الدفع ويغير حساب الخصم بهدوء. إضافة نقطة نهاية جديدة تكسر المصادقة الحالية. تطلب إعادة هيكلة فتتغير أسماء الحقول في API العامة ويموت كل عميل.

هذا يسمى الانحراف المنطقي — تعديل الذكاء الاصطناعي لمنطق الأعمال الحالي بشكل غير مقصود. أخطاء الانحدار موجودة في التطوير التقليدي أيضاً. لكن الانحراف المنطقي مختلف. تغييرات لم يقصدها المطور تحدث دون أن يلاحظ، عبر قاعدة الكود بأكملها. لأن كل prompt يبدأ في نافذة سياق جديدة.


الانحراف بالأرقام

هذا ليس شعوراً. هناك بيانات.

ثمن السرعة هو التعقيد. فريق Carnegie Mellon قارن 807 مستودع GitHub قبل وبعد تبني Cursor (MSR 2026). في الشهر الأول، زادت إضافات الكود 3-5 أضعاف. بعد شهرين اختفت ميزة السرعة. ما بقي هو زيادة 30% في تحذيرات التحليل الساكن وزيادة دائمة 41% في تعقيد الكود. Liu et al. (2026) حلل 302,600 commit من AI في 6,299 مستودع ووجد أن الديون التقنية غير المحلولة قفزت من بضع مئات في أوائل 2025 إلى أكثر من 110,000 بحلول فبراير 2026.

لم يصبح أسرع — صار أبطأ. METR أجرت تجربة عشوائية محكمة مع 16 مطوراً مفتوح المصدر محترفاً (2025). في مشاريع يعرفونها جيداً، المجموعة التي استخدمت أدوات AI استغرقت 19% أكثر. لكن المطورين أنفسهم شعروا بتحسن 20%. الفجوة بين الإدراك والواقع 39pp.

الاستقرار ينهار مع الحجم. وفقاً لتقرير Google DORA (2025)، مع كل زيادة 25% في تبني AI، ينخفض استقرار تسليم البرمجيات 7.2%.

انهار فعلاً. Amazon فرضت أدوات كتابة الكود بالذكاء الاصطناعي على مستوى الشركة في 2025 ونشرت 21,000 وكيل AI. في نفس الفترة، تم تسريح حوالي 30,000 موظف. النتيجة: 4 حوادث Sev-1 في 90 يوماً. في 5 مارس 2026، عطل 6 ساعات سبب خسارة تقدر بـ 6.3 مليون طلب.


“اعمل TDD” ليس الجواب

TDAD (arxiv 2026) اختبرت هذا بدقة. Qwen3-Coder 30B حلّ 100 حالة من SWE-bench Verified.

الشرطمعدل الانحدار
خط الأساس (بدون تعليمات اختبار)6.08%
تعليمات إجرائية “اعمل TDD”9.94% (أسوأ)
توفير ملفات الاختبار المتأثرة كسياق1.82% (انخفاض 70%)

ليس تعليمات “كيف تختبر”، بل عقد “ماذا يجب أن ينجح”.


Hurl: عقود بنص عادي

مفهوم “العقود” في البرمجيات أسسه Bertrand Meyer (1992). Hurl يطبق هذا المبدأ على حدود HTTP. أداة اختبار تعلن طلبات HTTP والاستجابات المتوقعة بنص عادي. تديرها Orange، ثنائي Rust بدون اعتماديات، 18.7k نجمة على GitHub.

# نجاح تسجيل الدخول
POST http://localhost:8080/api/auth/login
{
  "email": "test@example.com",
  "password": "secret123"
}
HTTP 200
[Asserts]
jsonpath "$.token" exists
jsonpath "$.user.email" == "test@example.com"

# الوصول بدون مصادقة يعيد 401
GET http://localhost:8080/api/pages
HTTP 401

عقدان. تسجيل الدخول يجب أن يعيد 200 مع token، والوصول بدون مصادقة يجب أن يعيد 401.


لماذا Hurl

اختبارات الوحدة تتحقق من الدوال الداخلية، لذا هي مقترنة هيكلياً بالتنفيذ. Hurl يقف على حدود HTTP. يعلن فقط الطلبات والاستجابات. مستقل طبيعياً عن التنفيذ.

اختبارات الوحدةHurl
هدف التحققداخل الدوالعقد HTTP
عند إعادة هيكلة AIتتغير معاًلا تتغير
كشف الانحرافمشروططبيعي
اعتماد على بنية الكودعاليلا يوجد

ما يتحقق منه Hurl ليس الكود بل السلوك.


قفل السقاطة

عندما ينجح اختبار Hurl، يُقفل. هذه هي السقاطة. اختبار Hurl المقفل هو ratchet code — كود حتمي يجعل عقد API الذي اجتاز التحقق غير قابل للعكس. الوكيل يمكنه تغيير الكود بحرية، لكن إذا انكسرت اختبارات Hurl، يُرفض الـ commit. يجب أن يعيد الهيكلة مع الحفاظ على كل السلوك الحالي.


يعمل على الأنظمة القديمة أيضاً

الخطوة 1: التقط السلوك الحالي في Hurl. الخطوة 2: اربطه بـ CI. الخطوة 3: الآن أنت آمن.

ليس أساسات بل تعزيز مقاوم للزلازل. تعزز المبنى دون إغلاق المتجر.


ليس نهاية Vibe Coding، بل تطوره

Andrej Karpathy أعلن في فبراير 2026: “عصر vibe coding انتهى.” النموذج الجديد هو الهندسة الوكيلية. Storey (2026) نظّر أسباب الانحراف الجذرية كمفهومين جديدين للديون: الدين المعرفي ودين النية. ملف Hurl هو بالضبط تخريج النية.

اختبارات Hurl هي أصغر وحدة في هذا التحول. ملف Hurl واحد = عقد واحد.

لا تغيّر النموذج. أضف عقداً.


مقالات ذات صلة


المراجع

سجل التغييرات

  • 2026-05-22: الإصدار الأول