Files
tripz-llc/docs
Hamza-AyedandClaude Opus 4.8 a58f611063 feat: المجموعة B شريحة 2 — نقاط توقف + جدولة + مطابقة الوجهة
B4 نقاط التوقف: stops jsonb؛ المسار والتسعير يمرّان بالنقاط بالترتيب
(أصل → توقف₁ → … → وجهة) بجمع أرجل المسار. بلا توقفات = رِجل واحدة كالسابق.

B5 الحجز المسبق: scheduled_at + حالة scheduled جديدة (لا تدخل Redis ولا
تُوزَّع الآن). ScheduledTripsSweeper يعمل داخل الـAPI لا الـworker — لأن
الإطلاق يبثّ عروضاً عبر RealtimeGateway الموجود في الـAPI فقط. آمن مع عدة
نسخ: releaseDueScheduled يستعمل UPDATE شرطياً (scheduled→searching) فلا
تُطلَق رحلة مرتين. فهرس جزئي على scheduled المستحقة.

B8 مطابقة الوجهة: is_destination_match + destination_match_discount +
destination_match_discount_pct في التعرفة، يُطبَّق في settleFare. الخصم
على الراكب والسائق يقبض المخفَّض كاملاً (يربح رحلة في طريقه أصلاً). مؤجَّل:
محرّك المطابقة الذي يضبط العلم (وضع وجهة السائق).

هجرة: TripStopsSchedulingMatch. حالة trip جديدة: scheduled (تنتقل إلى
searching أو cancelled).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-17 19:49:10 +03:00
..