feat(app): implement MAINTENANCE_MODE + configure Claude Code security hooks

- Add VITE_MAINTENANCE_MODE guard in main.tsx (no providers mount when true)
- Create static MaintenancePage.tsx (Direction H tokens, zero dependencies)
- Register VITE_MAINTENANCE_MODE in env.ts (optional, defaults to false)
- Add PreToolUse security hook (9 patterns from SECURITY.md §2)
- Add Stop hook for file size check (>200 lines warning)
- Register Semgrep MCP server
- Update ARCHITECTURE.md §7 (new env var)
- Resolve FTD-16 in TECH_DEBT.md
This commit is contained in:
Hermann_Kitio 2026-04-19 02:31:32 +03:00
parent bf778a5a4d
commit ca4291d7eb
6 changed files with 52 additions and 1 deletions

View file

@ -35,3 +35,23 @@ Chaque entrée suit ce format :
- Documentation initiale du projet (ARCHITECTURE, ONBOARDING, SECURITY, etc.)
- 5 ADRs pour les décisions architecturales majeures
- Code source de `src/entities/user/access.ts` et `lib.ts` avec tests
## 2026-04-19 — Sprint 1 / Étape 6 — Maintenance mode + outillage sécurité
### Ajouté
- Page de maintenance statique (`src/app/MaintenancePage.tsx`) — logo + message, tokens Direction H, zéro dépendance
- Guard `VITE_MAINTENANCE_MODE` dans `main.tsx` — si `true`, aucun provider ne se monte, aucun appel réseau
- Variable `VITE_MAINTENANCE_MODE` dans `env.ts` (optionnelle, défaut `false`)
- Hook PreToolUse Claude Code (`security-check.sh`) — 9 patterns SECURITY.md §2
- Hook Stop Claude Code (`check-file-size.sh`) — alerte fichiers > 200 lignes
- MCP server Semgrep enregistré dans Claude Code
### Documentation
- `ARCHITECTURE.md` §7 — ajout `VITE_MAINTENANCE_MODE` dans la liste des variables
- `TECH_DEBT.md` — FTD-16 résolu (maintenance mode implémenté)
### Tests
- Typecheck : 0 erreur
- Vitest : 37/37 passés
- Test manuel : maintenance mode vérifié (page affichée, aucun appel réseau, routing bloqué)