100 Commits

Author SHA1 Message Date
syoul
9d8ae3d32a refactor: projet stand-alone sans dépendance aoe_technology_radar
- Intégration du code source du framework dans radar-app/ (vendoring)
- Suppression de la dépendance npm aoe_technology_radar
- Création de scripts build-radar.js et serve-radar.js pour remplacer le CLI techradar
- Adaptation de tous les scripts et Docker pour utiliser radar-app/ au lieu de .techradar
- Refactorisation complète de Dockerfile.business
- Mise à jour de la documentation (architecture, déploiement, développement)
- Mise à jour de .gitignore pour ignorer les artefacts de build de radar-app/
- Ajout de postcss dans les dépendances Docker pour le build Next.js

Le projet est maintenant complètement indépendant du package externe.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-25 18:11:40 +01:00
syoul
3553f1d839 fix: Script team-block-script.js avec remplacement DOM
- Nouvelle approche: remplace le DOM apres chargement (defer-compatible)
- Charge Cytoscape, ECharts dynamiquement
- Initialise les 3 visualisations: graphe reseau, matrice congestion, equipe genese
- Ajout de patch_document.py pour inclure le script dans _document.tsx
2025-12-09 17:03:20 +01:00
syoul
484f0313b2 fix: renommer fichier sans extension pour éviter redirection reverse proxy
Le reverse proxy redirige tout *.html vers le chemin sans extension.
Solution: utiliser _team-content (sans .html)
2025-12-09 16:01:56 +01:00
syoul
c38ea72928 fix: renommer team.html en _team-content.html
Le reverse proxy redirige aussi les fetch vers /team.html.
Nouveau nom avec underscore pour éviter la règle de redirection.
2025-12-09 15:56:15 +01:00
syoul
be86854c7e fix: toujours régénérer les données équipe au build
- Ne plus vérifier si le fichier existe (les rings pourraient être obsolètes)
- Régénérer systématiquement avec les bons rings adopt/trial/assess/hold
- Mise à jour des données de visualisation avec les nouveaux rings
2025-12-09 15:22:19 +01:00
syoul
f149571673 fix: ne pas écraser config.default.json
- Garder le config.default.json original du package
- Ne copier que vers config.json (pas config.default.json)
- Évite erreur TypeScript 'Property icon does not exist on type never'

Le type de social est inféré depuis config.default.json
2025-12-09 15:12:46 +01:00
syoul
c008d38d10 fix: ajouter config.default.json pour build techradar
- Copie de config-business.json vers .techradar/data/config.default.json
- Évite l'erreur MODULE_NOT_FOUND sur config.default.json pendant build:data
2025-12-09 14:50:39 +01:00
syoul
9264854a54 build: supprimer heredoc des scripts team
- Déplace add_team_link.py et add_team_link.sh dans docker/
- Remplace les heredocs par des COPY dans Dockerfile.business
- Évite l'erreur de parsing 'unknown instruction: import'

Compatibilité Portainer sans syntaxe heredoc.
2025-12-09 14:41:57 +01:00
syoul
ae6f88a02e build: remplacer heredoc team.tsx par COPY
- Ajout docker/team-page.tsx avec le composant React complet
- Remplacement du heredoc dans Dockerfile.business par un COPY
- Évite les erreurs de parsing Docker (unknown instruction: import)

Assure la compatibilité Portainer sans syntaxe heredoc
2025-12-09 14:39:31 +01:00
syoul
a9f02bd47d build: activer syntaxe heredoc dockerfile 1.4
- Ajout directive # syntax=docker/dockerfile:1.4
- Permet l'usage des heredocs dans le Dockerfile

Doit supprimer l'erreur 'unknown instruction: import' lors du parsing
2025-12-09 14:27:00 +01:00
syoul
eec2e0c52f fix: corriger structure heredoc Dockerfile
- Ajouter commande RUN manquante pour script Python
- Fermer proprement heredoc team.tsx avec EOF
- Ouvrir heredoc Python avec PYEOF
- Structure Dockerfile maintenant cohérente

