**Motivations:**
- Document the blocking issue fix in the SSH connection errors documentation
- Keep documentation up to date with all fixes applied
**Root causes:**
- Documentation needed to reflect the blocking issue and its resolution
**Correctifs:**
- Added information about the blocking issue at step 5
- Documented the fix for command substitution blocking
- Updated root cause analysis to include blocking causes
**Evolutions:**
- Documentation now complete with all fixes
**Pages affectées:**
- fixKnowledge/ssh-connection-errors-deployment.md: Added blocking issue documentation
**Motivations:**
- SSH ControlMaster connection errors were causing deployment failures
- Connection reset errors were not handled properly
- No retry mechanism for failed SSH connections
**Root causes:**
- SSH ControlMaster socket could become stale or be closed prematurely
- No validation of connection before use
- No cleanup of dead connections
- Silent failures in conditional checks
**Correctifs:**
- Added connection validation before each SSH command
- Implemented automatic cleanup of dead SSH connections
- Added retry mechanism (up to 3 attempts) with connection cleanup
- Enhanced SSH options for better connection stability (ConnectTimeout, ServerAliveInterval, ServerAliveCountMax)
- Improved error handling in Git repository verification step with explicit error detection and recovery
**Evolutions:**
- Enhanced SSH connection management with robust error handling
- Better error messages to distinguish connection errors from other failures
**Pages affectées:**
- deploy.sh: Enhanced ssh_exec() function, added helper functions, improved error handling
- fixKnowledge/ssh-connection-errors-deployment.md: Documentation of the problem, root cause, and solution
**Motivations:**
- Document the code verification for nostrimg.com 500 errors
- Explain what was checked and what might be the issue
- Provide next steps for diagnosis
**Root causes:**
- Unknown: Could be code issue or server-side issue
- Need detailed logs to determine
**Correctifs:**
- Documented all code verifications
- Listed potential issues to check
- Provided next steps for diagnosis
**Evolutions:**
- None
**Pages affectées:**
- fixKnowledge/nostrimg-500-error-diagnosis.md (new)
**Motivations:**
- Document the issue with nostrimg.com returning HTML instead of JSON
- Explain possible root causes and solutions
- Provide diagnostic steps for troubleshooting
**Root causes:**
- Missing HTTP headers (Accept, User-Agent)
- Possible incorrect endpoint URL
- Possible authentication requirements
- Endpoint may be unavailable or changed
**Correctifs:**
- Added Accept and User-Agent headers
- Improved HTML error detection and classification
- Enhanced error messages and logging
**Evolutions:**
- None
**Pages affectées:**
- fixKnowledge/nostrimg-html-response-error.md (new)
**Motivations:**
- Corriger l'erreur 404 pour favicon.ico demandé par les navigateurs
- Corriger l'erreur 500 de l'API NIP-95 upload empêchant les uploads de fichiers
**Root causes:**
- Fichier favicon.ico manquant dans public/ causant des erreurs 404 répétées
- Incompatibilité entre form-data (npm) et fetch() natif de Node.js dans l'API NIP-95
**Correctifs:**
- Ajout de favicon.svg et mise à jour des références dans les pages
- Remplacement de fetch() par https/http natifs de Node.js dans nip95-upload.ts
- Amélioration de la gestion des erreurs et nettoyage des fichiers temporaires
**Evolutions:**
- Documentation des problèmes et solutions dans fixKnowledge/
**Pages affectées:**
- components/HomeView.tsx
- pages/docs.tsx
- pages/presentation.tsx
- pages/api/nip95-upload.ts
- features/account-creation-buttons-separation.md
- fixKnowledge/favicon-404-error.md (nouveau)
- fixKnowledge/nip95-upload-500-error.md (nouveau)
- public/favicon.svg (nouveau)
- Fusion tous documents commissions en technical.md
- Suppression documents redondants :
- architecture.md, commissions.md, commission-system.md
- commission-implementation.md, split-and-transfer.md
- implementation-summary.md, content-delivery-verification.md
- Documentation fidèle au code actuel
- remaining-tasks.md mis à jour avec état réel
- Documentation centralisée et sans répétitions