معايير نجاح WCAG · Level A

WCAG 2.2.1: قابلية ضبط التوقيت

تتطلب WCAG 2.2.1 أن يتمكن المستخدم من إيقاف أي حد زمني يحدده المحتوى أو تعديله أو تمديده، مما يضمن ألا يُستبعد الأشخاص الذين يحتاجون إلى وقت أطول للتفاعل مع محتوى الويب. يعد هذا المعيار من المستوى A ضروريًا للمستخدمين ذوي الإعاقات الحركية والمعرفية والبصرية.

ماذا يعني هذا المعيار

المعيار WCAG 2.2.1 قابلية ضبط التوقيت هو معيار نجاح من المستوى A ضمن المبدأ 2: قابلية التشغيل. ينص على أنه لكل حد زمني يحدده المحتوى، يجب أن يتحقق واحد على الأقل مما يلي: يمكن للمستخدم إيقاف الحد الزمني قبل مواجهته؛ يمكن للمستخدم ضبط الحد الزمني ضمن نطاق واسع (على الأقل عشرة أضعاف الإعداد الافتراضي)؛ أو يمكن للمستخدم تمديد الحد الزمني بإجراء بسيط — مثل الضغط على مفتاح أو النقر على زر — قبل انتهاء الوقت، مع تحذيره قبل ذلك بما لا يقل عن 20 ثانية، مع إتاحة خيار التمديد لما لا يقل عن عشر مرات.

عملياً، ينطبق هذا المعيار على أي واجهة ويب تفرض انتهاء صلاحية الجلسة، أو شريط عرض (carousel) يتقدم تلقائياً بشرائح مؤقتة، أو نموذج يتم مسحه أو إرساله تلقائياً، أو عدّاد تنازلي في صفحة إتمام الشراء، أو مشغّل وسائط مع تسميات توضيحية مؤقتة لا يمكن إيقافها مؤقتاً، أو أي آلية أخرى تقيّد الوقت المتاح للمستخدم لإكمال مهمة ما. إذا كانت صفحتك أو تطبيقك يحدد مؤقتاً يؤدي عند انتهاء صلاحيته إلى إزالة المحتوى، أو تسجيل خروج المستخدم، أو نقله إلى حالة جديدة دون موافقته، فيجب عليك توفير طريقة لضبط هذا الحد أو تمديده.

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

يحدث النجاح عندما يوفر تفاعل محدود بالوقت آلية واضحة — من الأفضل عرضها قبل مواجهة الحد — تتيح للمستخدم تعطيل أو تمديد أو ضبط القيد الزمني. ويحدث الإخفاق عندما ينتهي المحتوى تلقائياً، أو يعيد التوجيه، أو يسجل خروج المستخدم، أو يتقدم دون تقديم أي من خيارات الضبط الثلاثة أعلاه، ولا ينطبق أي من الاستثناءات الثلاثة.

لماذا يهم

تؤثر الحدود الزمنية بشكل غير متناسب على الأشخاص ذوي الإعاقة. المستخدمون الذين يعتمدون على قارئات الشاشة يتنقلون غالباً في الصفحات بشكل أبطأ من المستخدمين المبصرين، لأنهم يستمعون إلى المحتوى بشكل خطي ويجب عليهم استكشاف الواجهات غير المألوفة بشكل تسلسلي. المستخدمون ذوو الإعاقات الحركية — بما في ذلك من يستخدمون أجهزة الوصول بالمفاتيح (switch access)، أو برمجيات تتبع العين، أو عصي الفم، أو برمجيات التحكم الصوتي — قد يستغرقون وقتاً أطول بكثير لملء حقل نموذج، أو تأكيد عملية شراء، أو الانتقال إلى الخطوة التالية. المستخدمون ذوو الإعاقات الإدراكية أو صعوبات التعلم، بما في ذلك عسر القراءة، أو اضطرابات الانتباه، أو ضعف الذاكرة، قد يحتاجون إلى وقت إضافي لقراءة التعليمات وفهمها والاستجابة لها. كما يحتاج كبار السن غالباً إلى وقت أطول للمهام نفسها، وهم يمثلون شريحة متنامية بسرعة من سكان الإنترنت عالمياً.

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

