لم نُضِف الأمان كميزة إضافية — بنيناه في كل طبقة من طبقات النظام
كل ركيزة تحمي طرفاً مختلفاً في المنظومة
كل حدث (ركوب، نزول، تسليم) يُتحقق منه على الخادم بمقارنة موقع المشرف بموقع الطالب. لا يكفي الضغط على الزر من أي مكان.
الخادم يحسب المسافة بخوارزمية Haversine. إذا تجاوزت 20 متراً، يُرفض الطلب ويُسجَّل في سجل التدقيق.
كل مدرسة ترى بياناتها فقط — لا يمكن لأي مستخدم الوصول لبيانات مدرسة أخرى.
كل استعلام في قاعدة البيانات مُقيَّد بـ schoolId المدرسة المسجّل دخولها. لا توجد بيانات مشتركة بين المدارس.
لا يرى أي ولي أمر بيانات طالب آخر — حتى لو كانوا في نفس الحافلة.
كل ولي أمر يرى فقط بيانات أبنائه المرتبطين بحسابه. الموقع والحالة والإشعارات مُصفَّاة على مستوى الطالب.
موقع المشرف يُرسَل للخادم فقط أثناء الرحلة النشطة — لا تتبع خارج وقت الرحلة.
يبدأ إرسال الموقع مع "بدء الرحلة" وينتهي تلقائياً مع "إغلاق الرحلة". لا يُخزَّن تاريخ موقع المشرف خارج هذه الفترة.
لا يُسلَّم الطالب إلا لشخص مسجّل مسبقاً من قِبَل ولي الأمر.
قائمة الأشخاص المخوّلين تُدار من قِبَل ولي الأمر. المشرف يرى الأشخاص المعتمدين فقط ويؤكد التسليم لأحدهم.
كل إجراء في النظام مُسجَّل في سجل تدقيق غير قابل للحذف.
يُسجَّل: المستخدم، الدور، الإجراء، الكيان، السبب، عنوان IP، والوقت. المدرسة وإدارة الشركة يمكنهم مراجعة السجل الكامل.