Files
circuit-management-releases/CHANGELOG.md
T

9.6 KiB
Raw Blame History

1.31.1 (29/09/2026)

Améliorations

  • Harmonisation de l’interface
    • Uniformisation de toutes les pages actives avec la charte visuelle des écrans Circuit et Distance entre capteurs
    • Ajout d’en-têtes, de résumés, d’états vides et de mises en page responsives cohérentes
    • Modernisation des formulaires, tableaux, cartes, badges et actions principales
  • Configuration électronique
    • Refonte des écrans Arduino, capteurs infrarouges, calibration IR, aiguillages, calibration moteur et LED
    • Clarification de la sélection des broches et des états du matériel
    • Correction du débordement de la commande de rotation horaire
  • Courses et participants
    • Harmonisation des écrans Voitures, Pilotes, Scénarios, lancement de course et commande manuelle
    • Présentation plus compacte des moteurs et commandes contextuelles plus lisibles
  • Supervision et aide
    • Refonte du Dashboard, du Mode d’emploi et de la fenêtre Version
    • Amélioration de la lisibilité des indicateurs, graphiques, informations système et notes de version

1.31.0 (29/09/2026)

Nouveautés

  • Configuration visuelle des circuits
    • Ajout d’un éditeur de disposition pour positionner les circuits sur une grille
    • Déplacement des capteurs IR et des aiguillages par glisser-déposer entre les circuits et les pistes
    • Ordonnancement des capteurs avant et après les aiguillages
    • Configuration des connexions d’entrée et de sortie entre circuits
    • Prise en charge des circuits en boucle et affichage de la topologie configurée
  • Scénarios de duel
    • Ajout d’un mode « premier arrivé » entre deux pistes
    • Ouverture immédiate de l’aiguillage du premier pilote puis ouverture différée de l’autre aiguillage
    • Réarmement automatique du duel pour les scénarios exécutés en boucle infinie
    • Ajout d’un assistant de création de duel avec sélection des capteurs et aiguillages par piste
    • Affichage des groupes de duel et du capteur adverse attendu dans la configuration des scénarios
    • Suppression groupée des deux déclencheurs appartenant au même duel
  • Éditeur en langage humain
    • Reconnaissance des règles symétriques introduites par « mais si »
    • Tolérance des articles, de la casse et de formulations légèrement incorrectes
    • Mise en évidence des mots-clés, pistes, capteurs et aiguillages pendant la saisie
  • Conditions de scénario
    • Ajout de conditions basées sur le nombre de passages d’un autre capteur
    • Configuration manuelle des opérateurs « au moins » et « moins de »

Backend

  • Modèles de données
    • Ajout des positions de capteurs et de leur zone relative à l’aiguillage
    • Ajout des connexions, du mode boucle et de la topologie des circuits
    • Ajout des conditions et métadonnées de coordination aux déclencheurs de scénario
  • Moteur de scénario
    • Comptage des passages IR par capteur
    • Coordination atomique des déclencheurs d’un duel et validation de leur réciprocité
    • Nettoyage des états de duel au lancement et à l’arrêt d’un scénario
  • Tests
    • Ajout de tests sur les conditions de passage et le cycle « premier arrivé puis autre pilote »

1.29.3 (25/09/2026)

Nouveautés

  • Scénarios en cours
    • Affichage de la vitesse moyenne estimée de chaque pilote entre deux capteurs infrarouges
    • Calcul à partir de la distance configurée et du temps mesuré entre les passages
    • Affichage du tronçon, de la distance et de la durée utilisés pour l’estimation

1.29.2 (24/09/2026)