والأثر أوسع من المستخدمين الأفراد. وفقاً لمنظمة الصحة العالمية، يعيش حوالي 1.3 مليار شخص حول العالم مع شكل من أشكال الإعاقة الكبيرة. في تركيا وحدها، تشير الإحصاءات الرسمية من TÜİK إلى أن أكثر من 8.5 مليون شخص لديهم إعاقة تؤثر في الأنشطة اليومية. الواجهات المحددة بالوقت تستبعد جزءاً ملموساً من قاعدة المستخدمين المحتملين لأي تطبيق ويب.

وبعيداً عن جانب الإتاحة، فإن إزالة الحدود الزمنية التعسفية أو جعلها قابلة للضبط يفيد أيضاً المستخدمين في بيئات ذات نطاق ترددي منخفض، والمستخدمين الذين لديهم ضعف حركي مؤقت (مثل كسر في الذراع)، والمستخدمين الذين يتعرضون ببساطة للمقاطعة أثناء أداء مهمة ما. تحسينات سهولة الاستخدام واسعة النطاق ويمكن أن تقلل معدلات التخلي عن النماذج، وتزيد معدلات التحويل في مواقع التجارة الإلكترونية، وتخفض حجم طلبات دعم العملاء.

قواعد axe-core ذات الصلة

يتطلب المعيار WCAG 2.2.1 اختباراً يدوياً. لا يمكن للأدوات الآلية — بما في ذلك axe-core و Lighthouse ومحركات مشابهة — اكتشاف انتهاكات التوقيت بشكل موثوق لأن الحدود الزمنية غالباً ما تُنفّذ في منطق الجلسة على الخادم، أو في JavaScript يعمل بشكل غير متزامن، أو في تكاملات من أطراف ثالثة. لا توجد لدى الأداة طريقة لملاحظة أن صفحة ما ستنتهي صلاحيتها بعد خمس دقائق، أو أن شريط العرض سيتقدم دون إدخال من المستخدم، بمجرد فحص DOM أو إجراء تحليل ثابت. توضح الاعتبارات التالية ما يجب على المختبرين تقييمه يدوياً.

  • انتهاء صلاحية الجلسة (يدوي): يجب على المختبرين الانتظار لانتهاء صلاحية الجلسة أو محاكاته لتحديد ما إذا كانت الصفحة تعرض تحذيراً مسبقاً، وتقدم خياراً للتمديد، وتوفر ما لا يقل عن 20 ثانية للمستخدم للاستجابة. لا يمكن لأي قاعدة آلية تحديد مدة الجلسة أو ما إذا كان مربع حوار التحذير يظهر في الوقت المناسب دون الانتظار فعلياً حتى انتهاء المهلة.
  • أشرطة العرض والمنزلقات ذات التقدم التلقائي (يدوي): يجب على المختبرين ملاحظة ما إذا كانت أشرطة العرض تتقدم تلقائياً، وإذا كان الأمر كذلك، ما إذا كان هناك عنصر تحكم للإيقاف المؤقت أو الإيقاف متاح وقابل للوصول عبر لوحة المفاتيح. يمكن لـ axe-core اكتشاف بعض سمات ARIA المفقودة في مكونات شريط العرض، لكنه لا يستطيع تحديد ما إذا كان التقدم المؤقت نفسه قابلاً للضبط.
  • النماذج التي تُرسل أو تُمسح تلقائياً (يدوي): إذا كان نموذج ما يرسل أو يمسح محتواه بعد فترة من عدم النشاط، يجب على المختبر تحديد هذا السلوك بالملاحظة أو مراجعة الشيفرة. لا يكشف DOM وحده هذا السلوك لأداة فحص آلية.
  • العدادات التنازلية في التدفقات المعاملاتية (يدوي): تتضمن صفحات إتمام الشراء، وتدفقات حجز التذاكر، وبيئات الامتحانات عدادات تنازلية بشكل متكرر. ما إذا كانت هذه العدادات جوهرية (وبالتالي مستثناة) أو ما إذا كانت تتطلب آلية للتمديد هو قرار يتطلب مراجعة بشرية لكل من التنفيذ وسياق العمل.