Corrige erreur 'unknown instruction: import'
2025-12-09 14:21:28 +01:00
syoul
aa04c62904 fix: nettoyage HTML erroné du Dockerfile
- Suppression contenu HTML résiduel après remplacement team.tsx
- HTML interprété comme instructions Docker causait erreur parsing
- Dockerfile maintenant propre et valide

Corrige erreur 'unknown instruction: <html'
2025-12-09 14:20:32 +01:00
syoul
6ecf94dc9f fix: vraie page React pour /team avec import dynamique
- Remplace HTML intégré par vraie page React
- Import dynamique de Cytoscape et ECharts (évite erreurs SSR)
- États React pour gestion des onglets et données
- Refs pour containers des graphiques
- Installation dépendances cytoscape et echarts-for-react
- Gestion erreurs et états de chargement

Résout problème scripts non exécutés dans contexte React
2025-12-09 14:18:08 +01:00
syoul
b7911fcdae cleanup: suppression références team-static.html inutiles
- Suppression copie team-static.html du Dockerfile (plus nécessaire)
- Suppression vérifications team-static.html des logs de build
- Suppression fichier public/team-static.html (intégration directe)

Nettoyage suite à l'intégration directe du HTML dans la page React
2025-12-09 14:10:46 +01:00
syoul
d8e9503cc7 fix: page équipe intègre directement HTML statique
- Page team.tsx charge directement le HTML des visualisations
- Plus de redirection, le contenu est rendu dans React
- Évite les conflits de routing Next.js
- Scripts Cytoscape/ECharts intégrés directement
- Contenu team-visualization-data.json chargé depuis la page React

Cette approche contourne complètement les problèmes de déploiement statique
2025-12-09 14:10:23 +01:00
syoul
166248078f fix: correction copie team-static.html et team-visualization-data.json
- Déplacement de la copie de team-static.html dans la section principale de copie
- Déplacement de la copie de team-visualization-data.json dans la section principale
- Suppression des copies dupliquées qui étaient mal placées
- Maintenant les fichiers seront copiés correctement lors du build

Ces fichiers étaient absents du déploiement, causant l'affichage du radar au lieu des visualisations équipe
2025-12-09 14:00:01 +01:00
syoul
f431a0b7cc fix: approche HTML statique pour éviter conflits React
- Nouvelle page team-static.html : page HTML pure sans React
- team.tsx redirige simplement vers /team-static.html
- Évite tous les conflits d'injection DOM dans React
- team-static.html copié dans out/ lors du build
- Contient tous les logs de débogage et visualisations équipe

Cette approche contourne complètement les problèmes React/DOM
2025-12-09 13:35:28 +01:00
syoul
4b111ef02d fix: page équipe charge directement contenu team.html
- Au lieu de rediriger, la page Next.js charge et injecte team.html
- Exécution des scripts JavaScript et injection du CSS
- Gestion d'erreur si team.html ne se charge pas
- Logs détaillés pour diagnostiquer le processus

Cette approche évite les problèmes de redirection et assure que :
- team.html se charge correctement
- Les scripts s'exécutent dans le contexte Next.js
- Les visualisations s'affichent
2025-12-09 13:13:31 +01:00
syoul
78021a5496 debug: logs détaillés chargement données équipe
- Logs console détaillés dans team.html pour diagnostiquer le chargement
- Message de fallback informatif si données non chargées
- Vérifications build pour team-visualization-data.json
- Diagnostic pour identifier pourquoi les visualisations n'apparaissent pas

Les logs console aideront à identifier si le problème vient :
- Du chargement des données JSON
- De l'initialisation des graphiques Cytoscape/ECharts
- De l'accès aux fichiers statiques
2025-12-09 13:04:51 +01:00
syoul
a4bc477520 fix: redirection directe vers team.html + bouton retour
- Page team.tsx fait redirection immédiate vers /team.html (évite conflits React)
- Ajout bouton retour dans header de team.html vers l'accueil
- Évite tous les conflits entre scripts JavaScript et React