Corrections

  • Scénarios
    • Libération des abonnements aux scénarios, pilotes et voitures à la fermeture de l'écran de lancement
    • Centralisation du verrou d'exécution des scénarios dans le service backend
    • Libération des ressources et du verrou lorsqu'un lancement de scénario échoue
    • Refus d'arrêter une course lorsqu'un autre identifiant de scénario est demandé
    • Validation et confirmation par le backend du signal de départ Socket.IO
    • Démarrage du signal « Go » et du chronomètre uniquement après confirmation du serveur
    • Annulation du départ lorsque la connexion temps réel est indisponible
    • Affichage dans la fenêtre de lancement des erreurs de connexion Arduino retournées par le backend
  • Connexion temps réel
    • Centralisation de l'adresse Socket.IO dans la configuration d'environnement
    • Réutilisation de la connexion Socket.IO partagée pendant la calibration infrarouge
    • Compatibilité de la calibration avec une installation distante ou derrière un proxy
    • Restriction des connexions Socket.IO aux origines autorisées par le serveur
  • Stabilité du serveur
    • Arrêt contrôlé du backend après une erreur fatale
    • Fermeture des connexions HTTP, Socket.IO, MongoDB et des cartes Arduino avant l'arrêt
    • Conservation du serveur en fonctionnement lorsqu'une carte Arduino signale un timeout après sa fermeture
    • Conservation du serveur en fonctionnement lorsque MongoDB est temporairement indisponible
    • Journalisation et diagnostic de santé des erreurs de connexion MongoDB sans exposition des informations sensibles
    • Fermeture propre des ressources lors de l'arrêt du lanceur ou du système
    • Conservation du serveur en fonctionnement lorsqu'un port série Arduino est absent
    • Interception précoce des erreurs firmata-io pendant l'ouverture d'un port série
    • Annulation propre du lancement d'un scénario lorsque son matériel requis est indisponible
  • Sauvegardes MongoDB
    • Masquage des identifiants et mots de passe MongoDB dans les journaux de sauvegarde
  • Validation des données
    • Application des validateurs Mongoose lors des mises à jour des configurations
  • API
    • Uniformisation des erreurs HTTP au format JSON
    • Gestion explicite des identifiants invalides, erreurs de validation et doublons
    • Masquage des détails internes lors des erreurs serveur
  • Tests
    • Rétablissement de la suite de tests Angular avec la configuration applicative réelle
    • Isolation des tests des connexions HTTP et Socket.IO externes
  • Formulaires
    • Suppression du double binding déprécié dans la sélection des circuits d'un scénario de course
    • Nettoyage du composant de configuration des scénarios de course
    • Nettoyage du composant de configuration des LED

1.29.1 (24/09/2026)

Corrections

  • Restauration MongoDB
    • Correction de l'extraction des sauvegardes ZIP lorsque leur chemin contient des espaces
  • Gestion des LED
    • Vérification de la connexion de l'Arduino avant d'allumer ou d'éteindre une LED
    • Désactivation des commandes lorsque l'Arduino associé est déconnecté
    • Conservation de l'état courant de la LED en cas d'échec de la commande matérielle

1.29.0 (23/09/2026)

Nouveautés

  • Packages
    • Mise à jours des packages npm

1.28.2 (22/09/2026)

Nouveautés

  • Gestion arduino
    • Gestion des arduinos via un gestionaire unique et centralisé

1.28.0 (21/09/2026)

Nouveautés

  • Calibration infrarouge
    • Ajout d'un overlay pendant la connexion à l'arduino et l'attente des valeurs
  • IR distances
    • Ajout du diagramme des distances entre infrarouge

1.27.11 (20/09/2026)

Nouveautés

  • Scenario
    • Ajout de récapitulatif compréhensibles de la course
    • Ajout de synthèse vocale

1.27.10 (18/09/2026)

Mise à jour

  • Scenario
    • Changement du sens de rodation des moteurs

1.27.5 - 1.27.9 (17/09/2026)

Nouveautés

  • Scenario
    • Mise à jour du lancement des scénarios

1.27.4 (16/09/2026)

Nouveautés

  • Installation et Mise à jour
    • Changement de façon d'installation et mise à jour du logiciel

1.27.1 (13/09/2026)

Nouveautés

  • Travail sur les scénarii

1.27.0 (11/09/2026)

Nouveautés

  • Correction de la connexion Arduino
  • Correction du temps d'attente de l'ouverture manuelle des moteurs
  • Correction de la visualisation des led infrarouges

1.26.0 (09/09/2026)

Nouveautés

  • Correction de la connexion Arduino
  • Correction de l'initialisation du menu
  • Correction de l'intialisation du dashboard
  • Correction de labels flotants de champs

1.25.0 (17/09/2025)

Nouveautés

  • Statuts Arduino
    • Affichage global (pastille de couleur en fonction de la moyenne des connexions).
    • Détail des statuts individuels de chaque Arduino dans le menu principal.

0.0.1 → 1.24.0

Gestion des composants

  • Arduino
    • Ajout, modification et suppression.
    • Vérification de la cohérence des pins (détection des conflits d’occupation).
  • LEDs
    • Création et gestion des LEDs connectées.
  • Capteurs infrarouge
    • Ajout, suppression et édition.
    • Calibration et seuils de détection configurables.
  • Moteurs (aiguillages)
    • Ajout, suppression et édition.
    • Calibration complète.
    • Commande manuelle : ouverture/fermeture directe.
  • Voitures et pilotes
    • Ajout, suppression et édition.
  • Circuits
    • Définition des circuits (nom, numéro, type primaire/secondaire).
  • Scénarios de course
    • Création, modification et suppression.
    • Définition des actions avec déclencheurs basés sur capteurs infrarouge, compteurs de passages et moteurs associés.

Fonctionnalités avancées

  • Mode d’emploi intégré
    • Accès à un guide interactif dans l’application.
  • Visualisation de la version
    • Affichage clair de la version courante de l’application.
  • Sauvegarde de la base de données
    • Export et restauration de l’état complet.
  • Dashboard statistiques
    • Vue globale de l’activité, performances et état des capteurs/moteurs.