Start free
Andrew Hanna

Andrew Hanna

مراجعة الكود بالذكاء الاصطناعي في Salesforce مكانها كل الباقات، مش الباقة الأغلى

مراجعة الكود بالذكاء الاصطناعي في Salesforce مكانها كل الباقات، مش الباقة الأغلى

الإجابة باختصار: المراجعة الآلية بتقرأ الـ Apex والـ Flows والميتاداتا الموجودة في أي تغيير قبل ما يوصل للأورج، وبتمسك الحاجات اللي بيعدي عليها المراجع البشري بسرعة: SOQL جوه loop، وغياب فرض الـ sharing وأمان الحقول، وIds متكتوبة يدويًا، واختبارات مش بتتحقق من أي حاجة، وتعديلات بروفايل بتوسّع الصلاحيات من غير ما حد ياخد باله. وده كله ملهوش قيمة إلا لو اشتغل على كل تغيير من كل شخص. وهنا بالظبط المشكلة في بيع المراجعة كإضافة مدفوعة في باقة أعلى.

إيه اللي بتمسكه مراجعة الكود بالذكاء الاصطناعي قبل النشر في Salesforce؟

ثلاث طبقات، ومعظم الفرق بتفحص الأولى بس.

Apex والاختبارات

  • SOQL وDML جوه الـ loops، وهي أخطاء الـ governor limits اللي مش بتظهر غير مع حجم بيانات الإنتاج.
  • كلاسات شغالة من غير with sharing، واستعلامات مش بتفرض صلاحيات CRUD ولا أمان الحقول.
  • Ids متكتوبة يدويًا للـ record types والبروفايلات وغيرها، وبتقع أول ما التغيير ينتقل لأورج تانية.
  • بلوكات catch فاضية واستثناءات متبلعة.
  • كلاسات اختبار بتشغّل الكود من غير أي assertion، أو معتمدة على SeeAllData=true.
  • تغطية أورج فوق 75% في حين إن الكلاس الجديد مش مساهم فيها بحاجة.

الـ Flows والأتمتة

  • عناصر Get Records أو DML متحطة جوه loop.
  • غياب مسارات الخطأ، فالعطل بيوصل للمستخدم كرسالة خام.
  • منطق Flow جديد على أوبچكت أصلاً فيه Apex trigger بيعمل نفس الشغل.

الميتاداتا والصلاحيات

دي الطبقة اللي أدوات مراجعة الكود العامة بتفوّتها، ومنها بتبدأ معظم حوادث الإنتاج فعليًا.

  • تعديلات بروفايل أو permission set بتدي ModifyAllData أو ViewAllData.
  • أمان الحقول بيتفتح كأثر جانبي لحاجة تانية في نفس الـ commit.
  • قواعد تحقق أو triggers بتتعطّل جوه الـ diff.
  • الـ org-wide default بيتحول من Private لـ Public Read/Write.
  • عمليات حذف في الـ destructive changes محدش طلبها.

Salesforce بتوفر جزء من ده مجانًا. الـ Code Analyzer v5 بيجمع PMD وESLint وRetireJS ومحرك regex وماسح للـ Flows تحت أمر واحد، ويقدر يشغّل قواعد أمان AppExchange عن طريق rule selector (وثائق Salesforce للمطورين). ده أساس كويس، لكنه برضه CLI، يعني بيوصل للناس اللي أصلاً شغالين من الترمينال.

ليه المراجع العام بالذكاء الاصطناعي مش كفاية هنا؟

المراجع العام بيقرأ الـ diff كنص. مش عارف البروفايلات الموجودة في الأورج الهدف، ولا لو الحقل اللي اتفتح فيه بيانات خاضعة للتنظيم، ولا إن الـ trigger اللي بيقراه بيشتغل كمان من Flow. مراجعة Salesforce محتاجة سياق الأورج: التغيير بيمس إيه بعد كده، وإيه الموجود فعلاً في الأورج الهدف، وإيه اللي النشر هيمسحه. من غير السياق ده هتاخد ملاحظات شكلية مرتبة على الـ Apex وصمت تام على الـ permission set.

مراجعة الكود بتتكلف كام في سوق Salesforce DevOps؟