Cette approche simple devrait :
- Afficher les visualisations équipe correctement
- Permettre la navigation retour avec le bouton ajouté
2025-12-09 13:01:27 +01:00
syoul
7097490439 fix: approche React propre pour page équipe + navigation corrigée
- Page team.tsx rend directement l'iframe dans React (pas de manipulation DOM)
- Script bloqueur plus sélectif : bloque seulement strategie-script.js
- Permet les scripts de navigation essentiels
- Évite les conflits avec les scripts JavaScript

Cette approche devrait :
- Afficher les visualisations équipe correctement
- Garder la navigation fonctionnelle (logo vers accueil)
2025-12-09 12:57:31 +01:00
syoul
53c9e1253d fix: simplification team.tsx pour éviter erreurs compilation
- Suppression de la manipulation DOM complexe (createElement, appendChild)
- Remplacement direct par innerHTML simple
- Ajout de try/catch pour sécurité
- Rendu côté serveur basique pour éviter erreurs SSR

Cette version devrait compiler sans erreur
2025-12-09 12:52:09 +01:00
syoul
aa0a7a4efd fix: correction erreur build team.tsx - vérifications SSR
- Ajout vérification typeof window !== 'undefined' dans useEffect
- Vérification côté serveur pour éviter erreurs SSR
- Page team.tsx devrait maintenant compiler correctement
2025-12-09 12:50:21 +01:00
syoul
1492e49b5e fix: vérifications build améliorées pour diagnostiquer
- Vérification team-block-script.js
- Vérification protection __blockTeamPages
- Vérification config-business.json jsFile

Ces logs aideront à confirmer que tous les changements sont appliqués
2025-12-09 12:47:27 +01:00
syoul
a5ace8b0fa fix: approche ultra-agressive contre les pages équipe
- Nouveau script team-block-script.js chargé en premier (config-business.json)
- Bloqueur absolu qui empêche tout autre script sur /team
- Page team.tsx encore plus agressive (remplacement useEffect)
- Double protection dans strategie-script.js
- Script principal bloqué si __blockTeamPages=true

Cette approche à couches multiples devrait définitivement résoudre :
- Les deux liens équipe (1 seul)
- L'affichage radar au lieu des visualisations
2025-12-09 12:47:17 +01:00
syoul
13a8730692 fix: ajout vérifications build pour diagnostiquer les changements
- Vérification contenu team.tsx dans logs build
- Vérification protection script JS dans logs build
- Diagnostic pour s'assurer que les changements sont appliqués

Cela aidera à déboguer pourquoi Portainer ne prend pas les changements
2025-12-09 12:41:49 +01:00
syoul
2ab2e1f261 fix: page team.tsx ultra-simplifiée + protection absolue script JS
- Page Next.js simplifiée au maximum pour éviter erreurs compilation
- Remplacement immédiat du body par l'iframe côté client
- Protection absolue dans strategie-script.js contre les pages équipe
- Script bloqué complètement sur toute URL contenant /team

Ces changements devraient définitivement résoudre :
- Les deux liens équipe (1 seul lien Next.js)
- L'affichage radar au lieu des visualisations équipe
2025-12-09 12:41:14 +01:00
syoul
0147a86fac fix: simplification page team.tsx pour éviter erreur build
- Suppression de styled-jsx (style jsx global)
- Utilisation de dangerouslySetInnerHTML pour les styles
- Suppression de getLayout qui n'est pas supporté
- Styles inline uniquement pour éviter les dépendances

Cela devrait corriger l'erreur de build npm run build
2025-12-09 12:26:43 +01:00
syoul
e9f16769a9 fix: page /team charge directement l'iframe sans redirection
- Suppression de la redirection vers /team.html
- Chargement direct de l'iframe dans la page Next.js
- Styles pour masquer le layout par défaut
- getLayout retourne la page directement sans layout

