Prepare secure config and reliable workout sync
This commit is contained in:
@@ -154,7 +154,7 @@
|
||||
- `backend/api_workouts.php`: يولّد UUID جديدًا لكل POST؛ إعادة إرسال نفس الجلسة لا تظهر محمية بمعرف ثابت من العميل. المطلوب UUID ثابت وقيد فريد للمستخدم/الجلسة، ونتيجة ناجحة متسقة عند الإعادة.
|
||||
- `mobile/lib/services/database_service.dart`: يستخدم replace لحفظ التمرين، وحفظ المقاطع وطابور المزامنة منفصل؛ نراجع الحفظ بمعاملة واحدة والتحديث دون حذف ضمني للعلاقات.
|
||||
- وجود FOREIGN KEY محليًا دون onConfigure ظاهر لتفعيلها؛ نفعّلها ونختبر سلوك العلاقات والترحيل. لا نغيّر سياسة الحذف قبل اختبار البيانات الموجودة.
|
||||
- طابور المزامنة يتوقف عن إعادة المحاولة بعد خمس إخفاقات؛ نضيف حالة واضحة للمستخدم وإعادة محاولة، وتأخيرًا متدرجًا وتصنيف الأخطاء.
|
||||
- طابور المزامنة يتوقف عن الإرسال التلقائي بعد خمس إخفاقات؛ نعرض عدد كل السجلات غير المرفوعة، ونوفّر إعادة محاولة يدوية وتأخيرًا متدرجًا وتصنيفًا للأخطاء.
|
||||
- تقرير الأسابيع يستخدم معدل تاريخ SQLite بصيغة `weeks`؛ نراجع حدود الفترة ووحدات التاريخ المدعومة، ونوحد UTC مع اليوم المحلي عند العرض.
|
||||
- صفحة المنزل تعرض «آخر تمرين» بقيم ثابتة. README يصف أجزاء قديمة؛ الكود الفعلي هو مرجع التوسعة.
|
||||
- مراجعة GPS ووحدات الزمن والسرعة والسعرات، ثم اختبار مسار معروف وثبات الهاتف قبل الحكم على دقة التتبع.
|
||||
|
||||
Reference in New Issue
Block a user