Commit Graph
3 Commits
Author SHA1 Message Date
Claude f8cef758ad Fix: Amélioration des logs et gestion d'erreurs pour l'assistant IA OpenRouter
Problème :
- Erreur 502 (Bad Gateway) sur /api/openrouter/chat
- Message d'erreur générique "Provider returned error" peu informatif
- Difficile de diagnostiquer la cause réelle du problème

Solution backend (routes/openrouter.routes.js) :
1. Ajout de logs détaillés à chaque étape :
   - Début de requête avec modèle et nombre de messages
   - Validation de la clé API
   - Requête envoyée à OpenRouter
   - Réponse reçue avec status HTTP
   - Contenu de la réponse ou erreur détaillée

2. Amélioration de la gestion des erreurs :
   - Extraction du message d'erreur d'OpenRouter
   - Logs structurés avec contexte complet
   - Messages d'erreur plus descriptifs

Solution frontend (src/services/OpenRouterService.ts) :
1. Ajout de logs console à chaque étape
2. Messages d'erreur contextuels selon le code HTTP :
   - 400 : Requête invalide (message d'erreur API)
   - 401 : Clé API invalide
   - 402 : Crédits épuisés
   - 429 : Trop de requêtes
   - 502/503 : Service temporairement indisponible

3. Validation de la réponse :
   - Vérification que le contenu existe
   - Message d'erreur si réponse vide

Résultat :
- Logs détaillés backend + frontend pour diagnostic
- Messages d'erreur clairs et actionnables pour l'utilisateur
- Meilleure traçabilité des problèmes OpenRouter
2025-11-18 10:40:43 +00:00
Claude da548f7bc0 Feature: Chatbox IA avec OpenRouter et sélecteur de modèles
Ajout d'un chatbot interactif alimenté par OpenRouter API avec les fonctionnalités suivantes:
- Bouton flottant en bas à droite pour ouvrir le chat
- Sélecteur de modèles IA avec tous les modèles disponibles via l'API OpenRouter
- Interface de chat avec historique des messages (utilisateur/assistant)
- Indicateur de chargement avec animation
- Boutons pour effacer l'historique et fermer le chat
- Auto-scroll vers le dernier message
- Backend: route POST /api/openrouter/chat pour la communication avec l'API
- Service frontend: méthode sendMessage() dans OpenRouterService

Retrait du composant MadeWithDyad comme demandé.
2025-11-12 16:17:33 +00:00
Claude 4425695b4f Feature: Système de tags et liste automatique des modèles OpenRouter
Ajouts majeurs:
- Système de tags complet pour les notes
  * Table note_tags en base de données avec indexes
  * API REST pour CRUD des tags (GET/POST/DELETE)
  * UI avec onglet Tags dans l'éditeur de notes
  * Badges cliquables avec icônes et suppression au survol
  * Modal pour ajouter des tags

- Liste automatique des modèles OpenRouter
  * Nouvelle route API /api/openrouter/models
  * Cache des modèles avec rafraîchissement automatique (1h)
  * Dropdown dans l'admin avec tous les modèles disponibles
  * Bouton "Actualiser" pour forcer le refresh
  * Affichage du nom et description de chaque modèle
  * Fallback sur input manuel si pas de clé API

Améliorations UI:
- Ajout de dates de création et modification dans les notes
- Affichage des dates dans les cartes et l'éditeur
- Format français pour toutes les dates
- Onglets passés de 4 à 5 colonnes pour inclure Tags
- Animation de chargement sur le bouton refresh des modèles

Architecture:
- Nouveau service TagsService.ts pour la gestion des tags
- Nouveau service OpenRouterService.ts pour l'API OpenRouter
- Nouvelles routes openrouter.routes.js
- Support Select component pour les dropdowns
- Modals InputModal utilisés pour les tags
2025-11-12 09:47:47 +00:00