Changelog
Latest updates and improvements to T-IA Connect.
v2.3.62
LatestAugust 4, 2026Improvements
- fix(release): pin deployed website authority
- fix(release): align runtime cross-repo baseline
- fix(security): dispose emergency BugTrace responses
- fix(licensing): surface TLS inspection on managed login errors
- fix(heartbeat): tolerate expected capability loss
- fix(runtime): propagate authoritative security epoch
- test(runtime): characterize fresh finalize recovery
- chore(websetup): refresh runtime contract baseline
- test(release): validate disabled orchestrator CLI on Windows PowerShell
- fix(release): harden publication orchestrator recovery
- feat(release): add deterministic publication orchestrator
- fix(validation): serialize canonical solution build
- fix(release): enforce global obfuscation compatibility
- fix(mcp): preserve approval contracts during obfuscation
- fix(release): decouple WebSetup lifecycle
- fix(runtime): resume persisted bootstrap without refinalize
- docs(websetup): require global readiness matrix
- test(runtime): pin aligned living baseline
- chore(runtime): align living contract baseline
- fix(websetup): recover orphaned runtime identity
- feat(validation): enforce complex code documentation
- test(websetup): isolate quarantine archive history
- chore(release): realign runtime contract baseline
- feat(mcp): persist approvals and resume calls
- test(gsd): preserve missing AML coverage behind gate
- fix(catalog): prefer exact Siemens order number
- chore(validation): align final release baseline
- fix(updater): require explicit dashboard consent
- fix(updater): reconcile WebSetup-only public updates
- fix(security): reconcile legacy script credentials
- chore(validation): advance production contract baseline
- chore(validation): advance final living baseline
- fix(validation): enforce native release gates
- fix(security): bound canary delivery resources
- chore(validation): advance live contract baseline
- fix(validation): enforce live runtime contracts
- fix(websetup): bind archive promotion to file identity
- test(websetup): prepare Authenticode revocation matrix
- fix(websetup): report granular local diagnostics
- fix(websetup): recheck quarantined archive bytes
- fix(release): pin tag validation proof
- fix(websetup): close security and telemetry gates
- feat(quality): audit C# god classes with Roslyn
- feat(telemetry): correlate WebSetup activation lifecycle
- fix(scripts): make complexity audit reproducible
- fix(tooling): handle native pin generation explicitly
- fix(websetup): recover terminal pending enrollment
- fix(websetup): automate canonical versioning
- fix(licensing): recover after validated reactivation
- fix(logging): unify user log directory
- fix(release): isolate canonical entrypoint tests
- fix(websetup): bind publication to reviewed source
- fix(websetup): bind artifacts to source provenance
- docs(scripts): inventory executable tooling
- fix(validation): pin Git snapshot
- fix(validation): move full checks to pre-push
- fix(readiness): validate ApprovedBinaries authority
- fix(websetup): preserve runtime identity across legacy upgrade
- fix(release): add deterministic R0 workflow
- fix(runtime): preserve critical incident decision
- feat(websetup): consume cross-version Runtime transition
- test(websetup): add deterministic readiness gate
- fix(websetup): select authoritative upgrade target
- fix(recovery): harden rollback diagnostics and publication
- fix(release): preserve runtime bootstrap boundary
- test(runtime): isolate bootstrap pin fixture
- fix(runtime): support safe bootstrap leaf pin rotation
- fix(runtime): close bootstrap transport and persistence gaps
- fix(runtime): harden license bootstrap completion
- feat(runtime): bootstrap license before local gate
- fix(websetup): recover terminal enrollment safely
- fix(runtime): fail closed on finalize rejection
- fix(activation): return actionable failure messages
- fix(activation): diagnose network failures automatically
- Revert "fix(ci): bind automatic validation to release commit"
- fix(ci): bind automatic validation to release commit
- fix(ci): handle runner latency and MCP approvals
- fix(ci): use server-issued MCP sessions in tests
- fix(ci): parse runtime envelope length on powershell 5
- fix(ci): select latest prerelease on powershell 5
- fix(ci): add bounded runner runtime reset
- fix(ci): support runtime diagnostics on net48
- fix(ci): persist repaired runner licence atomically
- fix(runtime): preserve terminal enrollment refusal
- fix(ci): enforce dedicated runner licence identity
- fix(mcp): highlight requested approval action
- fix(mcp): refresh tools after project changes
- feat(mcp): alert on approval requests
- fix(mcp): restore approval center after reconnect
- fix(release): preserve copilot obfuscation contract
- fix(copilot): hide actions until provider is ready
- feat(mcp): add approval registry and modal coordination
- fix(mcp): coalesce covered approval prompts
- docs(mcp): document approval policy matrix
- fix(mcp): make approvals non-blocking and localized
- fix(mcp): harden approval UX and dependency resolution
- feat(ops): automate private validation identity reset
- fix(updater): keep optional notification additive
- fix(recovery): reconcile runtime rollback before preflight
- fix(mcp): isolate SignalR infrastructure resolution
- feat(mcp): add license-bound approval leases
- fix(runtime): reconcile signed recovery rollbacks
- docs(updater): require recovery source provisioning
- fix(recovery): advance immutable runtime generation
- fix(updater): show persistent optional update action
- fix(updater): require explicit update consent
- fix(classroom): observe cleanup failures
- fix(websetup): harden failure diagnostics
- feat(runtime): add safe enrollment retry
- fix(recovery): define receipt time boundaries
- fix(security): harden private secret storage
- fix(runtime): preserve milestone evidence diagnostics
- fix(projects): complete polling ready transition
- feat(runtime): upgrade active enrollments across releases
- feat(security): enforce native runtime capability gates
- feat(security): bridge legacy runtime enrollment
- fix(security): redact runtime support errors
- fix(runtime): pin enrollment lease authority constructor
- fix(websetup): explain expired approval flow
- fix(websetup): retry browser selection in same flow
- fix(websetup): record known protocol refusals safely
- fix(websetup): accept created device response
- chore(git): ignore generated native and test outputs
- feat(websetup): present actionable failure messages
- feat(websetup): show branded network error
- fix(websetup): avoid privileged token query
- fix(websetup): add bounded failure diagnostics
- fix(websetup): verify secure service reachability
- fix(websetup): report network prerequisites clearly
- fix(runtime): preserve validated TIA version selection
- fix(security): migrate legacy runtime identity
- fix(security): preserve milestone obfuscation boundary
- fix(release): serialize solution build
- fix(release): pin license capability Unity constructor
- fix(release): preserve private store through obfuscation
- fix(ci): stop integration suite after first failure
- fix(ci): load DPAPI assembly on PowerShell 5.1
- fix(ci): serialize build before integration tests
- fix(security): protect local credential stores
- fix(security): authenticate classroom protocol v2
- fix(recovery): retain previous public release
- fix(security): remove tracked script credentials
- feat(security): enforce granular MCP capabilities
- fix(security): remove agentic secret reveal
- fix(security): secure local pairing and settings API
- feat(security): emit authenticated runtime milestones
- feat(security): consume critical recovery receipts
- test(security): support release audit context
- fix(licensing): enforce remote access gates end to end
- fix(licensing): enforce hasAi across Copilot
- feat(security): authenticate critical canary delivery
- fix(licensing): enforce hasApi on REST writes
- fix(licensing): enforce classroom gates end to end
- fix(licensing): enforce pattern gates end to end
- fix(licensing): enforce VCS gates and harden Git
- fix(licensing): enforce plcsim gates end to end
- fix(licensing): enforce test harness gates end to end
- feat(licensing): track selected license identity
- fix(licensing): enforce pipeline gates end to end
- feat(security): wire desktop runtime enrollment
- fix(licensing): enforce remote artifact gates
- fix(licensing): enforce CODESYS gates end to end
- fix(licensing): enforce report gates end to end
- fix(licensing): enforce CustomDocs gates end to end
- fix(customdocs): restrict indexing to approved roots
- fix(licensing): preserve primary login error
- fix(mcp): bind sessions and bound request processing
- feat(security): prepare runtime enrollment proof flow
- fix(security): bind runtime capability to authoritative preflight
- fix(release): harden approved binaries preflights
- test(openness): add Windows service session probe
- feat(security): enforce license-first runtime capability
- feat(security): harden critical canary acknowledgements
- fix(security): gate release on approved binaries
- fix(release): preserve lockdown obfuscation contract
- feat(security): add persistent compromise lockdown
- fix(recovery): use canonical licence and clear cache
- fix(release): require durable native hash marker
- feat(recovery): restore marked version on demand
- docs(recovery): clarify source provisioning order
- fix(recovery): deploy immutable v8 agent
- chore(git): ignore local audit files
- fix(blocks): unify create program block contract
- fix(plc): preserve block number on replacement
- fix(native): remove obsolete app dll copy
- fix(recovery): expire obsolete transactions
- fix(recovery): improve restoration result UI
- fix(recovery): keep inactive agent safe
- fix(release): resolve Obfuscar outside process path
- test(licensing): add offline s2s runtime harness
- feat(recovery): add guided rollback experience
- feat(recovery): make manual rollback primary
- test(recovery): add private unhealthy RC harness
- fix(activation): diagnose network and group propagation
- fix(recovery): promote artifacts outside web runtime
- feat(recovery): provision private release archive
- test(recovery): parameterize production e2e versions
- fix(recovery): harden rollback transaction
- fix(tests): preserve offline license trust boundary
- fix(security): enforce offline license invariants
- fix(recovery): provision production trust anchor
- feat(updater): add secure recovery agent
- fix(network): repair unusable remote URL ACLs
- feat(updater): add recovery transaction foundations
- fix(hmi): resolve panel article on matching device item
- fix(hmi): guard fixed panel screen dimensions
- docs(licensing): document client internals
- fix(tags): resolve nested PLC tag tables
- chore(release): record 2.2.798 publication
vv1.0.15
DeprecatedFebruary 9, 2026Changelog (v1.0.14 -> v1.0.15)
Période : 05/02/2026 - 08/02/2026 (15h06)
🚀 Fonctionnalités Majeures (Features)
📊 Système de Télémétrie (Complet)
* Métadonnées Enrichies : Implémentation de la collecte automatique des versions de TIA
Portal installées, des types de processeurs détectés et des statistiques d'usage des
différents modules de l'API.
* Intégration WebUI : Ajout d'un indicateur d'état de la télémétrie dans l'interface web
et respect strict du consentement utilisateur (Opt-in/Opt-out).
🔐 Sécurité & Intégrité des Données
* Signature HMAC-SHA256 : Sécurisation de tous les rapports de télémétrie via une
signature cryptographique HMAC-SHA256, garantissant que les données transmises au
serveur n'ont pas été altérées durant le transit.
* Validation de Payload : Renforcement des contrôles côté serveur pour rejeter toute
requête de télémétrie dont la signature ou le secret partagé ne correspond pas à
l'identifiant machine.
🐛 Corrections (Fixes)
* Robustesse MSI : Amélioration du script de génération de l'installateur pour garantir
le redémarrage correct des services Windows après une mise à jour mineure.
* Nettoyage Automatique : Suppression systématique des fichiers temporaires et des
journaux de débogage obsolètes lors de la phase de compilation Release.
---
Version actuelle : 1.0.15 🏁
vV1.0.14
DeprecatedFebruary 5, 2026Changelog (v1.0.12 -> v1.0.14)
Période : 04/02/2026 - 05/02/2026
🚀 Fonctionnalités Majeures (Features)
🔐 Sécurité & Licensing (Refonte)
* Preuve de Désactivation : Implémentation d'un système de "Code de Preuve" (HMAC-SHA256)
généré lors de la désactivation locale pour permettre la libération sécurisée des
licences sur le portail.
* Installation Secret : Génération d'un secret d'installation unique, chiffré via DPAPI,
désormais transmis au serveur lors de l'activation pour authentifier les futures
preuves de désactivation.
* Mutation d'Identité : Renforcement de la procédure de désactivation par la mutation
forcée de l'ID matériel (Scorched Earth policy) pour invalider toute sauvegarde locale
de licence.
🏗️ Gestion de Projet (Robustesse)
* Validation Proactive : Ajout d'une vérification systématique de la vacuité du dossier
avant la création d'un projet TIA (évite les exceptions critiques d'Openness).
* Support V21 (Bridé) : Intégration technique du support pour TIA Portal V21, mais
restriction logicielle activée pour cette version (message d'information "En cours de
développement") afin de garantir la stabilité publique.
🤖 Assistant IA (WebCopilot)
* Fiabilité des Outils : Correction de la sérialisation JSON des objets Proxy Openness
dans le ProjectToolHandler, permettant à l'assistant de manipuler les projets ouverts
sans erreur de référence.
🏭 Génération de Blocs (SimaticML)
* Instruction CALL : Support complet de l'instruction CALL pour les FB/FC dans les
générateurs LAD et FBD.
* Mapping Dynamique : Correction du mapping des paramètres formels/réels lors des appels
de blocs avec une gestion rigoureuse des types.
🛠️ Système & MSI
* Rapport de Build : Mise à jour du script Build-Msi.ps1 pour afficher un résumé détaillé
en fin de build (Date, Heure, Version, Durée totale).
* Audit I18N : Intégration de nouvelles ressources de localisation (FR/EN) pour les
erreurs de création de projet et les restrictions de version.
🐛 Corrections (Fixes)
* Threading (STA) : Correction de plusieurs accès concurrents critiques lors de
l'ouverture de projets via l'Assistant (utilisation forcée du StaDispatcher).
* Stabilité PortalManager : Sécurisation de l'événement ProjectChanged pour empêcher un
crash de l'API si un abonné (UI/Tray) lève une exception.
* Nettoyage Code : Suppression des using redondants et correction des avertissements de
compilation restants dans les contrôleurs Mcp.
♻️ Refactoring
* Communication Serveur : Mise à jour du DTO d'activation pour inclure les métadonnées de
sécurité nécessaires à la validation côté serveur.
---
Version actuelle : 1.0.14 🏁
vV1.0.12
DeprecatedFebruary 3, 2026Changelog (v1.0.11 -> v1.0.12)
Période : 02/02/2026 - 03/02/2026
🚀 Fonctionnalités Majeures (Features)
🤖 Assistant IA (WebCopilot)
- Contrôle des Tâches : Nouvelle capacité d'interrompre (Stop/Cancel) les tâches de
l'assistant en cours d'exécution (Frontend & Backend).
- Contexte Projet : Implémentation de la "Carte d'Identité du Projet" (mise en cache)
pour une compréhension contextuelle immédiate et précise.
- Optimisation Prompts : Externalisation du prompt système (JSON), intégration de la
décomposition des tâches (Task Decomposition) et renforcement du strict respect de
la langue (FR).
- Modèles LLM : Amélioration de la détection des endpoints Ollama et ajout du support
pour les modèles Gemini 3.0 et 2.5.
🏭 Génération de Blocs (Gen)
- Nouveaux Builders : Introduction de SclBuilder et FbdBuilder pour la génération
native de blocs SCL et FBD.
- Architecture Unifiée : Fusion des générateurs graphiques (LAD/FBD) au sein d'un
GraphicalBlockBuilder unique.
- Support Interface : Le service de génération supporte désormais la définition
complète des interfaces via la nouvelle architecture de builders.
🛠️ Système & Diagnostics
- Logs Centralisés : Centralisation de tous les logs applicatifs dans %LocalAppData%
et suppression de la troncature des fichiers pour un diagnostic complet.
- Build : Le script Build-All.ps1 utilise désormais la configuration Debug par
défaut.
- Debugging : Injection de logs détaillés dans les services de génération de blocs
pour faciliter le dépannage.
💻 Interface & Scripts
- UI Assistant : Ajustement du padding de l'interface de chat pour une meilleure
lisibilité.
- Documentation : Ajout de notes de recherche techniques pour GRAPH/SFC/STL et
documentation de l'architecture des Block Builders.
🐛 Corrections (Fixes)
- Gemini Bridge : Correction critique de la gestion des signatures de pensée
(thoughtSignature) et des messages vides dans les conversations multi-tours.
- Génération LAD : Stabilisation de la génération de code Ladder et renforcement de
la gestion d'erreurs.
- Qualité Code : Correction des avertissements de compilation liés aux variables
d'exception inutilisées (Program.cs).
♻️ Refactoring
- Architecture : Migration complète de BlockGenerationService vers l'utilisation
exclusive des nouveaux builders (Scl/Graphical).
- Clean Code : Application de règles strictes pour forcer des commentaires courts et
concis dans le code généré par l'IA.
---
Version actuelle : 1.0.12
vV1.0.11
DeprecatedFebruary 3, 2026Changelog (v1.0.0 -> v1.0.11)
Période : 18/01/2026 - 02/02/2026
🚀 Fonctionnalités Majeures (Features)
🔑 Licensing & Sécurité
- Notifications Système : Intégration des notifications Windows natives pour les
alertes de licence (expiration, erreur, absence) avec support multilingue (FR/EN).
- Activation Interactive : Amélioration UX de la console d'activation (support
copier/coller, instructions étape par étape).
- Éditions : Support de l'édition "School" (équivalent Ultimate) et alias d'éditions
("STANDARD" -> "STD").
- Clés API : Migration vers le préfixe tia_live_ et décryptage sécurisé pour
l'affichage UI.
- Sécurité Renforcée :
- Détection et blocage des tokens Windows périmés.
- Avertissement redémarrage après changement de groupe TIA.
- Détection globale des erreurs de licence Siemens (ALM).
- Gestion Licence :
- Affichage des jours restants pour la période d'essai.
- Stockage de la licence dans %AppData%\Roaming\T-IA-Connect\.
- Suppression de l'activation "Trial" directe (requiert désormais une clé).
🛠️ Système & Diagnostics
- Mises à Jour : Système centralisé de vérification des mises à jour avec empreinte
matérielle et redirection vers le dashboard.
- Diagnostics Démarrage : Service complet de diagnostic au démarrage (prérequis,
groupes, services Windows) avec exécution prioritaire avant le check de licence.
- Versioning : Centralisation de la version dans version.txt (Source unique de vérité).
- Logs : Centralisation des logs d'audit et ajout d'un menu "Ouvrir les logs" dans le
tray icon.
💻 Interface & Scripts
- Console : Réduction du bruit dans les logs et respect des niveaux de verbosité.
- Tray Icon : Liens directs vers la documentation Siemens et le Dashboard.
- Scripts :
- Validate-AllBranches.ps1 pour le testing multi-branches automatisé.
- Amélioration de Sync-Branches.ps1 avec logs détaillés.
- Support de la configuration Debug/Release dans les scripts de build.
🐛 Corrections (Fixes)
- Settings : Correction de l'affichage de la clé API (décryptage).
- Assistant : Notification SignalR correcte lors de la désactivation.
- Licensing : Suppression du blocage strict des VM (trop de faux positifs) et
correction de la conversion GUID/String.
- Startup : Correction des doubles démarrages et unification de la logique de
redémarrage.
- Infrastructure : Résolution des conflits de conteneur Unity entre Console et WebAPI.
- WebUI : Correction du bouton "Nouveau projet" (traduction) et nettoyage des scripts
de validation.
♻️ Refactoring
- Licensing : Suppression du fallback "Factory License" obsolète.
- Architecture : Modularisation de Program.cs (ConsoleManager, Bootstrap,
ConnectionCoordinator).
- Ressources : Découpage du fichier monolithique SharedResources.resx en fichiers
thématiques.
- Tests : Modernisation des scripts de test (Pester) et amélioration de la robustesse
des tests d'intégration.
---
Version actuelle : 1.0.11
vV1.0.0
DeprecatedJanuary 18, 2026First beta stable