fix(audit): nettoyage accès, garde-fous build, unification quotas
All checks were successful
CI / Lint, Unit Tests & Build (push) Successful in 7m59s
CI / Deploy production (on server) (push) Successful in 24s

Semaine 1 — fuites et accès :
- /archive rendu accessible via sidebar (était invisible)
- Suppression pages orphelines : /chat, /graph, /support, test-title-suggestions
- Fixes i18n : search-modal (clé non interpolée), sidebar tooltips, export PDF
- 15 locales mises à jour

Semaine 2 — garde-fous :
- 8 erreurs TS fixees → ignoreBuildErrors: false (build type-safe)
- reactStrictMode: true (dev-only, zero impact prod)
- reserveUsageOrThrow → wrapper deprecie vers reserveAiUsageOrThrow
- auth-guard.ts : requireAuthOrResponse() + requireAdminOrResponse()

Tests 212/212 | Lint 0 erreur | Build OK | tsc 0 erreur
This commit is contained in:
Antigravity
2026-07-17 18:47:44 +00:00
parent e8ee53c815
commit 88a7d2ad0a
42 changed files with 216 additions and 2081 deletions

View File

@@ -3318,10 +3318,8 @@
"title": "الحساب",
"link0": "تسجيل الدخول",
"link1": "إنشاء حساب",
"link2": "الدعم",
"link0Href": "/login",
"link1Href": "/register",
"link2Href": "/support"
"link1Href": "/register"
},
"legal": {
"title": "قانوني",
@@ -3685,7 +3683,8 @@
"typeForResults": "اكتب للحصول على نتائج فورية.",
"hintNavigate": "تنقل",
"hintOpen": "فتح",
"hintClose": "إغلاق"
"hintClose": "إغلاق",
"selectResultToPreview": "Select a result to explore its content."
},
"quotaPaywall": {
"title": "تم الوصول إلى الحد الشهري",

View File

@@ -3318,10 +3318,8 @@
"title": "Konto",
"link0": "Anmelden",
"link1": "Registrieren",
"link2": "Support",
"link0Href": "/login",
"link1Href": "/register",
"link2Href": "/support"
"link1Href": "/register"
},
"legal": {
"title": "Rechtliches",
@@ -3685,7 +3683,8 @@
"typeForResults": "Tippen für sofortige Ergebnisse.",
"hintNavigate": "navigieren",
"hintOpen": "öffnen",
"hintClose": "schließen"
"hintClose": "schließen",
"selectResultToPreview": "Select a result to explore its content."
},
"quotaPaywall": {
"title": "Monatliches Limit erreicht",

View File

@@ -3585,10 +3585,8 @@
"title": "Account",
"link0": "Log in",
"link1": "Sign up",
"link2": "Support",
"link0Href": "/login",
"link1Href": "/register",
"link2Href": "/support"
"link1Href": "/register"
},
"legal": {
"title": "Legal",
@@ -4492,7 +4490,8 @@
"typeForResults": "Type for instant results.",
"hintNavigate": "navigate",
"hintOpen": "open",
"hintClose": "close"
"hintClose": "close",
"selectResultToPreview": "Select a result to explore its content."
},
"mobile": {
"aiNote": "AI Note",

View File

@@ -3318,10 +3318,8 @@
"title": "Cuenta",
"link0": "Iniciar sesión",
"link1": "Registrarse",
"link2": "Soporte",
"link0Href": "/login",
"link1Href": "/register",
"link2Href": "/support"
"link1Href": "/register"
},
"legal": {
"title": "Legal",
@@ -3685,7 +3683,8 @@
"typeForResults": "Escribe para resultados instantáneos.",
"hintNavigate": "navegar",
"hintOpen": "abrir",
"hintClose": "cerrar"
"hintClose": "cerrar",
"selectResultToPreview": "Select a result to explore its content."
},
"quotaPaywall": {
"title": "Límite mensual alcanzado",

View File

@@ -3318,10 +3318,8 @@
"title": "حساب",
"link0": "ورود",
"link1": "ثبت‌نام",
"link2": "پشتیبانی",
"link0Href": "/login",
"link1Href": "/register",
"link2Href": "/support"
"link1Href": "/register"
},
"legal": {
"title": "حقوقی",
@@ -3685,7 +3683,8 @@
"typeForResults": "برای نتایج فوری تایپ کنید.",
"hintNavigate": "پیمایش",
"hintOpen": "باز کردن",
"hintClose": "بستن"
"hintClose": "بستن",
"selectResultToPreview": "Select a result to explore its content."
},
"quotaPaywall": {
"title": "محدودیت ماهانه رسید",

View File

@@ -3591,10 +3591,8 @@
"title": "Compte",
"link0": "Se connecter",
"link1": "S'inscrire",
"link2": "Support",
"link0Href": "/login",
"link1Href": "/register",
"link2Href": "/support"
"link1Href": "/register"
},
"legal": {
"title": "Légal",
@@ -4498,7 +4496,8 @@
"typeForResults": "Tapez pour des résultats instantanés.",
"hintNavigate": "naviguer",
"hintOpen": "ouvrir",
"hintClose": "fermer"
"hintClose": "fermer",
"selectResultToPreview": "Sélectionnez un résultat pour explorer son contenu."
},
"mobile": {
"aiNote": "IA Note",

View File

@@ -3318,10 +3318,8 @@
"title": "खाता",
"link0": "लॉग इन",
"link1": "साइन अप",
"link2": "सपोर्ट",
"link0Href": "/login",
"link1Href": "/register",
"link2Href": "/support"
"link1Href": "/register"
},
"legal": {
"title": "कानूनी",
@@ -3685,7 +3683,8 @@
"typeForResults": "तत्काल परिणाम के लिए टाइप करें।",
"hintNavigate": "नेविगेट",
"hintOpen": "खोलें",
"hintClose": "बंद करें"
"hintClose": "बंद करें",
"selectResultToPreview": "Select a result to explore its content."
},
"quotaPaywall": {
"title": "मासिक सीमा पहुँची",

View File

@@ -3318,10 +3318,8 @@
"title": "Account",
"link0": "Accedi",
"link1": "Registrati",
"link2": "Supporto",
"link0Href": "/login",
"link1Href": "/register",
"link2Href": "/support"
"link1Href": "/register"
},
"legal": {
"title": "Legale",
@@ -3685,7 +3683,8 @@
"typeForResults": "Digita per risultati immediati.",
"hintNavigate": "navigare",
"hintOpen": "aprire",
"hintClose": "chiudere"
"hintClose": "chiudere",
"selectResultToPreview": "Select a result to explore its content."
},
"quotaPaywall": {
"title": "Limite mensile raggiunto",

View File

@@ -3318,10 +3318,8 @@
"title": "アカウント",
"link0": "ログイン",
"link1": "登録",
"link2": "サポート",
"link0Href": "/login",
"link1Href": "/register",
"link2Href": "/support"
"link1Href": "/register"
},
"legal": {
"title": "法務",
@@ -3685,7 +3683,8 @@
"typeForResults": "入力で即座に結果表示。",
"hintNavigate": "移動",
"hintOpen": "開く",
"hintClose": "閉じる"
"hintClose": "閉じる",
"selectResultToPreview": "Select a result to explore its content."
},
"quotaPaywall": {
"title": "月制限に達しました",

View File

@@ -3318,10 +3318,8 @@
"title": "계정",
"link0": "로그인",
"link1": "가입",
"link2": "지원",
"link0Href": "/login",
"link1Href": "/register",
"link2Href": "/support"
"link1Href": "/register"
},
"legal": {
"title": "법률",
@@ -3685,7 +3683,8 @@
"typeForResults": "입력하여 즉시 결과 표시.",
"hintNavigate": "탐색",
"hintOpen": "열기",
"hintClose": "닫기"
"hintClose": "닫기",
"selectResultToPreview": "Select a result to explore its content."
},
"quotaPaywall": {
"title": "월별 한도에 도달했습니다",

View File

@@ -3318,10 +3318,8 @@
"title": "Account",
"link0": "Inloggen",
"link1": "Registreren",
"link2": "Support",
"link0Href": "/login",
"link1Href": "/register",
"link2Href": "/support"
"link1Href": "/register"
},
"legal": {
"title": "Juridisch",
@@ -3685,7 +3683,8 @@
"typeForResults": "Typ voor directe resultaten.",
"hintNavigate": "navigeren",
"hintOpen": "openen",
"hintClose": "sluiten"
"hintClose": "sluiten",
"selectResultToPreview": "Select a result to explore its content."
},
"quotaPaywall": {
"title": "Maandelijkse limiet bereikt",

View File

@@ -3318,10 +3318,8 @@
"title": "Konto",
"link0": "Zaloguj się",
"link1": "Zarejestruj się",
"link2": "Wsparcie",
"link0Href": "/login",
"link1Href": "/register",
"link2Href": "/support"
"link1Href": "/register"
},
"legal": {
"title": "Prawne",
@@ -3685,7 +3683,8 @@
"typeForResults": "Zacznij pisać dla natychmiastowych wyników.",
"hintNavigate": "nawiguj",
"hintOpen": "otwórz",
"hintClose": "zamknij"
"hintClose": "zamknij",
"selectResultToPreview": "Select a result to explore its content."
},
"quotaPaywall": {
"title": "Osiągnięto miesięczny limit",

View File

@@ -3318,10 +3318,8 @@
"title": "Conta",
"link0": "Entrar",
"link1": "Cadastrar",
"link2": "Suporte",
"link0Href": "/login",
"link1Href": "/register",
"link2Href": "/support"
"link1Href": "/register"
},
"legal": {
"title": "Legal",
@@ -3685,7 +3683,8 @@
"typeForResults": "Digite para resultados instantâneos.",
"hintNavigate": "navegar",
"hintOpen": "abrir",
"hintClose": "fechar"
"hintClose": "fechar",
"selectResultToPreview": "Select a result to explore its content."
},
"quotaPaywall": {
"title": "Limite mensal atingido",

View File

@@ -3318,10 +3318,8 @@
"title": "Аккаунт",
"link0": "Войти",
"link1": "Регистрация",
"link2": "Поддержка",
"link0Href": "/login",
"link1Href": "/register",
"link2Href": "/support"
"link1Href": "/register"
},
"legal": {
"title": "Правовое",
@@ -3685,7 +3683,8 @@
"typeForResults": "Введите для мгновенных результатов.",
"hintNavigate": "навигация",
"hintOpen": "открыть",
"hintClose": "закрыть"
"hintClose": "закрыть",
"selectResultToPreview": "Select a result to explore its content."
},
"quotaPaywall": {
"title": "Достигнут месячный лимит",

View File

@@ -3318,10 +3318,8 @@
"title": "账户",
"link0": "登录",
"link1": "注册",
"link2": "支持",
"link0Href": "/login",
"link1Href": "/register",
"link2Href": "/support"
"link1Href": "/register"
},
"legal": {
"title": "法律",
@@ -3685,7 +3683,8 @@
"typeForResults": "输入获取即时结果。",
"hintNavigate": "导航",
"hintOpen": "打开",
"hintClose": "关闭"
"hintClose": "关闭",
"selectResultToPreview": "Select a result to explore its content."
},
"quotaPaywall": {
"title": "已达到月度限制",