title: تسجيل الدخول description: “سجّل دخولك إلى FailproofAI من واجهة سطر الأوامر لتفعيل التذكيرات والميزات المخصصة”
--login / --logout / --whoami لا تزال مقبولة كحكم توافقي للعودة.
المصادقة اختيارية. السياسات واللوحة الإلكترونية وصفحة /audit وكل ميزة محلية أخرى تعمل بنفس الطريقة سواء كنت مسجل دخول أم لا. تم إنشاء سطح تسجيل الدخول بحيث تتمتع الميزات التي تحتاج إلى هوية مستقرة (تذكيرات إعادة التدقيق اليوم، المزيد في المستقبل) بمكان لتثبيتها.
تدفق تسجيل الدخول
~/.failproofai/auth.json (الوضع 0600). تصبح نفس الجلسة مرئية بعد ذلك للوحة الإلكترونية في التطبيق — سيؤدي النقر على [ set a reminder ] على /audit إلى رؤيتك مسجل دخول.
تعرض لوحة المعلومات نفس التدفق كمربع حوار مشروط على /audit للمستخدمين الذين لا يلمسون واجهة سطر الأوامر أبداً.
تسجيل الخروج
~/.failproofai/auth.json. إذا كان خادم API غير قابل للوصول، يتم إزالة الملف المحلي على أي حال — النية المحلية لتسجيل الخروج تفوز دائماً.
فحص الهوية
<email> (<user uuid>) والخروج 0 عند وجود جلسة صحيحة، أو not signed in والخروج 1 وإلا. ينعش رمز الوصول بصمت في الخلفية إذا كان في غضون دقيقة من انتهاء الصلاحية.
تذكير إعادة التدقيق الدائم
عندما تنقر على[ set a reminder ] على صفحة /audit (أو تسجيل الدخول عبر المربع الحواري الذي يقيد الزر)، تكتب لوحة المعلومات ملف مرافق صغير في ~/.failproofai/next-audit.json:
0600 مثل auth.json.
يعرّض نقطة نهاية لوحة المعلومات /api/auth/reminder الطلب GET (القراءة)، POST (التعيين / إعادة الجدولة)، و DELETE (المسح) ويتطلب جلسة نشطة.
ما يوجد في ~/.failproofai/auth.json
0600 (قراءة/كتابة للمالك فقط). رمز الوصول هو HS256 JWT مدته ساعة واحدة؛ رمز التحديث عبارة عن سلسلة عشوائية معتمة من 256 بت يخزنها الخادم كـ SHA-256(token). يتم الكشف عن إعادة تشغيل رمز التحديث من جانب الخادم ويلغي كل جلسة للمستخدم.
متغيرات البيئة
انظر متغيرات البيئة للحصول على القائمة الكاملة.
استكشاف الأخطاء
“Could not reach the api-server” — لا يستطيع CLI فتح اتصال TCP بـFAILPROOF_API_URL. تحقق من شبكتك، أو عيّن FAILPROOF_API_URL إذا كنت تقوم بتشغيل خادم API الذي تستضيفه بنفسك.
“Rate limited” — عدد كبير جداً من محاولات تسجيل الدخول في نافذة 15 دقيقة لهذا البريد الإلكتروني (5/البريد الإلكتروني) أو IP (20/IP)، أو فترة إعادة إرسال مدتها 30 ثانية بعد الطلب السابق لنفس البريد الإلكتروني. تتضمن رسالة الخطأ نافذة إعادة المحاولة بالثواني.
Code rejected — كانت كلمة المرور لمرة واحدة خاطئة أو منتهية الصلاحية، أو أن الصف تعرض لقفل 5 تخمينات خاطئة. شغّل failproofai auth login مرة أخرى لطلب رمز جديد.