Cela évite que Next.js charge les données du radar avant l'affichage
2025-12-09 12:23:01 +01:00
syoul
a4f279480b fix: triple nettoyage des liens team dans le script Python
- Pattern 1: Blocs <li> complets avec <Link>
- Pattern 2: Lignes contenant href="/team"
- Pattern 3: Blocs <li> contenant /team sur plusieurs lignes

Cela devrait supprimer tous les formats possibles de liens team
2025-12-09 12:18:03 +01:00
syoul
3d12bbdc8d fix: amélioration diagnostic et vérification des liens team
- Affichage des occurrences exactes si plusieurs liens détectés
- Vérification améliorée avec tous les formats possibles
- Affichage du contenu complet si le nettoyage échoue
- Arrêt du build si des doublons persistent après nettoyage
2025-12-09 12:16:33 +01:00
syoul
bd49ae940d fix: correction syntaxe Python (ligne vide supprimée) 2025-12-09 12:16:02 +01:00
syoul
44b777b69d fix: vérification immédiate route /team et interception clics
- Vérification immédiate de la route /team au chargement du script (avant Next.js)
- Interception des clics sur les liens /team en phase de capture (avant Next.js)
- Nettoyage supplémentaire dans le script Python si des liens persistent
- Affichage immédiat de la page équipe sans attendre le header

Cela devrait résoudre :
- Les deux liens (nettoyage supplémentaire si nécessaire)
- L'affichage du radar (interception avant Next.js + vérification immédiate)
2025-12-09 12:15:24 +01:00
syoul
c4aada1caa fix: nettoyage agressif des liens team avec regex multiligne
- Utilisation d'une regex multiligne pour supprimer tous les blocs <li> contenant des liens /team
- Nettoyage manuel en fallback si la regex ne capture pas tout
- Suppression de tous les formats: /team, /team/, /team.html

Cela devrait éliminer définitivement les doublons de liens Équipe
2025-12-09 12:11:34 +01:00
syoul
a1a5849dd4 fix: correction popstate pour /team et amélioration regex détection liens
- Gestion du popstate pour la route /team
- Amélioration du script Python avec regex pour détecter tous les formats de liens team
- La fonction showTeamPage() est maintenant appelée correctement lors de la navigation
2025-12-09 12:10:59 +01:00
syoul
e357330cad fix: gestion route /team dans strategie-script.js et amélioration détection liens
- Ajout de showTeamPage() dans strategie-script.js pour gérer /team
- La route /team remplace maintenant le body par l'iframe team.html
- Amélioration du script Python avec regex pour détecter tous les formats de liens
- Gestion du popstate pour la route /team

Cela corrige :
- Les deux liens (détection améliorée avec regex)
- L'affichage du radar au lieu des visualisations (remplacement du body par l'iframe)
2025-12-09 12:10:31 +01:00
syoul
062b4e2162 fix: copie de /team/index.html dans out/ lors du build 2025-12-09 11:56:27 +01:00
syoul
4f8d495579 fix: amélioration détection liens /team/ et création HTML statique /team/index.html
- Détection améliorée pour inclure /team, /team/, /team.html
- Création d'un fichier HTML statique /team/index.html en plus de la page Next.js
- La page Next.js redirige maintenant vers /team.html directement
- Copie de /team/index.html dans out/ lors du build

Cela corrige :
- Les deux liens Équipe (détection de tous les formats)
- L'affichage du radar au lieu des visualisations (HTML statique garanti)
2025-12-09 11:56:11 +01:00
syoul
cdbacdd434 fix: ajout génération automatique des données équipe dans Dockerfile 2025-12-09 11:28:35 +01:00
syoul
c8263df37d fix: détection des liens /team.html et génération automatique des données équipe
- Script Python amélioré pour détecter aussi les liens vers /team.html
- Vérifications améliorées pour inclure /team et /team.html
- Génération automatique de team-visualization-data.json si absent
- Toutes les vérifications incluent maintenant /team.html

