الخلاصة

  • تضيف المراجعة 21 من مسودة JSCalendar 2.0 شرط تغطية: إذا غاب progress العام الصريح عن Task، فلا يجوز أن تصبح القيمة الافتراضية completed إلا بعد أن يبلغ مشارك واحد على الأقل عن تقدمه.
  • الصمت ليس فشلاً ولا عملاً جارياً، لكنه ليس دليل اكتمال أيضاً. يجب حفظ عدد المشمولين وعدد المبلّغين والقيم وإصدار القاعدة وما إذا كانت النتيجة مصرحاً بها أم مشتقة.

قد تعرض لوحة الإدارة صفاً أخضر بينما تظل خلايا التقدم لكل المشاركين فارغة. لم يقل أحد إنه انتهى، ولم يقل أحد إنه فشل. وإذا سألت القاعدة فقط هل «كل قيم التقدم مكتملة»، فقد لا تجد قيمة تخالف الشرط وتحوّل الفراغ إلى إجماع.

هذه هي الحدود التي تعالجها المراجعة 21 من JSCalendar 2.0: A JSON Representation of Calendar Data، المسجلة في 2 أكتوبر 2026. التغيير يخص القيمة الافتراضية عندما لا تحمل Task قيمة progress عامة صريحة.

كانت المراجعة 20، مثل RFC 8984، تقول إن الافتراضي هو completed إذا كانت قيمة التقدم لكل المشاركين completed. تضيف المراجعة 21 شرط وجود: يجب أن يملك مشارك واحد على الأقل خاصية progress، ويجب أن تكون قيمة كل من يملكها completed.

تغلق العبارة الجديدة غموض المجموعة الخالية. في المنطق وبعض محركات الاستعلام قد تكون عبارة «كل العناصر تحقق الشرط» صحيحة عندما لا توجد عناصر. لا تثبت المصادر أن منتجاً منشوراً أغلق مهمة بهذه الطريقة، لذلك لا ندعي حادثاً. ما تثبته هو تعديل يمنع اشتقاق إيجابي من صفر ملاحظات.

ولا تعني القاعدة أن كل اسم مدرج يجب أن يرسل تقريراً. تقدم Participant اختياري. إذا ضمت Task عشرة مشاركين وأبلغ اثنان فقط، فيمكن أن يكون الافتراضي completed إذا قال الاثنان completed. صمت الثمانية ليس اعتراضاً تلقائياً. المحظور أضيق: لا اكتمال بلا أي تقرير مؤهل.

لهذا يصبح المقام جزءاً من القرار. «اثنان من اثنين من المبلّغين اكتمل عملهما» و«اثنان فقط من عشرة أبلغا وكلاهما اكتمل» قد يعطيان الحالة نفسها، لكن تغطية الأدلة مختلفة. اللون وحده يخفي المعلومة التي يحتاجها القائد.

ترتيب التقييم واضح. وجود قيمة واحدة على الأقل وكون كل القيم الموجودة completed يؤدي إلى completed. إن لم يتحقق ذلك، فوجود failed واحد يؤدي إلى failed. وإذا لم يوجد failed ووجد in-process تصبح الحالة in-process. وما عدا ذلك، بما فيه صفر تقارير، يعود إلى needs-action.

الأمر ليس تصويتاً. اجتماع completed مع failed ينتج failed، واجتماعه مع in-process ينتج in-process. القيم الغائبة لا تُخترع على أنها فشل أو عمل جارٍ أو اكتمال، بل تبقى غائبة.

يعمل الاشتقاق فقط إذا حُذفت قيمة Task العامة. أما القيمة العامة الصريحة فهي ادعاء مستقل. وقد تعرض شاشتان completed مع أصلين مختلفين: asserted مباشرة أو derived من تقارير. حفظ الكلمة النهائية وحدها يمحو هذا الأصل.

ولتقدم Participant شروطه. لا يُعرّف إلا داخل Task، ويتطلب calendarAddress وأن تكون participationStatus هي accepted. قيمه الأساسية in-process وcompleted وfailed، مع السماح بالامتدادات المسجلة أو الخاصة بالمورد. توجد cancelled في مستوى Task، لا ضمن القيم الفردية الأساسية.

أما percentComplete فحقل منفصل، عدد اختياري من صفر إلى مئة، وليس متوسطاً معيارياً يحدد الفئة. تحويل مئة إلى completed أو الفراغ إلى صفر يحتاج سياسة محلية صريحة ومسجلة.

تفصل المعايير السابقة هذه الطبقات. يميز RFC 5545 بين STATUS في VTODO ووقت الإكمال وحالة مشاركة الحاضر. ويميز RFC 5546 بين حالة الكائن التي يضبطها المنظم وPARTSTAT الخاص بالمشارك. سهولة JSON لا تدمج مساهمة الفرد بحالة المهمة الكلية.

تضيف JMAP Calendars وCalDAV النقل والمزامنة والصلاحية. نجاح حفظ API أو وجود اسم في IANA لا يثبت أن منتجاً يشغل دلالة المراجعة 21. الوثيقة مسودة لمجموعة CALENDAR EXTENSIONS في مسار IETF، تستهدف Proposed Standard وتخضع لـ AD Evaluation؛ وليست RFC بعد.

كما أن حالة التقويم ليست إيصالاً للواقع. قد يضع شخص مساهمته مكتملة بلا تسليم، وقد تتزامن Task فيما تفشل العملية الخارجية. تمنع المراجعة الجديدة صنع الاكتمال من الصمت، لكنها لا تضمن صدق التقارير الموجودة.

يقدم Minimum Initial Specification لدى Lu Heng قاعدة مشتركة بالحجم الصحيح: ملاحظة واحدة على الأقل قبل النجاح، مع إبقاء القرار ذي العواقب محلياً. ويسأل Running-Code Primacy عن المراجعة والاستعلام ومسار التجاوز اللذين عملا فعلاً. أما Reality Layers فيمنع completed من التحول إلى إثبات أداء لم يرصده.

الضابط المناسب إيصال تجميع يحفظ UID وversion والقيمة العامة الصريحة وعدد المشاركين والمبلّغين والقيم والامتدادات وترتيب الاختبار والنتيجة وإصدار المقيم والإجراء اللاحق. ويجب أن يميز asserted من derived.

شرط وجود قصير يحمي مبدأ مؤسسياً: الإجماع في الأدلة يبدأ بدليل واحد على الأقل. الصمت قد يستدعي المتابعة، لكنه لا يستحق الترقية التلقائية إلى نجاح.

المصادر