كيفية الاختبار

  1. خط أساس للفحص الآلي: شغّل axe DevTools أو Lighthouse على الصفحة لتحديد أي انتهاكات معروفة في ARIA أو عناصر تفاعلية قد تفاقم مشكلات التوقيت. لاحظ أن هذه الأدوات لن تشير إلى حد التوقيت نفسه، لكنها تساعد في إنشاء خط أساس لمشكلات الإتاحة الأخرى. في Chrome DevTools، افتح لوحة Lighthouse، وحدد Accessibility، وشغّل الفحص. في axe DevTools، فعّل إضافة المتصفح، انقر Analyze، وراجع النتائج — لن تظهر أي قاعدة خاصة بالتوقيت، مما يؤكد أن الاختبار اليدوي مطلوب.
  2. تحديد جميع الحدود الزمنية: راجع شيفرة JavaScript الخاصة بالصفحة، وطلبات الشبكة، وإعدادات جلسة الخادم لتحديد كل حد زمني. تشمل المواقع الشائعة استدعاءات setTimeout و setInterval في JavaScript، وإعدادات انتهاء صلاحية الجلسة في أطر العمل الخلفية، وقيم انتهاء صلاحية ملفات تعريف الارتباط، وتكوينات الويدجت من أطراف ثالثة مثل معالجات الدفع أو ويدجت الدردشة.
  3. اختبار تحذير انتهاء الجلسة باستخدام NVDA + Firefox: افتح الموقع في Firefox مع تشغيل NVDA. تنقل عبر نموذج متعدد الخطوات أو قسم يتطلب مصادقة. انتظر مربع حوار تحذير انتهاء الجلسة (أو انتهاء المهلة نفسها إذا لم يظهر تحذير). تحقق من أن NVDA يعلن التحذير تلقائياً — من الأفضل عبر منطقة حية (live region) — وأن المستخدم يمكنه تمديد الجلسة بالضغط على Enter أو Space على زر مركّز دون فقدان بيانات النموذج.
  4. اختبار تحذير انتهاء الجلسة باستخدام VoiceOver + Safari (macOS/iOS): كرر الاختبار أعلاه على Safari مع تمكين VoiceOver. استخدم rotor للتنقل بين العناصر التفاعلية وتأكد من الإعلان عن تحذير انتهاء المهلة وأن عنصر التحكم بالتمديد يمكن الوصول إليه ضمن نافذة 20 ثانية.
  5. اختبار تحذير انتهاء الجلسة باستخدام JAWS + Chrome: كرر باستخدام JAWS على Chrome. تأكد من نقل التركيز إلى مربع حوار التحذير، وأن JAWS يقرأ الوقت المتبقي وخيار التمديد، وأن تفعيل زر التمديد يبقي الجلسة نشطة دون الحاجة إلى إعادة تحميل الصفحة.
  6. الاختبار باستخدام لوحة المفاتيح فقط (دون قارئ شاشة): عطّل الفأرة وتنقل بالكامل باستخدام Tab و Shift+Tab و Enter و Space. تأكد من أن أي مربع حوار تحذير يمكن الوصول إليه عبر لوحة المفاتيح، وأن زر التمديد قابل للتركيز، وأن التركيز يعود إلى الموقع الصحيح في النموذج بعد تمديد الجلسة.
  7. اختبار توقيت أشرطة العرض والوسائط: حدد أي أشرطة عرض تتقدم تلقائياً. تنقل إلى شريط العرض باستخدام Tab. تحقق من وجود زر إيقاف مؤقت أو إيقاف يمكن الوصول إليه دون فأرة. فعّله وتأكد من توقف التقدم. إذا استأنف شريط العرض بعد تفاعل المستخدم، فتأكد من أنه لا يستأنف تلقائياً.
  8. التحقق من قابلية تطبيق الاستثناءات: لكل حد زمني تم العثور عليه، حدد ما إذا كان استثناء الوقت الحقيقي أو الاستثناء الجوهري أو استثناء 20 ساعة ينطبق. وثّق مبرراتك. إذا لم ينطبق أي من الاستثناءات ولم توجد آلية ضبط، فسجّل ذلك كإخفاق في المعيار WCAG 2.2.1.

