Files
LogiFlow/PRODUCTION-FIX-GUIDE.md
T
michaelschal 7235be8b84 Improve user data retrieval and add production debugging tools
Update the API to fetch users with simplified logic and introduce detailed SQL scripts and logging for production issue diagnosis.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: a8a78c07-e900-425c-a577-5b4c5894379d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/a8a78c07-e900-425c-a577-5b4c5894379d/jzCmXCx
2025-08-11 20:00:10 +00:00

72 lines
2.7 KiB
Markdown

# Guide de Correction Production - LogiFlow
## Problèmes Résolus ✅
### 1. Changement de Mot de Passe Administrateur
**Problème** : ERR_MODULE_NOT_FOUND pour localAuth.production.js
**Solution** : Implémentation d'une fonction `hashPasswordSimple` intégrée dans routes.ts qui fonctionne dans tous les environnements.
### 2. Attribution des Groupes aux Utilisateurs
**Problème** : Colonne "created_at" manquante dans la table user_groups en production
**Solution** : Gestion d'erreur dans `assignUserToGroup` avec fallback automatique.
## Solutions Disponibles
### Solution A : Correction Automatique (Recommandée) ✅
Le code a été modifié pour détecter automatiquement si la colonne `created_at` existe :
- Essaie d'insérer avec le schéma complet
- En cas d'erreur, insère sans la colonne `created_at`
- Aucune intervention manuelle requise
### Solution B : Mise à Jour de Base de Données (Optionnelle)
Si vous souhaitez synchroniser complètement votre base de données production avec le schéma :
```sql
-- Exécuter sur votre serveur de production
ALTER TABLE user_groups
ADD COLUMN IF NOT EXISTS created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP;
```
## Test des Corrections
1. **Changement de Mot de Passe** : Testez via l'interface utilisateur
2. **Attribution de Groupes** : Testez l'assignment d'utilisateurs aux groupes
## Débogage Production
### Problème "Aucun utilisateur trouvé"
Si l'interface affiche "Aucun utilisateur trouvé" :
1. **Vérification Base de Données** : Utilisez `production-users-debug.sql`
```bash
psql $DATABASE_URL -f production-users-debug.sql
```
2. **Vérification API** : Testez l'endpoint directement
```bash
curl -H "Cookie: [votre-cookie-session]" https://votre-domaine.com/api/users
```
### Script de Diagnostic SQL
- `debug-usergroups-production.sql` : Problèmes d'association utilisateur-groupe
- `production-users-debug.sql` : Problème de récupération des utilisateurs
### Logs de Débogage Disponibles
- `🔍 GET /api/users - Fetching users with simplified approach`
- `📊 Found X base users`
- `❌ Error getting groups for user [username]:`
- `🔐 API /api/users - Returning: {length: X, totalGroups: Y}`
## Déploiement
1. Redéployez votre application avec les dernières modifications
2. Testez les fonctionnalités utilisateur en production
3. Les logs montreront si le mode fallback est utilisé pour les groupes
## Logs de Débogage
En production, vous verrez :
- `⚠️ Production mode: user_groups table missing created_at column, inserting without it` si la colonne n'existe pas
- Aucun message si la table a été mise à jour avec la colonne manquante
Ces corrections garantissent la compatibilité dans tous les environnements sans casser la fonctionnalité.