اختبر حدود دورة الحياة قبل Production
استخدم مشروع Sandbox مخصصًا ومراجع طلبات اصطناعية وصناديق بريد تتحكّم فيها. لا تستخدم بيانات اتصال عملاء حقيقية في الوصفات. احفظ المعرّفات وحمولة الطلب الدقيقة من كل خطوة لتتمكن من إعادة المحاولة بأمان عند استجابة غير مؤكّدة.
| السيناريو | الإجراء | الدليل المتوقع |
|---|---|---|
| المصادقة الأولى | مثال البدء السريع مع delivery:read | 200 ونتيجة مثال ثابتة ومعرّف طلب |
| قبول العنوان | أنشئ تأكيدًا ينتهي مستقبلًا؛ افتح رابط المستلم وأرسل الموقع المقترح | لقطة مؤكّدة (Confirmed) غير قابلة للتعديل |
| تصحيح العنوان | أنشئ طلبًا آخر؛ اختر موقعًا صالحًا آخر عبر مسار المستلم | لقطة مصحّحة (Corrected) مع الاحتفاظ بالاقتراح الأصلي |
| الإلغاء | ألغِ طلبًا جديدًا معلّقًا عبر API تأكيد العنوان | Cancelled؛ لا تستطيع صلاحية المستلم القديمة إكماله |
| انتهاء الصلاحية | أنشئ طلبًا قصير العمر وانتظر تجاوز expiresAt ثم افتح رابطه | منتهي (Expired) أو غير متاح؛ لا لقطة مكتملة |
| النقل والمستودع والخروج للتوصيل | أرسل أوامر التوصيل الموثّقة | سجل أحداث مرجعي مرتب |
| محاولة فاشلة وRTS | أرسل معالجة فشل التوصيل مع RecipientUnavailable وattemptCount: 3 | مرتجع RTS واحد؛ لا ينشئ الدليل المكرر مرتجعًا آخر |
| التوصيل مع دليل | اضبط Signature/Photo وأرسل الدليل المطابق أولًا ثم CompleteDelivery مع proofId الخاص به | Delivered؛ رفض الدليل المفقود أو الخاطئ |
| إرجاع المستلم | اربط شحنة Delivered ببيانات اتصال اختبار متحقّق منها؛ اطلب استلامًا أو إيداعًا | يدخل طلب الإرجاع مسار الموافقة الموثّق |
| إرجاع عميل مرجعي | أنشئ مرتجع عميل اصطناعيًا واعتمده | Requested ثم Approved؛ سجل الشحنة الصادرة الأصلي دون تغيير |
| دليل الاستلام والوصول | ارفع صور PNG اصطناعية منفصلة لتوقيع الاستلام من العميل ووصول المرتجع | يقبل كل حدث دليله المقابل فقط |
| نطاق خاطئ | أصدر مفتاح قراءة فقط؛ حاول إرسال حدث | 403؛ لا تغيير |
| بيئة خاطئة | اقرأ مورد Sandbox بمفتاح بيئة منفصلة | المورد غير قابل للوصول |
| حدث مكرر | أعد UUID الحدث وحمولته المحفوظين كما هما | لا حدث مرجعي ثانٍ |
| حدث خارج الترتيب | أكمل قبل التسليم المطلوب | 409؛ افحص الحالة وصحّحها بدل تغيير UUID |
| إعادة خطاف الويب | يعيد المستقبل 503 قبل الحفظ المستديم ثم يتعافى | قبول الإعادة مرة واحدة |
| تكرار خطاف الويب أو إعادة تشغيله | أعد تسليمًا اصطناعيًا مقبولًا | معرّف الحدث نفسه؛ لا إجراء أعمال مكرر |
| تدوير صلاحية الاستلام | أصدر رابط استلام ثانيًا غير مكتمل وجرّب القديم | رفض الصلاحية القديمة |
| إيقاف كتابة المرتجعات | عند تلقي returns_paused، أعد المحاولة لاحقًا بالمعرّفات نفسها | تنجح الكتابة بعد استئناف الخدمة؛ تبقى القراءة متاحة |
تقبل نقطة نهاية المثال للقراءة فقط أيضًا fault=error-403 وerror-404 وerror-409 وerror-429 وerror-500 لاختبار معالجة الحالات. تحاكي هذه الأخطاء الاستجابات؛ ولا تثبت انتقالات فعلية لدورة الحياة ولا تغيّر البيانات.