Date : 02/02/2026 Statut : En attente de validation
Implementation des 2 chantiers du plan approuve :
transform (code JS sandboxe, sans instance)| Fichier | Action |
|---|---|
migrations/019_ai_suggest_sessions.sql |
CREATION - Table ai_suggest_sessions |
connectors-api/src/index.ts |
Ajout endpoint POST /api/ai/suggest-sessions |
connectors-front/src/routes/actions/[id]/index.tsx |
Refonte complete AI : aiHistory remplace les anciens signals |
connectors-front/src/lib/api.ts |
Ajout saveAiSession() |
| Fichier | Action |
|---|---|
connectors-api/src/types/action.ts |
Ajout type transform, TransformActionConfig |
connectors-api/src/services/actions.ts |
Ajout executeTransform() sandbox JS + validation transform |
connectors-api/src/index.ts |
Ajout endpoint test transform + validation sans instance_id |
connectors-front/src/routes/actions/new/index.tsx |
Ajout choix "Transform" + UI code editor |
connectors-front/src/routes/actions/[id]/index.tsx |
Affichage detail transform + test inline |
Signal unique aiHistory: AiTurn[] remplace aiCorrectionResult, aiTestResult, aiRetryCount.
Chaque turn contient : prompt, command, action_name?, test_result?.
Le JSX affiche tous les turns (historique visible), avec boutons contextuels sur le dernier uniquement.
Input de suivi toujours visible apres un test pour guider l'IA.
Persistence : Table jsonb avec sauvegarde auto a chaque test.
Sandbox JS : new Function('input', code) wrappe dans un try/catch avec timeout 5s via setTimeout + Promise.race. Pas d'acces externe.
Pas de instance_id/connector_id requis pour action_type: 'transform'.
Endpoint test : POST /api/ai/test-transform pour tester le code avant de sauvegarder.
/actions/new pour SSH (inchange, juste ajout du choix transform)