في الغالب بتتسعّر لكل شخص. Gearset بتبيع Code Reviews كمنتج منفصل عن باقات الـ DevOps الأساسية، ومسعّر وقت كتابة المقال بـ 160 دولار لكل مساهم في الشهر (أسعار Gearset). وSalesforce Code Analyzer مجاني لكنه مصمم للمطورين. وبين الاتنين بتقع الفئة اللي بتعمل معظم التغييرات في أي أورج عادية: الأدمنز والاستشاريين اللي شغالين من الـ Setup.

ليه حبس المراجعة في باقة مدفوعة بيلغي الهدف منها؟

بوابة المراجعة قيمتها بقدر تغطيتها بالظبط. لو سعّرتها لكل مساهم، هيحصل تلات حاجات.

  • مسؤول الميزانية هيبقى عنده سبب دايم إنه يرخّص عدد أقل من المساهمين.
  • المساهمين غير المرخّصين غالبًا هم اللي بيعدّلوا البروفايلات والـ permission sets والـ Flows، وهي الطبقة الأقل انضباطًا في المراجعة أصلاً.
  • فحص بيراجع فرع المطور ويعدّي تغيير الأدمن مش بوابة، ده تقرير.

ونفس المنطق ينطبق جوه المنتج الواحد. لو الفحص اللي كان هيوقف توسيع صلاحيات موجود في الباقة اللي فوق باقتك، التوسيع هينزل الإنتاج برضه. فحوصات الجودة يا إما تكون أساسية يا إما تبقى تمثيل.

وعشان كده Serpent بتحط مراجعة الكود بالذكاء الاصطناعي في كل الباقات، بما فيها باقة Essentials المجانية، وبعدد مستخدمين غير محدود في كلها. كل تغيير بيتقرا قبل النشر بحثًا عن انحراف الحوكمة ومشاكل الأمان وفجوات تغطية الاختبارات ومخالفات أفضل الممارسات. والتسعير ثابت لكل شركة مش لكل مقعد، يعني إضافة الأدمن اللي بيعدّل الـ permission sets مش بتضيف سطر على الفاتورة. وللدقة في طريقة الحساب: إجراءات الذكاء الاصطناعي بتخصم من رصيد الكريدت الشهري، وهو 30 كريدت في باقة Essentials.

إزاي تحط المراجعة قبل النشر؟

  1. خلي كل تغيير تحت إدارة إصدارات، حتى التغييرات اللي بتتعمل من الـ Setup على إيد ناس مش بتفتح Git خالص.
  2. شغّل المراجعة على الـ diff مش على الأورج كلها، عشان النتيجة تفضل قصيرة كفاية إن حد يقراها.
  3. خلي الملاحظات الخطيرة مانعة والباقي إرشادي. حيطة التحذيرات بيتم تجاهلها في خلال أسبوع.
  4. خد ملاحظات الميتاداتا والصلاحيات بنفس جدية ملاحظات الـ Apex.
  5. سيب موافقة بشرية على النشر نفسه. المراجعة الآلية بتقصّر الطابور، مش بتاخد القرار.

FAQ

هل مراجعة الكود بالذكاء الاصطناعي بتحل محل المراجعة البشرية؟

لأ. هي بتنضّف الملاحظات الميكانيكية عشان المراجع البشري يركّز على منطق الشغل والتصميم.

هل المراجعة الآلية بتمسك مشاكل أمان في الميتاداتا مش في الـ Apex بس؟

أيوه، لو الأداة بتقرا الميتاداتا فعلاً. تغييرات البروفايلات والـ permission sets ونموذج المشاركة وأمان الحقول هي أكتر حاجة يستاهل إنك تمنع النشر بسببها.

هل Salesforce Code Analyzer كفاية لوحده؟

هو أساس مجاني محترم لـ Apex وJavaScript والـ Flows. بيشتغل من الـ CLI، فالفرق اللي مفيهاش مطورين محتاجة عادةً pipeline بيشغّله بالنيابة عنها.

هل المراجعة تمنع النشر ولا تحذّر بس؟

امنع في حالات الأمان وفقدان البيانات، وحذّر في حالات الشكل والأسلوب. لو كل حاجة بتمنع، الناس هتتعلم تلف حوالين البوابة.

هل مراجعة الكود بالذكاء الاصطناعي بتكلف زيادة في Serpent؟

لأ. موجودة في كل الباقات بما فيها Essentials المجانية، وإجراءات الذكاء الاصطناعي بتخصم من رصيد الكريدت الشهري للباقة.

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

هل تريد معرفة كيف يمكنكم الشحن أسرع قبل البدء؟ لنتحدث

بدون التزام.