Date : 03/02/2026 Status : TERMINE
ssh.ts :
executeStream() - execution SSH avec callback onData pour chaque chunk stdout/stderrexecuteSSHStream() - methode bas-niveau avec streaming et registry de connexionsactiveExecutions Map + getActiveExecution() / cancelActiveExecution() pour annulationactions.ts :
executeSSHStream() - retourne un ReadableStream SSE avec events: started, output, done, errorcancelExecution() - annule une execution en cours (ferme connexion SSH + update DB)index.ts :
POST /api/actions/:id/execute/stream - SSE streamingPOST /api/actions/executions/:id/cancel - annulationtypes/action.ts :
cancelled au type ActionStatusapi.ts :
executeActionStream() - consomme le SSE stream et appelle onStep callbackcancelExecution() - appelle l'endpoint cancelinstance/[id]/index.tsx :
handleExecAction et handleExecWithInputs utilisent le streaming SSE pour les actions SSHhandleExecFromModal aussi en streamingactions/[id]/index.tsx :
executeAction utilise le streaming SSE pour les actions SSHcancelled affiche dans l'historiqueconnectors-api/src/services/ssh.tsconnectors-api/src/services/actions.tsconnectors-api/src/index.tsconnectors-api/src/types/action.tsconnectors-front/src/lib/api.tsconnectors-front/src/routes/connectors/instance/[id]/index.tsxconnectors-front/src/routes/actions/[id]/index.tsxLe cancel ferme la connexion SSH locale mais le processus distant continue (ex: apt upgrade continue sur le serveur). Pour un vrai kill il faudrait une 2eme connexion SSH pour envoyer kill -9.