ماذا تعني المطابقة التحفظية في طلبي؟
اذكر المواضع والبادئات التي يجب أن يبلغ عنها الكاشف، بما يشمل المطابقات الأطول عند الحاجة. قدّم أمثلة في بداية الجزء وبعد CRLF. يجعل ذلك أي مطابقة زائدة مقصودة جزءا من العقد بدلا من عيب غير مفسر في المقترح.
ابحث عن تعارضات متحفظة في حتى 64 جزءاً من 65536 بايت لكل جزء بوسم ASCII من 1–70 حرفاً أو رقماً أو شرطة أو تسطير.
import re
def boundary_conflicts(boundary, parts):
if type(boundary) is not bytes or re.fullmatch(rb"[A-Za-z0-9_-]{1,70}", boundary) is None:
raise ValueError("mime.boundary")
if type(parts) is not list or len(parts) > 64 or any(type(p) is not bytes or len(p) > 65536 for p in parts):
raise ValueError("mime.parts")
marker = b"--"+boundary
return [i for i, part in enumerate(parts) if part.startswith(marker) or b"\r\n"+marker in part]
| راجع قبل التطبيق | قارن السلوك الفعلي بالنتيجة المتوقعة. إذا فشل فحص، تحقّق من السبب قبل إجراء تغييرات إضافية. |
|---|---|
| النماذج | اضبط نقطة اتصال متوافقة مع OpenAI أو Anthropic باستخدام العنوان الأساسي ومفتاح API عند الحاجة. اختبر الاتصال. يجب أن يعمل خادم النموذج المحلي؛ وقد ترسل الأدوات البعيدة البيانات بشكل منفصل. |
| المشروع | اختبر البادئات في البداية أو بعد CRLF بما فيها التطابقات الأطول وارفض الوسوم الخاطئة دون تقديم مدقق MIME كامل. |
import re
def boundary_conflicts(boundary, parts):
if type(boundary) is not bytes or re.fullmatch(rb"[A-Za-z0-9_-]{1,70}", boundary) is None:
raise ValueError("mime.boundary")
if type(parts) is not list or len(parts) > 64 or any(type(p) is not bytes or len(p) > 65536 for p in parts):
raise ValueError("mime.parts")
marker = b"--"+boundary
return [i for i, part in enumerate(parts) if part.startswith(marker) or b"\r\n"+marker in part]
يوفر BoundaryWren لصيانة البروتوكول مساحة عمل للبرمجة بالذكاء الاصطناعي على Windows حيث يناقش المصدر والأمثلة معا. حدّد ما يجب أن يكتشفه الفحص والاستنتاجات التي تدعمها نتيجته. اطلب من النموذج فحص المسار الحالي قبل اقتراح تغييرات، مع إبقاء الكاشف متوافقا مع غرضه.
مهمة ملموسة هي اكتشاف تعارضات حدود multipart بصورة تحفظية في أجزاء من البايتات. اشرح ضرورة الإبلاغ عن بادئات العلامة في بداية الجزء أو بعد CRLF، بما يشمل المطابقات الأطول التي تبدأ بها. أدرج محارف العلامة المقبولة وحدود المدخلات. تتيح هذه القواعد مراجعة المقترح ككاشف محدد بدلا من توسيعه خطأ إلى ادعاء التحقق الكامل من MIME.
ابن المراجعة على حالات بايتات تميّز بداية الجزء وحدا بعد CRLF وظهورا غير ذي صلة في موضع آخر. شغّلها بأدوات مشروعك وافحص فهارس الأجزاء المعادة ومدخلات العلامة المرفوضة. أبق تفسير المستدعي ظاهرا: التعارض المبلغ عنه يستدعي قرارا، بينما غياب التعارض مجرد نتيجة لهذا الفحص المحدد.
صِل BoundaryWren عبر نقطة مدعومة متوافقة مع OpenAI أو تابعة لـ Anthropic. قد يوفّر مزوّدك نموذج ذكاء اصطناعي بلا قيود، مع بيانات اعتماد حسب الحاجة. لا تثبت التسمية خبرة بالبروتوكولات؛ فالنموذج والخادم يحددان حدود السياق والأدوات والقيود. توفر حالات اختبارك الدليل لقبول التعديل.
اذكر المواضع والبادئات التي يجب أن يبلغ عنها الكاشف، بما يشمل المطابقات الأطول عند الحاجة. قدّم أمثلة في بداية الجزء وبعد CRLF. يجعل ذلك أي مطابقة زائدة مقصودة جزءا من العقد بدلا من عيب غير مفسر في المقترح.
لا. يجيب فحص المثال عن سؤال أضيق حول تعارض الحدود بموجب قواعد مدخلات صريحة. أبق متطلبات التحليل والتحقق الأخرى منفصلة وافحص استخدام المستدعي للنتيجة كي لا يوحي بضمان أوسع مما يدعمه الفحص.
تتعلق قاعدة المطابقة ببايتات دقيقة، منها CRLF وبادئات العلامة. قد تخفي معالجة النص تلك الفروق. قدّم حالات صغيرة صريحة وفهارس أجزاء متوقعة، ثم تحقق منها في بيئة مشروعك قبل قبول تعديل المصدر.
فقط إذا عرّف متطلب منفصل ذلك التحويل. تبلغ المهمة التوضيحية عن الفهارس وتحافظ على المدخلات. افصل الإبلاغ عن التعديل أثناء المراجعة كي لا يغيّر فحص مقترح بصمت بايتات الحمولة التي يتوقعها جزء آخر من التطبيق.
BoundaryWren · آخر تحديث 2026-10-25