كيفية الإصلاح

انتهاء صلاحية الجلسة دون تحذير — غير صحيح

<!-- Session expires silently after 5 minutes; page reloads with no warning -->
<script>
  setTimeout(function() {
    window.location.href = '/session-expired';
  }, 300000);
</script>

انتهاء صلاحية الجلسة مع تحذير وخيار تمديد — صحيح

<!-- Warn user 60 seconds before expiry; offer extension; announce via live region -->
<div
  id='session-warning'
  role='alertdialog'
  aria-modal='true'
  aria-labelledby='warning-title'
  aria-describedby='warning-desc'
  hidden
>
  <h2 id='warning-title'>Your session is about to expire</h2>
  <p id='warning-desc'>
    Your session will expire in <span id='countdown'>60</span> seconds.
    Select "Stay logged in" to continue your session.
  </p>
  <button id='extend-btn' type='button'>Stay logged in</button>
  <button id='logout-btn' type='button'>Log out now</button>
</div>

<script>
  var SESSION_DURATION = 300000; // 5 minutes
  var WARNING_BEFORE   = 60000;  // warn 60 seconds before
  var sessionTimer, warningTimer, countdownInterval;

  function startSessionTimer() {
    warningTimer = setTimeout(showWarning, SESSION_DURATION - WARNING_BEFORE);
    sessionTimer = setTimeout(expireSession, SESSION_DURATION);
  }

  function showWarning() {
    var dialog = document.getElementById('session-warning');
    dialog.hidden = false;
    document.getElementById('extend-btn').focus(); // move focus to dialog
    var seconds = 60;
    countdownInterval = setInterval(function() {
      seconds--;
      document.getElementById('countdown').textContent = seconds;
      if (seconds <= 0) clearInterval(countdownInterval);
    }, 1000);
  }

  function extendSession() {
    clearTimeout(sessionTimer);
    clearTimeout(warningTimer);
    clearInterval(countdownInterval);
    document.getElementById('session-warning').hidden = true;
    startSessionTimer();
    // Return focus to last active element
  }

  function expireSession() {
    window.location.href = '/session-expired';
  }

  document.getElementById('extend-btn').addEventListener('click', extendSession);
  document.getElementById('logout-btn').addEventListener('click', expireSession);
  startSessionTimer();
</script>

شريط عرض يتقدم تلقائياً دون عناصر تحكم — غير صحيح

<!-- Slides advance every 4 seconds; no pause control; no keyboard access -->
<div class='carousel'>
  <div class='slide active'>Slide 1 content</div>
  <div class='slide'>Slide 2 content</div>
  <div class='slide'>Slide 3 content</div>
</div>

شريط عرض يتقدم تلقائياً مع عنصر تحكم للإيقاف المؤقت — صحيح

<!-- Pause button stops auto-advance; button label updates to reflect state -->
<section aria-roledescription='carousel' aria-label='Featured announcements'>
  <div aria-live='off' aria-atomic='true'>
    <div class='slide active' role='group' aria-roledescription='slide' aria-label='Slide 1 of 3'>
      Slide 1 content
    </div>
    <div class='slide' role='group' aria-roledescription='slide' aria-label='Slide 2 of 3'>
      Slide 2 content
    </div>
    <div class='slide' role='group' aria-roledescription='slide' aria-label='Slide 3 of 3'>
      Slide 3 content
    </div>
  </div>
  <button id='carousel-pause' type='button' aria-pressed='false'>
    Pause slideshow
  </button>
</section>

<script>
  var paused = false;
  var btn = document.getElementById('carousel-pause');
  btn.addEventListener('click', function() {
    paused = !paused;
    btn.setAttribute('aria-pressed', paused.toString());
    btn.textContent = paused ? 'Play slideshow' : 'Pause slideshow';
    // toggle the carousel's auto-advance logic accordingly
  });
</script>

عدّاد تنازلي مؤقت في إتمام الشراء دون خيار تمديد — غير صحيح

<!-- 10-minute checkout lock; no extension offered; not an essential exception -->
<p>Your items are reserved for: <span id='timer'>10:00</span></p>
<!-- Timer expires, cart is cleared silently -->

