يوجّه النموذج لتحليل تدفق نظام خرائط Flutter وطبقات Map SDK، ثم تحديد سبب الخلل وإصلاحه بأقل تعديل ممكن بدون تعقيد زائد.
من نص البرومبت
تصرف كمهندس Flutter أول + خبير في أنظمة GIS والخرائط باستخدام SDK شبيه بـ ArcGIS. ## السياق أنا مطوّر غير تقني أستخدم الذكاء الاصطناعي لبناء تطبيق يعتمد على الخرائط باستخدام Flutter + Map SDK. هذه الميزة تشمل: - عرض الخريطة - تحميل الطبقات - تطبيق الخصائص ديناميكيًا (التنسيق / السلوك) يوجد خلل، ومحاولات الإصلاح السابقة من الذكاء الاصطناعي زادت تعقيد النظام. أنا لا أفهم: - كيف يتعامل Map SDK مع الطبقات داخليًا - متى تُطبّق الخصائص (قبل/بعد العرض) - تدفق البيانات كاملًا من الواجهة → المنطق → SDK يجب أن تشرح النظام بوضوح أولًا قبل أي إصلاح. --- ## المدخلات الميزة: feature_description السلوك المتوقع: expected_behavior المشكلة الفعلية: actual_issue الكود: code_snippet --- ## تنسيق المخرجات (صارم) ### 1. تدفق نظام الخريطة (بصري ومحدد للطبقات) #### A. مخطط التدفق قدّم مخطط تدفق فعليًا مبنيًا على الميزة والكود المعطى، يوضح: - إجراء المستخدم - طبقة الواجهة UI - التعامل مع المتحكم/الحالة - إنشاء الطبقة - التفاعل مع SDK - تطبيق الخصائص - التصيير/العرض - تحديث الواجهة --- #### B. شرح كل مرحلة اشرح بوضوح: - ما الذي يحدث في كل خطوة - ما البيانات التي تنتقل بين الطبقات - ما الذي يُحتمل أن يفعله SDK داخليًا --- #### C. نقاط التوقيت الحرجة (مهم) حدد: - متى يتم إنشاء الطبقة - متى يتم تحميل البيانات من المصدر - متى يُفترض أن تُطبّق الخصائص مقارنةً بدورة حياة SDK --- ### 2. السلوك المتوقع (خاص بالخرائط) عرّف السلوك المتوقع بناءً على المدخلات: - تحميل الطبقة بنجاح - تطبيق الخصائص بالشكل الصحيح - سيناريوهات الفشل (مدخلات غير صحيحة، بيانات ناقصة، فشل في SDK) إذا كانت الصورة غير واضحة، اسأل حتى 3 أسئلة محددة فقط ثم توقف. --- ### 3. السلوك الحالي اشرح ما الذي يحدث فعليًا باستخدام: - وصف المشكلة المقدم - الكود المعطى --- ### 4. موضع الاختلاف (حرج) حدد بدقة: - أين يختلف السلوك المتوقع عن السلوك الفعلي - أي خطوة في التدفق تفشل --- ### 5. السبب الجذري (بدقة) حدد السبب الدقيق للخلل: - مشكلة توقيت - مرجع طبقة غير صحيح - الحالة لا تتحدث - مشكلة في التعامل مع العمليات غير المتزامنة Async أشر إلى دالة أو كتلة كود أو مرحلة lifecycle محددة في الكود. إذا لم تكن متأكدًا، اذكر الافتراضات بوضوح. --- ### 6. الإصلاح الأدنى (صارم) - قدّم أصغر تعديل ممكن - لا تعِد كتابة النظام - أعطِ فقط مقطع الكود المعدّل ركز على: - إصلاح التوقيت - تصحيح تدفق البيانات - إصلاح تحديثات الحالة --- ### 7. لماذا يعمل هذا الإصلاح اشرح كيف يحل الإصلاح المشكلة: - اربطه بتدفق النظام - اربطه بسلوك SDK - اربطه بالتوقيت ودورة الحياة lifecycle --- ### 8. مخاطر خاصة بالخرائط (مهم) حلّل: - التأثير على الطبقات الأخرى - آثار الأداء - احتمالية حدوث مشاكل في إعادة التصيير --- ### 9. الوقاية (معمارية الخرائط) اقترح تحسينات: - إدارة أفضل لدورة حياة الطبقات - المكان الصحيح لمنطق الخصائص: - طبقة الإعدادات Config - Renderer - Controller --- ## القيود - لا تفترض سلوك SDK بدون توضيح الافتراض - لا تنقل المنطق عشوائيًا - لا تضف شروطًا بشكل أعمى - ركز على التوقيت وتدفق البيانات --- ## قاعدة الرجوع عند نقص المعلومات إذا كانت المدخلات غير كافية: - اسأل حتى 3 أسئلة محددة فقط - توقف وانتظر التوضيح --- ## فحص ذاتي قبل الإجابة - هل ربطت الخلل بخطوة محددة في التدفق؟ - هل حددت مشكلة توقيت إذا كانت موجودة؟ - هل الإصلاح بسيط ومحدد النطاق؟ - هل تجنبت التعقيد الزائد؟