Cela corrige :
- Les deux liens Équipe (un vers /team, un vers /team.html)
- L'absence des visualisations (données générées automatiquement)
2025-12-09 11:28:18 +01:00
syoul
82fada4f32 fix: masquer le header sur la page /team pour éviter duplication
- La page /team masque maintenant le header/navigation existant
- Évite la duplication du header quand on clique sur le lien Équipe
- L'iframe team.html s'affiche en plein écran sans header dupliqué
- Le header est restauré quand on quitte la page /team
2025-12-09 11:22:21 +01:00
syoul
376e82570f fix: correction duplication navigation - détection et suppression des doublons structurels
- Script Python amélioré pour détecter et supprimer les doublons de composant Navigation
- Vérifications post-modification dans le script shell (fonctions, nav, ul, logo, export)
- Vérification post-build pour détecter les doublons dans le HTML généré
- Détection automatique des composants Navigation dupliqués
- Arrêt du build si duplication détectée

Le script détecte maintenant :
- Duplication du composant Navigation (plusieurs fonctions)
- Duplication structurelle (nav, ul, logo)
- Duplication dans le HTML généré (headers/nav)

Toutes les vérifications s'exécutent automatiquement lors du build Docker.
2025-12-09 11:17:04 +01:00
syoul
9a055add6f fix: améliorer le script Python pour supprimer TOUS les doublons avant d'ajouter
- le script supprime maintenant TOUS les liens Équipe existants (même s'il n'y en a qu'un)
- puis ajoute un seul lien Équipe au bon endroit
- vérifie qu'il n'y a qu'un seul lien après l'opération
- évite les doublons même si le script s'exécute plusieurs fois
2025-12-09 10:40:45 +01:00
syoul
9894a8b2fb refactor: simplifier la gestion du lien Équipe avec un script shell séparé
- création d'un script shell /tmp/add_team_link.sh pour simplifier la logique
- séparation des préoccupations : script shell pour orchestration, Python pour manipulation
- meilleure lisibilité et maintenabilité
- gestion d'erreurs simplifiée avec set -e
2025-12-09 10:13:17 +01:00
syoul
57c9d26cb3 fix: améliorer la gestion des erreurs et le débogage du script Python
- ajout de try/except pour capturer toutes les erreurs
- logs de débogage améliorés (répertoire actuel, contenu)
- meilleure gestion des fins de ligne
- affichage de la traceback en cas d'erreur
2025-12-09 10:06:17 +01:00
syoul
4b9073b8ee fix: corriger le script Python pour gérer les fins de ligne et les erreurs
- vérification de l'existence du fichier avant lecture
- utilisation de splitlines(keepends=True) pour préserver les fins de ligne
- gestion d'encodage UTF-8 explicite
- amélioration de la gestion des erreurs dans le Dockerfile
2025-12-09 10:03:55 +01:00
syoul
4ef4c77c3a fix: améliorer le script Python pour éviter les doublons du lien Équipe
- le script vérifie maintenant si le lien existe déjà
- si plusieurs occurrences sont détectées, elles sont supprimées
- évite la création de doublons lors de rebuilds multiples
2025-12-09 10:01:16 +01:00
syoul
5a70b6214f fix: purger toute release démo du radar dans .techradar/data
- suppression des dossiers autres que 2025-01-15 après la copie business
- évite la réintroduction des blips de démo
2025-12-07 09:58:52 +01:00
syoul
52668323e1 fix: utiliser config-business et copier explicitement team files
- Remplacer config.json par radar-business/config-business.json dans .techradar/data
- Copier explicitement team.html et team-visualization-data.json dans .techradar/public
- Les blips business sont copiés dans .techradar/data/radar/2025-01-15
2025-12-07 09:53:35 +01:00
syoul
00a000dc48 fix: copier public correctement et vérifier plus de fichiers md
- rm -rf .techradar/public puis cp public/* dans .techradar/public/
- liste 10 premiers md pour diagnostic
2025-12-07 09:48:04 +01:00