عدّاد تنازلي مؤقت في إتمام الشراء مع خيار تمديد — صحيح

<!-- Warn before expiry and offer a one-click extension -->
<p>
  Your items are reserved for:
  <span id='timer' aria-live='polite' aria-atomic='true'>10:00</span>
</p>
<div id='extend-notice' hidden role='alert'>
  <p>Your reservation expires in 2 minutes.</p>
  <button type='button' id='extend-checkout'>Give me more time</button>
</div>
<!--
  When timer reaches 2:00, reveal #extend-notice.
  Clicking the button resets the reservation timer via an API call.
  aria-live='alert' ensures screen readers announce the warning immediately.
-->

الأخطاء الشائعة

  • إظهار تحذير انتهاء المهلة دون إدارة لتركيز لوحة المفاتيح: يظهر مربع حوار التحذير بصرياً لكن لا يُنقل التركيز إليه أبداً، لذلك لا يكتشف مستخدمو لوحة المفاتيح فقط وقارئات الشاشة أنهم يستطيعون تمديد الجلسة قبل انتهائها.
  • توفير أقل من 20 ثانية للاستجابة لتحذير انتهاء المهلة: إظهار تنبيه "انتهاء الجلسة" قبل 10 ثوان فقط من تسجيل الخروج لا يفي بالمعيار، الذي يتطلب إتاحة ما لا يقل عن 20 ثانية لإجراء التمديد.
  • استخدام role='alert' في مربع حوار انتهاء المهلة الذي يتطلب تفاعلاً: دور alert مخصص للإعلانات للقراءة فقط؛ يجب أن يستخدم مربع الحوار الذي يتطلب إدخالاً من المستخدم role='alertdialog' مع aria-modal='true' و aria-labelledby حتى تتعامل معه قارئات الشاشة كمربع حوار نمطي يتطلب استجابة.
  • الادعاء بوجود استثناء جوهري لمؤقت عربة تسوق قياسي في التجارة الإلكترونية: حجز العناصر في عربة التسوق لمدة 10 دقائق هو تسهيل تجاري، وليس نشاطاً جوهرياً حقيقياً يكون قياس السرعة هو الغرض منه. تطبيق الاستثناء الجوهري هنا غير صحيح؛ آلية التمديد مطلوبة.
  • تقدم شريط عرض تلقائياً دون زر إيقاف مؤقت مرئي وقابل للوصول بلوحة المفاتيح: إضافة زر إيقاف مؤقت لا يظهر إلا عند التحويم، أو غير موجود في ترتيب Tab، لا يفي بالمعيار. يجب أن يكون عنصر التحكم قابلاً للوصول دون جهاز تأشير.
  • إعادة ضبط عدّاد انتهاء المهلة عند أي حركة للفأرة فقط دون أحداث لوحة المفاتيح: شيفرة JavaScript التي تمدد مؤقت عدم النشاط عند أحداث mousemove لكنها تتجاهل أحداث keydown أو focus ستنهي الجلسات بصمت لمستخدمي لوحة المفاتيح فقط الذين يعملون بنشاط في الصفحة.
  • تمديد الجلسة عبر إعادة تحميل كاملة للصفحة: عندما ينقر المستخدم "البقاء مسجلاً للدخول"، تؤدي إعادة تحميل الصفحة إلى مسح أي بيانات كان المستخدم قد أدخلها في النماذج. يجب أن يحدث التمديد عبر استدعاء API أو تحديث ملف تعريف الارتباط في الخلفية، مع الحفاظ على حالة DOM.
  • استخدام قيم setTimeout غير قابلة للتهيئة أو غير مكشوفة للمستخدم: تثبيت طول الجلسة على خمس دقائق دون أي عنصر تحكم في واجهة المستخدم يتيح للمستخدم اختيار مدة أطول ينتهك المعيار ما لم تكن إحدى آليات الضبط الثلاث (إيقاف، ضبط، أو تمديد) متاحة.
  • الإخفاق في اختبار تدفق انتهاء المهلة باستخدام تقنيات مساعدة فعلية قبل الإطلاق: قد لا يلاحظ المطورون الذين يختبرون باستخدام الفأرة فقط أن مربع حوار التحذير غير متاح لمستخدمي قارئات الشاشة، لأن الاختبار البصري لا يكشف عن إخفاقات إدارة التركيز.
  • افتراض أن الويدجت المضمّنة من أطراف ثالثة متوافقة تلقائياً: غالباً ما تفرض معالجات الدفع، وويدجت الدردشة المباشرة، ومحركات الحجز المضمّنة عبر iframes أو سكربتات حدودها الزمنية الخاصة. تقع مسؤولية التوافق مع WCAG للصفحة الكاملة — بما في ذلك المحتوى المضمّن الذي تتحكم فيه — على مالك الصفحة.

العلاقة مع لوائح الإتاحة في تركيا

تُقرّر المذكرة الرئاسية التركية 2025/10، المنشورة في الجريدة الرسمية رقم 32933 بتاريخ 21 يونيو 2025، متطلبات إلزامية لإتاحة الويب متوافقة مع WCAG 2.2 مستوى AA لمجموعة واسعة من الكيانات العامة والخاصة التي تشغّل خدمات رقمية في تركيا. المعيار WCAG 2.2.1 قابلية ضبط التوقيت هو معيار من المستوى A، ما يعني أنه يقع في الطبقة الأساسية من التوافق — وهو من أولى المتطلبات التي يجب على الكيانات المشمولة تلبيتها.

بموجب المذكرة، يُطلب من المؤسسات والهيئات العامة — بما في ذلك الوزارات والبلديات والجامعات والمؤسسات المملوكة للدولة — تحقيق التوافق الكامل خلال عام واحد من تاريخ نشر المذكرة. لدى الكيانات في القطاع الخاص المشمولة بالتنظيم فترة عامين للامتثال. نطاق القطاع الخاص واسع بشكل صريح: فهو يشمل منصات التجارة الإلكترونية، والبنوك والمؤسسات المالية، والمستشفيات الخاصة ومقدمي خدمات الصحة، وشركات الاتصالات التي لديها 200,000 مشترك أو أكثر، ووكالات السفر، وشركات النقل الخاص للركاب، والمدارس الخاصة التي تعمل بموجب ترخيص من وزارة التربية الوطنية (MoNE).

بالنسبة للمنظمات في هذه الفئات، لا يُعد إخفاق المعيار WCAG 2.2.1 مجرد قصور عن أفضل الممارسات — بل هو عدم توافق قانوني قد يجذب تدقيقاً تنظيمياً، وشكاوى عبر القنوات الرسمية، وضرراً بالسمعة. فكّر في تدفقات الأعمال المحددة الأكثر احتمالاً لإثارة هذا الانتهاك: إتمام شراء في التجارة الإلكترونية مع حجز مؤقت لعربة التسوق، جلسة مصرفية عبر الإنترنت تنتهي صلاحيتها بصمت بينما يملأ العميل نموذج دفع، نظام مواعيد في مستشفى تنتهي صلاحيته قبل أن يتمكن مستخدم ذو إعاقة حركية من إكمال تسجيله، أو بوابة خدمة ذاتية لمزوّد اتصالات تسجل خروج المستخدمين تلقائياً من تدفق إدارة عقد. كل واحد من هذه سيناريوهات إخفاق محتملة ضمن نوع كيان مذكور صراحة في المذكرة.

يجب على المنظمات أن تتعامل مع الامتثال للمعيار WCAG 2.2.1 ليس كخانة فنية للتأشير، بل كمتطلب تصميم يجب معالجته على مستوى البنية — في سياسات إدارة الجلسات، ومتطلبات شراء الويدجت من أطراف ثالثة، ومعايير مكونات واجهة المستخدم — بدلاً من إضافته لاحقاً كفكرة متأخرة. يجب أن تتضمن برامج التدقيق اختباراً يدوياً لجميع التفاعلات المحددة بالوقت، وليس الفحوصات الآلية فقط، تحديداً لأن الأدوات الآلية لا يمكنها اكتشاف هذا النوع من الانتهاكات دون ملاحظة بشرية.