@runfusion/fusion 0.51.0 → 0.52.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin.js +9038 -4527
- package/dist/client/.vite/manifest.json +329 -329
- package/dist/client/assets/{AgentDetailView-CjwOlcMI.js → AgentDetailView-C-PM8cwG.js} +1 -1
- package/dist/client/assets/{AgentPermissionPolicyEditor-CD8znNHS.js → AgentPermissionPolicyEditor-DrVW4VPc.js} +1 -1
- package/dist/client/assets/{AgentsView-CTjNaKu-.js → AgentsView-DJJO0laF.js} +6 -11
- package/dist/client/assets/ChatView-C7uTm5hO.js +16 -0
- package/dist/client/assets/ChatView-D_2wBIIx.css +1 -0
- package/dist/client/assets/CommandCenter-CKvo0MuO.js +71 -0
- package/dist/client/assets/{DevServerView-BE_o7v9j.js → DevServerView-BHLG4Mxg.js} +1 -1
- package/dist/client/assets/{DirectoryPicker-BpcPo65A.js → DirectoryPicker-CRY-rpnj.js} +1 -1
- package/dist/client/assets/{DocumentsView-Cpma23hu.js → DocumentsView-DhC4dnXD.js} +1 -1
- package/dist/client/assets/{EvalsView-DYSobhb7.js → EvalsView-DsnLOVZB.js} +1 -1
- package/dist/client/assets/{ExperimentalAgentOnboardingModal-D_iQqD-n.js → ExperimentalAgentOnboardingModal-B4iFX60E.js} +1 -1
- package/dist/client/assets/GoalsView-D5bzq6W9.js +2 -0
- package/dist/client/assets/{InsightsView-DZyMvYQ8.js → InsightsView-Drpu72M4.js} +1 -1
- package/dist/client/assets/{MemoryView-B9Z6cRma.js → MemoryView-auLBP3UW.js} +1 -1
- package/dist/client/assets/{PiExtensionsManager-BQt3JU60.js → PiExtensionsManager-RlbkXf_t.js} +1 -1
- package/dist/client/assets/{PluginManager-DEsUstVo.js → PluginManager-BJMUacpG.js} +1 -1
- package/dist/client/assets/{PullRequestView-B7k8ogy4.js → PullRequestView-344B9WF-.js} +1 -1
- package/dist/client/assets/{ResearchView-BseF58_R.js → ResearchView-BNqt-f53.js} +1 -1
- package/dist/client/assets/{SecretsView-bkNS5VBC.js → SecretsView-Be8Tm8It.js} +1 -1
- package/dist/client/assets/SessionTerminal-CumHUelZ.js +2 -0
- package/dist/client/assets/SettingsModal-AJfer-ve.js +21 -0
- package/dist/client/assets/{SettingsModal-DAH7LuLw.js → SettingsModal-B28DuhaN.js} +1 -1
- package/dist/client/assets/SettingsModal-CaE4JYxi.css +1 -0
- package/dist/client/assets/{SetupWizardModal-Bm6bG31V.js → SetupWizardModal-y2j9aZoi.js} +2 -2
- package/dist/client/assets/ShadcnColorPicker-Cc72uPKJ.js +11 -0
- package/dist/client/assets/ShadcnColorPicker-CyeAnJUU.css +1 -0
- package/dist/client/assets/{SkillsView-D_UEJY_f.js → SkillsView-HQp7UTdA.js} +1 -1
- package/dist/client/assets/{TodoView-CMCoPep1.js → TodoView-DF7_qWGH.js} +1 -1
- package/dist/client/assets/WorkflowNodeEditor-BjpqTIYE.js +8 -0
- package/dist/client/assets/WorkflowNodeEditor-Df-_206_.css +1 -0
- package/dist/client/assets/{agentSkills-BiipFw1z.js → agentSkills-Cy_HrYHd.js} +1 -1
- package/dist/client/assets/{app-A1yCJR4Q.js → app-CGubyqAW.js} +3 -3
- package/dist/client/assets/{app-T5iMjZpX.js → app-CrQpHbIs.js} +1 -1
- package/dist/client/assets/{app-Bfiafek7.js → app-DboK-0Ty.js} +3 -3
- package/dist/client/assets/{app-Bh-Xj32t.js → app-DjnYET2y.js} +1 -1
- package/dist/client/assets/{app-zR_n4GL2.js → app-MacS555z.js} +1 -1
- package/dist/client/assets/{app-DxJHfzxz.js → app-nvVayIeU.js} +3 -3
- package/dist/client/assets/{architectureDiagram-3BPJPVTR-glwWkaDt.js → architectureDiagram-3BPJPVTR-4ur4sxlr.js} +1 -1
- package/dist/client/assets/{blockDiagram-GPEHLZMM-C8DhxwG4.js → blockDiagram-GPEHLZMM-BgZeqq_q.js} +1 -1
- package/dist/client/assets/{c4Diagram-AAUBKEIU-CQXf6PzI.js → c4Diagram-AAUBKEIU-BQtdOIrm.js} +1 -1
- package/dist/client/assets/channel-Dn5XowfJ.js +1 -0
- package/dist/client/assets/{chunk-2J33WTMH-kak65s83.js → chunk-2J33WTMH-C1k1PBy1.js} +1 -1
- package/dist/client/assets/{chunk-4BX2VUAB-B_yEpoxU.js → chunk-4BX2VUAB-hNujwvSn.js} +1 -1
- package/dist/client/assets/{chunk-55IACEB6-C9lQVeH5.js → chunk-55IACEB6-CnXV9LyI.js} +1 -1
- package/dist/client/assets/{chunk-727SXJPM-D4SVzqNs.js → chunk-727SXJPM-B-ocMdYN.js} +1 -1
- package/dist/client/assets/{chunk-AQP2D5EJ-DBHuj4BH.js → chunk-AQP2D5EJ-CWNRUL6C.js} +1 -1
- package/dist/client/assets/{chunk-FMBD7UC4-BJ3ghjau.js → chunk-FMBD7UC4-DerrCiYe.js} +1 -1
- package/dist/client/assets/{chunk-ND2GUHAM-CE4tkh6e.js → chunk-ND2GUHAM-BfcSPlX-.js} +1 -1
- package/dist/client/assets/{chunk-QZHKN3VN-DmVw_cEu.js → chunk-QZHKN3VN-BaWScAds.js} +1 -1
- package/dist/client/assets/classDiagram-4FO5ZUOK-zSOW-KNk.js +1 -0
- package/dist/client/assets/classDiagram-v2-Q7XG4LA2-zSOW-KNk.js +1 -0
- package/dist/client/assets/{cose-bilkent-S5V4N54A-DI_-BOYE.js → cose-bilkent-S5V4N54A-n0Oeinz2.js} +1 -1
- package/dist/client/assets/{dagre-BM42HDAG-ywUbHZxt.js → dagre-BM42HDAG-CUtehSt2.js} +1 -1
- package/dist/client/assets/{dashboard-view-r4NTTh_X.js → dashboard-view-BW3GHqgb.js} +218 -218
- package/dist/client/assets/{dashboard-view-DJvdban3.js → dashboard-view-DWKCxtr5.js} +1 -1
- package/dist/client/assets/{diagram-2AECGRRQ-CAGucHCe.js → diagram-2AECGRRQ-Bz4aOzhR.js} +1 -1
- package/dist/client/assets/{diagram-5GNKFQAL-D_1uzVtW.js → diagram-5GNKFQAL-UoxIMwPf.js} +1 -1
- package/dist/client/assets/{diagram-KO2AKTUF-D7zY4Nlm.js → diagram-KO2AKTUF-BYR7hloS.js} +1 -1
- package/dist/client/assets/{diagram-LMA3HP47-C1T9eOzA.js → diagram-LMA3HP47-BR9MaP8U.js} +1 -1
- package/dist/client/assets/{diagram-OG6HWLK6-sWxhPvzU.js → diagram-OG6HWLK6-BOfldYHv.js} +1 -1
- package/dist/client/assets/{erDiagram-TEJ5UH35-DfHtnaNg.js → erDiagram-TEJ5UH35-B8x9mfOs.js} +1 -1
- package/dist/client/assets/{flowDiagram-I6XJVG4X-Brbb_Jlh.js → flowDiagram-I6XJVG4X-DBnTroCV.js} +1 -1
- package/dist/client/assets/{folder-open-BLwukrE0.js → folder-open-CFze34Eq.js} +1 -1
- package/dist/client/assets/{ganttDiagram-6RSMTGT7-CLvZ7891.js → ganttDiagram-6RSMTGT7-BfzFy7iz.js} +1 -1
- package/dist/client/assets/{gitGraphDiagram-PVQCEYII-DD56Jsa3.js → gitGraphDiagram-PVQCEYII-CNTFu6IY.js} +1 -1
- package/dist/client/assets/index-QnHUwSjw.css +1 -0
- package/dist/client/assets/index-Y-vyXPPN.js +1331 -0
- package/dist/client/assets/{infoDiagram-5YYISTIA-uXai801q.js → infoDiagram-5YYISTIA-DJiBRaAl.js} +1 -1
- package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-C_bWlUP_.js → ishikawaDiagram-YF4QCWOH-CIY9t4cc.js} +1 -1
- package/dist/client/assets/{journeyDiagram-JHISSGLW-B2kB9niE.js → journeyDiagram-JHISSGLW-HLMZmcjY.js} +1 -1
- package/dist/client/assets/{kanban-definition-UN3LZRKU-BJwlpR9z.js → kanban-definition-UN3LZRKU-x9nKoxCI.js} +1 -1
- package/dist/client/assets/{linear-dXivciGL.js → linear-CwI45w2t.js} +1 -1
- package/dist/client/assets/{mermaid.core-0hUjZF5S.js → mermaid.core-pHkdB6fb.js} +4 -4
- package/dist/client/assets/{mindmap-definition-RKZ34NQL-DsTgTpX-.js → mindmap-definition-RKZ34NQL-Bs_4Tofu.js} +1 -1
- package/dist/client/assets/{pieDiagram-4H26LBE5-BUQsNWHN.js → pieDiagram-4H26LBE5-BGHz9JGZ.js} +1 -1
- package/dist/client/assets/{quadrantDiagram-W4KKPZXB-DOYWgfAz.js → quadrantDiagram-W4KKPZXB-xHSR7cAR.js} +1 -1
- package/dist/client/assets/{requirementDiagram-4Y6WPE33-DUnPKaMd.js → requirementDiagram-4Y6WPE33-D7YMNM44.js} +1 -1
- package/dist/client/assets/{sankeyDiagram-5OEKKPKP-Btl4NRo-.js → sankeyDiagram-5OEKKPKP-OAXuab3Y.js} +1 -1
- package/dist/client/assets/{sequenceDiagram-3UESZ5HK-b0hyJ_Wr.js → sequenceDiagram-3UESZ5HK-BZCjKFVL.js} +1 -1
- package/dist/client/assets/{shield-alert-yWvC7t2v.js → shield-alert-BBK8Risa.js} +1 -1
- package/dist/client/assets/{stateDiagram-AJRCARHV-orREjkd9.js → stateDiagram-AJRCARHV-COnJQqA4.js} +1 -1
- package/dist/client/assets/{stateDiagram-v2-BHNVJYJU-DYJRRNh-.js → stateDiagram-v2-BHNVJYJU-Diml4Nhm.js} +1 -1
- package/dist/client/assets/{time-DoDTxsna.js → time-Ckmi30gH.js} +1 -1
- package/dist/client/assets/{timeline-definition-PNZ67QCA-DZga7lqO.js → timeline-definition-PNZ67QCA-DHIKvV9L.js} +1 -1
- package/dist/client/assets/{upload-BsYRkl_8.js → upload-CqUJUdZW.js} +1 -1
- package/dist/client/assets/{users-dyoJEvrM.js → users-CAE-FEzI.js} +1 -1
- package/dist/client/assets/{vendor-reactflow-Bg-Qjzh8.js → vendor-reactflow-CnI7NMXG.js} +1 -1
- package/dist/client/assets/{vennDiagram-CIIHVFJN-C2P26V71.js → vennDiagram-CIIHVFJN-o9AxLDoL.js} +1 -1
- package/dist/client/assets/{wardley-L42UT6IY-ckctH9bL.js → wardley-L42UT6IY-B7MIazje.js} +1 -1
- package/dist/client/assets/{wardleyDiagram-YWT4CUSO-9It3QAYs.js → wardleyDiagram-YWT4CUSO-B6qUJx0N.js} +1 -1
- package/dist/client/assets/{xychartDiagram-2RQKCTM6-Dj3sSBqg.js → xychartDiagram-2RQKCTM6-13mSXuCA.js} +1 -1
- package/dist/client/index.html +8 -8
- package/dist/client/theme-data.css +140 -0
- package/dist/client/version.json +1 -1
- package/dist/droid-cli/package.json +1 -1
- package/dist/extension.js +7126 -3447
- package/dist/pi-claude-cli/index.ts +13 -0
- package/dist/pi-claude-cli/package.json +1 -1
- package/dist/pi-claude-cli/src/__tests__/process-manager.test.ts +2 -2
- package/dist/pi-claude-cli/src/__tests__/provider.test.ts +27 -4
- package/dist/plugin-sdk/index.d.ts +32 -1
- package/dist/plugins/fusion-plugin-acp-runtime/package.json +1 -1
- package/dist/plugins/fusion-plugin-cli-printing-press/package.json +1 -1
- package/dist/plugins/fusion-plugin-compound-engineering/package.json +1 -1
- package/dist/plugins/fusion-plugin-cursor-runtime/package.json +1 -1
- package/dist/plugins/fusion-plugin-dependency-graph/package.json +1 -1
- package/dist/plugins/fusion-plugin-droid-runtime/package.json +1 -1
- package/dist/plugins/fusion-plugin-hermes-runtime/package.json +1 -1
- package/dist/plugins/fusion-plugin-openclaw-runtime/package.json +1 -1
- package/dist/plugins/fusion-plugin-paperclip-runtime/package.json +1 -1
- package/dist/plugins/fusion-plugin-reports/package.json +1 -1
- package/dist/plugins/fusion-plugin-roadmap/package.json +1 -1
- package/dist/plugins/fusion-plugin-whatsapp-chat/package.json +1 -1
- package/package.json +1 -1
- package/skill/fusion/SKILL.md +1 -0
- package/skill/fusion/references/engine-tools.md +3 -3
- package/skill/fusion/references/extension-tools.md +81 -4
- package/skill/fusion/references/fusion-capabilities.md +8 -0
- package/dist/client/assets/ChatView-DCWypaw3.js +0 -19
- package/dist/client/assets/ChatView-DwIIrJxb.css +0 -1
- package/dist/client/assets/CommandCenter-C4v0FMxx.js +0 -71
- package/dist/client/assets/GoalsView-B6Wfxk59.js +0 -2
- package/dist/client/assets/SessionTerminal-BSllyqgF.js +0 -2
- package/dist/client/assets/SettingsModal-Dso0K76J.js +0 -21
- package/dist/client/assets/SettingsModal-tUDR6nJ9.css +0 -1
- package/dist/client/assets/ShadcnColorPicker-CLiOvo7W.js +0 -11
- package/dist/client/assets/ShadcnColorPicker-CzZo9UOD.css +0 -1
- package/dist/client/assets/WorkflowNodeEditor-BeQcn0Wa.js +0 -8
- package/dist/client/assets/WorkflowNodeEditor-WYIxHTxY.css +0 -1
- package/dist/client/assets/channel-BY6zFSV1.js +0 -1
- package/dist/client/assets/classDiagram-4FO5ZUOK-CeX_WCiC.js +0 -1
- package/dist/client/assets/classDiagram-v2-Q7XG4LA2-CeX_WCiC.js +0 -1
- package/dist/client/assets/index-DAv17W73.js +0 -1317
- package/dist/client/assets/index-DhBnj8YN.css +0 -1
|
@@ -2,7 +2,7 @@ const e={add:"Ajouter",apply:"Appliquer",back:"Retour",cancel:"Annuler",close:"F
|
|
|
2
2
|
|
|
3
3
|
Archiver quand même en supprimant d'abord ces références ?`,lineageDeleteMessage:`{{taskId}} a des tâches enfants de lignée ({{children}}) qui le référencent comme source parente.
|
|
4
4
|
|
|
5
|
-
Supprimer quand même en supprimant d'abord ces références ?`,listControlsLabel:"Contrôles de liste",newTask:"+ Nouvelle tâche",noChange:"Aucun changement",nodeOverrideLabel:"Nœud de substitution",nodeStatusConnecting:"Connexion en cours",nodeStatusError:"Erreur",nodeStatusOffline:"Hors ligne",nodeStatusOnline:"En ligne",noTasks:"Aucune tâche",noTasksMatch:"Aucune tâche ne correspond à votre filtre",noTasksYet:"Aucune tâche pour l'instant",pausedByAgent:"mis en pause par l'agent",pauseSelected:"Mettre en pause",pauseSelectedTitle:"Mettre en pause toutes les tâches sélectionnées qui ne sont pas encore en pause",pauseUnavailable:"L'action Pause est indisponible",preserveProgressMessage:"Cette tâche a des étapes complétées. Conserver la progression avant de déplacer ?",preserveProgressTitle:"Conserver la progression ?",resetProgress:"Réinitialiser",resetProgressMessage:"Réinitialiser toute la progression des étapes avant de déplacer cette tâche ?",resetProgressTitle:"Réinitialiser la progression ?",resizeSidebar:"Redimensionner la barre latérale de la liste de tâches",reviewerModel:"Modèle de révision",selectAll:"Sélectionner toutes les tâches visibles",selectedCount_one:"",selectedCount_other:"",selectTask:"Sélectionner {{taskId}}",selectTaskPrompt:"Sélectionnez une tâche pour voir les détails",showAll:"Tout afficher",showAllTitle:"Afficher toutes les tâches",showDone:"Afficher terminées",showDoneTitle:"Afficher les tâches terminées",staleOnly:"Obsolètes uniquement",staleOnlyTitle:"Afficher uniquement les tâches obsolètes",stalePausedReview:"Révision en pause obsolète",stalePausedReviewTitle:"Afficher uniquement les tâches de révision en pause obsolètes",stats_one:"",stats_other:"",statsInColumn_one:"",statsInColumn_other:"",statusMergingFix:"Fusion des correctifs…",stuck:"Bloquée",taskCreationUnavailable:"Création de tâche indisponible",unpauseSelected:"Reprendre",unpauseSelectedTitle:"Reprendre les tâches sélectionnées actuellement en pause",unpauseUnavailable:"L'action Reprendre est indisponible",useProjectDefault:"Utiliser le défaut du projet",viewOptions:"Options d'affichage",workflowLabel:""},he={agent:"Agent",agents:"Agents",agentsTab:"Agents",ago:"il y a",allAgents:"Tous les agents",allAgentsOption:"Tous les agents",approvalApprove:"Approuver",approvalCommentPlaceholder:"Commentaire optionnel",approvalDeny:"Refuser",approvalRequested:"Demandé",approvalRequester:"Demandeur",approvals:"Approbations",approvalTask:"Tâche",back:"Retour",backButton:"← Retour",closeAriaLabel:"Fermer",closeTitle:"Fermer",compose:"Composer",composeButton:"Composer",composeMessageTitle:"Composer un message",composeTitle:"Composer un message",conversation:"Conversation",conversationLabel:"Conversation",delete:"Supprimer",deleteButton:"Supprimer",deleteFailed:"Impossible de supprimer le message",from:"De",fromLabel:"De :",fromPrefix:"De : {{participant}}",history:"Historique",inbox:"Boîte de réception",inboxTab:"Boîte de réception",justNow:"À l'instant",labelAgent:"Agent : {{id}}",labelAgentNamed:"Agent : {{name}}",labelSystem:"Système",labelUser:"Utilisateur : {{id}}",labelYou:"Vous",markAllRead:"Tout marquer comme lu",markAllReadButton:"Marquer tout comme lu",markAllReadTitle:"Marquer tout comme lu",markedAsRead_one:"",markedAsRead_other:"",markReadFailed:"Impossible de marquer les messages comme lus",messageDeleted:"Message supprimé",messageSent:"Message envoyé",noAgentMessages:"Aucun message agent à agent",noAgents:"Aucun agent trouvé",noAgentsFound:"Aucun agent trouvé",noHistoricalApprovals:"Aucune approbation historique",noInbox:"Aucun message dans votre boîte de réception",noMessagesInbox:"Aucun message dans votre boîte de réception",noOutbox:"Aucun message envoyé",noPendingApprovals:"Aucune approbation en attente",noReceivedMessages:"Aucun message reçu pour cet agent",noSentMessages:"Aucun message envoyé pour cet agent",noSentMessagesAgent:"Aucun message envoyé pour cet agent",outbox:"Boîte d'envoi",outboxTab:"Boîte d'envoi",pending:"En attente",refreshTitle:"Actualiser",reply:"Répondre",replyButton:"Répondre",replyingTo:"Répondre à {{preview}}",replyingToMessage:"Répondre au message",replyLoadFailed:"Échec du chargement du message de réponse. Cliquez pour réessayer.",resizeMessageListPane:"",selectMessageToRead:"Sélectionnez un message à lire",system:"Système",timeDaysAgo_one:"",timeDaysAgo_other:"",timeHoursAgo_one:"",timeHoursAgo_other:"",timeJustNow:"À l'instant",timeMinsAgo_one:"",timeMinsAgo_other:"",title:"Boîte aux lettres",to:"À",toLabel:"À :",toPrefix:"À : {{recipient}}",toRecipient:"",typeAgentToAgent:"Agent ↔ Agent",typeAgentToUser:"Agent → Vous",typeSystem:"Système",typeUserToAgent:"Vous → Agent",user:"Utilisateur",you:"Vous"},ge={auditChecksTitle:"Vérifications d'audit",autoSummarizeHint:"Compacte automatiquement la mémoire selon un calendrier lorsqu'elle dépasse le seuil",autoSummarizeLabel:"Résumé automatique de la mémoire",autoSummarizeScheduleHint:"Expression cron pour la planification du résumé automatique (défaut : quotidien à 3 h)",autoSummarizeScheduleLabel:"Planification (cron)",backendFile:"Fichier (.fusion/memory/, agent/<agent-name>/memory/)",backendQmd:"QMD (distillation de mémoire quantifiée)",backendReadonly:"Lecture seule",cancel:"Annuler",capAtomicWrites:"Écritures atomiques",capPersistent:"Persistant",capReadable:"Lisible",capWritable:"Modifiable",categories:"Catégories",charCount_one:"",charCount_other:"",compactFailed:"Échec de la compaction de la mémoire",compacting:"Compaction en cours…",compactionThresholdHint:"La mémoire sera compactée lorsqu'elle dépassera ce nombre de caractères",compactionThresholdLabel:"Seuil de compaction (caractères)",compactSelectedFile:"Compacter le fichier sélectionné",currentBackendTitle:"Backend actuel",description:"Mémoire de travail, insights à long terme et état des moteurs",disabledMessage:"La mémoire est actuellement désactivée. Activez les outils de mémoire dans les paramètres pour modifier ces automatisations.",dreaming:"Traitement des rêves…",dreamNow:"Traiter maintenant",dreamNowHint:"Déclencher manuellement le traitement des rêves maintenant.",dreamProcessingComplete:"Traitement des rêves terminé",dreamProcessingFailed:"Échec du traitement des rêves",dreamsEnabledHint:"Transforme les notes quotidiennes en DREAMS.md et promeut les leçons réutilisables dans MEMORY.md.",dreamsEnabledLabel:"Traiter les rêves depuis la mémoire quotidienne",dreamsScheduleHint:"Expression cron pour le traitement des rêves.",dreamsScheduleLabel:"Planification des rêves",editorDefaultDescription:"Modifie le fichier mémoire sélectionné.",editorLabel:"Éditeur de mémoire",editRaw:"Modifier le brut",extracting:"Extraction en cours…",extractInsightsFailed:"Échec de l'extraction des insights",extractionFailed:"Échec",extractionSuccess:"Succès",extractNow:"Extraire maintenant",fileCompacted:"Fichier mémoire compacté",fileLabel:"Fichier mémoire",fileSummary:"{{size}} octets · mis à jour le {{updatedAt}}",fileSwitchDirtyHint:"Enregistrez ou abandonnez les modifications actuelles avant de changer de fichier.",fileSwitchHint:"Choisissez un fichier mémoire du projet à afficher ou modifier.",healthHealthy:"En bonne santé",healthIssues:"Problèmes détectés",healthStatusTitle:"État de santé",healthWarning:"Avertissement",insightCount_one:"",insightCount_other:"",insightsExtracted_one:"",insightsExtracted_other:"",insightsMemoryLabel:"Mémoire des insights",insightsSaved:"Insights enregistrés",installing:"Installation…",installQmd:"Installer qmd",installQmdFailed:"Échec de l'installation de qmd",lastExtractionLabel:"Dernière extraction",lastUpdated:"Dernière mise à jour",layerDaily:"Quotidien",layerDescDaily:"Observations quotidiennes brutes, boucles ouvertes et contexte en cours pour le traitement des rêves.",layerDescDreams:"Patterns synthétisés et boucles ouvertes issus de la mémoire quotidienne.",layerDescLongTerm:"Décisions durables, conventions, contraintes et pièges sélectionnés depuis les rêves.",layerDreams:"Rêves",layerLongTerm:"Long terme",loadFileFailed:"Échec du chargement du fichier mémoire",loadingEngineStatus:"Chargement de l'état des moteurs…",loadingFile:"Chargement du fichier mémoire…",loadingInsights:"Chargement des insights…",localFallbackUsed:"repli local utilisé",memorySaved:"Mémoire enregistrée",noInsights:"Aucun insight extrait pour l'instant.",noInsightsHint:"Les insights sont automatiquement extraits de la mémoire de travail. Cliquez sur « Extraire maintenant » pour déclencher l'extraction manuellement.",noMatchingMemory:"Aucune mémoire correspondante trouvée.",pruningApplied:"Appliqué",pruningLabel:"Élagage",pruningNotNeeded:"Non nécessaire",qmdAvailableOnPath:"qmd est disponible dans le PATH.",qmdChecking:"Vérification",qmdCheckingAvailability:"Vérification de la disponibilité de qmd…",qmdInstalled:"Installé",qmdInstallSuccess:"qmd installé avec succès",qmdInstallUnavailable:"L'installation de qmd est terminée, mais qmd n'est toujours pas disponible",qmdIntegrationTitle:"Intégration QMD",qmdNotInstalled:"qmd n'est pas installé. La recherche utilisera les fichiers locaux. Installez la récupération indexée :",qmdPathUsed:"chemin qmd utilisé",qmdStatusAvailable:"disponible",qmdStatusMissing:"absent",readOnlyBanner:"Ce backend de mémoire est en lecture seule. Les modifications ne peuvent pas être enregistrées.",retrievalTestComplete:"Test de récupération de mémoire terminé",retrievalTestFailed:"Échec du test de récupération de mémoire",retrievalTestFallback:"qmd n'est pas installé ; le repli local a été utilisé",runAudit:"Lancer l'audit",save:"Enregistrer",saveInsights:"Enregistrer les insights",saveInsightsFailed:"Échec de l'enregistrement des insights",saveMemoryFailed:"Échec de l'enregistrement de la mémoire",saveSettings:"Enregistrer les paramètres",saveSettingsFailed:"Échec de l'enregistrement des paramètres de mémoire",saving:"Enregistrement…",searchPlaceholder:"Rechercher dans la mémoire avec qmd",sectionCount_one:"",sectionCount_other:"",settingsNote:"Remarque : modifier le type de backend dans",settingsNoteLink:"Paramètres → Mémoire",settingsNoteToast:"Ouvrez Paramètres → Mémoire pour changer le type de backend",settingsSaved:"Paramètres de mémoire enregistrés",sizeChars:"{{size}} caractères",tabEngines:"Moteurs",tabInsights:"Insights",tabWorking:"Mémoire de travail",testing:"Test en cours…",testMemorySearchTitle:"Tester la recherche en mémoire",testResultCount_one:"",testResultCount_other:"",testResultStatus:"qmd {{qmdStatus}} · {{fallbackStatus}}",testRetrieval:"Tester la récupération",testSearchHint:"Exécute le même chemin memory_search basé sur qmd qu'utilisent les agents.",title:"Mémoire",totalInsights:"Total des insights",workingMemoryLabel:"Mémoire de travail"},ve={advanced:"Avancé",advancedTo:"{{branch}} avancé à {{sha}}.",changesWillAutoStash:" (les modifications locales seront automatiquement cachées et restaurées)",checkedOutBehind:"Votre copie extraite à {{path}} est en arrière.",commit:"Commit",disabledMergeLocked:"Push suspendu — une fusion Fusion est en cours.",disabledNoRemote:"Aucun remote `origin` configuré.",disabledNoUpstream:"La branche n'a pas d'upstream sur origin.",dismissNotice:"Ignorer l'avis d'avancement de fusion",filesChanged:"Fichiers dans le commit de fusion",forceWithLeaseLabel:"Autoriser force-with-lease (utiliser uniquement si vous savez que origin a divergé intentionnellement)",insertionsDeletions:"Insertions/suppressions de commit de fusion",mergedAt:"Fusionné à",mergedSuccess:"Fusion réussie",message:"Message",pr:"PR",pulling:"Récupération en cours…",pushForceWithLease:"Envoyer (force-with-lease)",pushHeading_one:"",pushHeading_other:"",pushing:"Envoi en cours…",pushSuccess:"Envoyé à origin/{{branch}} @ {{sha}}.",pushToOrigin:"Envoyer à origin",recordedNoConfirm:"Enregistré sans confirmation de fusion locale",shortstatTitle:"Statistiques courtes finales du commit ; pour voir le diff complet de tous les commits de tâches, consultez l'onglet Modifications.",smartPull:"Pull intelligent",status:"État",title:"Détails de la fusion"},fe={ariaLabel:"Visualisation de la topologie du maillage de nœuds",connecting:"Connexion en cours",error:"Erreur",failedToFetchMeshState:"Échec de la récupération de l'état du maillage",noNodes:"Aucun nœud à afficher",noPeers:"Données de découverte pair-à-pair non disponibles.",offline:"Hors ligne",online:"En ligne"},be=JSON.parse(`{"acceptance":"Critères d'acceptation :","acceptanceCriteriaOptional":"Critères d'acceptation (facultatifs)","acceptanceCriteriaPrefix":"","actionGenerating":"Génération…","actionResume":"Reprendre","actionRetry":"Réessayer","actionReview":"Réviser","activateSlice":"Activer le découpage","activityCount":"","activityTime":"Activité {{time}}","actual":"Réel : {{value}}","addAssertion":"Ajouter une assertion","addContext":"Ajoutez un contexte ou une direction supplémentaires...","addFeature":"Ajouter une fonctionnalité","additionalComments":"Commentaires supplémentaires (optionnel)","addMilestone":"Ajouter un jalon","addSlice":"Ajouter un découpage","aiThinking":"L'IA réfléchit...","aiValidatedAtRuntime":"Validé par IA à l'exécution","aiValidatedMissionGate":"Porte de mission validée par IA","allFeaturesLinked":"Toutes les fonctionnalités sont déjà liées","approvePlan":"Approuver le plan","assertionCreated":"Assertion créée","assertionCreateFailed":"Échec de la création de l'assertion","assertionFieldsRequired":"Le titre et le texte de l'assertion sont requis","assertionTextEditPlaceholder":"Texte de l'assertion","assertionTextPlaceholder":"Texte de l'assertion (ce qui doit être vrai à la fin)","assertionTitlePlaceholder":"Titre de l'assertion","assertionUpdated":"Assertion mise à jour","assertionUpdateFailed":"Échec de la mise à jour de l'assertion","attemptRetries_one":"","attemptRetries_other":"","autopilotActivatingSlice":"Activation du découpage","autopilotCompleting":"En finalisation","autopilotDescription":"Lorsqu'il est activé, Fusion active automatiquement le découpage suivant et planifie ses fonctionnalités à mesure que le travail avance.","autopilotDisabled":"Pilote automatique désactivé","autopilotEnabled":"Pilote automatique activé","autopilotEnabledLabel":"Pilote automatique activé","autopilotLabel":"Pilote automatique","autopilotLastActivation":"Dernière activation {{time}}","autopilotOff":"Désactivé","autopilotUpdateFailed":"Échec de la mise à jour du pilote automatique","autopilotWatching":"Pilote automatique en surveillance","autopilotWatchingSince":"En surveillance depuis {{time}}","autopilotWatchingState":"En surveillance","backToMissions":"Retour aux missions","backToMissionsList":"Retour à la liste des missions","blocked":"Bloqué :","blockedReason":"Raison du blocage :","branchName":"Nom de branche","branchNameAriaLabel":"Nom de branche de la mission","branchNamePlaceholder":"p. ex. feature/mission-work","branchNameRequired":"Le nom de branche est requis pour la stratégie sélectionnée","branchStrategy":"Stratégie de branche","branchStrategyAriaLabel":"Stratégie de branche de la mission","branchStrategyAutoPerTask":"Nommer automatiquement une branche par tâche (depuis les détails)","branchStrategyCustomNew":"Créer une branche personnalisée","branchStrategyExisting":"Utiliser une branche existante","branchStrategyProjectDefault":"Utiliser la branche du projet/par défaut","buildExample":"Par exemple, créer un éditeur de documents collaboratif en temps réel avec présence, commentaires et historique des versions...","cancelButton":"Annuler","clickToViewTask":"Cliquer pour voir la tâche","close":"Fermer","closeMissionManager":"Fermer le gestionnaire de missions","collapseDetails":"Réduire les détails","completedFeatures":"{{completed}}/{{total}} fonctionnalités","completedMilestones":"{{completed}}/{{total}} jalons","completedTasks":"{{completed}}/{{total}} tâches","confirmMilestonePlaceholder":"Comment confirmer que cet objectif est atteint...","confirmSlicePlaceholder":"Comment confirmer que cette tranche est terminée...","contractAssertions":"Assertions de contrat (validées par IA)","createButton":"Créer","created":"Mission créée","createdFromInterview":"Mission créée depuis l'entretien IA","createTask":"Créer une tâche","creatingMission":"Création de la mission...","defaultInterviewTitle":"Entretien de mission","deleteAssertion":"Supprimer l'assertion","deleteButton":"Supprimer","deleteConfirm":"Supprimer ce/cette {{type}} ? Cette action est irréversible.","deleted":"Mission supprimée","deleteFailed":"Échec de la suppression de la mission","deleteFeature":"Supprimer la fonctionnalité","deleteMilestone":"Supprimer le jalon","deleteMission":"Supprimer la mission","deleteSlice":"Supprimer le découpage","describeGoal":"Décrivez ce que vous voulez construire. L'IA vous posera des questions pour comprendre la portée, les contraintes et les exigences, puis produira un plan structuré avec des jalons, des tranches et des fonctionnalités.","descriptionLabel":"Description de la mission","descriptionOptional":"Description (facultative)","detailTabs":"Onglets de détails de la mission","discardButton":"Supprimer","discardDraft":"Supprimer le brouillon","discardDraftConfirm":"Supprimer ce brouillon d'entretien ? Cela supprime le brouillon enregistré et ne peut pas être annulé.","dismiss":"Ignorer","draftDiscardFailed":"Échec de la suppression du brouillon","draftOpenInAnotherTab":"Le brouillon est ouvert dans un autre onglet","draftsLabel":"Brouillons","editAssertion":"Modifier l'assertion","editFeature":"Modifier la fonctionnalité","editMilestone":"Modifier le jalon","editMission":"Modifier la mission","editSlice":"Modifier le découpage","enrichedDescPreview":"Aperçu de la description enrichie","expandRunHistory":"Développer pour afficher l'historique des exécutions","expected":"Attendu : {{value}}","failedAssertions":"Assertions échouées :","failedAssertionsTitle":"Assertions échouées :","failedLoadModels":"Échec du chargement des modèles","featureCreated":"Fonctionnalité créée","featureCriteriaAwaitingSync":"Critères de fonctionnalités en attente de synchronisation d'assertion","featureDeleted":"Fonctionnalité supprimée","featureDeleteFailed":"Échec de la suppression de la fonctionnalité","featureLinkedToAssertion":"Fonctionnalité liée à l'assertion","featureLinkedToTask":"Fonctionnalité liée à la tâche","featureLinkFailed":"Échec de la liaison de la fonctionnalité","featureLinkTaskFailed":"Échec de la liaison de la fonctionnalité à la tâche","featureSaveFailed":"Échec de l'enregistrement de la fonctionnalité","featuresCount_one":"","featuresCount_other":"","featureTitlePlaceholder":"Titre de la fonctionnalité","featureTitleRequired":"Le titre de la fonctionnalité est requis","featureTriaged":"Fonctionnalité triée — tâche créée","featureTriageFailed":"Échec du triage de la fonctionnalité","featureUnlinkedFromAssertion":"Fonctionnalité dissociée de l'assertion","featureUnlinkedFromTask":"Fonctionnalité dissociée de la tâche","featureUnlinkFailed":"Échec de la dissociation de la fonctionnalité","featureUnlinkFromAssertionFailed":"Échec de la dissociation de la fonctionnalité","featureUpdated":"Fonctionnalité mise à jour","filterAll":"Tous les événements","filterAutopilot":"Événements du pilote automatique","filterErrors":"Erreurs et avertissements","filterLabel":"Filtrer","filterSlices":"Événements de découpage et jalon","filterStateChanges":"Changements d'état","filterTasks":"Événements de tâche","fixLineageButton":"","generatedFixFeatures":"Fonctionnalités de correction générées :","generatedFixFeaturesTitle":"Fonctionnalités de correction générées","generatedFromFeature":"Généré depuis la fonctionnalité : {{id}}","goalLinked":"","goalLinkFailed":"","goalPicker":"","goalUnlinked":"","goalUnlinkFailed":"","hideDetails":"Masquer les détails","hideMetadata":"Masquer les métadonnées","hideThinking":"Masquer la réflexion","hideValidationRounds":"Masquer les tours de validation","interviewActionGenerating":"Génération du plan","interviewActionResume":"Reprendre l'entretien","interviewActionRetry":"Réessayer l'entretien","interviewActionReview":"Réviser le plan","interviewComplete":"Plan prêt — révisez et approuvez pour créer la mission.","interviewErrorDefault":"La session a échoué lors du contact avec l'IA.","interviewErrored":"L'entretien a rencontré une erreur. Réessayez depuis cet élément.","interviewGenerating":"Génération de la hiérarchie de mission à partir du contexte de l'entretien.","interviewInProgress":"Entretien en cours","interviewWaiting":"L'entretien attend votre prochaine réponse.","lastValidatorStatus":"Dernier {{status}}","linkAFeature":"Lier une fonctionnalité","linkButton":"Lier","linkedCount_one":"","linkedCount_other":"","linkedCountShort_one":"","linkedCountShort_other":"","linkedFeaturesCount_one":"","linkedFeaturesCount_other":"","linkedFeaturesLabel":"Fonctionnalités liées","linkedGoals":"Objectifs liés","linkedGoalsTitle":"Objectifs liés","linkFeatureButton":"Lier une fonctionnalité","linkFeatureToTask":"Lier la fonctionnalité à la tâche :","linkGoal":"","linkingGoal":"","linkToTask":"Lier à la tâche","loadActivityFailed":"Échec du chargement de l'activité de la mission","loadDetailFailed":"Échec du chargement des détails de la mission","loadFailed":"Échec du chargement des missions","loadGoalsFailed":"","loadingActivity":"Chargement de l'activité de la mission…","loadingMissionDetails":"Chargement des détails de la mission…","loadingMissions":"Chargement des missions…","loadingModels":"Chargement des modèles…","loadMore":"Charger plus","loopState":"État de boucle : {{state}}","milestoneCreated":"Jalon créé","milestoneDeleted":"Jalon supprimé","milestoneDeleteFailed":"Échec de la suppression du jalon","milestoneDescriptionPlaceholder":"Description du jalon...","milestoneSaveFailed":"Échec de l'enregistrement du jalon","milestonesCount_one":"","milestonesCount_other":"","milestoneTitlePlaceholder":"Titre du jalon","milestoneTitleRequired":"Le titre du jalon est requis","milestoneUpdated":"Jalon mis à jour","missionHealthAriaLabel":"Santé de la mission : {{state}}","missionInterviewInProgressDesc":"L'entretien de mission est toujours en cours. Ouvrez cette mission pour continuer la planification.","missionList":"Liste des missions","missionManagerAriaLabel":"Gestionnaire de missions","missionTargetBranchAriaLabel":"Branche cible de la mission","missionTitlePlaceholder":"Titre de la mission","noAssertionFailures":"Aucun échec d'assertion","noAssertionsDefined":"Aucun critère d'acceptation de fonctionnalité ou assertion de contrat défini pour l'instant.","noAssertionsYet":"Aucune assertion de contrat liée n'est encore chargée. Les critères de fonctionnalités ci-dessous seront tout de même validés par IA lors des exécutions de validation.","noEventsYet":"Aucun événement pour l'instant.","noFeaturesLinkedYet":"Aucune fonctionnalité liée pour l'instant","noFixFeaturesGenerated":"Aucune fonctionnalité de correction générée.","noGoalsLinked":"Aucun objectif lié à cette mission","noLinkedGoals":"Aucun objectif lié.","noMilestonesYet":"Aucun jalon pour l'instant. Ajoutez-en un pour commencer.","noMissionsYetBody":"Les missions sont de grandes initiatives qui regroupent des jalons, des découpages et des fonctionnalités dans un seul plan. Planifiez une mission pour décomposer un objectif de bout en bout et laissez les agents l'exécuter en mode pilote automatique.","noMissionsYetTitle":"Aucune mission pour l'instant","none":"Aucun","noSlicesYet":"Aucun découpage pour l'instant","noValidationRunsYet":"Aucune exécution de validation pour l'instant.","openMissionAriaLabel":"Ouvrir la mission {{title}}","orSelect":"Ou sélectionner :","planMilestone":"Planifier le jalon","planNewMission":"Planifier une nouvelle mission","planningModel":"Modèle de planification","planReady":"Plan de mission prêt","planSlice":"Planifier le découpage","planStateNeedsUpdate":"Nécessite une mise à jour","planStateNotPlanned":"Non planifié","planStatePlanned":"Planifié","planTargetTitle":"","planTitle":"Planifier une mission avec l'IA","prepareQuestion":"Préparation de la prochaine question...","progressText_one":"","progressText_other":"","reconnecting":"Reconnexion en cours…","relativeTimeDays_one":"","relativeTimeDays_other":"","relativeTimeHours_one":"","relativeTimeHours_other":"","relativeTimeJustNow":"à l'instant","relativeTimeMinutes_one":"","relativeTimeMinutes_other":"","removeFeature":"Supprimer la fonctionnalité","removeMilestone":"Supprimer le jalon","removeSlice":"Supprimer la tranche","resizeSidebar":"Redimensionner la barre latérale des missions","resumed":"Mission reprise","resumeFailed":"Échec de la reprise de la mission","resumeInterviewAriaLabel":"Reprendre l'entretien {{title}}","resumeMission":"Reprendre la mission","retries":"réessais","retry":"réessai","retryBudgetTitle":"Tentatives d'implémentation et budget de réessai restant","retrying":"Nouvelle tentative en cours...","roadmapLabel":"Feuille de route","run":"Exécution :","runSettings":"Paramètres d'exécution de la mission","runSettingsTitle":"Paramètres d'exécution de la mission","saveButton":"Enregistrer","saveFailed":"Échec de l'enregistrement de la mission","selectGoal":"","selectMissionToView":"Sélectionnez une mission pour voir les détails","sendToBackground":"Envoyer en arrière-plan","sessionActiveAnother":"La session est active dans un autre onglet.","sessionActiveHeartbeat":"Cette session est active dans un autre onglet (pulsation en direct)","sessionActiveTab":"Cette session est active dans un autre onglet","showDetails":"Afficher les détails","showMetadata":"Afficher les métadonnées","showThinking":"Afficher la réflexion","showValidationRounds":"Afficher les tours de validation","sliceActivated":"Découpage activé","sliceActivateFailed":"Échec de l'activation du découpage","sliceCreated":"Découpage créé","sliceDeleted":"Découpage supprimé","sliceDeleteFailed":"Échec de la suppression du découpage","sliceSaveFailed":"Échec de l'enregistrement du découpage","slicesCount_one":"","slicesCount_other":"","sliceTitlePlaceholder":"Titre du découpage","sliceTitleRequired":"Le titre du découpage est requis","sliceTriaged_one":"","sliceTriaged_other":"","sliceTriageFailed":"Échec du triage des fonctionnalités du découpage","sliceUpdated":"Découpage mis à jour","sliceVerification":"Vérification de la tranche","source":"Source :","started":"Mission démarrée — premier découpage activé","startFailed":"Échec du démarrage de la mission","startInterview":"Démarrer l'interview","startMission":"Démarrer la mission","startOver":"Recommencer","statusActive":"Actif","statusArchived":"Archivé","statusBlocked":"Bloqué","statusComplete":"Terminé","statusDefined":"Défini","statusDone":"Terminé","statusFailed":"Échoué","statusInProgress":"En cours","statusPassed":"Réussi","statusPending":"En attente","statusPlanning":"Planification","statusTriaged":"Trié","stopFailed":"Échec de l'arrêt de la mission","stopMission":"Arrêter la mission","stopped_one":"","stopped_other":"","summaryStats":"{{milestones}} jalons, {{features}} fonctionnalités. Vérifiez et modifiez avant d'approuver.","tabActivity_one":"","tabActivity_other":"","tabStructure":"Structure","takeControl":"Prendre le contrôle","takingControl":"Prise de contrôle en cours...","targetBranch":"Branche cible","targetBranchPlaceholder":"p. ex. main","taskIdPlaceholder":"ID de tâche (p. ex. FN-001)","taskIdRequired":"L'ID de tâche est requis","tasksFailed_one":"","tasksFailed_other":"","title":"Missions","titleLabel":"Titre de la mission","titleRequired":"Le titre de la mission est requis","toggleDetails":"Afficher/masquer les détails","transformVision":"Transformer votre vision en une mission structurée","triageAllFeatures":"Trier toutes les fonctionnalités","triageCreateTask":"Trier — créer une tâche","tryExample":"Essayez un exemple:","typeAnswer":"Tapez votre réponse ici...","unlinkedBadge":"Non lié","unlinkFeature":"Dissocier la fonctionnalité","unlinkGoal":"","unlinkTask":"Dissocier la tâche","untitled":"Sans titre","updateButton":"Mettre à jour","updated":"Mission mise à jour","validateFeature":"Valider la fonctionnalité","validationRoundAttempts":"","validationRoundsCount_one":"","validationRoundsCount_other":"","validationRoundsLabel_one":"","validationRoundsLabel_other":"","validationRuns":"Exécutions de validation","validationState":"État de validation","validationStateNotStarted":"Non commencé","validationTelemetry":"Télémétrie de validation","validationTriggered":"Validation déclenchée","validationTriggerFailed":"Échec du déclenchement de la validation","verification":"Vérification :","verificationCriteria":"Critères de vérification","viewMissionFailures":"Voir les échecs de la mission","whatToBuild":"Qu'est-ce que tu veux construire?"}`),Ae={createdFromPlanning:"Créé {{id}} à partir du mode planification",createdFromSubtask:"Créés {{ids}} à partir de la décomposition des sous-tâches",createdMultipleFromPlanning:"Créés {{ids}} à partir du mode planification"},Ce={noChange:"Aucun changement",selectPlaceholder:"Sélectionner un modèle…"},Te={addProviderToFavoritesAriaLabel:"Ajouter {{provider}} aux favoris",addToFavorites:"Ajouter aux favoris",addToFavoritesAriaLabel:"Ajouter {{name}} aux favoris",clearFilter:"Effacer le filtre",count_one:"",count_other:"",descriptions:{executor:"Le modèle d'IA utilisé pour mettre en œuvre cette tâche.",override:"Remplacez les modèles d'IA utilisés pour cette tâche. Si non spécifié, les valeurs par défaut du projet ou globales sont utilisées.",planning:"Le modèle d'IA utilisé pour la spécification des tâches (phase de triage).",reviewer:"Le modèle d'IA utilisé pour examiner le code et les plans de cette tâche.",thinkingLevel:"Contrôle l'effort de raisonnement de l'agent IA. Les niveaux supérieurs utilisent plus de jetons."},emptyStates:{noModels:"Aucun modèle disponible. Configurez l'authentification dans Paramètres pour activer la sélection de modèle."},errors:{failedSaveSettings:"Impossible d'enregistrer les paramètres du modèle",failedSaveThinking:"Impossible d'enregistrer le niveau de réflexion",failedUpdateFavorites:"Impossible de mettre à jour les favoris",failedUpdateModelFavorites:"Impossible de mettre à jour les modèles favoris"},filterPlaceholder:"Filtrer les modèles…",labels:{executorModel:"Modèle d'exécuteur",planningModel:"Modèle de planification",reviewerModel:"Modèle d'examinateur",thinkingLevel:"Niveau de réflexion"},messages:{thinkingLevelSet:"Niveau de réflexion défini sur {{level}}",thinkingLevelSetDefault:"Niveau de réflexion défini sur la valeur par défaut ({{level}})",upToDate:"Les paramètres du modèle sont à jour.",usingDefaults:"Utilisation des modèles par défaut du projet ou globaux."},noResults:"Aucun modèle ne correspond à '{{filter}}'",options:{default:"Défaut",high:"Élevé",low:"Faible",medium:"Moyen",minimal:"Minimal",off:"Désactivé",xhigh:"Très élevé"},placeholders:{selectExecutor:"Sélectionnez un modèle d'exécuteur…",selectPlanning:"Sélectionnez un modèle de planification…",selectReviewer:"Sélectionnez un modèle d'examinateur…"},removeFromFavorites:"Supprimer des favoris",removeFromFavoritesAriaLabel:"Supprimer {{name}} des favoris",removeProviderFromFavoritesAriaLabel:"Supprimer {{provider}} des favoris",states:{loading:"Chargement des modèles disponibles…",usingDefault:"Utilisation de la valeur par défaut"},targetLabels:{executor:"",planning:"",validator:""},titles:{configuration:"Configuration du modèle"},useDefault:"Utiliser la valeur par défaut"},ke={choose:"Choisissez les modèles pour cette tâche. Si non sélectionné, les modèles par défaut seront utilisés.",custom:"Personnalisé",executorModel:"Modèle exécuteur",executorPlaceholder:"Sélectionner le modèle exécuteur…",loading:"Chargement des modèles…",noModels:"Aucun modèle disponible. Configurez l'authentification dans Paramètres pour activer la sélection des modèles.",planningModel:"",planningPlaceholder:"",preset:"Préréglage",reviewerModel:"Modèle réviseur",reviewerPlaceholder:"Sélectionner le modèle réviseur…",title:"Sélectionner les modèles",useDefault:"Utiliser par défaut",usingDefault:"Par défaut"},ye={activityLog:"Journal d'activité",agents:"Agents",automation:"Automatisation",board:"Tableau",chat:"Chat",chatUnreadAriaLabel:"Réponse non lue",collapseSidebar:"",commandCenter:"",devServer:"Serveur de dev",documents:"Artefacts",evals:"Évaluations",expandSidebar:"",files:"Fichiers",gitManager:"Gestionnaire Git",goals:"Objectifs",importFromGitHub:"Importer depuis GitHub",insights:"Insights",list:"Liste",loadingScripts:"Chargement des scripts…",mailbox:"Boîte de réception",mailboxPendingAriaLabel:"Approbations en attente",manageScripts:"Gérer les scripts…",memory:"Mémoire",missions:"Missions",more:"Plus",moreSheetTitle:"Naviguer",noScriptsAddOne:"Aucun script — en ajouter un…",planning:"Planification",primaryNavAriaLabel:"Navigation principale",projects:"Projets",research:"Recherche",resizeSidebar:"",scriptsSubmenuAriaLabel:"Sous-menu des scripts",secrets:"Secrets",settings:"Paramètres",showScriptsAriaLabel:"Afficher les scripts",sidebarAriaLabel:"",skills:"Compétences",stashRecovery:"Récupération de stash",tasks:"Tâches",terminal:"Terminal",todos:"Tâches à faire",usage:"Utilisation",workflows:"Workflows"},Se={addDependencies:"Ajouter des dépendances",assignAgent:"Assigner un agent",assignAgentButton:"Assigner un agent",branchRequired:"Le nom de la branche est obligatoire pour cette stratégie de branche.",clearSelection:"Effacer la sélection",createTask:"Créer une tâche",creating:"Création...",dependencies:"Dépendances",discardChanges:"Abandonner les modifications",failedToCreate:"Impossible de créer la tâche",failedToUpload:"Impossible de télécharger : {{files}}",loadingAgents:"Chargement des agents...",noAgentsAvailable:"Aucun agent disponible",noAvailableTasks:"Aucune tâche disponible",searchTasks:"Rechercher des tâches…",selectAgent:"Sélectionner un agent",selectedCount_one:"",selectedCount_other:"",taskCreated:"{{taskId}} créé",title:"Nouvelle tâche",unsavedChanges:"Vous avez des modifications non enregistrées. Les abandonner ?"},Le={actions:{connect:"Connecter",connecting:"Connexion en cours...",edit:{ariaLabel:"Modifier le nœud",label:"Modifier",title:"Modifier"},health:{ariaLabel:"Exécuter une vérification de santé du nœud",label:"Santé",title:"Vérification de santé"},remove:{ariaLabel:"Supprimer le nœud",ariaLabelConfirm:"Confirmer la suppression du nœud",label:"Supprimer",labelConfirm:"Confirmer",title:"Supprimer",titleConfirm:"Confirmer la suppression"},restart:{ariaLabel:"Redémarrer le conteneur de nœud",label:"Redémarrer",title:"Disponible après FN-3113"},start:{ariaLabel:"Démarrer le conteneur de nœud",label:"Démarrer",title:"Disponible après FN-3113"},stop:{ariaLabel:"Arrêter le conteneur de nœud",label:"Arrêter",title:"Disponible après FN-3113"}},addCliButton:"Ajouter un CLI",addDockerNode:"Ajouter un nœud Docker",addDockerNodeTitle:"Ajouter un nœud Docker géré",addFirstNode:"Ajouter le premier nœud",adding:"Ajout...",addMountButton:"Ajouter un montage",addNode:"Ajouter un nœud",addVariableButton:"Ajouter une variable",apiKey:"Clé API",apiKeyMode:"Mode de clé API",apiKeyNotConfigured:"Non configuré",apiKeyPlaceholder:"Laisser vide pour ne pas modifier",attachProjects:"Joindre les projets existants",attachProjectsHint:"Sélectionnez les projets existants à exécuter sur ce nœud et fournissez le chemin absolu spécifique au nœud pour chacun.",authSync:{differ:"identifiants diffèrent",label:"Sync auth : {{status}}",match:"identifiants correspondent",notSynced:"non synchronisé"},autoAssignment:"Auto (pas d'affectation)",autoGenerate:"Générer automatiquement",availableSoon:"Disponible après FN-3113",cancelButton:"Annuler",closeAriaLabel:"Fermer la vue des nœuds",closeButton:"Fermer",closeLogsAriaLabel:"Fermer les journaux",closeModalAriaLabel:"Fermer la fenêtre des détails du nœud",closeNodeModal:"Fermer la boîte de dialogue Ajouter un nœud",concurrencyMin:"La concurrence doit être d'au moins 1",concurrencyRange:"La concurrence doit être entre {{min}} et {{max}}",containerLogs:"Journaux du conteneur",description:"Enregistrez un nœud Fusion existant en fournissant ses détails de connexion et ses paramètres de concurrence.",discoverBeforeAdding:"Découvrez les projets distants avant d'ajouter ce nœud.",discoveredCount_one:"",discoveredCount_other:"",discoveredRemoteProjectsLabel:"",discovering:"Découverte...",discoverRemoteProjects:"Découvrir les projets distants",discoveryFailed:"Échec de la découverte des projets distants",dismissError:"Ignorer l'erreur",docker:"Docker",dockerBadge:"Nœud Docker géré",dockerConfigMeta:"",dockerConfigSaveFailed:"Échec de l'enregistrement de la config Docker",dockerConfigSaveSuccess:"Configuration Docker enregistrée",dockerConfiguration:"Configuration Docker",dockerContainerId:"ID du conteneur",dockerContainerPath:"Chemin conteneur",dockerContextName:"Nom du contexte",dockerCpuCount:"Nombre de CPU",dockerDefaultCpu:"CPU par défaut",dockerDefaultMemory:"Mémoire par défaut",dockerEnvVars:"Variables d'environnement",dockerExitCode:"Code de sortie :",dockerExtraClis:"CLI supplémentaires",dockerFieldImage:"Image",dockerHost:{local:"Docker local",remote:"Distant : {{host}}"},dockerHostConfig:"Config hôte",dockerHostPath:"Chemin hôte",dockerHostUrl:"URL de l'hôte Docker",dockerLabel:"Docker",dockerMemoryBytes:"Octets mémoire (2 Go = 2147483648)",dockerNeedsRecreate:"Recréation requise",dockerNodeCreated:"Nœud Docker « {{name}} » créé",dockerPersistence:"Persistance",dockerPersistentStorage:"Stockage persistant",dockerPidsLimit:"Limite de PIDs",dockerPort:"Port",dockerResourceDefault:"Par défaut",dockerResources:"Ressources",dockerResourceSizing:"Dimensionnement des ressources",dockerRetainOnDelete:"Conserver à la suppression",dockerStatusUnknown:"Inconnu",dockerTlsCaCert:"Chemin du certificat CA TLS",dockerTlsCert:"Chemin du certificat TLS",dockerTlsKey:"Chemin de la clé TLS",dockerTlsVerify:"Vérification TLS",dockerUptime:"Disponibilité :",dockerVolumeMounts:"Montages de volumes",dockerVolumeName:"Nom du volume",editButton:"Modifier",errorFetching:"Impossible de récupérer les nœuds",errorPersistMappings:"Échec de la persistance des mappages de projet",errors:{connectFailed:"Impossible de se connecter",connectToNode:"Impossible de se connecter au nœud"},errorUnregisterAfterMappingFailure:"Échec de la désinscription du nœud après l'échec du mappage",failedCreateDocker:"Impossible de créer le nœud Docker",failedRefresh:"Impossible d'actualiser les nœuds",failedRemove:"Impossible de supprimer le nœud",fetchContainerLogsFailed:"Échec de la récupération des journaux du conteneur",fetchContainerStatusFailed:"Échec de la récupération du statut du conteneur",fetchingLogs:"Récupération des journaux…",fieldApiKey:"Clé API",fieldCreated:"Créé",fieldMaxConcurrent:"Concurrence max",fieldName:"Nom",fields:{authKey:"Clé d'authentification",host:"Hôte / Adresse IP",maxConcurrent:"Concurrence max",name:"Nom du nœud",port:"Port",url:"URL"},fieldStatus:"Statut",fieldType:"Type",fieldUpdated:"Mis à jour",fieldUrl:"URL",heading:"Nœuds",healthCheckButton:"Vérification de santé",healthCheckComplete:"Vérification de santé du nœud terminée",healthCheckFailed:"Échec de la vérification de santé",healthCheckSuccess:"Vérification de santé terminée pour {{name}}",healthLastCheck:"Dernière vérification :",healthStatus:"Statut :",local:"Local",localDocker:"Docker local",localNodeName:"Local",maxConcurrent:"Concurrence maximale",maxConcurrentHint:"Nombre maximum d'agents de tâche simultanés (1–10)",meshTopology:"Topologie maillée",meshTopologyAriaLabel:"Topologie maillée",metrics:{concurrency:"Concurrence",projects:"Projets"},modal:{closeButton:"Fermer la boîte de dialogue de connexion au nœud",title:"Se connecter au nœud"},modalAriaLabel:"Détails du nœud pour {{name}}",modalTitle:"Détails du nœud",multipleMatches:"Plusieurs projets distants correspondent à ce nom. Entrez manuellement le chemin correct.",name:"Nom",namePlaceholder:"Machine de construction",nameRequired:"Le nom est obligatoire",no:"Non",nodeLabel:"{{name}} ({{type}}) — {{status}}",noLogsAvailable:"Aucun journal disponible",noMatch:"Aucune correspondance exacte du nom distant. Entrez ce chemin manuellement.",noProjects:"Aucun projet n'est actuellement enregistré.",noProjectsAssigned:"Aucun projet n'est assigné à ce nœud.",noProjectsDiscovered:"Aucun projet découvert sur le nœud distant.",noProjectsRunning:"Aucun projet n'est en cours d'exécution sur ce nœud.",noRegistered:"Aucun nœud n'est enregistré pour le moment.",offline:"Hors ligne",online:"En ligne",pathDiscovered:"Chemin faisant autorité distant découvert : {{path}}",pathInvalid:"Le chemin est invalide",pathOnNode:"Chemin sur ce nœud",placeholders:{host:"192.0.2.10 ou my-server.local",name:"Serveur de construction",optional:"Optionnel"},projectPathMappingsLabel:"",provideManually:"Fournir manuellement la clé",pulling:"Récupération…",pullSettings:"Récupérer les paramètres",pullSettingsFailed:"Échec de la récupération des paramètres",pullSettingsSuccess:"Paramètres récupérés avec succès",pushing:"Envoi…",pushSettings:"Envoyer les paramètres",pushSettingsFailed:"Échec de l'envoi des paramètres",pushSettingsSuccess:"Paramètres envoyés avec succès",reachableUrl:"URL accessible / Nom d'hôte",readOnly:"Lecture seule",refresh:"Actualiser",refreshing:"Actualisation…",refreshStatus:"Actualiser le statut",registered:"Nœud « {{name}} » enregistré",registeredCount_one:"",registeredCount_other:"",registerFailed:"Échec de l'enregistrement du nœud",remote:"À distance",removeButton:"Supprimer",removed:"Nœud supprimé",restartButton:"Redémarrer",runtimeNodeLabel:"Nœud d'exécution",saveButton:"Enregistrer",saveDockerConfig:"Enregistrer la config Docker",saving:"Enregistrement…",sectionAssignedProjects:"Projets assignés",sectionDockerManagement:"Gestion Docker",sectionHealth:"Santé",sectionOverview:"Aperçu",sectionProjects:"Projets",sectionSettingsSync:"Synchronisation des paramètres",sectionSyncHistory:"Historique de synchronisation",startButton:"Démarrer",statusConnecting:"Connexion en cours",statusError:"Erreur",statusOffline:"Hors ligne",statusOnline:"En ligne",statusTitle:"Statut : {{status}}",stopButton:"Arrêter",success:{connected:'Connecté à "{{name}}"'},syncAuth:"Synchroniser l'auth",syncAuthFailed:"Échec de la synchronisation de l'auth",syncAuthSuccess:"Identifiants d'authentification synchronisés avec succès",syncDifferences:"Différences :",synced:"Synchronisé",syncing:"Synchronisation…",syncLastSync:"Dernière sync :",syncNeverSynced:"Jamais synchronisé",total:"Total",type:{local:"Local",remote:"Distant"},typeLocal:"Local",typeRemote:"Distant",updateFailed:"Échec de la mise à jour du nœud",updateSuccess:"{{name}} mis à jour",urlRequired:"L'URL est obligatoire pour les nœuds distants",validation:{concurrencyRange:"La concurrence doit être entre {{min}} et {{max}}",hostRequired:"L'hôte / l'adresse IP est requis",nameRequired:"Le nom du nœud est requis",portRange:"Le port doit être entre 1 et 65535"},viewLogsButton:"Voir les journaux",yes:"Oui"},Pe={local:"Local"},Re={error:{authSyncFailed:"La synchronisation d'authentification a échoué",failedToFetchStatus:"Impossible de récupérer l'état de synchronisation",pullFailed:"Échec de la récupération des paramètres",pushFailed:"Échec de l'envoi des paramètres",someRequestsFailed:"Certaines demandes de statut de synchronisation ont échoué"}},xe={authToken:"Jeton d'authentification (optionnel)",continue:"Continuer",continueOnboarding:"Continuer l'intégration",continueSetup:"Continuer la configuration",defaultName:"Serveur distant",description:"Fusion vous aide à planifier, exécuter et examiner les travaux d'ingénierie assistés par l'IA.",localFusion:"Fusion local",onTheStep:"Vous êtes sur",profileName:"Nom du profil",progressText:"{{completed}} sur {{total}} étape{{pluralS}} terminée — Vous êtes sur",remoteServer:"Serveur distant",resumeOnboarding:"Reprendre l'intégration",saving:"Enregistrement…",scanning:"Numérisation…",scanQr:"Scanner QR",serverUrl:"URL du serveur",serverUrlPlaceholder:"https://votre-hote-fusion",stepContinue:"étape. Continuez où vous vous êtes arrêté pour terminer la configuration de votre tableau de bord.",welcome:"Bienvenue dans Fusion"},De={agentId:"ID d'agent",agentIdHint:"Définition d'agent OpenClaw à exécuter (par défaut: main).",agentIdPlaceholder:"main",binaryPath:"Chemin du binaire",binaryPathHint:"Laissez vide pour résoudre openclaw à partir de votre PATH.",binaryPathPlaceholder:"openclaw (par défaut PATH)",cliTimeout:"Délai d'expiration OpenClaw (sec)",cliTimeoutHint:"Délai d'expiration d'exécution côté OpenClaw en secondes (0 = pas de délai).",description:"Pilote le CLI local <code1>openclaw</code1> en tant que sous-processus. Chaque invite Fusion est transmise via <code2>openclaw agent --local --json</code2> ; la définition de l'agent, le modèle et le niveau de réflexion sont résolus par OpenClaw. Cette carte ne définit que les remplacements et le chemin du binaire.",detected:"✓ openclaw détecté{{version}}{{path}}.",gateway:"Acheminer via la passerelle OpenClaw (sinon intégré)",gatewayHint:"Lorsqu'activé, les appels passent par le service de passerelle OpenClaw.",githubLink:"openclaw sur GitHub",model:"Remplacement du modèle",modelHint:"Optionnel — remplace le modèle par défaut d'OpenClaw.",modelPlaceholder:"p. ex. anthropic/claude-haiku-4-5, minimax/MiniMax-M3",notDetectedInstall:"<code>openclaw</code> non détecté. Installez l'agent en amont :",notFound:"✗ openclaw non trouvé",probing:"Sondage du binaire openclaw local…",saved:"Paramètres enregistrés.",savedDetected:"Enregistré · ✓ openclaw détecté{{version}}{{path}}.",savedNotFound:"Enregistré · ✗ openclaw non trouvé",savedProbeFailed:"Enregistré, mais la sonde a échoué.",statusDetected:"✓ Détecté{{version}}{{path}}",statusNotFound:"✗ non détecté sur PATH",subprocess:"Délai d'expiration du sous-processus CLI (ms)",subprocessHint:"Limite côté Fusion avant la suppression du sous-processus CLI (par défaut: {{default}}s).",testFailed:"Test échoué — consultez le statut ci-dessus.",thinking:"Niveau de réflexion",thinkingHint:"Contrôle la quantité de réflexion approfondie que le modèle utilise."},Me={agentHelp:"Choisissez l'agent Paperclip que ce runtime Fusion proxiera.",agentLabel:"Agent",apiKeyHelp:"Clé API de l'agent. Les déploiements de confiance locale peuvent laisser ce champ vide.",apiKeyLabel:"Clé API",apiKeyMinted:"Clé API créée via paperclipai (clé 'fusion-runtime' installée pour l'agent {{agentId}}). Cliquez sur Enregistrer pour persister.",apiKeyPlaceholder:"•••••••• (laisser vide pour conserver l'existant)",apiUrlHelp:"URL de base du serveur Paperclip.",apiUrlLabel:"URL API",cliApiKeyHelp:"Les déploiements de confiance locale ne nécessitent pas de clé.",cliApiKeyLabel:"Clé API (remplacer, optionnel)",cliApiKeyPlaceholder:"Optionnel — requis uniquement pour les modes non localement approuvés",cliBinaryHelp:"Optionnel — informatif ; l'adaptateur lit actuellement le fichier de configuration de l'instance directement.",cliBinaryLabel:"Binaire paperclipai",cliConfigLabel:"Config CLI :",cliConfigPathHelp:"Remplacez le chemin vers config.json. Laissez vide pour utiliser la valeur par défaut.",cliConfigPathLabel:"Chemin de configuration de l'instance",cliDiscoveryFailed:"Échec de la découverte CLI : {{reason}}",cliDiscoveryFailedLabel:"Échec de la découverte CLI : {{reason}}",companyHelp:"Sélectionnez une entreprise Paperclip.",companyIdRequired:"L'ID de l'entreprise est requis pour émettre une clé API Paperclip.",companyLabel:"Entreprise",connected:"Connecté.",connectedAsAgent:"Connecté en tant que {{agentName}}{{companyInfo}}.",connectionModeAriaLabel:"Mode de connexion Paperclip",connectToPopulate:"Connectez-vous pour remplir",description:"Pilotez un agent Paperclip (employé) dans une entreprise Paperclip. Chaque invite envoie une demande en forme de tâche ; la gouvernance, les budgets et les approbations sont appliqués par Paperclip. Attendez-vous à une latence de quelques secondes à quelques minutes par tour.",docsLink:"Documentation Paperclip",githubLink:"GitHub",goalIdHelp:"Associez le travail à un objectif Paperclip.",goalIdLabel:"ID de l'objectif (optionnel)",mintButton:"Créer une clé API via paperclipai",mintFailed:"Émission échouée : {{reason}}. Exécutez d'abord `paperclipai onboard` si votre CLI n'est pas authentifiée.",modeLabel:"Mode de conversation",name:"Paperclip",noAgentsDiscovered:"Aucun agent découvert",noCompaniesDiscovered:"Aucune entreprise découverte",onboardingStep1:"Assurez-vous qu'un serveur Paperclip est en cours d'exécution. Pour installer Paperclip :",optionalPlaceholder:"Optionnel",parentIssueIdHelp:"Limitez le travail sous un problème parent existant.",parentIssueIdLabel:"ID du problème parent (optionnel)",pickCompanyFirst:"Choisissez d'abord une entreprise",projectIdHelp:"Épinglez le travail sur un projet Paperclip spécifique.",projectIdLabel:"ID de projet (optionnel)",resolved:"résolu",runTimeoutHelp:"Plafond local avant que Fusion abandonne une exécution Paperclip.",runTimeoutLabel:"Délai d'exécution (ms)",savedCliDiscoveryFailed:"Enregistré · Échec de la découverte CLI : {{reason}}",savedConnected:"Enregistré · Connecté.",savedConnectedAsAgent:"Enregistré · Connecté en tant que {{agentName}}{{companyInfo}}.",savedProbeFailed:"Enregistré, mais le sondage a échoué.",savedUnreachable:"Enregistré · {{reason}}",settingsSaved:"Paramètres enregistrés.",statusCliDiscoveryFailed:"Échec de la découverte CLI : {{reason}}",statusConnected:"Connecté",statusConnectedAs:"Connecté en tant que {{agentName}}{{roleInfo}}{{companyInfo}}",statusProbing:"Sondage du serveur Paperclip…",statusUnreachable:"{{reason}}",tabApi:"API (URL + jeton)",tabCliAutoDerve:"CLI local (dérivation automatique)",testFailed:"Le test a échoué — voir le statut ci-dessus.",unreachable:"{{reason}}"},we={filterHint:""},Ie={addButton:"Ajouter",discoveredDescription:"Extensions installées résolues à partir de paquets et de chemins configurés.",discoveredTitle:"Extensions découvertes",enterSource:"Veuillez entrer une source de paquet",extensionDisabled:"Extension désactivée",extensionEnabled:"Extension activée",filterExtensions:"Extensions :",filterPrompts:"Invites :",filterSkills:"Compétences :",filterThemes:"Thèmes :",installFailed:"Impossible d'installer le paquet : {{error}}",installing:"Installation…",installSuccess:"Paquet installé avec succès",loadExtensionsFailed:"Impossible de charger les extensions : {{error}}",loading:"Chargement des paramètres Pi…",loadingExtensions:"Chargement des extensions…",loadingFailed:"Impossible de charger les paramètres Pi.",loadSettingsFailed:"Impossible de charger les paramètres Pi : {{error}}",noExtensions:"Aucune extension découverte.",noPackages:"Aucun paquet configuré.",noPackagesHelp:"Ajoutez une source de paquet ci-dessus pour commencer.",packagePlaceholder:"npm:pi-extension-name ou git:https://github.com/...",packageRemoved:"Paquet supprimé",refreshButton:"Actualiser",refreshExtensions:"Actualiser les extensions",reinstallButton:"Réinstaller la compétence Fusion",reinstallFailed:"Impossible de réinstaller la compétence Fusion : {{error}}",reinstalling:"Réinstallation de Fusion…",reinstallSuccess:"Compétence Fusion réinstallée avec succès",removeFailed:"Impossible de supprimer le paquet : {{error}}",removePackage:"Supprimer le package",removePackageLabel:"Supprimer le package {{label}}",removeResource:"Supprimer {{path}}",resourceRemoved:"{{resource}} supprimé",sectionExtensions:"Extensions",sectionPrompts:"Invites",sectionSkills:"Compétences",sectionThemes:"Thèmes",title:"Extensions Pi",toggleExtension:"Activer/désactiver {{name}}",updateFailed:"Impossible de mettre à jour l'extension : {{error}}",updateSettingsFailed:"Impossible de mettre à jour les paramètres : {{error}}"},Fe={additionalComments:"Commentaires supplémentaires (facultatif)",additionalCommentsPlaceholder:"Ajoutez du contexte ou des précisions supplémentaires…",addSubtask:"Ajouter une sous-tâche",advancedSettings:"Paramètres de planification avancés",aiThinking:"L'IA réfléchit…",archiveSession:"Archiver la session",backToSessions:"Retour aux sessions",backToSummary:"Retour au résumé",baseBranch:"Cible de fusion / branche de base (facultatif)",baseBranchPlaceholder:"main",branchAutoNew:"Créer une branche nommée automatiquement par tâche",branchCustomNew:"Créer une nouvelle branche personnalisée",branchExisting:"Utiliser une branche existante",branchName:"Nom de la branche",branchNameRequired:"Le nom de la branche est requis pour cette stratégie.",branchProjectDefault:"Utiliser la branche par défaut du projet",branchStrategy:"Stratégie de branche",breakdownSubheading:"Vérifiez et modifiez les sous-tâches générées à partir de votre plan. Ajustez les titres, descriptions, tailles, priorités et dépendances avant de créer.",breakingDown:"Décomposition…",breakIntoTasks:"Décomposer en tâches",breakIntoTasksTitle:"Décomposer le plan en plusieurs tâches avec dépendances",collapse:"Réduire",continue:"Continuer",createSingleTask:"Créer une seule tâche",createTasks:"Créer les tâches",creating:"Création…",delete:"Supprimer",deleteSession:"Supprimer la session",dependencies:"Dépendances",dependencyCycle:"Les dépendances contiennent un cycle. Supprimez les références circulaires avant de créer les tâches.",depthBlurb:"La taille du plan définit la profondeur d'entretien par défaut. Le champ Questions permet de la remplacer par un nombre exact.",depthLarge:"Grand",depthMedium:"Moyen",depthSmall:"Petit",description:"Description",dismiss:"Ignorer",dragToReorder:"Faire glisser pour réorganiser",examplePlan1:"Créer un système d'authentification avec connexion et inscription",examplePlan2:"Ajouter le support du mode sombre au tableau de bord",examplePlan3:"Créer un point de terminaison API pour exporter les tâches en CSV",examplePlan4:"Refactoriser le composant de carte de tâche pour de meilleures performances",expand:"Développer",failedCreateTask:"Impossible de créer la tâche",failedCreateTasks:"Impossible de créer les tâches",failedDeleteSession:"Impossible de supprimer la session",failedGoBack:"Impossible de revenir à la question précédente",failedLoadModels:"Impossible de charger les modèles",failedLoadSession:"Impossible de charger la session",failedRefinePlan:"Impossible d'affiner le plan",failedStartBreakdown:"Impossible de démarrer la décomposition",failedStartSession:"Impossible de démarrer la session de planification",failedSubmitResponse:"Impossible d'envoyer la réponse",firstSubtaskNoDeps:"La première sous-tâche ne peut pas avoir de dépendances.",generatingQuestion:"Génération de la prochaine question…",generationStopped:"Génération arrêtée. Vous pouvez réessayer ou démarrer une nouvelle session.",hideArchived:"Masquer les archivées",hideThinking:"Masquer la réflexion",initialHeading:"Transformez votre idée en tâche détaillée",initialSubheading:"Décrivez ce que vous voulez construire en langage simple. L'IA posera des questions de clarification et vous aidera à structurer une tâche bien définie.",keyDeliverables:"Livrables clés",loadingModels:"Chargement des modèles…",markdown:"Markdown",moveDown:"Déplacer vers le bas",moveSubtaskDown:"Déplacer la sous-tâche vers le bas",moveSubtaskUp:"Déplacer la sous-tâche vers le haut",moveUp:"Déplacer vers le haut",newPlanningSession:"Nouvelle session de planification",newSession:"Nouvelle session",noActiveQuestion:"Aucune question active dans la session",noPreviousSubtasks:"Aucune sous-tâche précédente disponible.",noSavedSessions:"Aucune session sauvegardée. Démarrez-en une à droite pour la voir ici.",plain:"Texte brut",planningComplete:"Planification terminée !",planningCompleteSubheading:"Vérifiez et affinez votre tâche avant de la créer.",planningDepth:"Profondeur de planification",planningModel:"Modèle de planification",planningModelBlurb:"Choisit le modèle qui conduit l'entretien de planification et rédige l'ébauche finale.",planningSessions:"Sessions de planification",priority:"Priorité",questionProgress:"Question {{progress}} sur ~3",questionsAuto:"Auto",questionsLabel:"Questions",reconnecting:"Reconnexion…",refineFurther:"Affiner davantage",relativeTimeDays_one:"",relativeTimeDays_other:"",relativeTimeHours_one:"",relativeTimeHours_other:"",relativeTimeJustNow:"à l'instant",relativeTimeMinutes_one:"",relativeTimeMinutes_other:"",relativeTimeWeeks_one:"",relativeTimeWeeks_other:"",remove:"Supprimer",retryFailed:"Nouvelle tentative échouée. Veuillez réessayer.",retrying:"Nouvelle tentative…",sessionActiveOtherTab:"Cette session est active dans un autre onglet",sessionActiveOtherTabLive:"Cette session est active dans un autre onglet (signal de vie actif)",sessionFailed:"La session a échoué lors de la connexion à l'IA.",sessionFailed2:"Échec de la session",showArchived:"Afficher les archivées",showFormattedMarkdown:"Afficher le markdown formaté",showQA:"Afficher les Q&R",showRawText:"Afficher le texte brut",showThinking:"Afficher la réflexion",sizeLarge:"L (Grand)",sizeMedium:"M (Moyen)",sizeSmall:"S (Petit)",startPlanning:"Démarrer la planification",statusComplete:"Terminé",statusError:"Erreur",statusGenerating:"En cours",statusNeedsInput:"En attente",stop:"Arrêter",subtaskDescription:"Description",subtaskPriority:"Priorité",subtaskSize:"Taille",subtaskTitle:"Titre",suggestedDependencies:"Dépendances suggérées",suggestedSize:"Taille suggérée",takeControl:"Prendre le contrôle",takingControl:"Prise de contrôle…",thinkingElapsed:"Réflexion… ({{seconds}} s)",title:"Mode planification",tryAnExample:"Essayez un exemple :",typeAnswerPlaceholder:"Saisissez votre réponse ici…",unarchiveSession:"Désarchiver la session",untitled:"Sans titre",untitledSession:"Session sans titre",usingDefault:"Modèle par défaut",whatToBuild:"Que voulez-vous construire ?",whatToBuildPlaceholder:"ex : Construire un système d'authentification avec connexion, inscription et réinitialisation du mot de passe…"},Ee={addItem:"Ajouter un élément",aiScanDisabled:"Analyse IA au chargement désactivée",aiScanEnabled:"Analyse IA au chargement activée",aiScanHint:"Activer cette option met uniquement à jour la configuration. Utilisez Réanalyser et recharger pour l'exécuter maintenant.",author:"Auteur :",backToList:"Retour à la liste des plugins",browseRegistry:"",builtinInstalledGlobally:"{{name}} installé globalement",builtinInstallFailed:"Échec de l'installation de {{name}} : {{error}}",builtinMetadataOnly:"Métadonnées intégrées uniquement",builtinNoPackage:"{{name}} est intégré et ne possède pas encore de package installable",builtinPluginRecommendations:"Recommandations de plugins intégrés",builtinPlugins:"Plugins intégrés",builtinPluginsCatalog:"Catalogue de plugins intégrés pour les runtimes et les intégrations.",cancel:"Annuler",checkingSetup:"Vérification de la configuration…",componentUnavailable:"Composant du plugin indisponible",couldNotResolve:"Le tableau de bord n'a pas pu résoudre cette surface de plugin du registre d'hôte statique.",disabledForProject:"{{name}} désactivé pour ce projet",disableInProject:"Désactiver dans le projet",disablePlugin:"Désactiver {{name}}",disablePluginFailed:"Échec de la désactivation du plugin : {{error}}",droidOnboardingTip:"Astuce : Activez Droid CLI pour réutiliser votre abonnement Factory AI sans ajouter de clé API.",droidRecommendDesc:"Utilisez votre session Droid CLI locale comme fournisseur d'IA dans Fusion.",droidRecommendTitle:"Activer Droid CLI",enableAiScanBeforeLoad:"Activer l'analyse IA avant chargement/rechargement",enableAiSecurityScan:"Activer l'analyse de sécurité IA au chargement",enabledForProject:"{{name}} activé pour ce projet",enableFailed:"Échec de l'activation de {{name}} : {{error}}",enableInProject:"Activer dans le projet",enablePlugin:"Activer {{name}}",enablePluginFailed:"Échec de l'activation du plugin : {{error}}",experimental:"Expérimental",findings_one:"",findings_other:"",homepage:"Page d'accueil :",install:"Installer",installedGlobally:"Plugin installé globalement",installedPlugins:"Plugins installés",installFailed:"Échec de l'installation du plugin : {{error}}",installFromRegistry:"",installHint:"Naviguez jusqu'à la racine du package du plugin (contenant manifest.json) ou un répertoire dist compilé.",installing:"Installation…",installNamed:"Installer {{name}}",installPathPlaceholder:"Chemin absolu vers le répertoire du plugin ou le dossier dist",installPathRequired:"Veuillez saisir un chemin de plugin",installPluginGlobally:"Installer le plugin globalement",installSetup:"Installer la configuration",loadFailed:"Échec du chargement des plugins : {{error}}",loading:"Chargement…",loadingPlugins:"Chargement des plugins…",manage:"Gérer",noConfigurableSettings:"Aucun paramètre configurable.",noHostRegistration:"",noPluginsHint:"Installez un plugin pour commencer, ou utilisez le catalogue intégré ci-dessous.",noPluginsInstalled:"Aucun plugin installé.",noSecurityScan:"Aucune analyse de sécurité n'a encore été effectuée.",openAuthentication:"Ouvrir l'authentification",openOnboarding:"Ouvrir l'intégration",refresh:"Actualiser",refreshPluginList:"Actualiser la liste des plugins",registryByAuthor:"",registryCategory:"",registryCategoryAll:"",registryCategoryIntegration:"",registryCategoryRuntime:"",registryComingSoon:"",registryDescription:"",registryEmpty:"",registryEmptySearch:"",registryInstalled:"",registryInstallFailed:"",registryLoadFailed:"",registryLoading:"",registryNotInstallable:"",registryPluginResults:"",reload:"Recharger",reloaded:"{{name}} rechargé",reloadFailed:"Échec du rechargement du plugin : {{error}}",reloading:"Rechargement…",removeItem:"Supprimer l'élément",rescanAndReload:"Réanalyser et recharger",rescanFailed:"Échec de la réanalyse du plugin : {{error}}",rescanned:"{{name}} réanalysé",retry:"",saveSettings:"Enregistrer les paramètres",saveSettingsFailed:"Échec de l'enregistrement des paramètres : {{error}}",searchRegistry:"",searchRegistryPlaceholder:"",securityScan:"Analyse de sécurité",selectOption:"Sélectionner…",settings:"Paramètres",settingsSaved:"Paramètres enregistrés",settingUp:"Configuration…",setupInstalled:"Configuration de {{name}} installée",setupInstallFailed:"Échec de l'installation de la configuration de {{name}} : {{error}}",setupReady:"Configuration prête",setupRequired:"Configuration requise",startPluginToCheckSetup:"Démarrez le plugin pour vérifier la configuration",statusBuiltIn:"Intégré",statusInstalled:"Installé",statusNotInstalled:"Non installé",uninstallConfirm:"Voulez-vous vraiment désinstaller « {{name}} » globalement (tous les projets) ?",uninstalledGlobally:"{{name}} désinstallé globalement",uninstallFailed:"Échec de la désinstallation du plugin : {{error}}",uninstallGlobally:"Désinstaller globalement",uninstallGloballyTitle:"Désinstaller globalement",uninstallTitle:"Désinstaller le plugin globalement",unknownError:"erreur inconnue",updateFailed:"Échec de la mise à jour du plugin : {{error}}",version:"Version :",viewUnavailable:""},qe={authFail:"Exécutez gh auth login et réessayez.",authOk:"L'authentification CLI GitHub est disponible.",baseBranch:"Branche de base",bodyLabel:"Corps",branchRemoteFail:"Poussez la branche vers le serveur distant avant de créer une RP.",branchRemoteOk:"La branche distante est disponible.",changedFilesLabel:"Fichiers modifiés",checkAuth:"Authentification GitHub disponible",checkBranch:"Branche envoyée vers le serveur distant",checkCommits:"Commits disponibles",checkConflicts:"Aucun conflit avec la base",commitsFail:"Aucun commit trouvé pour cette branche.",commitsLabel:"Commits",commitsOk:"Les commits sont prêts à être soumis.",conflictsDetected:"Conflits détectés. Résolvez les conflits ou relancez les vérifications de pré-vol.",createAsDraft:"Créer en tant que brouillon",createDraftPr:"Créer une RP de brouillon",createPr:"Créer une RP",createTitle:"Créer une demande de tirage",dismissError:"Ignorer l'erreur de RP",noConflicts:"Aucun conflit de fusion détecté.",preflightChecks:"Vérifications de pré-vol",previewTitle:"Aperçu des différences et des commits",regenerate:"Régénérer",rerunPreflight:"Relancer les vérifications de pré-vol",revertToAi:"Revenir à la version IA",titleLabel:"Titre",usingTemplate:"Utilisation de <code>.github/pull_request_template.md</code>",assignees:"",dismissConflictResolutionError:"",dismissPushBranchError:"",error:{actionOpen:"",actionRun:"",docs:""},generatingBody:"",generatingTitle:"",labels:"",loadingOptions:"",loadingPreflight:"",noChangedFiles:"",noCommits:"",pushBranch:{button:"",message:"",title:""},resolveConflicts:{button:"",message:"",title:""},reviewers:"",view:{agentDisagreed:"",agentReplyFix:"",approve:"",autoMerge:"",close:"",confirmMerge:"",creating:"",creationFailed:"",loading:"",merge:"",mergeableLabel:"",mergeDisabledUntilVerified:"",none:"",noReviewThreads:"",requestRetry:"",resolveConflictsBeforeMerge:"",resolveConflictsOnGithub:"",responseAlreadyInProgress:"",responsePending_one:"",responsePending_other:"",retryCreation:"",reviewLabel:"",threadFixed:"",threadPending:"",verifyingGithub:"",backToList:"",listEmpty:"",listError:"",listItemLabel:"",listLoading:"",listTitle:""}},je={blockedDescription:"Vous pouvez afficher l'aperçu dans un onglet du navigateur séparé.",blockedTitle:"L'aperçu ne peut pas être intégré",errorTitle:"Impossible de charger l'aperçu",loading:"Chargement de l'aperçu...",openInNewTab:"Ouvrir dans un nouvel onglet"},He={activeTasks:"Tâches actives",agents:"Agents",cannotPauseWhileInitializing:"",completed:"Complétée",confirm:"Confirmer",confirmRemove:"Confirmer la suppression",confirmRemoveProject:"Confirmer la suppression du projet",daysAgo_one:"",daysAgo_other:"",hoursAgo_one:"",hoursAgo_other:"",justNow:"À l'instant",lastActivity:"Dernière activité :",minutesAgo_one:"",minutesAgo_other:"",moreItems_one:"",moreItems_other:"",never:"Jamais",nodeAvailability:"Disponibilité du nœud du projet",noHealthData:"Aucune donnée de santé disponible",open:"Ouvrir",openProject:"Ouvrir le projet",pause:"",pauseProject:"",removeProject:"Supprimer le projet",resume:"",resumeProject:""},Ne={editName:"Modifier le nom",empty:"Aucun projet détecté",emptyHint:"Essayez un chemin de base différent ou ajoutez un projet manuellement",noDbWarning:"Aucune base de données fn trouvée - sera initialisée",registerAll:"Enregistrer tout",registering:"Enregistrement en cours...",registerSelected_one:"",registerSelected_other:"",selectAll_one:"",selectAll_other:"",selectedCount_one:"",selectedCount_other:""},Be={actions:{favoritesError:"Impossible de mettre à jour les favoris",modelFavoritesError:"Impossible de mettre à jour les modèles favoris",pauseError:"Impossible de mettre en pause le projet {{name}}",pauseSuccess:"Le projet {{name}} a été mis en pause",removeError:"Impossible de supprimer le projet {{name}}",removeSuccess:"Le projet {{name}} a été supprimé",resumeError:"Impossible de reprendre le projet {{name}}",resumeSuccess:"Le projet {{name}} a été repris"},activeTasksLabel:"Tâches actives",addFirstProject:"Ajouter votre premier projet",addProject:"Ajouter un projet",allNodes:"Tous les nœuds",completedLabel:"Complétées",emptyStateDescription:"Commencez par ajouter votre premier projet. Les projets vous permettent d'organiser et de suivre les tâches dans plusieurs référentiels.",erroredLabel:"Erreurs",filterActive:"Actifs",filterAll:"Tous",filterByNode:"Filtrer par nœud",filterErrored:"Erreurs",filterPaused:"En pause",nodesLabel:"Nœuds",noMatch:"Aucun projet ne correspond au filtre actuel",noProjectsFound:"Aucun projet trouvé",setup:{success:"Le projet {{name}} a été enregistré avec succès"},showAll:"Afficher tous les projets",sortActivityNewest:"Dernière activité (Plus récente)",sortActivityOldest:"Dernière activité (Plus ancienne)",sortNameAsc:"Nom (A-Z)",sortNameDesc:"Nom (Z-A)",sortProjects:"Trier les projets",sortStatusAsc:"Statut (Erreur → Actif)",sortStatusDesc:"Statut (Actif → Erreur)",title:"Projets",totalLabel:"Total"},ze={addBookmark:"",allProjects:"Tous les projets",ariaLabel:"Sélectionner le projet",bookmarked:"",clearSearch:"Effacer la recherche",exact:"",exactMatch:"",noResults:"Aucun projet ne correspond à votre recherche",projects:"",projectsTitle:"",recent:"Récent",removeBookmark:"",searchAriaLabel:"",searchPlaceholder:"Rechercher des projets...",switchProjectTitle:"",viewAll:"Voir tous les projets"},_e={actions:{addModel:"+ Ajouter un modèle",detecting:"Détection en cours…",detectModels:"Détecter les modèles",detectModelsTitle:"Appeler le point d'accès /models du fournisseur pour découvrir les modèles disponibles",removeModel_one:"",removeModel_other:"",save:"Enregistrer le fournisseur",saving:"Enregistrement en cours..."},addCustom:"Ajouter un fournisseur personnalisé",apiKeyKeepPlaceholder:"",apiKeyLabel:"Clé API",apiTypeAnthropic:"Compatible avec Anthropic",apiTypeGoogle:"Google Generative AI",apiTypeInvalid:"Le type d'API est invalide.",apiTypeLabel:"Type d'API",apiTypeOpenAi:"Compatible avec OpenAI",apiTypeOpenAiResp:"Réponses OpenAI",baseUrlLabel:"URL de base",deleteConfirm:'Supprimer le fournisseur personnalisé "{{name}}"?',deleteLabel:"Supprimer {{name}}",detectError:{allDuplicate:"Tous les modèles découverts sont déjà dans la liste.",failed:"Impossible de détecter les modèles",noModels:"Aucun modèle trouvé. Le fournisseur peut nécessiter une clé API.",urlRequired:"L'URL de base est requise pour détecter les modèles."},detecting:"Détection en cours…",detectModels:"Détecter les modèles",detectTitle:"Détection automatique des modèles à partir du point de terminaison /models du fournisseur",editLabel:"Modifier {{name}}",failedDelete:"Échec de la suppression du fournisseur.",failedDetect:"Échec de la détection des modèles",failedLoad:"Échec du chargement des fournisseurs personnalisés.",failedSave:"Échec de l'enregistrement du fournisseur.",fields:{apiKey:"Clé API",apiType:"Type d'API",baseUrl:"URL de base",contextWindow:"Fenêtre de contexte",id:"ID du fournisseur",maxTokens:"Tokens max",modelId:"ID du modèle",modelName:"Nom d'affichage",modelNameLabel:"",models:"Modèles",name:"Nom d'affichage",reasoning:"Raisonnement"},llamaCpp:{disable:"Désactiver",disabling:"Désactivation en cours…",enable:"Activer",enabling:"Activation en cours…",probing:"Sondage du serveur llama.cpp…",reachable:"Serveur accessible à {{url}}",test:"Test",testing:"Test en cours…",title:"llama.cpp — via serveur HTTP",unavailable:"Serveur indisponible: {{reason}}"},loading:"Chargement des fournisseurs personnalisés…",modelsLabel:"Modèles disponibles",nameLabel:"Nom du fournisseur",nameRequired:"Le nom du fournisseur est requis.",noModelsFound:"Aucun modèle trouvé. Le fournisseur peut nécessiter une clé API.",noneConfigured:"Aucun fournisseur personnalisé configuré.",placeholders:{apiKey:"sk-..., MY_API_KEY, ou !command"},saveChanges:"Enregistrer les modifications",saveProvider:"Enregistrer le fournisseur",saving:"Enregistrement en cours…",urlInvalid:"L'URL de base doit être une URL http/https valide.",urlRequired:"L'URL de base est requise.",urlRequiredForDetect:"L'URL de base est requise pour détecter les modèles.",validation:{apiTypeRequired:"Le type d'API est requis.",idConflict:"L'ID du fournisseur entre en conflit avec un fournisseur intégré.",idKebabCase:"L'ID du fournisseur doit être en kebab-case.",idRequired:"L'ID du fournisseur est requis.",modelId:"Chaque modèle doit avoir un ID de modèle.",modelRequired:"Au moins un modèle est requis.",urlProtocol:"L'URL de base doit utiliser http ou https.",urlRequired:"L'URL de base est requise.",urlValid:"L'URL de base doit être une URL valide."}},Oe={errorAttachmentsBeforeSession:"Impossible d'envoyer des pièces jointes avant que la session de chat soit prête",errorAttachmentsWhileStreaming:"Impossible d'envoyer des pièces jointes pendant qu'une réponse est en cours de diffusion",errorGettingResponse:"Impossible d'obtenir une réponse",errorInitializingChat:"Impossible d'initialiser le chat",errorRefreshingSessions:"Impossible de rafraîchir les sessions de chat",errorStartingNewChat:"Impossible de démarrer un nouveau chat"},Ue={bouncedEntered:"{{bounced}} rejetés / {{entered}} entrés ({{days}} derniers jours)",countingSince:"Comptage depuis {{date}}",details:"Détails",duration:{heading:"Durée",moreStats:"Plus de statistiques",p50:"P50",p50Raw:"P50 brut : {{value}} ms",p95:"P95",p95Raw:"P95 brut : {{value}} ms",reason:"Raison : {{reason}}",sampleCount_one:"",sampleCount_other:"",samples_one:"",samples_other:""},failedToLoad:"",failureRate:"Taux d'échec : {{rate}}",flowChart:{aria:"",bounced:"",empty:"",entered:"",heading:""},heading:"Fiabilité",hideEmptyDays:"Masquer les jours vides",inReviewFlow:"Flux en révision",insufficientData:"Données insuffisantes — {{reason}}",loading:"",mergeAttempts:{heading:"Tentatives de fusion",histogramTotal_one:"",histogramTotal_other:"",max:"Max",mean:"Moyenne",moreStats:"Plus de statistiques",reason:"Raison : {{reason}}",tasksCounted_one:"",tasksCounted_other:""},mergeAttemptsChart:{aria:"",empty:"",heading:""},reason:"Raison : {{reason}}",resetBaseline:"Réinitialiser la ligne de base : {{date}}",resetModal:{confirm:"Confirmer la réinitialisation",description:"Cela définit une nouvelle ligne de base pour les statistiques de fiabilité. Les événements historiques antérieurs à l'heure de réinitialisation sont exclus des décomptes mais ne sont pas supprimés.",failedError:"Impossible de réinitialiser les statistiques de fiabilité",title:"Réinitialiser les statistiques de fiabilité ?"},resetStats:"Réinitialiser les statistiques",showEmptyDays:"Afficher les jours vides",successRateLabel:"Taux de réussite en révision (7 derniers jours)",table:{bounced:"Rejetés",date:"Date",entered:"Entrés"},window:"Fenêtre : {{start}} → {{end}}"},Ge={actionFailed:"L'action a échoué",addCredentialsHint:"Ajoutez les informations d'identification du fournisseur dans les paramètres d'authentification.",alwaysOn:"Toujours activé",attachExport:"Joindre l'artefact d'exportation Markdown",createRun:"Créer une exécution",createRunFailed:"Échec de la création de l'exécution",createTask:"Créer une tâche",createTaskButton:"Créer une tâche",createTaskTitle:"Créer une tâche à partir du résultat",currentDefaults:"",defaultFindingHeading:"Résultat de recherche",descriptionLabel:"Description",disabled:"La recherche est désactivée pour ce projet.",enableResearchHint:"Activez les paramètres de recherche du projet pour créer des exécutions.",enrichTask:"Enrichir la tâche",enrichTaskButton:"Enrichir la tâche",enrichTaskTitle:"Enrichir la tâche existante",enterTaskId:"Entrez l'ID de la tâche",exportedFile:"Exporté {{filename}}",exportFailed:"L'exportation a échoué",exportHtml:"Exporter en HTML",exportJson:"Exporter en JSON",exportMd:"Exporter en MD",findingLabel:"Résultat :",loadingRuns:"Chargement des exécutions…",loadingTasks:"Chargement des tâches…",missingApiKey:"Clé API manquante pour {{provider}}.",noPreview:"Aucun aperçu disponible.",noRunSelected:"Aucune exécution sélectionnée",noRunsYet:"Aucune exécution pour l'instant",noSourcesAvailable:"Aucune source de recherche activée n'est disponible pour ce projet.",noSummaryYet:"Pas de résumé pour l'instant.",notSet:"",openAuthSettings:"Ouvrir les paramètres d'authentification",openResearchSettings:"Ouvrir les paramètres de recherche",priorityHigh:"Élevé",priorityLabel:"Priorité",priorityLow:"Faible",priorityNormal:"Normal",priorityUrgent:"Urgent",providersLabel:"Fournisseurs",queryLabel:"Requête",runCancelled:"Exécution annulée",runCreated:"Exécution de recherche créée",runHistory:"Historique des exécutions",runLabel:"Exécution :",runRetried:"Exécution relancée",searchRunsPlaceholder:"Rechercher les exécutions",selectRunToViewDetails:"Sélectionnez une exécution pour voir les détails.",statCompleted:"Terminée",statFailed:"Échoué",statRunning:"En cours",subtitle:"Recherche et synthèse citées : rassemblez les sources, récupérez le contenu et synthétisez les résultats.",targetTaskLabel:"Tâche cible",taskCreatedFromResearch:"Tâche créée à partir de la recherche",taskEnrichedFromResearch:"Tâche enrichie par la recherche",title:"Recherche",titleLabel:"Titre",unavailable:"La recherche est indisponible pour ce projet.",viewLabel:"Affichage de la recherche"},Ve={closeExpandedView:"",collapse:"",expand:"",expandView:"",label:"",resize:"",viewExpanded:"",views:"",resizeExpandedView:""},We={andMore_one:"",andMore_other:"",delete:"Supprimer",deleteMessage:"Supprimer la routine {{name}} ? Cette action ne peut pas être annulée.",deleteName:"Supprimer {{name}}",deleteTitle:"Supprimer la routine",disable:"Désactiver",disableName:"Désactiver {{name}}",edit:"Modifier",editName:"Modifier {{name}}",enable:"Activer",enableName:"Activer {{name}}",resultFailed:"Échoué",resultSuccess:"Succès",runHistory_one:"",runHistory_other:"",runNameNow:"Exécuter {{name}} maintenant",running:"Exécution…",runNow:"Exécuter maintenant",stepCount_one:"",stepCount_other:""},Ke={cannotChangeWhileActive:"La substitution du nœud ne peut pas être modifiée tant que la tâche est active.",clearOverride:"Effacer la substitution",effectiveNode:"Nœud effectif",errorLoadingNodes:"Impossible de charger les nœuds",errorUpdatingOverride:"Impossible de mettre à jour la substitution du nœud",intro:"Affichez le nœud d'exécution effectif et contrôlez la substitution de nœud par tâche.",localNoConfiguration:"Local (pas de routage configuré)",lockedWhileActive:"Le routage est verrouillé pendant que cette tâche est active. La substitution du nœud ne peut pas être modifiée tant que la tâche reste active.",nodeOptionLabel:"",nodeUnavailable:"nœud indisponible ou inconnu",overrideCleared:"Substitution du nœud effacée",overrideSection:"Substitution du nœud",overrideSetTo:"Substitution définie sur",overrideUpdated:"Substitution du nœud mise à jour",selectLabel:"Sélectionner le nœud d'exécution",source:{noRouting:"Aucun routage",override:"Substitution par tâche",projectDefault:"Défaut du projet"},summarySection:"Résumé du routage",title:"Routage des tâches",unavailablePolicy:"Politique en cas de nœud indisponible",unhealthy:"Défaillant",useProjectDefault:"Utiliser le défaut du projet"},Qe={nousResearchLogoAlt:""},Je=JSON.parse(`{"actionAiPrompt":"Invite IA","actionCommand":"Commande","actionCreateTask":"Créer une tâche","actionModeAdvanced":"Multi-étapes","actionModeAdvancedHint":"Exécuter plusieurs actions séquentiellement","actionModeAriaLabel":"Mode d'action","actionModeLabel":"Mode d'action","actionModeSimple":"Simple","actionModeSimpleHint":"Exécuter une commande, une invite ou une action de création de tâche","actionTypeAiPrompt":"Invite IA","actionTypeAriaLabel":"Type d'action","actionTypeCommand":"Commande","actionTypeCreateTask":"Créer une tâche","actionTypeLabel":"Type d'action","addAiPromptStep":"Ajouter une étape d'invite IA","addCommandStep":"Ajouter une étape de commande","addCreateTaskStep":"Ajouter une étape de création de tâche","advancedMode":"Multi-étapes","advancedModeHelp":"Exécuter plusieurs étapes séquentiellement (commandes et invites IA)","aiPromptType":"Invite IA","andMore_one":"","andMore_other":"","apiEndpointHint":"Chemin du point de terminaison API qui déclenche cette routine","apiEndpointLabel":"Point de terminaison API","apiEndpointPlaceholder":"/api/routine/my-routine","automationCount_one":"","automationCount_other":"","cancelButton":"Annuler","catchUpPolicyHint":"Que faire lorsqu'une exécution planifiée est manquée","catchUpPolicyLabel":"Politique de rattrapage","catchUpPolicyRunAll":"Exécuter toutes les exécutions manquées","catchUpPolicyRunOne":"Exécuter la dernière exécution manquée","catchUpPolicySkip":"Ignorer les exécutions manquées","columnTodo":"À faire","columnTriage":"Triage","command":"Commande","commandHelp":"Commande shell à exécuter. S'exécute avec vos autorisations utilisateur.","commandHint":"Commande shell à exécuter.","commandLabel":"Commande","commandPlaceholder":"p. ex. npm test","commandRequired":"La commande est requise","commandType":"Commande","continueOnFailure":"Continuer en cas d'échec","continueOnFailureHelp":"Si cette option est activée, l'étape suivante s'exécutera même si celle-ci échoue","continuesOnFailure":"Continue en cas d'échec","createButton":"Créer un calendrier","createError":"Impossible de créer la routine","createFirst":"Créez votre première automatisation","createNew":"Créer une nouvelle automatisation","createRoutine":"Créer une routine","createTaskType":"Créer une tâche","cronAutoFilled":"Rempli automatiquement à partir du préréglage : {{cron}}","cronAutoFilledHint":"Rempli automatiquement depuis le préréglage : {{expression}}","cronCustomHint":"min heure jour mois joursemaine","cronExpressionLabel":"Expression cron","cronHelp":"min heure jour mois jour semaine — ","cronInvalid":"Format cron invalide — 5 champs attendus (par exemple '0 */6 * * *')","cronLabel":"Expression Cron","cronPresetCustom":"Expression cron personnalisée","cronPresetDaily":"Tous les jours (minuit)","cronPresetHourly":"Toutes les heures","cronPresetMonthly":"Tous les mois (1er)","cronPresetWeekly":"Toutes les semaines (lundi)","cronRequired":"L'expression cron est requise pour les calendriers personnalisés","crontabGuru":"","delete":"Supprimer","deleteError":"Impossible de supprimer la routine","deleteMessage":"Supprimer l'horaire {{name}} ? Cette action ne peut pas être annulée.","deleteName":"Supprimer {{name}}","deleteStep":"Supprimer {{name}}","deleteTitle":"Supprimer l'horaire","descriptionLabel":"Description (facultatif)","descriptionPlaceholder":"Que fait ce calendrier ?","disable":"Désactiver","disableName":"Désactiver {{name}}","edit":"Modifier","editName":"Modifier {{name}}","editRoutineHeading":"Modifier la routine","editStep":"Modifier {{name}}","editTitle":"Modifier le calendrier","emptyStateDescription":"Créez une automatisation avec un calendrier, un webhook, une API ou un déclencheur manuel.","enable":"Activer","enabledHelp":"Lorsqu'il est désactivé, le calendrier ne s'exécutera pas automatiquement","enabledHint":"Lorsque désactivée, la routine ne s'exécutera pas automatiquement","enabledLabel":"Activé","enableName":"Activer {{name}}","errorApiEndpointRequired":"Le point de terminaison API est obligatoire","errorCommandRequired":"La commande est obligatoire","errorCronInvalid":"Format cron invalide — 5 champs attendus (ex. '0 */6 * * *')","errorCronRequired":"L'expression cron est obligatoire","errorLoadModels":"Échec du chargement des modèles","errorModelIncomplete":"Le fournisseur de modèle et l'ID de modèle doivent être tous les deux définis ou tous les deux vides","errorNameRequired":"Le nom est obligatoire","errorPromptRequired":"L'invite est obligatoire","errorScopeNoProject":"Les entrées spécifiques au projet nécessitent un projet actif.","errorStepCommandRequired":"Étape {{n}} : la commande est obligatoire","errorStepNameRequired":"Étape {{n}} : le nom est obligatoire","errorStepPromptRequired":"Étape {{n}} : l'invite est obligatoire","errorStepsEditing":"Veuillez enregistrer ou annuler toutes les modifications des étapes avant d'enregistrer la routine","errorStepsRequired":"Au moins une étape est requise","errorStepTaskDescRequired":"Étape {{n}} : la description de la tâche est obligatoire","errorTaskDescriptionRequired":"La description de la tâche est obligatoire","errorTimeoutMin":"Le délai d'expiration doit être d'au moins 1 seconde (1000 ms)","errorWebhookPathRequired":"Le chemin du webhook est obligatoire","executionPolicyHint":"Comment gérer les exécutions simultanées de cette routine","executionPolicyLabel":"Politique d'exécution","executionPolicyParallel":"Autoriser les exécutions simultanées","executionPolicyQueue":"File d'attente après l'actuel (une à la fois)","executionPolicyReject":"Rejeter les nouvelles exécutions en cours","executorModelDropdownLabel":"Modèle d'exécuteur","executorModelHelp":"Modèle IA pour l'exécution de la tâche créée. Utilise la valeur par défaut si elle n'est pas sélectionnée.","executorModelLabel":"Modèle d'exécuteur (facultatif)","executorModelOptional":"Modèle d'exécuteur (optionnel)","executorModelPlaceholder":"Utiliser la valeur par défaut","frequencyLabel":"Fréquence","global":"Global","globalScope":"Automatisations globales (au niveau de l'utilisateur)","globalScoped":"Ce calendrier sera créé à portée mondiale.","globalScopeTitle":"Portée mondiale","lastLabel":"","loadRoutinesError":"Impossible de charger les routines","manualTriggerInfo":"Cette routine sera déclenchée manuellement via le tableau de bord ou l'API.","modeAriaLabel":"Mode d'exécution","model":"Modèle","modeLabel":"Mode d'exécution","modelConsistency":"Le fournisseur de modèle et l'ID du modèle doivent tous deux être définis ou tous deux être vides","modelDropdownLabel":"Modèle","modelHelp":"Modèle IA pour cette étape. Utilise la valeur par défaut si elle n'est pas sélectionnée.","modelLabel":"Modèle (facultatif)","modelOptional":"Modèle (optionnel)","modelPlaceholder":"Utiliser la valeur par défaut","modelProviderRequired":"Le fournisseur de modèles et l'ID de modèle doivent être définis ensemble","moveDown":"Déplacer vers le bas","moveStepDown":"Déplacer {{name}} vers le bas","moveStepUp":"Déplacer {{name}} vers le haut","moveUp":"Déplacer vers le haut","nameLabel":"Nom","namePlaceholder":"Par exemple Mettre à jour les dépendances","nameRequired":"Le nom est requis","newAutomation":"Nouvelle automatisation","newRoutineHeading":"Nouvelle routine","newTitle":"Nouveau calendrier","nextLabel":"","noActiveProject":"Aucun projet actif. Les calendriers seront créés à portée mondiale.","noAutomations":"Pas encore d'automatisations","noStepsEmpty":"Aucune étape ajoutée pour l'instant. Ajoutez une commande ou une étape d'invite IA pour commencer.","project":"Projet","projectRequired":"Les entrées spécifiques au projet nécessitent un projet actif.","projectScope":"Automatisations limitées au projet","projectScoped":"Ce calendrier sera limité au projet actuel.","projectScopeDisabled":"Sélectionnez un projet pour activer la portée du projet","projectScopeTitle":"Portée du projet","prompt":"Invite","promptHelp":"Invite IA à exécuter. Fournir des instructions claires pour la tâche.","promptHint":"Invite IA à exécuter.","promptLabel":"Invite","promptPlaceholder":"p. ex. Résumez les résultats des tests et mettez en évidence les échecs","promptRequired":"L'invite est requise","resultFailed":"Échoué","resultSuccess":"Succès","routineCreated":"Routine créée","routineDeleted":"\\"{{name}}\\" supprimé","routineDisabled":"\\"{{name}}\\" désactivé","routineEnabled":"\\"{{name}}\\" activé","routineFailed":"\\"{{name}}\\" échoué : {{error}}","routineSuccess":"\\"{{name}}\\" terminé avec succès","routineUpdated":"Routine mise à jour","runError":"Impossible d'exécuter la routine","runHistory_one":"","runHistory_other":"","runNameNow":"Exécuter {{name}} maintenant","running":"Exécution…","runNow":"Exécuter maintenant","runsLabel":"","saveChanges":"Enregistrer les modifications","saveStep":"Enregistrer l'étape","saving":"Enregistrement…","scheduleLabel":"Calendrier","scopeAriaLabel":"Portée du calendrier","scopeGroup":"Portée de la planification","scopeHintGlobal":"Cette routine sera créée avec une portée globale.","scopeHintNoProject":"Aucun projet actif. Les routines seront créées avec une portée globale.","scopeHintProject":"Cette routine sera limitée au projet actuel.","scopeLabel":"Portée","scopeLocked":"La portée est verrouillée à {{scope}} pour les calendriers existants","scopeLockedTitle":"La portée est verrouillée sur {{scope}} pour les routines existantes","selectProjectTitle":"Sélectionnez un projet pour activer la portée projet","simpleMode":"Simplifier","simpleModeHelp":"Exécuter une commande shell unique ou une invite IA","stepCommandRequired":"Étape {{index}} : La commande est requise","stepCount_one":"","stepCount_other":"","stepName":"Nom de l'étape","stepNamePlaceholder":"p. ex. Exécuter les tests","stepNameRequired":"Le nom de l'étape est obligatoire","stepPromptRequired":"Étape {{index}} : L'invite est requise","steps":"Étapes","stepsEditing":"Veuillez enregistrer ou annuler toutes les modifications d'étapes avant d'enregistrer le calendrier","stepsRequired":"Au moins une étape est requise","stepType":"Type d'étape","targetColumn":"Colonne cible","targetColumnHelp":"Colonne dans laquelle la nouvelle tâche sera créée","targetColumnLabel":"Colonne cible","taskColumnLabel":"Colonne cible","taskColumnTodo":"À faire","taskColumnTriage":"Triage","taskDescription":"Description de la tâche *","taskDescriptionHelp":"Décrit la tâche qui sera créée.","taskDescriptionHint":"Décrit la tâche qui sera créée.","taskDescriptionLabel":"Description de la tâche (requise)","taskDescriptionPlaceholder":"p. ex. Vérifier toutes les dépendances npm pour les vulnérabilités de sécurité et mettre à jour les packages obsolètes","taskDescriptionRequired":"La description de la tâche est requise","taskTitleHelp":"Laissez vide pour un résumé automatique à partir de la description","taskTitleLabel":"Titre de la tâche (facultatif)","taskTitleOptional":"Titre de la tâche (optionnel)","taskTitlePlaceholder":"p. ex. Examiner les dépendances hebdomadaires","timeoutHelp":"Temps d'exécution maximal en millisecondes (par défaut 300000 = 5 min)","timeoutHint":"Durée maximale d'exécution en millisecondes.","timeoutLabel":"Délai d'attente (ms)","timeoutMinimum":"Le délai d'expiration doit être d'au moins 1 seconde (1000 ms)","timeoutOptional":"Délai d'expiration (ms, optionnel)","timeoutPlaceholder":"Remplacer le délai d'expiration du planning","title":"Automatisations","todoColumn":"À faire","toggleError":"Impossible de basculer la routine","triageColumn":"Triage","triggerApi":"API","triggerCron":"Cron","triggerManual":"Manuel","triggerTypeAriaLabel":"Type de déclencheur","triggerTypeLabel":"Type de déclencheur","triggerWebhook":"Webhook","typeCustom":"Expression cron personnalisée","typeDaily":"Chaque jour (minuit)","typeEvery12Hours":"Chaque 12 heures","typeEvery15Min":"Chaque 15 minutes","typeEvery2Hours":"Chaque 2 heures","typeEvery30Min":"Chaque 30 minutes","typeEvery6Hours":"Chaque 6 heures","typeHourly":"Chaque heure","typeMonthly":"Chaque mois (1er)","typeWeekdays":"Jours de semaine à 9h (lun-ven)","typeWeekly":"Chaque semaine (lundi)","unknownError":"Erreur inconnue","updateError":"Impossible de mettre à jour la routine","useDefault":"Utiliser le défaut","webhookPathHint":"Chemin URL du point de terminaison webhook","webhookPathLabel":"Chemin du webhook","webhookPathPlaceholder":"/trigger/my-routine","webhookSecretHint":"Secret HMAC pour la vérification de signature. Laisser vide pour les webhooks non authentifiés.","webhookSecretLabel":"Secret webhook (facultatif)","webhookSecretPlaceholder":"Facultatif — laisser vide pour les webhooks non authentifiés","allowedToolsHint":"AI prompt steps use all tools by default. Clear tools only when this automation should run without tool access.","allowedToolsLabel":"Allowed tools","clearTools":"Clear","liveOutput":"Live output","liveOutputRunning":"Live output — running","liveRunComplete":"Run complete","liveRunError":"Run failed","liveRunStarting":"Starting run…","selectAllTools":"Select all"}`),Ye={title:""},Ze={addScript:"Ajouter un script",addScriptsHint:"Ajoutez des scripts pour exécuter rapidement les commandes courantes depuis le tableau de bord.",cancelDelete:"Annuler la suppression",command:"Commande",commandPlaceholder:"p. ex., npm run build",confirmDelete:"Confirmer la suppression",confirmDeleteNamed:"Confirmer la suppression de {{name}}",deleteScriptNamed:"Supprimer {{name}}",editScriptNamed:"Modifier {{name}}",failedToDelete:"Impossible de supprimer le script",failedToLoadScripts:"Échec du chargement des scripts",failedToSave:"Impossible d'enregistrer le script",loadingScripts:"Chargement des scripts...",nameErrorMsg:"Le nom ne doit contenir que des lettres, des chiffres, des tirets et des traits de soulignement (pas d'espaces)",nameHint:"Lettres, chiffres, tirets et traits de soulignement uniquement",noScriptsDefined:"Aucun script défini",noScriptsYet:"Aucun script défini pour l'instant.",runScript:"Exécuter le script",runScriptNamed:"Exécuter {{name}}",saving:"Enregistrement...",scriptAlreadyExists:"Un script portant ce nom existe déjà",scriptCommandRequired:"La commande de script est requise",scriptCount_one:"",scriptCount_other:"",scriptCreated:"Script créé",scriptDeleted:"Script supprimé",scriptName:"Nom du script",scriptNamePlaceholder:"p. ex., build, test, lint",scriptNameRequired:"Le nom du script est requis",scriptUpdated:"Script mis à jour",title:"Scripts"},Xe={accessPolicyAuto:"auto",accessPolicyDeny:"refuser",accessPolicyLabel:"Politique d'accès",accessPolicyPrompt:"demander",addSecret:"Ajouter un secret",addSecretModalTitle:"Ajouter un secret",cancelBtn:"Annuler",cancelDelete:"Annuler",clearSyncPassphrase:"Effacer",closeAriaLabel:"Fermer",confirmClearSyncPassphrase:"Effacer le mot de passe de synchronisation inter-nœuds ? Les paires de synchronisation existantes cesseront de fonctionner jusqu'à ce que vous en définissiez un nouveau.",confirmDelete:"Confirmer",confirmPassphraseLabel:"Confirmer le mot de passe",copied:"Copié",copyAriaLabel:"Copier",createBtn:"Créer",deleteAriaLabel:"Supprimer",descriptionLabel:"Description",editAriaLabel:"Modifier",editSecretModalTitle:"Modifier le secret",empty:"Aucun secret trouvé.",envExportableChip:"exportable env",envKeyLabel:"Clé d'environnement",errorClearSyncPassphrase:"Échec de la suppression du mot de passe de synchronisation : {{error}}",errorLoadSyncStatus:"Échec du chargement du statut du mot de passe de synchronisation : {{error}}",errorSaveSyncPassphrase:"Échec de l'enregistrement du mot de passe de synchronisation : {{error}}",exportToEnvLabel:"Exporter vers l'env",hideAriaLabel:"Masquer",hideValueAriaLabel:"Masquer la valeur",keyLabel:"Clé",loading:"Chargement…",neverRead:"Jamais lu",passphraseLabel:"Mot de passe",passphraseMustMatch:"Les mots de passe doivent correspondre.",refresh:"Actualiser",revealAriaLabel:"Révéler",revealed:"Révélé",rotateSyncPassphrase:"Renouveler",rotateSyncPassphraseModalTitle:"Renouveler le mot de passe de synchronisation",saveBtn:"Enregistrer",scopeGlobal:"Global",scopeLabel:"Portée",scopeProject:"Projet",setPassphrase:"Définir un mot de passe",setSyncPassphraseModalTitle:"Définir le mot de passe de synchronisation",showValueAriaLabel:"Afficher la valeur",syncConfigured:"Configuré",syncNotConfigured:"Non configuré",syncPassphraseCleared:"Mot de passe de synchronisation effacé",syncPassphraseDescription:"Mot de passe partagé utilisé pour encapsuler les paquets de secrets inter-nœuds. Les deux nœuds d'une paire de synchronisation doivent partager la même valeur. Stocké localement uniquement, jamais transmis.",syncPassphraseRotated:"Mot de passe de synchronisation renouvelé",syncPassphraseSet:"Mot de passe de synchronisation défini",syncPassphraseTitle:"Mot de passe de synchronisation inter-nœuds",title:"Secrets",valueLabel:"Valeur"},$e={addComment:"",addCommentAria:"",cancel:"",commentAria:"",commentPlaceholder:"",dialogAria:"",selectedSnippet:"",sendToNewTask:"",title:""},et={cli:{actionUnavailable:""},dismissAll:"Fermer tout",dismissItem:"Fermer {{title}}",failed:"Échoué",headerAwaitingAndErrorPlural:"{{awaitingCount}} sessions IA nécessitent votre saisie, {{errorCount}} échouée(s)",headerAwaitingAndErrorSingular:"{{awaitingCount}} session IA nécessite votre saisie, {{errorCount}} échouée(s)",headerAwaitingPlural_one:"",headerAwaitingPlural_other:"",headerAwaitingSingular_one:"",headerAwaitingSingular_other:"",headerErrorPlural_one:"",headerErrorPlural_other:"",headerErrorSingular_one:"",headerErrorSingular_other:"",regionLabel:"Sessions IA nécessitant une entrée ou ayant échoué",resume:"Reprendre",retry:"Réessayer"},tt=JSON.parse(`{"actions":{"cancel":"Annuler","save":"Enregistrer"},"agentPermissions":{"agentPermissions":"","agentProvisioningApprovals":"","configureProjectLevelApprovalBehaviorForDurableProvisioning":"","perAgentSettingsOverrideProjectDefaultsEachCategory":""},"appearance":{"hideAISessionNotificationBanners":"","language":"Langue","languageAuto":"Auto","languageAutoHint":"Suivre la langue du navigateur","suppressTheLdquoNeedsYourInputRdquoBanner":"","title":"Apparence"},"auth":{"apiKeyCleared":"Clé API effacée","apiKeySaved":"Clé API enregistrée","authCodeAlreadySubmitted":"Ce code d'autorisation a déjà été soumis. En attente de la connexion…","authCodeReceived":"Code d'autorisation reçu. Finalisation de la connexion…","clearKey":"Effacer","continueToLogin":"Continuer vers la connexion","copiedCodeToClipboard":"Code copié dans le presse-papiers","copyCode":"Copier le code","enterCodeOnGitHub":"Entrez ce code sur GitHub","failedToCopyCode":"Échec de la copie du code — copiez-le manuellement depuis la zone ci-dessus","groupAuthenticated":"Authentifié","groupAvailable":"Disponible","hint":"Les modifications d'authentification prennent effet immédiatement — pas besoin d'enregistrer.","loadingStatus":"Chargement du statut d'authentification…","loggedOut":"Déconnecté","loggingOut":"Déconnexion…","login":"Se connecter","loginAlreadyInProgress":"Une connexion est déjà en cours. Vous pouvez l'annuler et réessayer.","loginCancelled":"Connexion annulée","loginDidNotComplete":"La connexion n'a pas abouti. Veuillez réessayer.","loginSuccessful":"Connexion réussie","logout":"Se déconnecter","manualPasteMessage":"Après vous être connecté avec {{name}}, le navigateur tentera de rediriger vers une adresse localhost que ce tableau de bord ne peut pas atteindre. L'onglet de redirection semblera avoir échoué. Avant que cela se produise, copiez l'URL complète depuis la barre d'adresse du navigateur — vous devrez la coller ici pour terminer la connexion. Continuer ?","manualPasteTitle":"Attention — un collage manuel est requis","noProviders":"Aucun fournisseur disponible","openGitHub":"Ouvrir GitHub","pasteRedirectUrlFirst":"Collez d'abord l'URL de redirection complète ou le code d'autorisation.","reopenOnboarding":"Rouvrir le guide de démarrage","reopenOnboardingHint":"Relancez l'assistant de configuration pour revoir ou mettre à jour votre configuration de fournisseur et de modèle IA.","savingKey":"Enregistrement…","signInHint":"Connectez-vous à au moins un fournisseur pour commencer à utiliser les modèles IA.","statusActive":"✓ Actif","statusNotConnected":"✗ Non connecté","title":"Authentification","waitingForLogin":"En attente de connexion…"},"authentication":{"enterAPIKey":"","key":""},"backups":{"02":"","03":"","agentsOnlyFusionAgentMemory":"","allProjectAgents":"","and":"","backupCreated":"Sauvegarde créée avec succès","backupDirectory":"","backupNow":"Sauvegarder maintenant","backups":"","backupS":"","backupScheduleCron":"","creating":"Création…","cronExpressionForBackupTimingDefault02":"","cronExpressionForMemoryBackupTimingDefault0":"","currentBackups":"","databaseBackups":"","directoryForBackupFilesRelativeToProjectRoot":"","directoryForMemoryBackupsRelativeToProjectRoot":"","enableAutomaticDatabaseBackups":"","enableAutomaticMemoryBackups":"","fusionBackups":"","fusionBackupsMemory":"","invalidCronExpressionFormat":"","loadingBackupInfo":"","memoryBackupDirectory":"","memoryBackups":"","memoryBackupScheduleCron":"","memoryBackupScope":"","memoryRetentionCount":"","more":"","mustBeBetween1And100":"","numberOfBackupFilesToKeepOldestAre":"","numberOfMemoryBackupsToKeepOldestAre":"","pathCannotContainParentDirectoryTraversal":"","projectOnlyFusionMemory":"","retentionCount":"","totalSize":"","view":"","whenEnabledProjectAndAgentMemoryFilesAre":"","whenEnabledTheDatabaseIsBackedUpAutomatically":"","createFailed":""},"clearToDefault":"","cliAgents":{"adapterLabel":"","approvedNote":"","approveFailed":"","autonomy":{"default":"","elevated":""},"autonomyHelp":"","autonomyLabel":"","commandHelp":"","commandLabel":"","description":"","elevatedConfirmAction":"","elevatedConfirmBody":"","elevatedConfirmTitle":"","envHelp":"","envLabel":"","extraArgsHelp":"","extraArgsLabel":"","heading":"","saveFailed":""},"closeModal":"Fermer la boîte de dialogue de conflit","commands":{"buildCommand":"","commands":"","commandUsedToBuildTheProjectInjectedInto":"","commandUsedToRunTestsInjectedIntoGenerated":"","eGPnpmBuild":"","eGPnpmTest":"","testCommand":""},"conflictModalTitle":"Résoudre les conflits de paramètres","experimental":{"experimentalFeatures":"","experimentalFeaturesAreEarlyCapabilitiesThatAreNot":"","featureFlags":""},"footer":{"help":"Aide","version":"Version {{version}}","checkUpdates":"","helpDiscussions":""},"general":{"25":"","200":"","3000":"","14Days":"","30Days":"","60Days":"","7Days":"","90Days":"","agentsToRunEachTaskWhenDisabledOnly":"","autoCleanupOldChats":"","autoPruneOldMail":"","bannerFiresWhenTodoCountIsStrictlyGreater":"","builtInWorkflows":"","capacityRiskBanner":"","chatHistory":"","chatRooms":"","completionDocumentationAutomation":"","controlsHowFutureTaskSpecsHandleReleaseNote":"","controlsWhetherNewlyCreatedTasksHaveGitHubIssue":"","defaultRepoUsedWhenCreatingGitHubIssuesFor":"","defaultTrackingModeForNewTasks":"","deleteChatSessionsAndRoomsThatHaveBeen":"","deleteInboxOutboxMessagesOlderThanThisMany":"","disabledBuiltInWorkflowsAreHiddenFromWorkflow":"","enableSummarizationInProjectModelsToConfigureThatModel":"","fN":"","general":"","gitHubTracking":"","hardCapOnTheSynthesizedEarlierRoomContext":"","learnMore":"En savoir plus","loweringThisWindowMeansReliabilityMetricsChartsAnd":"","newTasksInheritThisCustomWorkflowsStepsOverridable":"","numberOfMostRecentChatRoomMessagesKept":"","off":"","offDefault":"","onForNewTasks":"","operationalLogRetention":"","ownerRepo":"","prefixForNewTaskIDsEGKB":"","prefixMustBe110UppercaseLetters":"","projectDefaultTrackingRepo":"","recentVerbatimRoomMessages":"","requireChangelogUpdateExistingChangelog":"","requireChangesetChangesetMd":"","roomCompactionFetchLimit":"","roomSummaryMaxCharacters":"","searchTheTrackingRepoForLikelyDuplicatesBefore":"","settingsSaved":"Paramètres enregistrés","showCapacityRiskBanner":"","showQuickChatButton":"","showTheFloatingChatButtonInTheDashboard":"","taskPrefix":"","todoThreshold":"","trackingIssuesUseThisTaskAposSTitle":"","updateAvailablePrefix":"v{{version}} disponible","updateCheckFailed":"","updateFailed":"","updateFailedWithMessage":"","updateNow":"","updateSuccess":"","updateSuccessToast":"","updating":"","upperBoundOnMessagesFetchedFromTheRoom":"","upToDate":"Vous êtes à jour ✓","useEphemeralTaskWorkerAgents":"","warnOnTheBoardWhenTodoWorkExceeds":"","whenEnabledDefaultFusionSpawnsShortLived":"","whenEnabledFusionChecksOpenAndClosedIssues":"","workflowsOrChangelogModeWhenContributorsShouldUpdate":""},"globalGeneral":{"andShowsUpdateNoticesInTheCLIAnd":"","autoReloadDashboardOnVersionChange":"","checkForThe":"","checkForUpdatesAutomatically":"","cLIBinaryOnPATH":"","cLIBySpawning":"","controlsHowOftenTheDashboardReFetchesThe":"","dailyRecommended":"","disableThisIfYourLocalDevProcessIs":"","frequency":"","general":"","globalDefaultTrackingRepo":"","leaveBothThinkingTogglesOffToKeepThe":"","manualOnlyNeverAutoCheck":"","onStartupOncePerServerLaunch":"","ownerRepo":"","projectsInheritThisValueWhenTheyDoNot":"","rowsAndDoesNotAffectAssistantTextOr":"","saveAIThinkingForEphemeralTaskWorkerAgents":"","saveAIThinkingForPermanentAgents":"","saveAIThinkingLogs":"","saveToolOutputInAgentLogs":"","updates":"","weekly":"","whenDisabledToolRowsAreStillLoggedBut":"","whenEnabledDefaultTheDashboardAutomaticallyReloadsWhen":"","whenEnabledFusionChecksNpmForNewVersions":"","whenEnabledTheDashboardProbesForAGlobally":""},"globalModels":{"allow":"","commaSeparatedValuesSentToOpenRouterModelSync":"","controlsHowMuchReasoningEffortTheAIModel":"","default":"","default2":"","defaultAIModelUsedForTaskExecutionWhen":"","defaultModel":"","deny":"","fallbackModel":"","flowAndPublishesThemUnderTheOpencodeGo":"","fusion":"","globalBaselineModelsForEachAIRoleProject":"","httpsRunfusionAi":"","latency":"","leaveEmptyToOmitThisHeaderDefaultFusion":"","leaveEmptyToOmitThisHeaderDefaultHttps":"","modelLanes":"","noFallback":"","openaiAnthropic":"","openRouterAdvanced":"","openRouterAllowFallbacks":"","openRouterHTTPReferer":"","openRouterOutputModalitiesFilter":"","openRouterRoutingIgnore":"","openRouterRoutingOnly":"","openRouterRoutingOrder":"","openRouterRoutingSort":"","openRouterSupportedParametersFilter":"","openRouterXTitle":"","price":"","providerName":"","requireParameters":"","startupModelSync":"","syncOpencodeGoModelListAtStartup":"","syncOpenRouterModelListAtStartup":"","text":"","thinkingEffort":"","throughput":"","toolsStructuredOutputs":"","usedAutomaticallyIfThePrimaryDefaultModelHits":"","useDefault":"","whenEnabledStartupFetchesTheLatestAvailableModels":"","whenEnabledStartupRefreshesModelsThroughTheLocal":""},"header":{"discord":"Discord","joinDiscord":"","star":"","starFusion":""},"importExport":{"confirmImport":"Confirmer l'importation","exportBtn":"Exporter","exportTitle":"Exporter les paramètres vers un fichier JSON","importBtn":"Importer","importing":"Importation…","importTitle":"Importer les paramètres","loadingFile":"Chargement…","reviewPrompt":"Vérifiez les paramètres à importer :","counts":{"global_one":"","global_other":"","project_one":"","project_other":"","workflowSettings_one":"","workflowSettings_other":""},"exported":"","exportFailed":"","globalSettings":"","imported":"","importFailed":"","importFailedDetailed":"","importScope":"","importTitleAttr":"","invalidJson":"","mergeExisting":"","projectSettings":"","replaceWarning":"","scopeBoth":"","scopeGlobal":"","scopeLabel":{"all":"","global":"","project":""},"scopeProject":""},"jsonPlaceholder":"Entrez une valeur JSON...","keepLocal":"Garder la version locale","keepRemote":"Garder la version distante","loading":"Chargement…","memory":{"03":"","agentsGetMemorySearchMemoryGetAndMemory":"","agentsSearchWithQmdFirstFallBackTo":"","automaticallyCompactMemoryWhenItExceedsTheThreshold":"","autoSummarizeMemory":"","bytesUpdated":"","cannotSave":"","checkingMemoryWriteAccess":"","compacting":"Compactage…","compactionThresholdChars":"","compactSelectedFile":"Compacter le fichier sélectionné","cronExpressionForAutoSummarizeScheduleDefaultDaily":"","cronExpressionForDreamProcessing":"","dreamCompleted":"Traitement des rêves terminé","dreaming":"","dreamNow":"Rêver maintenant","dreamSchedule":"","enableMemoryTools":"","failedToLoadBackendStatus":"","for":"","installing":"Installation…","installQmd":"Installer qmd","loadingMemory":"","manuallyTriggerDreamProcessingNow":"","memory":"","memoryCompacted":"Fichier mémoire compacté","memoryFile":"","memoryIsConfiguredWithAReadOnlyBackend":"","memoryIsCurrentlyDisabledYouCanViewThe":"","memoryLivesIn":"","memorySaved":"Mémoire enregistrée","memoryWillBeCompactedWhenItExceedsThis":"","noMatchingMemoryFound":"","processDreamsFromDailyMemory":"","qmd":"","qmdIsNotInstalledSearchWillUseLocal":"","result":"","runsTheSameQmdBackedMemorySearchPath":"","saveMemory":"Enregistrer la mémoire","scheduleCron":"","searchMemoryWithQmd":"","testing":"Test en cours…","testRetrieval":"Tester la récupération","turnsDailyNotesIntoDREAMSMdAndPromotes":"","qmdInstalled":"","qmdInstallFailed":"","qmdInstallUnavailable":""},"merge":{"abort":"","abortOneAIAttemptRequireManualResolutionIf":"","addFusionAsCoAuthorOnCommits":"","afterFusionAdvancesTheIntegrationBranchRefThe":"","aICorrectiveRoundsBeforeLandingTheBestResult":"","aIMerge":"","aIMergeDefaultAIMergesInAClean":"","aIModeMergesTheTaskBranchIntoAn":"","aIOnly":"","aIOnlyAIAutoResolveAIRetryNever":"","allowAIMergeToSyncADirtyChecked":"","alwaysPreserveDirectMergeCommitHistory":"","alwaysSquashDirectMerges":"","and":"","and2":"","areListedFirstOrChoose":"","autoCompletionMode":"","autoDetect":"","autoDetectOriginHEADMain":"","autoKeepsTodayAposSSquashBehaviorFor":"","autoMergeCompletedTasks":"","autoMergeConflictRetries":"","autoMergeRunsInTheTaskWorktreeBy":"","autoMergeWillRunRebaseConflictResolutionAnd":"","autoResolveConflictsInLockFilesAndGenerated":"","autoSquashSingleSubstantiveBranchesPreserveMultiSubstantive":"","autoSyncProjectCheckoutAfterMerge":"","block":"","blockStrict":"","both":"","branchName":"","checkingForLegacyAutoMergeStamps":"","coAuthorEmail":"","coAuthorName":"","conflictFallbackStrategy":"","controlsThePostMergeAuditGate":"","controlsWhatHappensAfterATaskReachesIn":"","createMonitorAndMergeAGitHubPullRequest":"","custom":"","dangerousCompatibilityEscapeHatchLeaveOffUnlessYou":"","defaultLogsFindingsButAutoCompletesTheMerge":"","deterministicLegacyRebaseConflictStrategyAuditPipeline":"","directMergeCommitRouting":"","directMergeIntoTheCurrentBranch":"","emailUsedInThe":"","enableTestMode":"","fastForwardOfLocalMainFrom":"","fastForwardOnlySkipDirtyWorktrees":"","finalFallback":"","findsInReviewTasksWhoseAutoMergeValue":"","flipOverlappingFilesToPreferTheTaskBranch":"","forcesAllAILanesToUseTheDeterministic":"","fusion":"","gitHubAuthentication":"","gitHubAuthMode":"","gitHubCLIGhAuth":"","gitHubPersonalAccessToken":"","gitRemoteToPushToEGOrigin":"","ignoreOverlapDetectionPreserveLegacyBehavior":"","includeTaskIDInCommitScope":"","insteadOf":"","integrationBranch":"","integrationWorktree":"","inYourProjectRootWillShowTheNew":"","isTheLegacyBehavior":"","isTheStricterOptInModeThatRefuses":"","legacy":"","legacy2":"","legacyAutoMergeStamp":"","legacyAutoMergeStampCleanup":"","legacyIntegrationBranchMode":"","maxAIReviewPasses":"","merge":"","moreDetails":"","nameUsedInThe":"","noLegacyAutoMergeStampsToCleanUp":"","noreplyRunfusionAi":"","off":"","offLeaveTheProjectRootStaleLegacyBehavior":"","offSkipAudit":"","optionsStartWithABestEffort":"","origin":"","personalAccessToken":"","pickALocalBranchFromTheDropdownCommon":"","positiveIntegerRetryCapForAutoMergeConflict":"","postMergeAuditMode":"","pushRemote":"","pushToRemoteAfterMerge":"","readyToCleanUp":"","retriesTheAIAgentRatherThanAutoPicking":"","reuseTaskWorktreeDefault":"","skipsTheAuditEntirelySwitchingToOffIs":"","smart":"","smartConflictResolution":"","smartPreferMain":"","smartPreferMainOnFallbackFetchFfOrigin":"","smartPreferMainOverlapGuard":"","smartPreferTask":"","smartPreferTaskOnFallbackFetchFfOrigin":"","snapsCleanlyWhenTheWorktreeHasNoEdits":"","snapshotsRealLocalEditsAsAPatchAgainst":"","soAFreshlyPushedSiblingCommitDoesntGet":"","soMainWinsProtectsJustMergedSiblingWork":"","soTheTaskBranchWinsFastButCan":"","stashFastForwardDefaultPreserveLocalEdits":"","stopsAfterTheFirstAIAttemptAndWaits":"","symbolicRefFallback":"","theCanonicalBranchFusionMergesTasksIntoAnd":"","theLegacyMergeSettingsBelowDoNotApply":"","toResolveViaTheStandardCascade":"","toTypeABranchThatDoesnAposT":"","trailer":"","trailerCreditingFusionRecognizedByGitHubForShared":"","useDropdown":"","useProjectRootLegacy":"","uses":"","valuesFromOlderSettingsAreMigratedAutomatically":"","warn":"","warnDefaultLogFindingsContinue":"","warnOnlyKeepLegacyMainWinsFallback":"","whenDisabledMergeCommitMessagesOmitTheTask":"","whenEnabledCommitsMadeByFusionKeepYour":"","whenEnabledLockFilesPackageLockJsonPnpm":"","whenEnabledLockFilesPackageLockJsonPnpm2":"","whenEnabledTasksThatPassReviewAreAutomatically":"","whenEnabledTheMergedResultIsAutomaticallyPushed":"","whenUsingSmartPreferMainAutomaticallyPreferThe":"","planApprovalMode":"Plan approval mode","planApprovalModeAutoApproveAll":"Auto-approve all tasks","planApprovalModeHelp":"Project-wide override for the planning approval gate. Leave on workflow to use each workflow's Require plan approval setting, or force all approved specs to bypass or wait for manual approval.","planApprovalModeRequireAll":"Require approval for all tasks","planApprovalModeWorkflow":"Use workflow setting"},"mergeManually":"Fusionner manuellement","mobileNav":{"label":"Section des paramètres"},"models":{"deletePresetMessage":"Le préréglage « {{name}} » est utilisé dans la sélection automatique. Le supprimer quand même ?","deletePresetTitle":"Supprimer le préréglage","loadingModels":"Chargement des modèles disponibles…","noModels":"Aucun modèle disponible. Configurez d'abord l'authentification.","presetNameRequired":"Le nom du préréglage est requis","savePreset":"Enregistrer le préréglage"},"movedStub":{"modelLanes":"","openWorkflowSettings":"","reviewVerification":"","stepExecution":"","summarizerModelInline":""},"nav":{"aria":{"global":"Paramètre global","project":"Paramètre de projet"},"prompts":"","secrets":"","tooltip":{"global":"Partagé entre tous les projets","project":"Spécifique à ce projet"},"globalMcp":"MCP Servers","mcp":"MCP Servers"},"nodeRouting":{"blockExecution":"","configureHowTasksAreRoutedToExecutionNodes":"","defaultExecutionNode":"","fallBackToLocal":"","localExecutionNoDefaultNode":"","nodeRouting":"","selectedNode":"","theseSettingsApplyAtTheProjectLevel":"","unavailableNodePolicy":"","usedWhenATaskHasNoNodeOverride":""},"nodeSync":{"alwaysAsk":"","automaticallySynchronizeSettingsBetweenThisNodeAndConnected":"","conflictResolution":"","enableAutomaticSettingsSync":"","every15Minutes":"","every1Hour":"","every30Minutes":"","every5Minutes":"","includeAPIKeysAndOAuthTokensInSync":"","keepLocal":"","keepRemote":"","lastWriteWins":"","nodeSync":"","syncInterval":"","syncModelAuthCredentials":"","workflowSettingsNotSynced":""},"notifications":{"accessTokenOptional":"","advanced":"","allFailuresLegacy":"","baseURLForDeepLinksInNotificationsWhen":"","customNtfyServerURLOptional":"","dashboardHostname":"","discord":"","enable":"","failureNotificationDelayMs":"","failureNotificationMode":"","format":"","general":"","generic":"","howLongAFailureMustPersistBeforeA":"","httpLocalhost3000":"","httpsHooksExampleCom":"","httpsNtfySh":"","learnMoreAboutNtfySh":"","leaveBlankToKeepTheDefaultServerHttps":"","leaveBlankToPublishWithoutAuthenticationWhenSet":"","messageInbox":"","mustBeAValidURLStartingWithHttp":"","myTopicName":"","notifications":"","notifyOnEvents":"","ntfy":"","ntfyTopic":"","roomReply":"","sending":"Envoi…","slack":"","stickyFailuresOnlyDefault":"","stickyOnlySuppressesRecoveredFailuresTerminalOnlyWaits":"","terminalFailuresOnlySuppressAutoRetried":"","testMessageInbox":"Tester la boîte de réception des messages","testNotification":"Tester la notification","testRoomReply":"Tester la réponse en salle","tk":"","topicMustBe164AlphanumericHyphenOr":"","webhook":"","webhookNotifications":"","webhookURL":"","yourNtfyShTopicName164Alphanumeric":""},"plugins":{"fusionPlugins":"","piExtensions":"","pluginManagerType":"","plugins":""},"projectModels":{"addPreset":"","advancedWorkflowPolicy":"","aIMergeCommitSummaries":"","aITitleAndGitCommitMessageSummarization":"","automaticallyCompactContextWhenApproachingThisTokenCount":"","autoSelectPresetBasedOnTaskSize":"","autoSummarizeLongDescriptionsAsTitles":"","configuredPresets":"","configuresTheModelUsedForTwoShortSummary":"","defaultWorkflowModelLaneActions":"","defaultWorkflowModelLanes":"","delete":"","edit":"","executorModel":"","fallsBackTo":"","loadingAvailableModels":"","loadingWorkflowModelLanes":"","modelLanes":"","modelPresets":"","name":"","noCap":"","noModelsAvailableConfigureAuthenticationBeforeSelectingWorkflow":"","noModelsAvailableConfigureAuthenticationFirst":"","noModelsAvailableConfigureAuthenticationFirst2":"","noPreset":"","noPresetsConfiguredYet":"","openAProjectToEditWorkflowModelLanes":"","overrideGlobalModelSettingsAtTheProjectLevel":"","presetEditor":"","reset":"","resetToDefaultNoCap":"","resetToInheritFromGlobal":"","resetToInheritFromWorkflow":"","reviewerModel":"","theseProjectOverridesApplyToTheActiveDefault":"","tokenCap":"","useDefault":"","useWorkflowDefault":"","whenEnabledMergeCommitMessagesIncludeAnAI":"","whenEnabledTasksCreatedWithoutATitleBut":""},"remote":{"acceptRoutes":"","advancedNamedTunnel":"","advancedSettings":"","authenticatedURL":"","authLinks":"","authLinkTokenType":"","automaticallyRestoreTunnelOnStartupIfItWas":"","cloudflare":"","cloudflaredInstalled":"cloudflared installé avec succès","cloudflaredIsInstalled":"","cloudflaredIsNotInstalled":"","cloudflaredMustBeInstalledToStartTheTunnel":"","enableShortLivedTokens":"","expiresAt":"","external":"","externalTunnelQRCode":"","generateQR":"","generateShortLivedToken":"","httpsYourDomainExample":"","ifHomebrewIsUnavailable":"","ingressURL":"","installCloudflared":"","installing":"","lastShortLivedTokenExpiresAt":"","manualInstall":"","ms":"","namedTunnelModeEnabled":"","noExpiry":"","persistentToken":"","persistentTokenRegenerated":"Jeton persistant régénéré","qRSVGMarkup":"","regeneratePersistentToken":"","rememberLastRunningState":"","remoteAccess":"","remoteAccessCode":"","remoteAccessQRCode":"","remoteProvider":"","restarting":"Redémarrage…","scanThisQRCodeOnYourPhone":"","scanToConnect":"","scanToOpen":"","selectAProviderAboveToConfigureRemoteAccess":"","shortLivedToken":"","shortLivedTokenGenerated":"Jeton de courte durée généré","shortLivedTTLMs":"","showURL":"","startFresh":"Redémarrer","starting":"Démarrage…","startTunnel":"Démarrer le tunnel","stopping":"Arrêt…","stopTunnel":"Arrêter le tunnel","tailnetURL":"","tailscale":"","tailscaleFunnelWillExposeThisDashboardOnYour":"","tokenType":"","tunnelDetected":"","tunnelName":"","tunnelRestarted":"Tunnel distant redémarré","tunnelStarted":"Tunnel distant démarré","tunnelStopped":"Tunnel distant arrêté","tunnelToken":"","uRLAndQRGenerationUseTheSelectedToken":"","uRLNoHostnameOrPortConfigurationNeeded":"","useExisting":"Utiliser l'existant","usingQuickTunnel":"","installationFailed":""},"researchGlobal":{"advancedExternalSearchProviders":"","alwaysOn":"","brave":"","builtInUsesAgentWebTools":"","configureBraveTavilyAndGoogleAPIKeysIn":"","customSearchEngineId":"","defaultMaxConcurrentRuns":"","defaultMaxDurationMs":"","defaultMaxSourcesPerRun":"","enabledSources":"","gitHub":"","googleCustomSearch":"","googleSearchCX":"","httpsSearxExampleCom":"","localDocs":"","maxSynthesisRounds":"","missingCredentialsForTheSelectedResearchProvider":"","openAuthentication":"","openAuthenticationSettings":"","requestTimeoutMs":"","researchDefaults":"","searchesAndFetchesUseTheAgentsNativeWebSearch":"","searchProvider":"","searXNG":"","searXNGURL":"","tavily":"","webSearch":""},"researchProject":{"alwaysOn":"","enabledSources":"","enableResearchInThisProject":"","github":"","llmSynthesis":"","localDocs":"","maxConcurrentRuns":"","maxDurationMs":"","maxSourcesPerRun":"","pageFetch":"","projectResearchSettings":"","requestTimeoutMs":"","webSearch":"","webSearchIsAlwaysEnabledConfigureTheSearch":""},"resolveAllLocal":"Résoudre tous : Garder la version locale","resolveAllRemote":"Résoudre tous : Garder la version distante","resolvedSuccess":"Conflits de paramètres résolus avec succès","resolveFailed":"Impossible de résoudre les conflits","resolving":"Résolution...","runtimesRuntimes":{"hermesRuntime":"","openClawRuntime":"","paperclipRuntime":""},"scheduledEvals":{"autoCreateTasks":"","disabled":"","enableScheduledEvalRunsForThisProject":"","evaluatorModel":"","evaluatorProvider":"","followUpPolicy":"","gpt5":"","intervalMs":"","leaveProviderAndModelBlankToInheritThe":"","openai":"","retentionDays":"","scheduledEvals":"","suggestOnly":""},"scheduling":{"addIgnoredPath":"","archiveAgentLog":"","archiveCompletedTasksAfterDays":"","backlogNoTaskAutoClaimIsExecutorOnly":"","browse":"","closeParenPeriod":"","compactModeKeepsArchiveSizeLowWhilePreserving":"","compactSummaryAndRecentEntries":"","completedTasksOlderThanTheThresholdAreMoved":"","docs":"","doNotArchiveAgentLogs":"","enableAutomaticTaskArchiving":"","enablePlanStalenessEnforcement":"","escalateHighFanOutBlockersOnlyAfterThey":"","fullAgentLog":"","globalMaxConcurrent":"","heartbeatScopeDiscipline":"","ignoredOverlapPaths":"","letEngineerAgentsAutoClaimBacklogTasks":"","lite":"","maxConcurrentTasks":"","maximumAgeInHoursBeforeAPlanIs":"","maximumConcurrentAgentsAcrossAllProjects":"","maximumConcurrentPlanningAgents":"","maximumStuckDetectorRetriesBeforeATaskIs":"","maxStuckRetries":"","maxTriageConcurrent":"","numberOfDaysATaskCanStayIn":"","off":"","optionalFileOrDirectoryPathsToIgnoreWhen":"","or":"","pollIntervalMs":"","preserveStepProgressOnStuckTaskRequeue":"","remove":"","scheduling":"","selectCurrentDir":"Sélectionner le répertoire actuel","selectIgnoredOverlapPath":"Sélectionner le chemin de chevauchement ignoré","serializeTasksWithOverlappingFiles":"","staleHighFanOutEscalationHours":"","staleSpecThresholdHours":"","stepExecution":"","strictCoordinationFocusedHigherPerTickTokensLite":"","strictDefault":"","stuckTaskTimeoutMinutes":"","timeoutInMinutesForDetectingStuckTasksWhen":"","whenEnabledTasksThatModifyTheSameFiles":"","whenEnabledTasksWithStalePlansPROMPTMd":"","whenTheStuckDetectorKillsAndReQueues":"","browseWorkspacePath":"","overlapPickerNote":"","ignoreHiddenDotPathsHelp":"","ignoreHiddenDotPathsInOverlapChecks":""},"scope":{"globalBanner":"Ces paramètres sont partagés entre tous vos projets Fusion.","projectBanner":"Ces paramètres n'affectent que ce projet."},"title":"Paramètres","worktrees":{"allowSilentSiblingBranchRenameDuringExecutorConflicts":"","alsoRebaseOntoLocalDefaultBranchHEAD":"","and":"","andCanHidePriorCommitsFromTheDefault":"","autoDetectFusionBinWorktrunkOrPATH":"","awaitingApproval":"En attente d'approbation — ouvrez les approbations pour continuer.","branchCollisionSilentlyForksWorkOntoSiblingBranches":"","browse":"","browseWorktreesDirectory":"","closeParenPeriod":"","defaultsTo":"","defaultsToWorktreesLeaveEmptyUnlessOverriding":"","disabledByDefaultOptInWhenEnabledFusion":"","discouragedThisRestoresTheLegacyBehaviorWhereA":"","enableWorktrunkAndRequestApprovalToInstallThe":"","enableWorktrunkIntegration":"","failAndPauseTheTaskDefault":"","fallBackToFusionsNativeWorktreeBackend":"","forWorktreeCreateSyncPruneAndRemoveOperations":"","inAdditionToTheRemoteRebaseAboveAlso":"","installedAt":"","installTheWorktrunkBinaryBelowToEnableThis":"","installWorktrunk":"Installer le binaire worktrunk","keepsProgressMovingBySwitchingToFusionApos":"","limitsTotalGitWorktreesIncludingInReviewTasks":"","maxWorktrees":"","offByDefaultOptInWhenEnabledCompleted":"","openApprovals":"Ouvrir les approbations","optionalLeaveBlankToAutoResolveFusionWill":"","optionalSupports":"","pnpmInstallFrozenLockfile":"","randomNamesEGSwiftFalcon":"","rebaseFromRemoteBeforeMerge":"","rebaseRemote":"","recycleWorktrees":"","selectWorktreesDir":"Sélectionner le répertoire des worktrees","shellCommandToRunInEachNewWorktree":"","stopsOnWorktrunkErrorsForExplicitOperatorRecovery":"","taskIDEGFN042":"","taskTitleEGFixLoginBug":"","tryAgain":"Réessayer","useGitDefault":"","whenEnabledTheMergerFetchesFromTheConfigured":"","whenUnsetOnlyAffectsNewlyCreatedWorktrees":"","whichRemoteToFetchForThePreMerge":"","worktreeInitCommand":"","worktreeNamingStyle":"","worktrees":"","worktreesDirectory":"","worktrunk":"","worktrunkBinaryPath":"","worktrunkFailureBehavior":"","worktrunkIntegration":"","worktreesPickerNote":""},"fileBrowser":{"currentDirectory":"","projectRoot":""},"mcp":{"globalTitle":"Global MCP servers","projectTitle":"Project MCP servers","globalDescription":"Configure MCP servers shared by all projects. Project settings may override or disable these servers by name.","projectDescription":"Configure project-specific MCP servers, overrides, and disabled inherited servers."}}`),rt=JSON.parse(`{"addCustomProvider":"Ajouter un fournisseur personnalisé","addMoreProjectsHint":"Vous pouvez ajouter d'autres projets à tout moment à partir de l'aperçu du projet.","advancedProviderSettings":"Paramètres avancés du fournisseur","advancedSettings":"Paramètres avancés","advancedSetupDetails":"Détails de configuration avancés","aiSetupDescription":"Fusion utilise des modèles IA pour planifier, écrire et réviser du code pour vous. Connectez un fournisseur IA ci-dessous pour commencer — utilisez un service hébergé ou saisissez une clé API.","allProvidersShown":"Tous les fournisseurs disponibles sont déjà affichés ci-dessus.","allSet":"Tout est prêt !","apiKeyFormatHint":"Format : {{hint}}","apiKeyHint":"Clé : {{keyHint}}","apiKeyRemoved":"Clé API supprimée","apiKeySaved":"✓ Clé API enregistrée","apiKeySavedToast":"Clé API enregistrée","ariaDismissRecommendations":"Ignorer les recommandations","ariaSetupRecommendations":"Recommandations de configuration","authCodeAlreadySubmitted":"Ce code d'autorisation a déjà été soumis. En attente de la connexion…","authCodeReceived":"Code d'autorisation reçu. Finalisation de la connexion…","authTokenOptional":"Jeton d'authentification (facultatif)","back":"← Retour","cancelLogin":"Annuler","childProcess":"Processus enfant","childProcessDesc":"Isolation forte. Les tâches s'exécutent dans des processus séparés.","childProcessLabel":"Processus enfant (isolé)","chooseModel":"Choisir un modèle","claudeCli":{"acpAuthFailed":"","acpAuthFailedTitle":"","active":"✓ Actif","binaryNotFound":"Binaire \`claude\` non détecté sur PATH — installez d'abord Claude CLI.","binaryNotFoundPath":"\`claude\` non trouvé sur PATH","connected":"✓ Connecté{{version}}","description":"Acheminez les appels d'IA via votre CLI claude installé localement. Utilise votre abonnement/quota Claude existant au lieu d'une clé API.","details":"Détails","detectedPrompt":"détecté{{path}}. Cliquez sur Activer pour acheminer les appels d'IA à travers.","disable":"Désactiver","disabledMessage":"Les modèles acheminés par Claude-CLI sont masqués du sélecteur de modèles.","disabledVerb":"Désactivé","disabling":"Désactivation…","enable":"Activer","enabledMessage":"Les modèles acheminés par Claude-CLI sont maintenant visibles dans le sélecteur de modèles.","enabledVerb":"Activé","enabling":"Activation…","extensionFailed":"Échec du chargement de l'extension: {{reason}}","fixAuthHint":"","name":"Anthropic — via Claude CLI","notConnected":"✗ Non connecté","notInstalled":"✗ Non installé","probing":"Sonde CLI local…","recheckAuth":"","test":"Tester","testing":"Test en cours…","useDashP":"","validating":"Activé. Validation…"},"cloneGitHint":"Fusion exécutera git clone dans le répertoire de destination, puis enregistrera ce dossier cloné.","cloneGitRepository":"Cloner le référentiel Git","clonePathHint":"Sélectionnez ou entrez un chemin de destination absolu. Fusion clotera dans ce répertoire.","clonePathPlaceholder":"/chemin/pour/nouveau-clone","closeWizard":"Fermer l'assistant","compactWarning":"⚠ Configuration incomplète — Les fonctionnalités IA et/ou GitHub seront limitées.","completeSetup":"Complétez ces éléments de configuration pour tirer le meilleur parti de Fusion.","connect":"Connecter","connectAiProvider":"Connecter un fournisseur IA","connectAiProviderDesc":"Connectez un fournisseur IA pour activer les agents IA pour la planification des tâches et la génération de code","connectAnyway":"Connecter quand même","connectedProviders":"Fournisseurs connectés","connectGitHub":"Connecter GitHub","connectGitHubAnytime":"Pas de souci si vous n'êtes pas prêt — connectez GitHub à tout moment depuis Paramètres → Authentification.","connectGitHubButton":"Connecter GitHub","connectGitHubDesc":"Connectez GitHub pour importer des problèmes et suivre les demandes de tirage","connectOauthOptional":"Connecter OAuth (facultatif)","connectRemoteServer":"Connecter le serveur Fusion distant","continueToLogin":"Continuer la connexion","continueWithGhCli":"Continuer avec l'auth gh CLI →","continueWithoutGitHub":"Continuer sans GitHub →","copiedCodeToClipboard":"Code copié dans le presse-papiers","copyCode":"Copier le code","couldNotReachServer":"Impossible de joindre le serveur. Vérifiez votre connexion et réessayez.","createFirstAgent":"","createFirstTask":"Créer la première tâche","createNewTask":"Créer une nouvelle tâche","createNewTaskSubtitle":"Décrivez ce que vous souhaitez construire et l'IA s'en occupera","createProject":"Créer un projet","createTasksAnytimeNote":"Vous pouvez créer des tâches à tout moment depuis le tableau, ou utiliser","createTasksAnytimeNoteTerminal":"dans le terminal.","creating":"Création...","creatingFirstAgent":"","creatingTask":"Création de la tâche…","cursorCli":{"active":"✓ Actif","binaryNotFound":"\`cursor-agent\` non trouvé sur PATH","connected":"Connecté{{version}}","description":"Acheminez les appels d'IA via votre runtime d'agent Cursor local.","detectedPrompt":"Détecté. Cliquez sur Activer pour acheminer les appels via Cursor CLI.","disable":"Désactiver","disabling":"Désactivation…","enable":"Activer","enabling":"Activation…","notConnected":"✗ Non connecté","probing":"Sonde CLI local…","providerName":"","test":"Tester","testing":"Test en cours…"},"defaultModelDescription":"Choisissez un modèle par défaut pour les tâches IA, ou laissez vide pour choisir plus tard. Les modèles varient en vitesse, capacité et coût.","defaultModelLabel":"Modèle par défaut","defaultModelOptional":"Modèle par défaut (facultatif)","describeFirstTask":"Décrivez votre première tâche","destinationDirectory":"Répertoire de destination","directoryPath":"Chemin du répertoire","disconnect":"Déconnecter","dismissWarning":"Ignorer l'avertissement de configuration","enterApiKey":"Saisir la clé API","enterCodeOnGitHub":"Saisir ce code sur GitHub","executionMode":"Mode d'exécution","failedToCancelLogin":"Échec de l'annulation de la connexion","failedToClearApiKey":"Échec de la suppression de la clé API","failedToCopyCode":"Échec de la copie du code — copiez-le manuellement depuis la zone ci-dessus","failedToCreateCustomProvider":"Échec de la création du fournisseur personnalisé","failedToSaveApiKey":"Échec de l'enregistrement de la clé API","failedToSaveShellConnection":"Échec de l'enregistrement de la connexion shell","failedToSubmitAuthCode":"Échec de la soumission du code d'autorisation","finishSetup":"Terminer la configuration","firstAgentCreateError":"","firstAgentCreatedSuccess":"","firstAgentCustomDraft":"","firstAgentDraftName":"","firstAgentContinueWithTemplates":"","firstAgentInterviewLoadError":"","firstAgentInterviewLoading":"","firstAgentIntro":"","firstAgentNoInstructions":"","firstAgentPreview":"","firstAgentSkippedHint":"","firstAgentTemplates":"","firstAgentTitle":"","firstTaskDescription":"Créez votre première tâche pour démarrer le tableau et lancer l'exécution IA.","firstTaskPlaceholder":"Exemple : Créer une page de connexion avec email et mot de passe","firstTaskReady":"Votre première tâche est prête !","getApiKeyLink":"Obtenir votre clé API →","getStarted":"Commencer","githubCliAlreadyAuth":"GitHub CLI est déjà authentifié — les imports de tickets et le suivi des pull requests fonctionnent dès maintenant. Tout est prêt, aucune action supplémentaire requise.","githubCliAuthNote":"GitHub CLI est déjà authentifié, les imports et le suivi des PR fonctionnent donc maintenant. L'OAuth depuis le tableau de bord est optionnel et ne contrôle que la connexion/déconnexion gérée par le tableau de bord.","githubCliAuthSuccess":"GitHub CLI est authentifié. Les imports et le suivi des pull requests sont disponibles. Connectez OAuth dans Paramètres → Authentification si vous souhaitez des contrôles de connexion gérés par le tableau de bord.","githubConnected":"GitHub est connecté — les imports de tickets et le suivi des pull requests sont disponibles. Tout est prêt, aucune action supplémentaire requise.","githubConnectionDescription":"Connecter GitHub débloque les imports de tickets et le suivi des pull requests. Vous pouvez ignorer cela — la création de tâches fonctionne sans.","githubConnectionFailed":"La connexion a échoué ou expiré.","githubOauthConnected":"GitHub OAuth est connecté. Vous pouvez importer des tickets et suivre les pull requests.","githubOauthNotConnected":"GitHub OAuth n'est pas encore connecté. Configurez-le dans Paramètres → Authentification, ou continuez maintenant et connectez-vous plus tard.","githubProvider":"","githubSkipped":"GitHub a été ignoré. Vous pouvez vous connecter à tout moment depuis Paramètres → Authentification.","goBackToStep":"Retour à {{label}}","goToDashboard":"Aller au tableau de bord","howDoesLoginWork":"Comment fonctionne la connexion ?","howDoesLoginWorkBody":"Cliquer sur Connexion ouvre le site du fournisseur dans un nouvel onglet pour vous connecter. Une fois Fusion autorisé, cette page détectera automatiquement la connexion. Vos identifiants ne sont jamais stockés dans Fusion.","howDoIChooseModel":"Comment choisir un modèle ?","howDoIChooseModelBody":"Les modèles varient en vitesse, capacité et coût. Un bon défaut est généralement le dernier modèle de votre fournisseur connecté. Vous pouvez toujours modifier cela dans les Paramètres.","importFromGitHub":"Importer depuis GitHub","importFromGitHubSubtitle":"Transformez les tickets GitHub en tâches que vous pouvez suivre ici","inProcess":"En cours","inProcessDesc":"Rapide, faible surcharge. Les tâches s'exécutent dans le processus principal.","inProcessLabel":"En processus (par défaut)","isolationMode":"Mode d'isolation","keySavedInline":"✓ Clé enregistrée","loadingProviders":"Chargement des fournisseurs…","localNode":"Nœud local","loggedOut":"Déconnecté","loggingOut":"Déconnexion…","login":"Connexion","loginAlreadyInProgress":"Une connexion est déjà en cours. Annulez-la pour réessayer.","loginCancelled":"Connexion annulée","loginDidNotComplete":"La connexion n'a pas abouti. Veuillez réessayer.","loginFailed":"Connexion échouée","loginFailedInline":"Connexion échouée. Veuillez réessayer.","loginSuccessful":"Connexion réussie","loginTimedOut":"Délai de connexion expiré. Veuillez réessayer.","loginTimedOutInline":"Délai de connexion expiré. Veuillez réessayer.","logout":"Déconnexion","logoutFailed":"Échec de la déconnexion","manualPastebackTitle":"Attention — retour collage manuel requis","nameHint":"Utilisez uniquement des lettres, chiffres, tirets et tirets bas","namePlaceholder":"mon-projet","needHelp":"Besoin d'aide?","next":"Suivant →","noAiProvider":"Aucun fournisseur d'IA connecté","noAiProviderBody":"Les fonctionnalités IA comme la planification de tâches et la génération de code ne seront pas disponibles avant que vous en connectiez un. Vous pouvez le configurer plus tard dans les Paramètres.","noAiProviderConnected":"Aucun fournisseur IA connecté","noAiProviderDesc":"Les agents IA ne pourront pas travailler sur les tâches tant que vous ne connectez pas un fournisseur. Configurez-en un dans Paramètres → Configuration IA.","noGithub":"GitHub non connecté","noGithubDesc":"Vous ne pourrez pas importer de problèmes depuis GitHub, mais vous pouvez toujours créer des tâches manuellement.","noModelsAvailable":"Aucun modèle disponible pour l'instant. Connectez un fournisseur ci-dessus pour voir les options.","noProvidersConfigured":"Aucun fournisseur IA n'est configuré. Vérifiez votre configuration Fusion.","noProvidersConnectedYet":"Aucun fournisseur connecté pour l'instant","noQuickStartProviders":"Aucun fournisseur de démarrage rapide n'est disponible dans cet environnement.","onlyNeedOneProvider":"Un seul fournisseur suffit pour commencer.","openGitHub":"Ouvrir GitHub","openManager":"Ouvrir le gestionnaire","optionalBadge":"Facultatif","pasteRedirectUrlFirst":"Collez d'abord l'URL de redirection complète ou le code d'autorisation.","pathHint":"Entrez le chemin absolu de votre répertoire de projet","pathPlaceholder":"/chemin/vers/votre/projet","pleaseEnterTaskDescription":"Veuillez saisir une description de tâche.","profileName":"Nom du profil","projectDirectory":"Répertoire du projet","projectMustBeSelected":"Un projet doit être sélectionné avant de pouvoir créer des tâches ou importer depuis GitHub.","projectMustBeSelectedForAgent":"","projectName":"Nom du projet","projectNameHintClone":"Par défaut, cela suit le nom du dossier de destination sauf si vous l'éditez.","projectNameHintExisting":"Par défaut, cela suit le nom du répertoire sélectionné sauf si vous l'éditez.","projectNamePlaceholder":"mon-projet","projectPathHint":"Sélectionnez ou entrez le chemin absolu de votre projet","projectPathPlaceholder":"/chemin/vers/votre/projet","projectRegisteredSuccess":"Votre projet a été enregistré avec succès.","projectRequired":"Un projet est requis avant que les actions de première tâche soient disponibles.","projectSelected":"Projet sélectionné — la création de tâches et les imports sont disponibles.","projectSetupDescription":"Choisissez votre premier projet avant de créer ou d'importer des tâches. Vous pouvez enregistrer un répertoire local existant ou cloner une URL de dépôt GitHub via l'assistant de configuration.","providersConnectedSummary":"✓ {{connected}} fournisseur(s) sur {{total}} connecté(s)","providersSkippedSummary_one_one":"","providersSkippedSummary_one_other":"","providersSkippedSummary_other_one":"","providersSkippedSummary_other_other":"","quickStartProviders":"Fournisseurs de démarrage rapide","readinessAiProviderConnected":"{{name}} connecté — les agents IA peuvent travailler sur les tâches","readinessAiProviderLabel":"Fournisseur IA","readinessAiProviderMissing":"Connectez un fournisseur dans Paramètres → Configuration IA","readinessAiProviderSkipped":"Les agents IA ne seront pas disponibles tant que vous n'aurez pas connecté un fournisseur","readinessAllConnected":"✓ Toutes les intégrations connectées","readinessDefaultModelLabel":"Modèle par défaut","readinessGitHubConnected":"Les tickets et les PR peuvent être importés","readinessGitHubLabel":"GitHub","readinessGitHubMissing":"Connectez-vous pour importer des tickets comme tâches","readinessGitHubSkipped":"Vous pouvez vous connecter à tout moment depuis les Paramètres","readinessGitHubViaCli":"Connecté via GitHub CLI — les imports et le suivi des PR sont disponibles","readinessProjectConnected":"Projet sélectionné — la création de tâches et les imports sont disponibles","readinessProjectLabel":"Projet","readinessProjectMissing":"Enregistrez un projet pour activer la création de tâches et les imports","readinessSummaryHeader":"Résumé de la configuration","recommended":"Recommandé","recommendedNextSteps":"Étapes suivantes recommandées","registering":"Enregistrement...","registerProject":"Enregistrer le projet","remoteServerNote":"Votre shell natif nécessite un profil distant actif pour que le transfert vers le tableau de bord puisse s'effectuer.","remoteServerProfileSaved":"Profil de serveur distant enregistré","removeKey":"Supprimer la clé","removingKey":"Suppression…","repositoryUrl":"URL du référentiel","repositoryUrlPlaceholder":"https://github.com/proprietaire/repo.git","requiresGitHubConnection":"Nécessite une connexion GitHub","researchRunsNote":"Les recherches nécessitent des identifiants de fournisseur et une vue Recherche activée. Après l'intégration, vérifiez-les dans Paramètres → Authentification et Paramètres → Fonctionnalités expérimentales.","retry":"Réessayer","reviewStep":"Revoir {{label}}","runtimeNode":"Nœud d'exécution","savedProfileButFailedToActivate":"Profil enregistré mais échec de l'activation","saveKey":"Enregistrer","saveRemoteServer":"Enregistrer le serveur distant","saving":"Enregistrement…","savingKey":"Enregistrement…","savingRemoteServer":"Enregistrement…","selectDefaultModel":"Sélectionner un modèle par défaut","selectDefaultModelDesc":"Choisissez un modèle IA par défaut pour l'exécution des tâches","selectedAgentTemplate":"","selectedModel":"Sélectionné :","serverUrl":"URL du serveur","serverUrlPlaceholder":"https://your-fusion-host","setUpAi":"Configurer l'IA","setupComplete":"Configuration terminée !","setupMode":"Mode de configuration","setUpProject":"Configurer le projet","setupWizardHint":"Dans l'assistant de configuration, choisissez un répertoire existant ou collez une URL de clone GitHub.","skip":"Sauter","skipFirstAgent":"","skipForNow":"Ignorer pour l'instant","skipGitHub":"Ignorer GitHub →","skipOnboardingAriaLabel":"Ignorer l'intégration","skipProviderHint":"Vous pouvez ignorer cette étape — les fournisseurs peuvent être ajoutés plus tard dans les Paramètres.","skipSetup":"Ignorer la configuration →","statusConnected":"✓ Connecté","statusConnecting":"⏳ Connexion…","statusConnectionFailed":"✗ Connexion échouée","statusNotConnected":"Non connecté","statusRetry":"Réessayer","statusSkipped":"Ignoré","stepAgent":"","stepAiSetup":"Configuration IA","stepFirstTask":"Première tâche","stepGithub":"GitHub","stepProject":"Projet","submitCode":"Soumettre le code","submittingCode":"Soumission…","taskCreated":"Tâche créée","taskCreatedHint":"Votre tâche a été créée et apparaîtra sur le tableau.","taskCreationFailed":"Une erreur s'est produite lors de la création de la tâche. Veuillez réessayer.","taskErrorHint":"Votre texte a été préservé — corrigez le problème et réessayez.","titleAiSetup":"Configurer l'IA","titleAllSet":"C'est parti !","titleConnectGitHub":"Connecter GitHub","titleCreateFirstAgent":"","titleCreateFirstTask":"Créer votre première tâche","titleSetUpProject":"Configurer votre projet","useExistingDirectory":"Utiliser le répertoire existant","viewTask":"Voir la tâche","waitingForGitHubAuth":"En attente de l'autorisation GitHub…","waitingForLogin":"En attente de la connexion…","waitingForOauthLogin":"En attente de la connexion OAuth…","welcomeToFusion":"Bienvenue dans Fusion","whatAreAiProviders":"Que sont les fournisseurs IA ?","whatAreAiProvidersBody":"Des fournisseurs comme OpenAI et Anthropic alimentent les capacités IA de Fusion. Connecter un fournisseur permet aux agents de Fusion d'utiliser des modèles IA pour vous aider dans vos tâches.","whatDoesGitHubIntegrationDo":"À quoi sert l'intégration GitHub ?","whatDoesGitHubIntegrationDoBody":"Sans GitHub, vous pouvez toujours créer et gérer des tâches manuellement. L'intégration GitHub ajoute la possibilité d'importer des tickets comme tâches, de suivre le statut des pull requests et de lier automatiquement les commits aux tâches. Connectez-vous à tout moment depuis Paramètres → Authentification.","whatDoesProjectSetupDo":"À quoi sert la configuration du projet ?","whatDoesProjectSetupDoBody":"La configuration du projet enregistre un espace de travail pour que Fusion sache où lire les fichiers, exécuter les commandes et suivre les modifications de tâches.","whatHappensWhenCreateTask":"Que se passe-t-il quand je crée une tâche ?","whatHappensWhenCreateTaskBody":"Une tâche décrit ce que vous voulez réaliser. Les agents IA de Fusion liront votre description et travailleront à sa mise en œuvre. Vous pouvez suivre la progression sur le tableau et examiner les résultats.","whatIsApiKey":"Qu'est-ce qu'une clé API ?","whatIsApiKeyBody":"Une clé API est un jeton secret qui authentifie Fusion auprès du fournisseur. Vous pouvez trouver votre clé dans le tableau de bord du fournisseur sous les paramètres API. Les clés sont stockées de manière sécurisée sur votre machine.","withGitHub1":"Importer des tickets comme tâches","withGitHub2":"Synchroniser le statut des pull requests","withGitHub3":"Lier les modifications de code aux tâches","withGitHubHeading":"Avec GitHub (après connexion) :","withoutGitHub1":"Créer des tâches manuellement","withoutGitHub2":"Décrire le travail pour les agents IA","withoutGitHub3":"Suivre la progression sur le tableau","withoutGitHubHeading":"Sans GitHub (disponible maintenant) :","brandLogo":"","brandName":"","setupCompleteTitle":""}`),it={activePill:"Actif",addConnection:"Ajouter une connexion",addServer:"Ajouter un serveur",authTokenLabel:"Jeton d'authentification (facultatif)",connectionManager:"Gestionnaire de connexion",connectionManagerLabel:"Gestionnaire de connexion",defaultProfileName:"Serveur distant",deleteConfirmLabel:"Confirmation de suppression du serveur",deleteConfirmMessage:"Supprimer {{name}} ? Cela supprimera le profil enregistré.",deleteProfile:"Supprimer {{name}}",editProfile:"Modifier {{name}}",modeLocal:"Local",modeRemote:"Distant",nameLabel:"Nom",noServersSaved:"Aucun serveur distant enregistré pour l'instant.",scanQr:"Scanner le code QR",serverUrlLabel:"URL du serveur",serverUrlProtocolError:"L'URL du serveur doit utiliser http ou https",use:"Utiliser",useProfile:"Utiliser {{name}}"},nt={addSkill:"Ajouter une compétence…",allSkillsSelected:"Toutes les compétences sélectionnées",catalogSection:"Catalogue des compétences",catalogUnavailable:"Le catalogue n'est pas disponible pour le moment. Veuillez réessayer plus tard.",closeDetail:"Fermer le détail de la compétence",closeView:"Fermer la vue des compétences",disabled:"Compétence désactivée",disableSkill:"Désactiver {{name}}",discovered:"découvertes",discoveredCount_one:"",discoveredCount_other:"",discoveredSection:"Compétences découvertes",enabled:"Compétence activée",enableSkill:"Activer {{name}}",filesLabel:"Fichiers",install:"Installer",installError:"Impossible d'installer la compétence",installFailed:"Impossible d'installer {{name}} : {{message}}",installing:"Installation en cours…",installsCount:"{{count}} installations",installSkill:"Installer {{name}}",installSuccess:"{{name}} installé",loadCatalogError:"Impossible de charger le catalogue",loadContentError:"Impossible de charger le contenu de la compétence",loadDiscoveredError:"Impossible de charger les compétences découvertes",loading:"Chargement des compétences…",loadingCatalog:"Chargement du catalogue...",loadingContent:"Chargement du contenu de la compétence...",loadingDiscovered:"Chargement des compétences découvertes...",noCatalogAvailable:"Aucune compétence disponible dans le catalogue.",noDiscovered:"Aucune compétence découverte dans ce projet.",noMatchingDiscovered:"Aucune compétence découverte ne correspond à votre recherche.",noMatchingSearch:"Aucune compétence ne correspond à votre recherche.",noSkillMd:"(Aucun fichier SKILL.md trouvé)",noSkillsDiscovered:"Aucune compétence trouvée",removeSkill:"Supprimer {{name}}",searchLabel:"Rechercher des compétences",searchPlaceholder:"Rechercher des compétences...",title:"Compétences",toggleError:"Impossible de basculer la compétence",toggleFailed:"Impossible de basculer la compétence : {{message}}",viewDetails:"Afficher les détails de {{name}}"},ot={edit:"Modifier",empty:"(pas de spécification)",feedbackPlaceholder:"par exemple, 'Ajouter plus de détails sur la gestion des erreurs', 'Diviser ceci en étapes plus petites', 'Inclure des tests pour les points de terminaison de l'API'...",keyboardHint:"Appuyez sur <ctrl>Ctrl</ctrl>+<enter>Entrée</enter> (ou <cmd>Cmd</cmd>+<enter2>Entrée</enter2>) pour enregistrer",placeholder:"Entrez la spécification de la tâche en Markdown...",requesting:"Demande en cours…",requestRevision:"Demander une révision de l'IA",revisionHelp:"Fournissez des commentaires à l'IA pour améliorer cette spécification. La tâche passera à la phase de planification pour une nouvelle planification.",revisionTitle:"Demander à l'IA de réviser",saving:"Enregistrement…",view:"Afficher"},at={copyReference:""},st={applied:"Appliqué",apply:"Appliquer",applyFailed:"Échec de l'application",changedPathsLabel:"Chemins modifiés",classificationLabel:"Classification",closeDiffDialog:"Fermer la boîte de dialogue diff",diffDialogLabel:"Diff pour {{sha}}",diffHeader:"Diff pour {{sha}}",diffTruncated:"Sortie diff tronquée.",drop:"Supprimer",dropConfirm:"Supprimer",dropMessage:"Cela supprime définitivement l'entrée de sauvegarde.",dropTitle:"Supprimer la sauvegarde orpheline ?",failedToLoadDiff:"Échec du chargement du diff",failedToLoadOrphans:"Échec du chargement des orphelins",fileCount_one:"",fileCount_other:"",inspectDiff:"Inspecter diff",loadingDiff:"Chargement du diff…",noDiffOutput:"Aucune sortie diff disponible.",noOrphans:"Aucune sauvegarde automatique de fusion orpheline trouvée.",orphanCount_one:"",orphanCount_other:"",shaLabel:"SHA",title:"Récupération de stash",unknownSource:"Source inconnue"},lt={aiPrompt:"Prompt IA",aiPromptStepTitle:"Étape de prompt IA",command:"Commande",commandStepTitle:"Étape de commande",createTask:"Créer une tâche",createTaskStepTitle:"Étape de création de tâche"},ut={addSubtask:"Ajouter une sous-tâche",baseBranchLabel:"Cible de fusion / branche de base (facultatif)",baseBranchPlaceholder:"main",branchAssignmentPerTask:"Branches par tâche dérivées de la branche de planification",branchAssignmentShared:"Cible de fusion partagée — les sous-tâches s'exécutent sur leurs propres branches",branchModeAutoNew:"Créer une branche nommée automatiquement par tâche",branchModeCustomNew:"Créer une nouvelle branche personnalisée",branchModeExisting:"Utiliser une branche existante",branchModeProjectDefault:"Utiliser la branche projet/défaut",branchNameLabel:"Nom de la branche",branchStrategyLabel:"Stratégie de branche",createTasks:"Créer les tâches",creating:"Création en cours...",dependenciesLabel:"Dépendances",dependencyCycleError:"Les dépendances contiennent un cycle. Supprimez les références circulaires avant de créer les tâches.",descriptionLabel:"Description",dragToReorder:"Faire glisser pour réorganiser",errorCreateTasks:"Impossible de créer les tâches",errorRefreshSession:"Impossible d'actualiser la session de sous-tâches.",errorResumeSession:"Impossible de reprendre la session",errorRetryFailed:"La nouvelle tentative a échoué. Veuillez réessayer.",errorSessionEncountered:"La session a rencontré une erreur",errorSessionFailed:"La session a échoué lors de la communication avec l'IA.",errorSessionNoResult:"La session de sous-tâches est terminée mais n'a aucun résultat.",errorStartBreakdown:"Impossible de démarrer la décomposition des sous-tâches",generatingSubtasks:"L'IA génère des sous-tâches...",groupedOnSharedBranch:"Regroupé sur la branche partagée",hideThinking:"Masquer la réflexion",keepSessionMessage:"",keepSessionTitle:"",modalTitle:"Décomposition en sous-tâches",moveDown:"Descendre",moveSubtaskDownAriaLabel:"Déplacer la sous-tâche vers le bas",moveSubtaskUpAriaLabel:"Déplacer la sous-tâche vers le haut",moveUp:"Monter",noDepsFirstSubtask:"La première sous-tâche ne peut pas avoir de dépendances.",noPreviousSubtasks:"Aucune sous-tâche précédente disponible.",openGroupModal:"Ouvrir le modal de groupe",planningBranchModeLabel:"Mode de branche de planification",preparingBreakdown:"Préparation de la décomposition de cette tâche en sous-tâches.",progressHint:"",reconnecting:"Reconnexion en cours…",remove:"Supprimer",retry:"Réessayer",retrying:"Nouvelle tentative...",reviewSubtasksHeading:"Vérifiez vos sous-tâches",reviewSubtasksHint:"Modifiez les titres, descriptions, tailles et dépendances avant de créer toutes les tâches d'un coup.",sendToBackgroundAriaLabel:"Envoyer en arrière-plan",sendToBackgroundTitle:"Envoyer en arrière-plan",sessionActiveAnotherTab:"La session est active dans un autre onglet.",sessionActiveAnotherTabLive:"Cette session est active dans un autre onglet (signal de présence actif)",sessionActiveAnotherTabTakeover:"Cette session est active dans un autre onglet",showThinking:"Afficher la réflexion",sizeLabel:"Taille",startingBreakdown:"",takeControl:"Prendre le contrôle",takingControl:"Prise de contrôle...",titleLabel:"Titre",untitled:"Sans titre",waitingForThinking:""},dt={entryCount_one:"",entryCount_other:"",filterAll:"Tous",filterAllNodes:"Tous les nœuds",filterDirection:"Direction :",filterNode:"Nœud :",filterPull:"Récupérer",filterPush:"Envoyer",loading:"Chargement...",noHistory:"Aucun historique de synchronisation",resultConflict:"Conflit",resultError:"Erreur",resultSuccess:"Succès"},ct={agentActive:"active",agentError:"error",agentIdle:"idle",agentRunning:"running",autoKillLabel:"Arrêt automatique de vitest sous pression mémoire",autoRefresh:"Actualisation auto · 5s",confirmKill:"Confirmer l'arrêt ?",cpuFirstSamplePending:"Premier échantillon en attente",cpuProcessUsage:"utilisation du processus",cpuSampling:"Échantillonnage…",errorKillVitest:"Échec de l'arrêt des processus vitest",errorLoadStats:"Échec du chargement des statistiques système",errorLoadVitestSettings:"Échec du chargement des paramètres vitest",errorSaveVitestSettings:"Échec de l'enregistrement des paramètres vitest",footerRefreshFailed:"Dernière actualisation échouée : {{error}}",killedProcesses_one:"",killedProcesses_other:"",killThresholdInputAriaLabel:"Seuil d'arrêt (%)",killThresholdLabel:"Seuil d'arrêt (%)",killThresholdSliderAriaLabel:"Curseur de seuil d'arrêt (%)",killVitest:"Arrêter les processus vitest",lastAutoKill:"Dernier arrêt automatique : {{time}}",localNodeFallback:"Local node",nodeSelectorAriaLabel:"Select system stats node",nodeSelectorLabel:"Node",nodeStatusSuffix:"{{status}}",notYet:"Pas encore",refreshAriaLabel:"Actualiser les statistiques système",refreshTitle:"Actualiser",rowAppCpu:"CPU app",rowArrayBuffers:"Tampons tableau",rowCores:"Cœurs",rowExternal:"Externe",rowHeapLimit:"Limite du tas",rowHeapLimitDetail:"Limite V8",rowHeapUsed:"Tas utilisé",rowHeapUsedDetail:"sur {{total}}",rowLoadAvg:"Charge moy.",rowMemoryFree:"Mémoire libre",rowMemoryUsed:"Mémoire utilisée",rowNode:"Node",rowPid:"PID",rowPlatform:"Plateforme",rowRss:"RSS",sectionAgents:"Agents",sectionAgentsAriaLabel:"Statistiques des agents",sectionTasks:"Tâches",sectionTasksAriaLabel:"Statistiques des tâches",sectionVitest:"Contrôles vitest",thisNodeSuffix:"this node",updatedAt:"Mis à jour {{time}}",viewingNode:"Viewing {{node}}",vitestProcesses:"Processus vitest",waitingFirstUpdate:"En attente de la première mise à jour"},pt={attributionFailed:"L'ensemble des fichiers déposés peut inclure des commits étrangers (attribution indisponible).",disableWordWrap:"Désactiver le retour à la ligne",enableWordWrap:"Activer le retour à la ligne",error:"Erreur lors du chargement des modifications : {{error}}",expandDiff:"Développer la vue de diff en plein écran",expandDiffView:"Développer la vue de diff",filesChangedHeading_one:"",filesChangedHeading_other:"",loadError:"Impossible de charger les modifications de la tâche",loading:"Chargement des modifications...",mergedAt:"Fusionné {{date}}",nextFile:"Fichier suivant",noExecutionModifications:"L'agent n'a modifié aucun fichier lors de l'exécution.",noFilesModified:"Aucun fichier modifié.",noMergeCommit:"Aucun commit de fusion n'a été enregistré pour cette tâche.",noMergeFileChanges:"Aucune modification de fichier n'a été enregistrée dans le commit de fusion.",noOpShortCircuit:"Court-circuit vérifié — le travail était déjà sur main (le rebase a parcouru des commits étrangers).",noWorktree:"Aucun répertoire de travail disponible pour cette tâche.",noWorktreeHint:"Les modifications s'afficheront une fois la tâche en cours.",previousFile:"Fichier précédent",summaryHint:"Résumé du commit final : {{files}} fichier{{plural}} modifié(s), +{{additions}} additions, -{{deletions}} suppressions. Ne compte que le commit de fusion/compression enregistré, pas la lignée complète de la tâche.",toggleWordWrap:"Basculer le retour à la ligne",unavailable:"Modifications de fichiers détaillées non disponibles."},mt=JSON.parse(`{"actions":{"menuBtn":"Actions"},"agent":{"assignBtn":"Assigner un agent","assignedUpdated":"Agent assigné mis à jour","assignFailed":"Échec de l'affectation de l'agent : {{error}}","label":"Agent","loadFailed":"Échec du chargement des agents : {{error}}","loadingAgents":"Chargement des agents...","noAgents":"Aucun agent disponible","unassigned":"Agent désaffecté","unassignFailed":"Échec de la désaffectation de l'agent : {{error}}","unassignTitle":"Désaffecter l'agent"},"agentLink":"agent {{id}}","ageStaleness":{"active":"Actif","age":"Âge","column":"Colonne","critical":"Critique","observed":"Observé","paused":"En pause","title":"Ancienneté de la tâche","warning":"Avertissement"},"attachments":{"attachBtn":"Joindre une capture d'écran","attached":"Capture d'écran jointe","deleted":"Pièce jointe supprimée","deleteTitle":"Supprimer la pièce jointe","heading":"Pièces jointes","none":"(aucune pièce jointe)","uploading":"Téléversement…"},"blockedByLink":"bloqué par {{id}}","blocking":{"heading":"Blocage","none":"(aucune tâche en aval bloquée)","stale":"(obsolète)","staleTitle":"Arête blockedBy obsolète : le clearStaleBlockedBy auto-réparant devrait la supprimer automatiquement"},"branchBinding":{"candidates":"Candidats :","copy":"Cette tâche en révision n'est pas actuellement attachée à une branche fusion. Si une branche fusion active existe encore pour elle, vous pouvez la rattacher ici.","headline":"La branche doit être rattachée","reattachBtn":"Rattacher la branche","reattached":"Branche rattachée pour {{id}} ({{branch}})","reattachedResult":"{{branch}} rattachée ({{count}} commits devant {{base}}).","reattachedResult_one":"","reattachedResult_other":"","reattaching":"Rattachement…","skipped":"Rattachement de branche ignoré pour {{id}} : {{reason}}","skippedResult":"Rattachement ignoré : {{reason}}"},"cacheBreakdown":"(lus {{read}} / écrits {{write}} / entrée {{input}})","cacheHitRatio":"Taux de hits du cache :","cacheRead":"Lecture du cache","cacheWrite":"Écriture du cache","checkoutLink":"checkout {{id}}","delete":{"actionClosed":"fermé","actionDeleted":"supprimé","actionLeft":"laissé","allowRecreation":"Autoriser la recréation ultérieure (déverrouillage opérateur)","allowRecreationDesc":"Permet aux agents de recréer cet ID de tâche sans --force-resurrect. Laissez décoché pour conserver l'état de tombstone.","archivedAfterUnlink":"{{id}} archivé après dissociation des références de lignage","archiveInstead":"Archiver à la place","archiveUnlinkPrompt":"Archiver quand même en dissociant ces références d'abord ?","ariaLabel":"Supprimer la tâche","btn":"Supprimer","closeIssue":"Fermer l'issue","confirm":"Supprimer","deletedAfterRemovingDeps":"{{id}} supprimé après la suppression des références de dépendance","deletedAfterUnlinkLineage":"{{id}} supprimé après dissociation des références de lignage","deletedToast":"{{id}} supprimé{{suffix}}","deleteIssue":"Supprimer l'issue","deleteLinkedIssueMessage":"Supprimer {{issueRef}} sur GitHub, ou le laisser inchangé ?","deleteLinkedIssueTitle":"Supprimer l'issue GitHub liée","deleteUnlinkDepsPrompt":"Supprimer quand même en supprimant ces références de dépendance d'abord ?","deleteUnlinkLineagePrompt":"Supprimer quand même en dissociant ces références d'abord ?","forceDeleteTitle":"Forcer la suppression de la tâche","issueSuffix":"et {{action}} l'issue {{ref}}","leaveUnchanged":"Laisser inchangé","linkedIssueMessage":"Choisissez ce que faire avec {{issueRef}} lors de la suppression de {{id}}.\\n\\nFermer l'issue ?","linkedIssueTitle":"Issue GitHub liée","message":"Supprimer {{id}} ?","moreOptions":"Plus d'options","title":"Supprimer la tâche"},"deps":{"addBtn":"Ajouter une dépendance","clearBlockerTitle":"Effacer le bloqueur de chevauchement {{id}}","clearBtn":"Effacer","clickToView":"Cliquez pour voir {{id}}","heading":"Dépendances","loadFailed":"Échec du chargement de la dépendance {{id}}","noAvailableTasks":"Aucune tâche disponible","none":"(aucune dépendance)","overlapBlocker":"Bloqueur de chevauchement de portée de fichier :","removeTitle":"Supprimer la dépendance {{id}}","searchPlaceholder":"Rechercher des tâches…","stale":"(obsolète)"},"description":{"showLess":"Afficher moins","showMore":"Afficher plus"},"duplicate":{"btn":"Dupliquer","message":"Dupliquer {{id}} ? Cela créera une nouvelle tâche dans Triage avec la même description et invite.","success":"{{id}} dupliqué → {{newId}}","title":"Dupliquer la tâche"},"edit":{"autosaveHint":"Les modifications sont enregistrées automatiquement","autosaving":"Enregistrement automatique…","nodeOverrideLocked":"Le remplacement du nœud d'exécution est verrouillé pendant qu'une tâche est active/en cours.","saved":"Enregistré","saveFailed":"Échec de l'enregistrement","saving":"Enregistrement…","sourceExternalIdPlaceholder":"Identifiant de l'issue","sourceIssueHint":"Laissez tous les champs vides pour effacer les métadonnées de l'issue source.","sourceIssueIdentifierNumeric":"L'identifiant d'issue source doit être numérique pour les nouvelles métadonnées","sourceIssueLabel":"Issue source","sourceIssueRequiredFields":"Le fournisseur de l'issue source, le dépôt et l'identifiant d'issue sont obligatoires","sourceProviderPlaceholder":"Fournisseur (p. ex. github)","sourceRepositoryPlaceholder":"Dépôt (p. ex. owner/repo)","sourceUrlPlaceholder":"URL de l'issue"},"error":{"taskFailed":"Tâche échouée"},"executionAndTokenStats":"Stats d'exécution et de tokens","executionDetails":"Détails d'exécution","executionMode":{"ariaLabel":"Mode d'exécution : {{mode}}","fast":"Rapide","standard":"Standard","updated":"Mode d'exécution mis à jour : {{mode}}"},"executionModeFast":"Rapide","executionModeStandard":"Standard","executionStatsAria":"Statistiques d'exécution de la tâche","executionTiming":"Durée d'exécution","executionTimingMetricsAria":"Métriques de durée d'exécution","firstUsed":"Première utilisation","githubTracking":{"addTitleBeforeCreating":"Ajoutez un titre avant de créer une issue de suivi","checking":"Vérification du statut de suivi","collapse":"Réduire les détails du suivi GitHub","createIssueBtn":"Créer une issue de suivi","createIssueDisabledTitle":"Ajoutez un titre ou une description pour créer une issue de suivi.","createIssueHelper":"L'issue de suivi sera créée dès que cette tâche aura un titre ou une description.","disabled":"Le suivi est actuellement désactivé","enableAriaLabel":"Activer le suivi GitHub","enableBtn":"Activer","enableCheckboxLabel":"Activer le suivi GitHub","enabling":"Activation du suivi GitHub…","enablingAriaLabel":"Activation du suivi GitHub","expand":"Développer les détails du suivi GitHub","issue":"Issue","issueCreationRequested":"Création d'une issue de suivi GitHub demandée","issueUnlinked":"Issue GitHub dissociée","label":"Suivi GitHub","loading":"Chargement du statut de suivi GitHub…","loadingAriaLabel":"Chargement du statut de suivi GitHub","notYetCreated":"Issue pas encore créée","repoOverrideFormat":"La substitution de dépôt doit être au format propriétaire/dépôt","state":"État","statusAriaLabel":"État du suivi GitHub","statusDisabled":"Désactivé","statusEnabled":"Activé","statusLinked":"Liée","statusLoading":"Chargement","unlinkBtn":"Dissocier l'issue GitHub","unlinkConfirm":"Dissocier","unlinkMessage":"Cela arrête la synchronisation de Fusion avec l'issue GitHub liée. L'issue elle-même ne sera pas modifiée.","unlinkTitle":"Dissocier l'issue GitHub ?"},"hasSession":"a une session","header":{"back":"Retour","backToList":"Retour à la liste des tâches","editTask":"Modifier la tâche"},"inputTokens":"Entrée","lastUsed":"Dernière utilisation","loadingTokenStats":"Chargement des statistiques de tokens…","logs":{"activity":"Activité","activityHeading":"Activité","agentLog":"Journal de l'agent","loadingActivity":"","noActivity":"(aucune activité)","truncated_one":"","truncated_other":""},"longestTimingEvent":"Événement de minutage le plus long","longestWorkflowStep":"Étape de workflow la plus longue","merge":{"closed":"{{id}} fermé ({{reason}})","merged":"{{id}} fusionné (branche : {{branch}})","merging":"Fusion de {{id}}…","message":"Fusionner {{id}} dans la branche actuelle ?","noBranchToMerge":"aucune branche à fusionner","title":"Fusionner la tâche"},"move":{"backToInProgress":"Retour à En cours","cancelMove":"Annuler le déplacement","keepProgress":"Conserver la progression","movedTo":"Déplacé vers {{column}}","moveTo":"Déplacer vers {{column}}","preserveProgressMessage":"Cette tâche a des étapes terminées. Conserver la progression avant de déplacer ?","preserveProgressTitle":"Conserver la progression ?","resetProgress":"Réinitialiser la progression","resetProgressMessage":"Réinitialiser toute la progression des étapes avant de déplacer cette tâche ?","resetProgressTitle":"Réinitialiser la progression ?"},"nearDuplicate":{"actions":"Choisissez Archiver pour déplacer cette tâche vers les archives, ou Conserver pour continuer avec cette tâche.","archiveBtn":"Archiver","archiveConfirm":"Archiver","archived":"{{id}} archivé","archiveMessage":"Archiver {{id}} en tant que doublon de {{duplicateOf}} ?","archiveTitle":"Archiver la tâche quasi-dupliquée","copy":"Cette tâche semble être un quasi-doublon de","headline":"Doublon potentiel détecté","keepBtn":"Conserver","kept":"{{id}} conservé et avertissement de doublon ignoré"},"nextRecoveryAt":"Prochaine récupération à {{time}}","no":"Non","noCommits":{"disabled":"Attente sans commit désactivée","enabled":"Attente sans commit activée","hint":"Permet à la tâche de se terminer sans produire de commits git. À utiliser pour les tâches d'évaluation, de vérification ou d'audit où le livrable est la décision enregistrée.","label":"Aucun commit attendu (tâche décisionnelle)"},"noRuntimeLinks":"Aucun lien d'exécution","noScheduledRecovery":"Aucune récupération planifiée","noSteps":"Aucune étape","noTimedEvents":"Aucun événement chronométré enregistré pour l'instant.","noTokenUsage":"Aucune utilisation de tokens enregistrée pour cette tâche pour l'instant.","notSet":"Non défini","noWorkflowStepTimings":"Aucune durée d'étape de workflow terminée pour l'instant.","outputTokens":"Sortie","pause":{"pauseBtn":"Mettre en pause","paused":"{{id}} mis en pause","pausedByAgent":"Mis en pause par l'agent","unpauseBtn":"Reprendre","unpaused":"{{id}} sorti de pause","worktrunkFailed":"Opération Worktrunk échouée"},"paused":"En pause","plan":{"approveBtn":"Approuver le plan","approved":"Plan approuvé — {{id}} déplacé vers Todo","rebuildMessage":"Reconstruire le plan pour cette tâche ? La tâche passera en planification.","rebuildTitle":"Reconstruire le plan","rejectBtn":"Rejeter le plan","rejected":"Plan rejeté — {{id}} renvoyé en planification pour replanning","rejectMessage":"Rejeter ce plan ? La spécification sera supprimée et régénérée.","rejectTitle":"Rejeter le plan","replanning":"Replanning de {{id}}…"},"pr":{"awaitingChecks":"En attente des vérifications du PR","checkPrStatus":"Vérifier le statut du PR","creatingPr":"Création du PR…","finishAndClose":"Terminer et fermer","mergeAndClose":"Fusionner et fermer","mergingFixes":"Fusion des corrections…","mergingPr":"Fusion du PR…","startPrReview":"Démarrer la révision du PR","statusRefreshed":"Statut du PR actualisé","label":""},"priority":{"ariaLabel":"Priorité de la tâche","label":"Priorité :","updated":"Priorité mise à jour : {{priority}}"},"progress":{"heading":"Progression","noSteps":"(aucune étape définie)","stepCount_one":"","stepCount_other":""},"provenance":{"createdBy":"Créé par","createdVia":"Créé via","parentTaskOf":""},"recoveryState":"État de récupération","refine":{"btn":"Affiner","charCount_one":"","charCount_other":"","createBtn":"Créer une tâche de raffinement","creating":"Création...","feedbackRequired":"Veuillez saisir des commentaires décrivant ce qui doit être affiné","feedbackTooLong":"Le commentaire ne peut pas dépasser 2000 caractères","help":"Décrivez ce qui doit être affiné ou amélioré...","modalTitle":"Affiner","placeholder":"Saisissez votre commentaire ici...","taskCreated":"Tâche de raffinement créée : {{id}}"},"reset":{"btn":"Réinitialiser","confirmMessage":"Cela effacera toute la progression de {{id}} et relancera la tâche depuis le début. Continuer ?","resetSuccess":"{{id}} réinitialisé — une nouvelle exécution sera allouée"},"respecify":{"btn":"Respécifier"},"retries":{"branchConflict":"Récupération après conflit de branche","branchConflictTitle":"FN-4068 tentatives de récupération après conflit de branche","capReached":"Limite de tentatives atteinte pour cette tâche.","collapse":"Réduire les détails des tentatives","expand":"Développer les détails des tentatives","label":"Tentatives","mergeConflict":"Rebonds de conflit de fusion","mergeConflictTitle":"Tentatives après rebond de conflit de fusion","postReviewFix":"Corrections post-révision","postReviewFixTitle":"Tentatives de remédiation post-révision","recovery":"Tentatives de récupération","recoveryTitle":"Tentatives de récupération transitoire de l'exécuteur","reviewerContext":"Tentatives de contexte réviseur","reviewerContextTitle":"FN-4082 tentative de révision compacte","reviewerFallback":"Tentatives de repli du réviseur","reviewerFallbackTitle":"FN-4092 tentative avec modèle de repli","stuckKill":"Arrêts pour blocage","stuckKillTitle":"Le détecteur de tâches bloquées a forcé des arrêts d'agent","taskDone":"Tentatives task_done","taskDoneTitle":"L'agent a quitté sans task_done, la tâche a été relancée","verification":"Rebonds de vérification","verificationTitle":"Tentatives après échec de vérification","workflowStep":"Tentatives de workflow","workflowStepTitle":"Tentatives après échec d'étape de workflow"},"retriesLabel":"Nouvelles tentatives (récupération / workflow / fusion / tâche terminée)","retry":{"btn":"Réessayer","retried":"{{id}} relancé"},"runtimeLinks":"Liens d'exécution","runtimeStatus":"Statut d'exécution","selfHealCounters":"Compteurs d'auto-réparation","selfHealValues":"arrêts pour blocage : {{stuckKills}}, corrections après revue : {{postReviewFixes}}","sourceIssue":{"collapse":"Réduire les détails de l'issue source","expand":"Développer les détails de l'issue source","githubAriaLabel":"Issue source GitHub","githubBadge":"GitHub","identifier":"Identifiant de l'issue","label":"Issue source","none":"(aucune)","provider":"Fournisseur","repository":"Dépôt","url":"URL"},"spec":{"aiReviseHeading":"Demander une révision à l'IA","aiReviseHelp":"Fournissez des commentaires pour que l'IA améliore cette spécification. La tâche passera en planification.","editBtn":"Modifier","feedbackPlaceholder":"p. ex., « Ajoutez plus de détails sur la gestion des erreurs », « Découpez en étapes plus petites »...","hintCancel":"pour annuler","hintSave":"pour enregistrer","loading":"Chargement de la spécification…","noPrompt":"(aucune invite)","placeholder":"Saisissez la spécification de la tâche en Markdown...","requesting":"Demande en cours…","requestRevisionBtn":"Demander une révision IA","revisionColumnError":"Impossible de demander une révision : la tâche doit être dans la colonne « triage », « todo », « in-progress » ou « in-review ».","revisionRequested":"Révision IA demandée. La tâche a été déplacée en planification.","saving":"Enregistrement…","updated":"Spécification mise à jour"},"stall":{"noLogEntry":"Aucune entrée de journal pour l'instant","noLogEntryTitle":"Aucune entrée « In-review stall surfaced » sur cette tâche pour l'instant — l'auto-réparation n'en a peut-être pas enregistré dans sa fenêtre de limitation.","observed":"Observé","threshold":"Seuil","viewActivityLog":"Voir le journal d'activité"},"stepProgress":"Avancement des étapes","summary":{"heading":"Résumé"},"tabs":{"changes":"Modifications","chat":"Chat","comments":"Commentaires","definition":"Définition","documents":"Artifacts","logs":"Journaux","model":"Modèle","pullRequest":"Pull Request","review":"Révision","routing":"Routage","stats":"Statistiques","terminal":"","workflow":"Workflow","summary":"Summary"},"terminal":{"loading":""},"timedDuration":"Durée mesurée","timestamps":{"ariaLabel":"Horodatages de la tâche","created":"Créé","updated":"Mis à jour"},"timingEvents":"Événements de minutage","title":{"summarize":"","summarizeFailed":"","summarizeSuccess":""},"tokenTotalsAria":"Totaux de tokens de la tâche","tokenUsage":"Utilisation des tokens","totalExecutionTime":"Temps d'exécution total","totalTokens":"Total","updateFailed":"Échec de la mise à jour de {{id}} : {{error}}","updateSuccess":"{{id}} mis à jour","wallClockSinceFirst":"Temps réel depuis la première exécution","workflow":{"loadFailed":"Échec du chargement des résultats du workflow : {{error}}","stepsUpdated":"Étapes du workflow mises à jour","stepsUpdateFailed":"Échec de la mise à jour des étapes du workflow : {{error}}"},"workflowRuntime":"Durée d'exécution du workflow","workflowTimedSteps":"Étapes chronométrées du workflow","yes":"Oui","summaryTab":{"agentWorkHeading":"Work done by agents","cachedTokens":"Cached","changedHeading":"What changed","commit":"Commit","completedSteps":"Completed steps","completionHeading":"Completion summary","cost":"Cost","costUnavailable":"No pricing for this model","deletions":"Removed","filesChanged":"Files","inputTokens":"Input","insertions":"Added","model":"Model","noAgentWork":"No completed steps or workflow results are available for this task.","noChangedFiles":"No changed-file list is available for this task.","noCompletionSummary":"No completion summary was recorded for this task.","noTokenUsage":"No token usage recorded for this task yet.","outputTokens":"Output","retries":"Agents retried this task {{count}} time{{plural}}.","tokenCostHeading":"Token usage & cost","totalCost":"Total cost","totalTokens":"Total","unknownModel":"(unknown)","workflowResults":"Workflow results"}}`),ht={cancel:"Annuler",collapse:"Réduire",contentLabel:"Contenu",contentPlaceholder:"Saisissez le contenu du document…",contentRequired:"Le contenu est requis",create:"Créer",created:"Document créé",creating:"Création…",deleteConfirm:"Supprimer ?",deleted:"Document supprimé",edit:"Modifier",expand:"Développer",failedToCreate:"Échec de la création du document",failedToDelete:"Échec de la suppression du document",failedToLoad:"Échec du chargement des documents",failedToLoadRevisions:"Échec du chargement des révisions",failedToSave:"Échec de l'enregistrement du document",heading:"Artifacts",history:"Historique",invalidKeyFormat:"Format de clé invalide. Utilisez 1-64 caractères alphanumériques, tirets ou traits de soulignement.",keyHint:"Alphanumériques, tirets, traits de soulignement (1-64 caractères)",keyLabel:"Clé",keyPlaceholder:"ex. plan, notes, recherche",keyRequired:"La clé du document est requise",loading:"Loading documents and artifacts…",loadingRevisions:"Chargement…",modeMarkdown:"Markdown",modePlain:"Texte brut",newDocumentButton:"Nouveau document",newDocumentTitle:"Nouveau document",no:"Non",noDocuments:"No documents or artifacts yet.",noPreviousRevisions:"Aucune révision précédente.",revisionHistory:"Historique des révisions",save:"Enregistrer",saved:"Document enregistré",saving:"Enregistrement…",switchToMarkdown:"Basculer vers markdown",switchToPlainText:"Basculer vers du texte brut",yes:"Oui",artifactCount:"{{count}} artifact{{plural}}",artifactsSubheading:"Media artifacts",documentCount:"{{count}} document{{plural}}",documentsSubheading:"Task documents",failedToLoadArtifacts:"Failed to load artifacts",noTaskDocuments:"No task documents yet."},gt={moreFields:"Champs supplémentaires",orphaned:"Champs orphelins",saveFailed:"Échec de l'enregistrement du champ",unset:"—"},vt={addDependencies:"Ajouter des dépendances",attachHint:"Vous pouvez aussi coller des images ou les glisser-déposer",attachmentsLabel:"Pièces jointes",attachScreenshot:"Joindre une capture d'écran",autoMergeDefault:"Défaut (suivre le paramètre du projet)",autoMergeDisabled:"Désactivé",autoMergeEnabled:"Activé",autoMergeHint:"Le défaut suit le paramètre de fusion automatique du projet.",autoMergeLabel:"Fusion automatique",autoSaveSaved:"Enregistré",autoSaveSaving:"Enregistrement…",baseBranchCustom:"Personnalisé…",baseBranchDefault:"(par défaut / branche projet)",baseBranchLabel:"Cible de fusion / branche de base",baseBranchPlaceholder:"ex. main",branchModeAutoNew:"Créer une branche nommée automatiquement par tâche",branchModeCustomNew:"Créer une nouvelle branche personnalisée",branchModeExisting:"Utiliser une branche existante",branchModeProjectDefault:"Utiliser la branche projet/par défaut",branchModeSharedGroup:"Fusionner dans une branche de fonctionnalité partagée",branchNameLabel:"Nom de la branche",branchPlaceholder:"ex. feature/my-task",branchSettingsLabel:"Paramètres de branche",branchStrategyLabel:"Stratégie de branche",collapseDescription:"Réduire la description",dependenciesLabel:"Dépendances",dependenciesSelected_one:"",dependenciesSelected_other:"",descriptionLabel:"Description",descriptionPlaceholder:"Que faut-il faire ?",descriptionRefinedToast:"Description affinée avec l'IA",editingDescription:"Modification de la description",enterDescriptionFirst:"Saisissez d'abord une description",executionModeFast:"Rapide",executionModeLabel:"Mode d'exécution",executionModeStandard:"Standard",executorLabel:"Exécuteur",executorModelLabel:"Modèle exécuteur",expandDescription:"Développer la description",githubRepoFormatError:"Le dépôt doit être au format propriétaire/dépôt.",githubRepoLabel:"Dépôt (propriétaire/dépôt)",githubTrackingEnable:"Activer le suivi des issues GitHub pour cette tâche",githubTrackingLabel:"Suivi GitHub",loadingModels:"Chargement des modèles…",modelConfigLabel:"Configuration du modèle",moreOptions:"Plus d'options",noAvailableTasks:"Aucune tâche disponible",nodeDefaultOption:"Utiliser le nœud par défaut du projet / local",nodeOverrideHint:"La substitution de tâche a la priorité sur le routage de nœud par défaut du projet.",nodeOverrideLabel:"Substitution du nœud d'exécution",noModelsAvailable:"Aucun modèle disponible. Configurez l'authentification dans les paramètres.",overridePreset:"Remplacer",planButton:"Planifier",planningLabel:"Planification",planningModelLabel:"Modèle de planification",presetCustom:"Personnalisé",presetLabel:"Préréglage",presetUseDefault:"Utiliser le défaut",priorityLabel:"Priorité",refineAddDetailsDesc:"Ajouter des détails d'implémentation et du contexte",refineAddDetailsTitle:"Ajouter des détails",refineButton:"Affiner",refineClarifyDesc:"Rendre la description plus claire et précise",refineClarifyTitle:"Clarifier",refineExpandDesc:"Développer en une description plus complète",refineExpandTitle:"Développer",refineInProgress:"Affinement…",refineSimplifyDesc:"Simplifier et rendre plus concis",refineSimplifyTitle:"Simplifier",refineTitle:"Affiner la description avec l'IA",removeImage:"Supprimer l'image",reviewDefault:"Défaut (Auto — le triage décide)",reviewerLabel:"Réviseur",reviewerModelLabel:"Modèle réviseur",reviewLabel:"Révision",reviewLevel0:"0 — Aucune",reviewLevel1:"1 — Plan seulement",reviewLevel2:"2 — Plan et code",reviewLevel3:"3 — Complet",searchTasksPlaceholder:"Rechercher des tâches…",sharedBranchPlaceholder:"ex. clionboarding",sharedFeatureBranchLabel:"Branche de fonctionnalité partagée",subtaskButton:"Sous-tâche",thinkingDefault:"Défaut ({{level}})",thinkingHigh:"Élevé",thinkingLabel:"Réflexion",thinkingLow:"Faible",thinkingMedium:"Moyen",thinkingMinimal:"Minimal",thinkingOff:"Désactivé",thinkingXhigh:"Très élevé",titleLabel:"Titre",titlePlaceholder:"Titre de la tâche",useDropdown:"Utiliser la liste déroulante",usingPreset:"Préréglage utilisé : {{name}}",workflowDefaultBadge:"(par défaut)",workflowHelp:"Les étapes du workflow sélectionné s'exécutent automatiquement autour de l'exécution de cette tâche.",workflowLabel:"Workflow",workflowNone:"Aucun workflow",workflowsCta:"Configurez des workflows dans l'éditeur",workflowsLoading:"Chargement des workflows…",workingBranchLabel:"Branche de travail"},ft={githubImported:"Importé {{id}} depuis GitHub"},bt={autoMergeOff:"Fusion automatique désactivée",autoMergeOn:"Fusion automatique activée",autoMergePreferenceUpdated:"Préférence de fusion automatique par tâche mise à jour",completedAtSep:" · Terminé : {{timestamp}}",createPr:"Créer une demande de tirage",effective:"Effectif : {{label}}",effectiveFrozen:"Effectif : {{label}} — gelé à l'entrée de la révision",errorSep:" · Erreur : {{message}}",followDefault:"Suivre par défaut",loadError:"Impossible de charger les données de révision.",loadingData:"Chargement des données de révision…",markdown:"Markdown",noCapturedFeedback:"Aucun retour d'examen capturé pour le moment.",noFeedbackDirect:"Aucun retour d'examen pour le moment — cette tâche n'a pas généré de retour d'agent d'examen en mode direct.",noReviewItems:"Aucun élément d'examen pour le moment.",perTaskAutoMerge:"Fusion automatique par tâche",plain:"Texte brut",prSummaryLine_one:"",prSummaryLine_other:"",queueing:"Mise en file d'attente en cours…",refresh:"Actualiser",refreshDataFailed:"Impossible de rafraîchir les données de révision.",refreshed:"Examen actualisé",refreshFailed:"Échec de l'actualisation",refreshing:"Actualisation en cours…",refreshStatusLine:"{{status}} · Dernière actualisation : {{timestamp}} · {{source}}",requestRevision:"Demander une révision",reviewerSummaryLine_one:"",reviewerSummaryLine_other:"",revisionQueueFailed:"Impossible de mettre en file d'attente la révision",revisionStarted:"Révision IA de même tâche démarrée à partir du retour d'examen sélectionné",selectedAt:"Sélectionné : {{timestamp}}",showMarkdown:"Afficher le Markdown formaté",showRawText:"Afficher le texte brut",startedAtSep:" · Démarré : {{timestamp}}",updateFailed:"Échec de la mise à jour {{taskId}} : {{error}}",upToDate:"À jour",addressPrFeedback:"",addressPrFeedbackFailed:"",addressPrFeedbackStarted:"",addressingPrFeedback:""},At={addTaskPlaceholder:"Ajouter une tâche…",agent:"Agent",agentLabel:"Agent",answerQuestions:"",archive:"Archiver",archived:"{{taskId}} archivé",archivedUnlinked:"{{taskId}} archivé après dissociation des références de lignée",archiveFailed:"Impossible d'archiver {{taskId}} : {{error}}",archiveLineageConflict:`{{taskId}} a des enfants de lignée ({{children}}) qui le référencent comme parent source.
|
|
5
|
+
Supprimer quand même en supprimant d'abord ces références ?`,listControlsLabel:"Contrôles de liste",newTask:"+ Nouvelle tâche",noChange:"Aucun changement",nodeOverrideLabel:"Nœud de substitution",nodeStatusConnecting:"Connexion en cours",nodeStatusError:"Erreur",nodeStatusOffline:"Hors ligne",nodeStatusOnline:"En ligne",noTasks:"Aucune tâche",noTasksMatch:"Aucune tâche ne correspond à votre filtre",noTasksYet:"Aucune tâche pour l'instant",pausedByAgent:"mis en pause par l'agent",pauseSelected:"Mettre en pause",pauseSelectedTitle:"Mettre en pause toutes les tâches sélectionnées qui ne sont pas encore en pause",pauseUnavailable:"L'action Pause est indisponible",preserveProgressMessage:"Cette tâche a des étapes complétées. Conserver la progression avant de déplacer ?",preserveProgressTitle:"Conserver la progression ?",resetProgress:"Réinitialiser",resetProgressMessage:"Réinitialiser toute la progression des étapes avant de déplacer cette tâche ?",resetProgressTitle:"Réinitialiser la progression ?",resizeSidebar:"Redimensionner la barre latérale de la liste de tâches",reviewerModel:"Modèle de révision",selectAll:"Sélectionner toutes les tâches visibles",selectedCount_one:"",selectedCount_other:"",selectTask:"Sélectionner {{taskId}}",selectTaskPrompt:"Sélectionnez une tâche pour voir les détails",showAll:"Tout afficher",showAllTitle:"Afficher toutes les tâches",showDone:"Afficher terminées",showDoneTitle:"Afficher les tâches terminées",staleOnly:"Obsolètes uniquement",staleOnlyTitle:"Afficher uniquement les tâches obsolètes",stalePausedReview:"Révision en pause obsolète",stalePausedReviewTitle:"Afficher uniquement les tâches de révision en pause obsolètes",stats_one:"",stats_other:"",statsInColumn_one:"",statsInColumn_other:"",statusMergingFix:"Fusion des correctifs…",stuck:"Bloquée",taskCreationUnavailable:"Création de tâche indisponible",unpauseSelected:"Reprendre",unpauseSelectedTitle:"Reprendre les tâches sélectionnées actuellement en pause",unpauseUnavailable:"L'action Reprendre est indisponible",useProjectDefault:"Utiliser le défaut du projet",viewOptions:"Options d'affichage",workflowLabel:""},he={agent:"Agent",agents:"Agents",agentsTab:"Agents",ago:"il y a",allAgents:"Tous les agents",allAgentsOption:"Tous les agents",approvalApprove:"Approuver",approvalCommentPlaceholder:"Commentaire optionnel",approvalDeny:"Refuser",approvalRequested:"Demandé",approvalRequester:"Demandeur",approvals:"Approbations",approvalTask:"Tâche",back:"Retour",backButton:"← Retour",closeAriaLabel:"Fermer",closeTitle:"Fermer",compose:"Composer",composeButton:"Composer",composeMessageTitle:"Composer un message",composeTitle:"Composer un message",conversation:"Conversation",conversationLabel:"Conversation",delete:"Supprimer",deleteButton:"Supprimer",deleteFailed:"Impossible de supprimer le message",from:"De",fromLabel:"De :",fromPrefix:"De : {{participant}}",history:"Historique",inbox:"Boîte de réception",inboxTab:"Boîte de réception",justNow:"À l'instant",labelAgent:"Agent : {{id}}",labelAgentNamed:"Agent : {{name}}",labelSystem:"Système",labelUser:"Utilisateur : {{id}}",labelYou:"Vous",markAllRead:"Tout marquer comme lu",markAllReadButton:"Marquer tout comme lu",markAllReadTitle:"Marquer tout comme lu",markedAsRead_one:"",markedAsRead_other:"",markReadFailed:"Impossible de marquer les messages comme lus",messageDeleted:"Message supprimé",messageSent:"Message envoyé",noAgentMessages:"Aucun message agent à agent",noAgents:"Aucun agent trouvé",noAgentsFound:"Aucun agent trouvé",noHistoricalApprovals:"Aucune approbation historique",noInbox:"Aucun message dans votre boîte de réception",noMessagesInbox:"Aucun message dans votre boîte de réception",noOutbox:"Aucun message envoyé",noPendingApprovals:"Aucune approbation en attente",noReceivedMessages:"Aucun message reçu pour cet agent",noSentMessages:"Aucun message envoyé pour cet agent",noSentMessagesAgent:"Aucun message envoyé pour cet agent",outbox:"Boîte d'envoi",outboxTab:"Boîte d'envoi",pending:"En attente",refreshTitle:"Actualiser",reply:"Répondre",replyButton:"Répondre",replyingTo:"Répondre à {{preview}}",replyingToMessage:"Répondre au message",replyLoadFailed:"Échec du chargement du message de réponse. Cliquez pour réessayer.",resizeMessageListPane:"",selectMessageToRead:"Sélectionnez un message à lire",system:"Système",timeDaysAgo_one:"",timeDaysAgo_other:"",timeHoursAgo_one:"",timeHoursAgo_other:"",timeJustNow:"À l'instant",timeMinsAgo_one:"",timeMinsAgo_other:"",title:"Boîte aux lettres",to:"À",toLabel:"À :",toPrefix:"À : {{recipient}}",toRecipient:"",typeAgentToAgent:"Agent ↔ Agent",typeAgentToUser:"Agent → Vous",typeSystem:"Système",typeUserToAgent:"Vous → Agent",user:"Utilisateur",you:"Vous"},ge={auditChecksTitle:"Vérifications d'audit",autoSummarizeHint:"Compacte automatiquement la mémoire selon un calendrier lorsqu'elle dépasse le seuil",autoSummarizeLabel:"Résumé automatique de la mémoire",autoSummarizeScheduleHint:"Expression cron pour la planification du résumé automatique (défaut : quotidien à 3 h)",autoSummarizeScheduleLabel:"Planification (cron)",backendFile:"Fichier (.fusion/memory/, agent/<agent-name>/memory/)",backendQmd:"QMD (distillation de mémoire quantifiée)",backendReadonly:"Lecture seule",cancel:"Annuler",capAtomicWrites:"Écritures atomiques",capPersistent:"Persistant",capReadable:"Lisible",capWritable:"Modifiable",categories:"Catégories",charCount_one:"",charCount_other:"",compactFailed:"Échec de la compaction de la mémoire",compacting:"Compaction en cours…",compactionThresholdHint:"La mémoire sera compactée lorsqu'elle dépassera ce nombre de caractères",compactionThresholdLabel:"Seuil de compaction (caractères)",compactSelectedFile:"Compacter le fichier sélectionné",currentBackendTitle:"Backend actuel",description:"Mémoire de travail, insights à long terme et état des moteurs",disabledMessage:"La mémoire est actuellement désactivée. Activez les outils de mémoire dans les paramètres pour modifier ces automatisations.",dreaming:"Traitement des rêves…",dreamNow:"Traiter maintenant",dreamNowHint:"Déclencher manuellement le traitement des rêves maintenant.",dreamProcessingComplete:"Traitement des rêves terminé",dreamProcessingFailed:"Échec du traitement des rêves",dreamsEnabledHint:"Transforme les notes quotidiennes en DREAMS.md et promeut les leçons réutilisables dans MEMORY.md.",dreamsEnabledLabel:"Traiter les rêves depuis la mémoire quotidienne",dreamsScheduleHint:"Expression cron pour le traitement des rêves.",dreamsScheduleLabel:"Planification des rêves",editorDefaultDescription:"Modifie le fichier mémoire sélectionné.",editorLabel:"Éditeur de mémoire",editRaw:"Modifier le brut",extracting:"Extraction en cours…",extractInsightsFailed:"Échec de l'extraction des insights",extractionFailed:"Échec",extractionSuccess:"Succès",extractNow:"Extraire maintenant",fileCompacted:"Fichier mémoire compacté",fileLabel:"Fichier mémoire",fileSummary:"{{size}} octets · mis à jour le {{updatedAt}}",fileSwitchDirtyHint:"Enregistrez ou abandonnez les modifications actuelles avant de changer de fichier.",fileSwitchHint:"Choisissez un fichier mémoire du projet à afficher ou modifier.",healthHealthy:"En bonne santé",healthIssues:"Problèmes détectés",healthStatusTitle:"État de santé",healthWarning:"Avertissement",insightCount_one:"",insightCount_other:"",insightsExtracted_one:"",insightsExtracted_other:"",insightsMemoryLabel:"Mémoire des insights",insightsSaved:"Insights enregistrés",installing:"Installation…",installQmd:"Installer qmd",installQmdFailed:"Échec de l'installation de qmd",lastExtractionLabel:"Dernière extraction",lastUpdated:"Dernière mise à jour",layerDaily:"Quotidien",layerDescDaily:"Observations quotidiennes brutes, boucles ouvertes et contexte en cours pour le traitement des rêves.",layerDescDreams:"Patterns synthétisés et boucles ouvertes issus de la mémoire quotidienne.",layerDescLongTerm:"Décisions durables, conventions, contraintes et pièges sélectionnés depuis les rêves.",layerDreams:"Rêves",layerLongTerm:"Long terme",loadFileFailed:"Échec du chargement du fichier mémoire",loadingEngineStatus:"Chargement de l'état des moteurs…",loadingFile:"Chargement du fichier mémoire…",loadingInsights:"Chargement des insights…",localFallbackUsed:"repli local utilisé",memorySaved:"Mémoire enregistrée",noInsights:"Aucun insight extrait pour l'instant.",noInsightsHint:"Les insights sont automatiquement extraits de la mémoire de travail. Cliquez sur « Extraire maintenant » pour déclencher l'extraction manuellement.",noMatchingMemory:"Aucune mémoire correspondante trouvée.",pruningApplied:"Appliqué",pruningLabel:"Élagage",pruningNotNeeded:"Non nécessaire",qmdAvailableOnPath:"qmd est disponible dans le PATH.",qmdChecking:"Vérification",qmdCheckingAvailability:"Vérification de la disponibilité de qmd…",qmdInstalled:"Installé",qmdInstallSuccess:"qmd installé avec succès",qmdInstallUnavailable:"L'installation de qmd est terminée, mais qmd n'est toujours pas disponible",qmdIntegrationTitle:"Intégration QMD",qmdNotInstalled:"qmd n'est pas installé. La recherche utilisera les fichiers locaux. Installez la récupération indexée :",qmdPathUsed:"chemin qmd utilisé",qmdStatusAvailable:"disponible",qmdStatusMissing:"absent",readOnlyBanner:"Ce backend de mémoire est en lecture seule. Les modifications ne peuvent pas être enregistrées.",retrievalTestComplete:"Test de récupération de mémoire terminé",retrievalTestFailed:"Échec du test de récupération de mémoire",retrievalTestFallback:"qmd n'est pas installé ; le repli local a été utilisé",runAudit:"Lancer l'audit",save:"Enregistrer",saveInsights:"Enregistrer les insights",saveInsightsFailed:"Échec de l'enregistrement des insights",saveMemoryFailed:"Échec de l'enregistrement de la mémoire",saveSettings:"Enregistrer les paramètres",saveSettingsFailed:"Échec de l'enregistrement des paramètres de mémoire",saving:"Enregistrement…",searchPlaceholder:"Rechercher dans la mémoire avec qmd",sectionCount_one:"",sectionCount_other:"",settingsNote:"Remarque : modifier le type de backend dans",settingsNoteLink:"Paramètres → Mémoire",settingsNoteToast:"Ouvrez Paramètres → Mémoire pour changer le type de backend",settingsSaved:"Paramètres de mémoire enregistrés",sizeChars:"{{size}} caractères",tabEngines:"Moteurs",tabInsights:"Insights",tabWorking:"Mémoire de travail",testing:"Test en cours…",testMemorySearchTitle:"Tester la recherche en mémoire",testResultCount_one:"",testResultCount_other:"",testResultStatus:"qmd {{qmdStatus}} · {{fallbackStatus}}",testRetrieval:"Tester la récupération",testSearchHint:"Exécute le même chemin memory_search basé sur qmd qu'utilisent les agents.",title:"Mémoire",totalInsights:"Total des insights",workingMemoryLabel:"Mémoire de travail"},ve={advanced:"Avancé",advancedTo:"{{branch}} avancé à {{sha}}.",changesWillAutoStash:" (les modifications locales seront automatiquement cachées et restaurées)",checkedOutBehind:"Votre copie extraite à {{path}} est en arrière.",commit:"Commit",disabledMergeLocked:"Push suspendu — une fusion Fusion est en cours.",disabledNoRemote:"Aucun remote `origin` configuré.",disabledNoUpstream:"La branche n'a pas d'upstream sur origin.",dismissNotice:"Ignorer l'avis d'avancement de fusion",filesChanged:"Fichiers dans le commit de fusion",forceWithLeaseLabel:"Autoriser force-with-lease (utiliser uniquement si vous savez que origin a divergé intentionnellement)",insertionsDeletions:"Insertions/suppressions de commit de fusion",mergedAt:"Fusionné à",mergedSuccess:"Fusion réussie",message:"Message",pr:"PR",pulling:"Récupération en cours…",pushForceWithLease:"Envoyer (force-with-lease)",pushHeading_one:"",pushHeading_other:"",pushing:"Envoi en cours…",pushSuccess:"Envoyé à origin/{{branch}} @ {{sha}}.",pushToOrigin:"Envoyer à origin",recordedNoConfirm:"Enregistré sans confirmation de fusion locale",shortstatTitle:"Statistiques courtes finales du commit ; pour voir le diff complet de tous les commits de tâches, consultez l'onglet Modifications.",smartPull:"Pull intelligent",status:"État",title:"Détails de la fusion"},fe={ariaLabel:"Visualisation de la topologie du maillage de nœuds",connecting:"Connexion en cours",error:"Erreur",failedToFetchMeshState:"Échec de la récupération de l'état du maillage",noNodes:"Aucun nœud à afficher",noPeers:"Données de découverte pair-à-pair non disponibles.",offline:"Hors ligne",online:"En ligne"},be=JSON.parse(`{"acceptance":"Critères d'acceptation :","acceptanceCriteriaOptional":"Critères d'acceptation (facultatifs)","acceptanceCriteriaPrefix":"","actionGenerating":"Génération…","actionResume":"Reprendre","actionRetry":"Réessayer","actionReview":"Réviser","activateSlice":"Activer le découpage","activityCount":"","activityTime":"Activité {{time}}","actual":"Réel : {{value}}","addAssertion":"Ajouter une assertion","addContext":"Ajoutez un contexte ou une direction supplémentaires...","addFeature":"Ajouter une fonctionnalité","additionalComments":"Commentaires supplémentaires (optionnel)","addMilestone":"Ajouter un jalon","addSlice":"Ajouter un découpage","aiThinking":"L'IA réfléchit...","aiValidatedAtRuntime":"Validé par IA à l'exécution","aiValidatedMissionGate":"Porte de mission validée par IA","allFeaturesLinked":"Toutes les fonctionnalités sont déjà liées","approvePlan":"Approuver le plan","assertionCreated":"Assertion créée","assertionCreateFailed":"Échec de la création de l'assertion","assertionFieldsRequired":"Le titre et le texte de l'assertion sont requis","assertionTextEditPlaceholder":"Texte de l'assertion","assertionTextPlaceholder":"Texte de l'assertion (ce qui doit être vrai à la fin)","assertionTitlePlaceholder":"Titre de l'assertion","assertionUpdated":"Assertion mise à jour","assertionUpdateFailed":"Échec de la mise à jour de l'assertion","attemptRetries_one":"","attemptRetries_other":"","autopilotActivatingSlice":"Activation du découpage","autopilotCompleting":"En finalisation","autopilotDescription":"Lorsqu'il est activé, Fusion active automatiquement le découpage suivant et planifie ses fonctionnalités à mesure que le travail avance.","autopilotDisabled":"Pilote automatique désactivé","autopilotEnabled":"Pilote automatique activé","autopilotEnabledLabel":"Pilote automatique activé","autopilotLabel":"Pilote automatique","autopilotLastActivation":"Dernière activation {{time}}","autopilotOff":"Désactivé","autopilotUpdateFailed":"Échec de la mise à jour du pilote automatique","autopilotWatching":"Pilote automatique en surveillance","autopilotWatchingSince":"En surveillance depuis {{time}}","autopilotWatchingState":"En surveillance","backToMissions":"Retour aux missions","backToMissionsList":"Retour à la liste des missions","blocked":"Bloqué :","blockedReason":"Raison du blocage :","branchName":"Nom de branche","branchNameAriaLabel":"Nom de branche de la mission","branchNamePlaceholder":"p. ex. feature/mission-work","branchNameRequired":"Le nom de branche est requis pour la stratégie sélectionnée","branchStrategy":"Stratégie de branche","branchStrategyAriaLabel":"Stratégie de branche de la mission","branchStrategyAutoPerTask":"Nommer automatiquement une branche par tâche (depuis les détails)","branchStrategyCustomNew":"Créer une branche personnalisée","branchStrategyExisting":"Utiliser une branche existante","branchStrategyProjectDefault":"Utiliser la branche du projet/par défaut","buildExample":"Par exemple, créer un éditeur de documents collaboratif en temps réel avec présence, commentaires et historique des versions...","cancelButton":"Annuler","clickToViewTask":"Cliquer pour voir la tâche","close":"Fermer","closeMissionManager":"Fermer le gestionnaire de missions","collapseDetails":"Réduire les détails","completedFeatures":"{{completed}}/{{total}} fonctionnalités","completedMilestones":"{{completed}}/{{total}} jalons","completedTasks":"{{completed}}/{{total}} tâches","confirmMilestonePlaceholder":"Comment confirmer que cet objectif est atteint...","confirmSlicePlaceholder":"Comment confirmer que cette tranche est terminée...","contractAssertions":"Assertions de contrat (validées par IA)","createButton":"Créer","created":"Mission créée","createdFromInterview":"Mission créée depuis l'entretien IA","createTask":"Créer une tâche","creatingMission":"Création de la mission...","defaultInterviewTitle":"Entretien de mission","deleteAssertion":"Supprimer l'assertion","deleteButton":"Supprimer","deleteConfirm":"Supprimer ce/cette {{type}} ? Cette action est irréversible.","deleted":"Mission supprimée","deleteFailed":"Échec de la suppression de la mission","deleteFeature":"Supprimer la fonctionnalité","deleteMilestone":"Supprimer le jalon","deleteMission":"Supprimer la mission","deleteSlice":"Supprimer le découpage","describeGoal":"Décrivez ce que vous voulez construire. L'IA vous posera des questions pour comprendre la portée, les contraintes et les exigences, puis produira un plan structuré avec des jalons, des tranches et des fonctionnalités.","descriptionLabel":"Description de la mission","descriptionOptional":"Description (facultative)","detailTabs":"Onglets de détails de la mission","discardButton":"Supprimer","discardDraft":"Supprimer le brouillon","discardDraftConfirm":"Supprimer ce brouillon d'entretien ? Cela supprime le brouillon enregistré et ne peut pas être annulé.","dismiss":"Ignorer","draftDiscardFailed":"Échec de la suppression du brouillon","draftOpenInAnotherTab":"Le brouillon est ouvert dans un autre onglet","draftsLabel":"Brouillons","editAssertion":"Modifier l'assertion","editFeature":"Modifier la fonctionnalité","editMilestone":"Modifier le jalon","editMission":"Modifier la mission","editSlice":"Modifier le découpage","enrichedDescPreview":"Aperçu de la description enrichie","expandRunHistory":"Développer pour afficher l'historique des exécutions","expected":"Attendu : {{value}}","failedAssertions":"Assertions échouées :","failedAssertionsTitle":"Assertions échouées :","failedLoadModels":"Échec du chargement des modèles","featureCreated":"Fonctionnalité créée","featureCriteriaAwaitingSync":"Critères de fonctionnalités en attente de synchronisation d'assertion","featureDeleted":"Fonctionnalité supprimée","featureDeleteFailed":"Échec de la suppression de la fonctionnalité","featureLinkedToAssertion":"Fonctionnalité liée à l'assertion","featureLinkedToTask":"Fonctionnalité liée à la tâche","featureLinkFailed":"Échec de la liaison de la fonctionnalité","featureLinkTaskFailed":"Échec de la liaison de la fonctionnalité à la tâche","featureSaveFailed":"Échec de l'enregistrement de la fonctionnalité","featuresCount_one":"","featuresCount_other":"","featureTitlePlaceholder":"Titre de la fonctionnalité","featureTitleRequired":"Le titre de la fonctionnalité est requis","featureTriaged":"Fonctionnalité triée — tâche créée","featureTriageFailed":"Échec du triage de la fonctionnalité","featureUnlinkedFromAssertion":"Fonctionnalité dissociée de l'assertion","featureUnlinkedFromTask":"Fonctionnalité dissociée de la tâche","featureUnlinkFailed":"Échec de la dissociation de la fonctionnalité","featureUnlinkFromAssertionFailed":"Échec de la dissociation de la fonctionnalité","featureUpdated":"Fonctionnalité mise à jour","filterAll":"Tous les événements","filterAutopilot":"Événements du pilote automatique","filterErrors":"Erreurs et avertissements","filterLabel":"Filtrer","filterSlices":"Événements de découpage et jalon","filterStateChanges":"Changements d'état","filterTasks":"Événements de tâche","fixLineageButton":"","generatedFixFeatures":"Fonctionnalités de correction générées :","generatedFixFeaturesTitle":"Fonctionnalités de correction générées","generatedFromFeature":"Généré depuis la fonctionnalité : {{id}}","goalLinked":"","goalLinkFailed":"","goalPicker":"","goalUnlinked":"","goalUnlinkFailed":"","hideDetails":"Masquer les détails","hideMetadata":"Masquer les métadonnées","hideThinking":"Masquer la réflexion","hideValidationRounds":"Masquer les tours de validation","interviewActionGenerating":"Génération du plan","interviewActionResume":"Reprendre l'entretien","interviewActionRetry":"Réessayer l'entretien","interviewActionReview":"Réviser le plan","interviewComplete":"Plan prêt — révisez et approuvez pour créer la mission.","interviewErrorDefault":"La session a échoué lors du contact avec l'IA.","interviewErrored":"L'entretien a rencontré une erreur. Réessayez depuis cet élément.","interviewGenerating":"Génération de la hiérarchie de mission à partir du contexte de l'entretien.","interviewInProgress":"Entretien en cours","interviewWaiting":"L'entretien attend votre prochaine réponse.","lastValidatorStatus":"Dernier {{status}}","linkAFeature":"Lier une fonctionnalité","linkButton":"Lier","linkedCount_one":"","linkedCount_other":"","linkedCountShort_one":"","linkedCountShort_other":"","linkedFeaturesCount_one":"","linkedFeaturesCount_other":"","linkedFeaturesLabel":"Fonctionnalités liées","linkedGoals":"Objectifs liés","linkedGoalsTitle":"Objectifs liés","linkFeatureButton":"Lier une fonctionnalité","linkFeatureToTask":"Lier la fonctionnalité à la tâche :","linkGoal":"","linkingGoal":"","linkToTask":"Lier à la tâche","loadActivityFailed":"Échec du chargement de l'activité de la mission","loadDetailFailed":"Échec du chargement des détails de la mission","loadFailed":"Échec du chargement des missions","loadGoalsFailed":"","loadingActivity":"Chargement de l'activité de la mission…","loadingMissionDetails":"Chargement des détails de la mission…","loadingMissions":"Chargement des missions…","loadingModels":"Chargement des modèles…","loadMore":"Charger plus","loopState":"État de boucle : {{state}}","milestoneCreated":"Jalon créé","milestoneDeleted":"Jalon supprimé","milestoneDeleteFailed":"Échec de la suppression du jalon","milestoneDescriptionPlaceholder":"Description du jalon...","milestoneSaveFailed":"Échec de l'enregistrement du jalon","milestonesCount_one":"","milestonesCount_other":"","milestoneTitlePlaceholder":"Titre du jalon","milestoneTitleRequired":"Le titre du jalon est requis","milestoneUpdated":"Jalon mis à jour","missionHealthAriaLabel":"Santé de la mission : {{state}}","missionInterviewInProgressDesc":"L'entretien de mission est toujours en cours. Ouvrez cette mission pour continuer la planification.","missionList":"Liste des missions","missionManagerAriaLabel":"Gestionnaire de missions","missionTargetBranchAriaLabel":"Branche cible de la mission","missionTitlePlaceholder":"Titre de la mission","noAssertionFailures":"Aucun échec d'assertion","noAssertionsDefined":"Aucun critère d'acceptation de fonctionnalité ou assertion de contrat défini pour l'instant.","noAssertionsYet":"Aucune assertion de contrat liée n'est encore chargée. Les critères de fonctionnalités ci-dessous seront tout de même validés par IA lors des exécutions de validation.","noEventsYet":"Aucun événement pour l'instant.","noFeaturesLinkedYet":"Aucune fonctionnalité liée pour l'instant","noFixFeaturesGenerated":"Aucune fonctionnalité de correction générée.","noGoalsLinked":"Aucun objectif lié à cette mission","noLinkedGoals":"Aucun objectif lié.","noMilestonesYet":"Aucun jalon pour l'instant. Ajoutez-en un pour commencer.","noMissionsYetBody":"Les missions sont de grandes initiatives qui regroupent des jalons, des découpages et des fonctionnalités dans un seul plan. Planifiez une mission pour décomposer un objectif de bout en bout et laissez les agents l'exécuter en mode pilote automatique.","noMissionsYetTitle":"Aucune mission pour l'instant","none":"Aucun","noSlicesYet":"Aucun découpage pour l'instant","noValidationRunsYet":"Aucune exécution de validation pour l'instant.","openMissionAriaLabel":"Ouvrir la mission {{title}}","orSelect":"Ou sélectionner :","planMilestone":"Planifier le jalon","planNewMission":"Planifier une nouvelle mission","planningModel":"Modèle de planification","planReady":"Plan de mission prêt","planSlice":"Planifier le découpage","planStateNeedsUpdate":"Nécessite une mise à jour","planStateNotPlanned":"Non planifié","planStatePlanned":"Planifié","planTargetTitle":"","planTitle":"Planifier une mission avec l'IA","prepareQuestion":"Préparation de la prochaine question...","progressText_one":"","progressText_other":"","reconnecting":"Reconnexion en cours…","relativeTimeDays_one":"","relativeTimeDays_other":"","relativeTimeHours_one":"","relativeTimeHours_other":"","relativeTimeJustNow":"à l'instant","relativeTimeMinutes_one":"","relativeTimeMinutes_other":"","removeFeature":"Supprimer la fonctionnalité","removeMilestone":"Supprimer le jalon","removeSlice":"Supprimer la tranche","resizeSidebar":"Redimensionner la barre latérale des missions","resumed":"Mission reprise","resumeFailed":"Échec de la reprise de la mission","resumeInterviewAriaLabel":"Reprendre l'entretien {{title}}","resumeMission":"Reprendre la mission","retries":"réessais","retry":"réessai","retryBudgetTitle":"Tentatives d'implémentation et budget de réessai restant","retrying":"Nouvelle tentative en cours...","roadmapLabel":"Feuille de route","run":"Exécution :","runSettings":"Paramètres d'exécution de la mission","runSettingsTitle":"Paramètres d'exécution de la mission","saveButton":"Enregistrer","saveFailed":"Échec de l'enregistrement de la mission","selectGoal":"","selectMissionToView":"Sélectionnez une mission pour voir les détails","sendToBackground":"Envoyer en arrière-plan","sessionActiveAnother":"La session est active dans un autre onglet.","sessionActiveHeartbeat":"Cette session est active dans un autre onglet (pulsation en direct)","sessionActiveTab":"Cette session est active dans un autre onglet","showDetails":"Afficher les détails","showMetadata":"Afficher les métadonnées","showThinking":"Afficher la réflexion","showValidationRounds":"Afficher les tours de validation","sliceActivated":"Découpage activé","sliceActivateFailed":"Échec de l'activation du découpage","sliceCreated":"Découpage créé","sliceDeleted":"Découpage supprimé","sliceDeleteFailed":"Échec de la suppression du découpage","sliceSaveFailed":"Échec de l'enregistrement du découpage","slicesCount_one":"","slicesCount_other":"","sliceTitlePlaceholder":"Titre du découpage","sliceTitleRequired":"Le titre du découpage est requis","sliceTriaged_one":"","sliceTriaged_other":"","sliceTriageFailed":"Échec du triage des fonctionnalités du découpage","sliceUpdated":"Découpage mis à jour","sliceVerification":"Vérification de la tranche","source":"Source :","started":"Mission démarrée — premier découpage activé","startFailed":"Échec du démarrage de la mission","startInterview":"Démarrer l'interview","startMission":"Démarrer la mission","startOver":"Recommencer","statusActive":"Actif","statusArchived":"Archivé","statusBlocked":"Bloqué","statusComplete":"Terminé","statusDefined":"Défini","statusDone":"Terminé","statusFailed":"Échoué","statusInProgress":"En cours","statusPassed":"Réussi","statusPending":"En attente","statusPlanning":"Planification","statusTriaged":"Trié","stopFailed":"Échec de l'arrêt de la mission","stopMission":"Arrêter la mission","stopped_one":"","stopped_other":"","summaryStats":"{{milestones}} jalons, {{features}} fonctionnalités. Vérifiez et modifiez avant d'approuver.","tabActivity_one":"","tabActivity_other":"","tabStructure":"Structure","takeControl":"Prendre le contrôle","takingControl":"Prise de contrôle en cours...","targetBranch":"Branche cible","targetBranchPlaceholder":"p. ex. main","taskIdPlaceholder":"ID de tâche (p. ex. FN-001)","taskIdRequired":"L'ID de tâche est requis","tasksFailed_one":"","tasksFailed_other":"","title":"Missions","titleLabel":"Titre de la mission","titleRequired":"Le titre de la mission est requis","toggleDetails":"Afficher/masquer les détails","transformVision":"Transformer votre vision en une mission structurée","triageAllFeatures":"Trier toutes les fonctionnalités","triageCreateTask":"Trier — créer une tâche","tryExample":"Essayez un exemple:","typeAnswer":"Tapez votre réponse ici...","unlinkedBadge":"Non lié","unlinkFeature":"Dissocier la fonctionnalité","unlinkGoal":"","unlinkTask":"Dissocier la tâche","untitled":"Sans titre","updateButton":"Mettre à jour","updated":"Mission mise à jour","validateFeature":"Valider la fonctionnalité","validationRoundAttempts":"","validationRoundsCount_one":"","validationRoundsCount_other":"","validationRoundsLabel_one":"","validationRoundsLabel_other":"","validationRuns":"Exécutions de validation","validationState":"État de validation","validationStateNotStarted":"Non commencé","validationTelemetry":"Télémétrie de validation","validationTriggered":"Validation déclenchée","validationTriggerFailed":"Échec du déclenchement de la validation","verification":"Vérification :","verificationCriteria":"Critères de vérification","viewMissionFailures":"Voir les échecs de la mission","whatToBuild":"Qu'est-ce que tu veux construire?"}`),Ae={createdFromPlanning:"Créé {{id}} à partir du mode planification",createdFromSubtask:"Créés {{ids}} à partir de la décomposition des sous-tâches",createdMultipleFromPlanning:"Créés {{ids}} à partir du mode planification"},Ce={noChange:"Aucun changement",selectPlaceholder:"Sélectionner un modèle…"},Te={addProviderToFavoritesAriaLabel:"Ajouter {{provider}} aux favoris",addToFavorites:"Ajouter aux favoris",addToFavoritesAriaLabel:"Ajouter {{name}} aux favoris",clearFilter:"Effacer le filtre",count_one:"",count_other:"",descriptions:{executor:"Le modèle d'IA utilisé pour mettre en œuvre cette tâche.",override:"Remplacez les modèles d'IA utilisés pour cette tâche. Si non spécifié, les valeurs par défaut du projet ou globales sont utilisées.",planning:"Le modèle d'IA utilisé pour la spécification des tâches (phase de triage).",reviewer:"Le modèle d'IA utilisé pour examiner le code et les plans de cette tâche.",thinkingLevel:"Contrôle l'effort de raisonnement de l'agent IA. Les niveaux supérieurs utilisent plus de jetons."},emptyStates:{noModels:"Aucun modèle disponible. Configurez l'authentification dans Paramètres pour activer la sélection de modèle."},errors:{failedSaveSettings:"Impossible d'enregistrer les paramètres du modèle",failedSaveThinking:"Impossible d'enregistrer le niveau de réflexion",failedUpdateFavorites:"Impossible de mettre à jour les favoris",failedUpdateModelFavorites:"Impossible de mettre à jour les modèles favoris"},filterPlaceholder:"Filtrer les modèles…",labels:{executorModel:"Modèle d'exécuteur",planningModel:"Modèle de planification",reviewerModel:"Modèle d'examinateur",thinkingLevel:"Niveau de réflexion"},messages:{thinkingLevelSet:"Niveau de réflexion défini sur {{level}}",thinkingLevelSetDefault:"Niveau de réflexion défini sur la valeur par défaut ({{level}})",upToDate:"Les paramètres du modèle sont à jour.",usingDefaults:"Utilisation des modèles par défaut du projet ou globaux."},noResults:"Aucun modèle ne correspond à '{{filter}}'",options:{default:"Défaut",high:"Élevé",low:"Faible",medium:"Moyen",minimal:"Minimal",off:"Désactivé",xhigh:"Très élevé"},placeholders:{selectExecutor:"Sélectionnez un modèle d'exécuteur…",selectPlanning:"Sélectionnez un modèle de planification…",selectReviewer:"Sélectionnez un modèle d'examinateur…"},removeFromFavorites:"Supprimer des favoris",removeFromFavoritesAriaLabel:"Supprimer {{name}} des favoris",removeProviderFromFavoritesAriaLabel:"Supprimer {{provider}} des favoris",states:{loading:"Chargement des modèles disponibles…",usingDefault:"Utilisation de la valeur par défaut"},targetLabels:{executor:"",planning:"",validator:""},titles:{configuration:"Configuration du modèle"},useDefault:"Utiliser la valeur par défaut"},ke={choose:"Choisissez les modèles pour cette tâche. Si non sélectionné, les modèles par défaut seront utilisés.",custom:"Personnalisé",executorModel:"Modèle exécuteur",executorPlaceholder:"Sélectionner le modèle exécuteur…",loading:"Chargement des modèles…",noModels:"Aucun modèle disponible. Configurez l'authentification dans Paramètres pour activer la sélection des modèles.",planningModel:"",planningPlaceholder:"",preset:"Préréglage",reviewerModel:"Modèle réviseur",reviewerPlaceholder:"Sélectionner le modèle réviseur…",title:"Sélectionner les modèles",useDefault:"Utiliser par défaut",usingDefault:"Par défaut"},ye={activityLog:"Journal d'activité",agents:"Agents",automation:"Automatisation",board:"Tableau",chat:"Chat",chatUnreadAriaLabel:"Réponse non lue",collapseSidebar:"",commandCenter:"",devServer:"Serveur de dev",documents:"Artefacts",evals:"Évaluations",expandSidebar:"",files:"Fichiers",gitManager:"Gestionnaire Git",goals:"Objectifs",importFromGitHub:"Importer depuis GitHub",insights:"Insights",list:"Liste",loadingScripts:"Chargement des scripts…",mailbox:"Boîte de réception",mailboxPendingAriaLabel:"Approbations en attente",manageScripts:"Gérer les scripts…",memory:"Mémoire",missions:"Missions",more:"Plus",moreSheetTitle:"Naviguer",noScriptsAddOne:"Aucun script — en ajouter un…",planning:"Planification",primaryNavAriaLabel:"Navigation principale",projects:"Projets",research:"Recherche",resizeSidebar:"",scriptsSubmenuAriaLabel:"Sous-menu des scripts",secrets:"Secrets",settings:"Paramètres",showScriptsAriaLabel:"Afficher les scripts",sidebarAriaLabel:"",skills:"Compétences",stashRecovery:"Récupération de stash",tasks:"Tâches",terminal:"Terminal",todos:"Tâches à faire",usage:"Utilisation",workflows:"Workflows"},Se={addDependencies:"Ajouter des dépendances",assignAgent:"Assigner un agent",assignAgentButton:"Assigner un agent",branchRequired:"Le nom de la branche est obligatoire pour cette stratégie de branche.",clearSelection:"Effacer la sélection",createTask:"Créer une tâche",creating:"Création...",dependencies:"Dépendances",discardChanges:"Abandonner les modifications",failedToCreate:"Impossible de créer la tâche",failedToUpload:"Impossible de télécharger : {{files}}",loadingAgents:"Chargement des agents...",noAgentsAvailable:"Aucun agent disponible",noAvailableTasks:"Aucune tâche disponible",searchTasks:"Rechercher des tâches…",selectAgent:"Sélectionner un agent",selectedCount_one:"",selectedCount_other:"",taskCreated:"{{taskId}} créé",title:"Nouvelle tâche",unsavedChanges:"Vous avez des modifications non enregistrées. Les abandonner ?"},Le={actions:{connect:"Connecter",connecting:"Connexion en cours...",edit:{ariaLabel:"Modifier le nœud",label:"Modifier",title:"Modifier"},health:{ariaLabel:"Exécuter une vérification de santé du nœud",label:"Santé",title:"Vérification de santé"},remove:{ariaLabel:"Supprimer le nœud",ariaLabelConfirm:"Confirmer la suppression du nœud",label:"Supprimer",labelConfirm:"Confirmer",title:"Supprimer",titleConfirm:"Confirmer la suppression"},restart:{ariaLabel:"Redémarrer le conteneur de nœud",label:"Redémarrer",title:"Disponible après FN-3113"},start:{ariaLabel:"Démarrer le conteneur de nœud",label:"Démarrer",title:"Disponible après FN-3113"},stop:{ariaLabel:"Arrêter le conteneur de nœud",label:"Arrêter",title:"Disponible après FN-3113"}},addCliButton:"Ajouter un CLI",addDockerNode:"Ajouter un nœud Docker",addDockerNodeTitle:"Ajouter un nœud Docker géré",addFirstNode:"Ajouter le premier nœud",adding:"Ajout...",addMountButton:"Ajouter un montage",addNode:"Ajouter un nœud",addVariableButton:"Ajouter une variable",apiKey:"Clé API",apiKeyMode:"Mode de clé API",apiKeyNotConfigured:"Non configuré",apiKeyPlaceholder:"Laisser vide pour ne pas modifier",attachProjects:"Joindre les projets existants",attachProjectsHint:"Sélectionnez les projets existants à exécuter sur ce nœud et fournissez le chemin absolu spécifique au nœud pour chacun.",authSync:{differ:"identifiants diffèrent",label:"Sync auth : {{status}}",match:"identifiants correspondent",notSynced:"non synchronisé"},autoAssignment:"Auto (pas d'affectation)",autoGenerate:"Générer automatiquement",availableSoon:"Disponible après FN-3113",cancelButton:"Annuler",closeAriaLabel:"Fermer la vue des nœuds",closeButton:"Fermer",closeLogsAriaLabel:"Fermer les journaux",closeModalAriaLabel:"Fermer la fenêtre des détails du nœud",closeNodeModal:"Fermer la boîte de dialogue Ajouter un nœud",concurrencyMin:"La concurrence doit être d'au moins 1",concurrencyRange:"La concurrence doit être entre {{min}} et {{max}}",containerLogs:"Journaux du conteneur",description:"Enregistrez un nœud Fusion existant en fournissant ses détails de connexion et ses paramètres de concurrence.",discoverBeforeAdding:"Découvrez les projets distants avant d'ajouter ce nœud.",discoveredCount_one:"",discoveredCount_other:"",discoveredRemoteProjectsLabel:"",discovering:"Découverte...",discoverRemoteProjects:"Découvrir les projets distants",discoveryFailed:"Échec de la découverte des projets distants",dismissError:"Ignorer l'erreur",docker:"Docker",dockerBadge:"Nœud Docker géré",dockerConfigMeta:"",dockerConfigSaveFailed:"Échec de l'enregistrement de la config Docker",dockerConfigSaveSuccess:"Configuration Docker enregistrée",dockerConfiguration:"Configuration Docker",dockerContainerId:"ID du conteneur",dockerContainerPath:"Chemin conteneur",dockerContextName:"Nom du contexte",dockerCpuCount:"Nombre de CPU",dockerDefaultCpu:"CPU par défaut",dockerDefaultMemory:"Mémoire par défaut",dockerEnvVars:"Variables d'environnement",dockerExitCode:"Code de sortie :",dockerExtraClis:"CLI supplémentaires",dockerFieldImage:"Image",dockerHost:{local:"Docker local",remote:"Distant : {{host}}"},dockerHostConfig:"Config hôte",dockerHostPath:"Chemin hôte",dockerHostUrl:"URL de l'hôte Docker",dockerLabel:"Docker",dockerMemoryBytes:"Octets mémoire (2 Go = 2147483648)",dockerNeedsRecreate:"Recréation requise",dockerNodeCreated:"Nœud Docker « {{name}} » créé",dockerPersistence:"Persistance",dockerPersistentStorage:"Stockage persistant",dockerPidsLimit:"Limite de PIDs",dockerPort:"Port",dockerResourceDefault:"Par défaut",dockerResources:"Ressources",dockerResourceSizing:"Dimensionnement des ressources",dockerRetainOnDelete:"Conserver à la suppression",dockerStatusUnknown:"Inconnu",dockerTlsCaCert:"Chemin du certificat CA TLS",dockerTlsCert:"Chemin du certificat TLS",dockerTlsKey:"Chemin de la clé TLS",dockerTlsVerify:"Vérification TLS",dockerUptime:"Disponibilité :",dockerVolumeMounts:"Montages de volumes",dockerVolumeName:"Nom du volume",editButton:"Modifier",errorFetching:"Impossible de récupérer les nœuds",errorPersistMappings:"Échec de la persistance des mappages de projet",errors:{connectFailed:"Impossible de se connecter",connectToNode:"Impossible de se connecter au nœud"},errorUnregisterAfterMappingFailure:"Échec de la désinscription du nœud après l'échec du mappage",failedCreateDocker:"Impossible de créer le nœud Docker",failedRefresh:"Impossible d'actualiser les nœuds",failedRemove:"Impossible de supprimer le nœud",fetchContainerLogsFailed:"Échec de la récupération des journaux du conteneur",fetchContainerStatusFailed:"Échec de la récupération du statut du conteneur",fetchingLogs:"Récupération des journaux…",fieldApiKey:"Clé API",fieldCreated:"Créé",fieldMaxConcurrent:"Concurrence max",fieldName:"Nom",fields:{authKey:"Clé d'authentification",host:"Hôte / Adresse IP",maxConcurrent:"Concurrence max",name:"Nom du nœud",port:"Port",url:"URL"},fieldStatus:"Statut",fieldType:"Type",fieldUpdated:"Mis à jour",fieldUrl:"URL",heading:"Nœuds",healthCheckButton:"Vérification de santé",healthCheckComplete:"Vérification de santé du nœud terminée",healthCheckFailed:"Échec de la vérification de santé",healthCheckSuccess:"Vérification de santé terminée pour {{name}}",healthLastCheck:"Dernière vérification :",healthStatus:"Statut :",local:"Local",localDocker:"Docker local",localNodeName:"Local",maxConcurrent:"Concurrence maximale",maxConcurrentHint:"Nombre maximum d'agents de tâche simultanés (1–10)",meshTopology:"Topologie maillée",meshTopologyAriaLabel:"Topologie maillée",metrics:{concurrency:"Concurrence",projects:"Projets"},modal:{closeButton:"Fermer la boîte de dialogue de connexion au nœud",title:"Se connecter au nœud"},modalAriaLabel:"Détails du nœud pour {{name}}",modalTitle:"Détails du nœud",multipleMatches:"Plusieurs projets distants correspondent à ce nom. Entrez manuellement le chemin correct.",name:"Nom",namePlaceholder:"Machine de construction",nameRequired:"Le nom est obligatoire",no:"Non",nodeLabel:"{{name}} ({{type}}) — {{status}}",noLogsAvailable:"Aucun journal disponible",noMatch:"Aucune correspondance exacte du nom distant. Entrez ce chemin manuellement.",noProjects:"Aucun projet n'est actuellement enregistré.",noProjectsAssigned:"Aucun projet n'est assigné à ce nœud.",noProjectsDiscovered:"Aucun projet découvert sur le nœud distant.",noProjectsRunning:"Aucun projet n'est en cours d'exécution sur ce nœud.",noRegistered:"Aucun nœud n'est enregistré pour le moment.",offline:"Hors ligne",online:"En ligne",pathDiscovered:"Chemin faisant autorité distant découvert : {{path}}",pathInvalid:"Le chemin est invalide",pathOnNode:"Chemin sur ce nœud",placeholders:{host:"192.0.2.10 ou my-server.local",name:"Serveur de construction",optional:"Optionnel"},projectPathMappingsLabel:"",provideManually:"Fournir manuellement la clé",pulling:"Récupération…",pullSettings:"Récupérer les paramètres",pullSettingsFailed:"Échec de la récupération des paramètres",pullSettingsSuccess:"Paramètres récupérés avec succès",pushing:"Envoi…",pushSettings:"Envoyer les paramètres",pushSettingsFailed:"Échec de l'envoi des paramètres",pushSettingsSuccess:"Paramètres envoyés avec succès",reachableUrl:"URL accessible / Nom d'hôte",readOnly:"Lecture seule",refresh:"Actualiser",refreshing:"Actualisation…",refreshStatus:"Actualiser le statut",registered:"Nœud « {{name}} » enregistré",registeredCount_one:"",registeredCount_other:"",registerFailed:"Échec de l'enregistrement du nœud",remote:"À distance",removeButton:"Supprimer",removed:"Nœud supprimé",restartButton:"Redémarrer",runtimeNodeLabel:"Nœud d'exécution",saveButton:"Enregistrer",saveDockerConfig:"Enregistrer la config Docker",saving:"Enregistrement…",sectionAssignedProjects:"Projets assignés",sectionDockerManagement:"Gestion Docker",sectionHealth:"Santé",sectionOverview:"Aperçu",sectionProjects:"Projets",sectionSettingsSync:"Synchronisation des paramètres",sectionSyncHistory:"Historique de synchronisation",startButton:"Démarrer",statusConnecting:"Connexion en cours",statusError:"Erreur",statusOffline:"Hors ligne",statusOnline:"En ligne",statusTitle:"Statut : {{status}}",stopButton:"Arrêter",success:{connected:'Connecté à "{{name}}"'},syncAuth:"Synchroniser l'auth",syncAuthFailed:"Échec de la synchronisation de l'auth",syncAuthSuccess:"Identifiants d'authentification synchronisés avec succès",syncDifferences:"Différences :",synced:"Synchronisé",syncing:"Synchronisation…",syncLastSync:"Dernière sync :",syncNeverSynced:"Jamais synchronisé",total:"Total",type:{local:"Local",remote:"Distant"},typeLocal:"Local",typeRemote:"Distant",updateFailed:"Échec de la mise à jour du nœud",updateSuccess:"{{name}} mis à jour",urlRequired:"L'URL est obligatoire pour les nœuds distants",validation:{concurrencyRange:"La concurrence doit être entre {{min}} et {{max}}",hostRequired:"L'hôte / l'adresse IP est requis",nameRequired:"Le nom du nœud est requis",portRange:"Le port doit être entre 1 et 65535"},viewLogsButton:"Voir les journaux",yes:"Oui"},Pe={local:"Local"},Re={error:{authSyncFailed:"La synchronisation d'authentification a échoué",failedToFetchStatus:"Impossible de récupérer l'état de synchronisation",pullFailed:"Échec de la récupération des paramètres",pushFailed:"Échec de l'envoi des paramètres",someRequestsFailed:"Certaines demandes de statut de synchronisation ont échoué"}},xe={authToken:"Jeton d'authentification (optionnel)",continue:"Continuer",continueOnboarding:"Continuer l'intégration",continueSetup:"Continuer la configuration",defaultName:"Serveur distant",description:"Fusion vous aide à planifier, exécuter et examiner les travaux d'ingénierie assistés par l'IA.",localFusion:"Fusion local",onTheStep:"Vous êtes sur",profileName:"Nom du profil",progressText:"{{completed}} sur {{total}} étape{{pluralS}} terminée — Vous êtes sur",remoteServer:"Serveur distant",resumeOnboarding:"Reprendre l'intégration",saving:"Enregistrement…",scanning:"Numérisation…",scanQr:"Scanner QR",serverUrl:"URL du serveur",serverUrlPlaceholder:"https://votre-hote-fusion",stepContinue:"étape. Continuez où vous vous êtes arrêté pour terminer la configuration de votre tableau de bord.",welcome:"Bienvenue dans Fusion"},De={agentId:"ID d'agent",agentIdHint:"Définition d'agent OpenClaw à exécuter (par défaut: main).",agentIdPlaceholder:"main",binaryPath:"Chemin du binaire",binaryPathHint:"Laissez vide pour résoudre openclaw à partir de votre PATH.",binaryPathPlaceholder:"openclaw (par défaut PATH)",cliTimeout:"Délai d'expiration OpenClaw (sec)",cliTimeoutHint:"Délai d'expiration d'exécution côté OpenClaw en secondes (0 = pas de délai).",description:"Pilote le CLI local <code1>openclaw</code1> en tant que sous-processus. Chaque invite Fusion est transmise via <code2>openclaw agent --local --json</code2> ; la définition de l'agent, le modèle et le niveau de réflexion sont résolus par OpenClaw. Cette carte ne définit que les remplacements et le chemin du binaire.",detected:"✓ openclaw détecté{{version}}{{path}}.",gateway:"Acheminer via la passerelle OpenClaw (sinon intégré)",gatewayHint:"Lorsqu'activé, les appels passent par le service de passerelle OpenClaw.",githubLink:"openclaw sur GitHub",model:"Remplacement du modèle",modelHint:"Optionnel — remplace le modèle par défaut d'OpenClaw.",modelPlaceholder:"p. ex. anthropic/claude-haiku-4-5, minimax/MiniMax-M3",notDetectedInstall:"<code>openclaw</code> non détecté. Installez l'agent en amont :",notFound:"✗ openclaw non trouvé",probing:"Sondage du binaire openclaw local…",saved:"Paramètres enregistrés.",savedDetected:"Enregistré · ✓ openclaw détecté{{version}}{{path}}.",savedNotFound:"Enregistré · ✗ openclaw non trouvé",savedProbeFailed:"Enregistré, mais la sonde a échoué.",statusDetected:"✓ Détecté{{version}}{{path}}",statusNotFound:"✗ non détecté sur PATH",subprocess:"Délai d'expiration du sous-processus CLI (ms)",subprocessHint:"Limite côté Fusion avant la suppression du sous-processus CLI (par défaut: {{default}}s).",testFailed:"Test échoué — consultez le statut ci-dessus.",thinking:"Niveau de réflexion",thinkingHint:"Contrôle la quantité de réflexion approfondie que le modèle utilise."},Me={agentHelp:"Choisissez l'agent Paperclip que ce runtime Fusion proxiera.",agentLabel:"Agent",apiKeyHelp:"Clé API de l'agent. Les déploiements de confiance locale peuvent laisser ce champ vide.",apiKeyLabel:"Clé API",apiKeyMinted:"Clé API créée via paperclipai (clé 'fusion-runtime' installée pour l'agent {{agentId}}). Cliquez sur Enregistrer pour persister.",apiKeyPlaceholder:"•••••••• (laisser vide pour conserver l'existant)",apiUrlHelp:"URL de base du serveur Paperclip.",apiUrlLabel:"URL API",cliApiKeyHelp:"Les déploiements de confiance locale ne nécessitent pas de clé.",cliApiKeyLabel:"Clé API (remplacer, optionnel)",cliApiKeyPlaceholder:"Optionnel — requis uniquement pour les modes non localement approuvés",cliBinaryHelp:"Optionnel — informatif ; l'adaptateur lit actuellement le fichier de configuration de l'instance directement.",cliBinaryLabel:"Binaire paperclipai",cliConfigLabel:"Config CLI :",cliConfigPathHelp:"Remplacez le chemin vers config.json. Laissez vide pour utiliser la valeur par défaut.",cliConfigPathLabel:"Chemin de configuration de l'instance",cliDiscoveryFailed:"Échec de la découverte CLI : {{reason}}",cliDiscoveryFailedLabel:"Échec de la découverte CLI : {{reason}}",companyHelp:"Sélectionnez une entreprise Paperclip.",companyIdRequired:"L'ID de l'entreprise est requis pour émettre une clé API Paperclip.",companyLabel:"Entreprise",connected:"Connecté.",connectedAsAgent:"Connecté en tant que {{agentName}}{{companyInfo}}.",connectionModeAriaLabel:"Mode de connexion Paperclip",connectToPopulate:"Connectez-vous pour remplir",description:"Pilotez un agent Paperclip (employé) dans une entreprise Paperclip. Chaque invite envoie une demande en forme de tâche ; la gouvernance, les budgets et les approbations sont appliqués par Paperclip. Attendez-vous à une latence de quelques secondes à quelques minutes par tour.",docsLink:"Documentation Paperclip",githubLink:"GitHub",goalIdHelp:"Associez le travail à un objectif Paperclip.",goalIdLabel:"ID de l'objectif (optionnel)",mintButton:"Créer une clé API via paperclipai",mintFailed:"Émission échouée : {{reason}}. Exécutez d'abord `paperclipai onboard` si votre CLI n'est pas authentifiée.",modeLabel:"Mode de conversation",name:"Paperclip",noAgentsDiscovered:"Aucun agent découvert",noCompaniesDiscovered:"Aucune entreprise découverte",onboardingStep1:"Assurez-vous qu'un serveur Paperclip est en cours d'exécution. Pour installer Paperclip :",optionalPlaceholder:"Optionnel",parentIssueIdHelp:"Limitez le travail sous un problème parent existant.",parentIssueIdLabel:"ID du problème parent (optionnel)",pickCompanyFirst:"Choisissez d'abord une entreprise",projectIdHelp:"Épinglez le travail sur un projet Paperclip spécifique.",projectIdLabel:"ID de projet (optionnel)",resolved:"résolu",runTimeoutHelp:"Plafond local avant que Fusion abandonne une exécution Paperclip.",runTimeoutLabel:"Délai d'exécution (ms)",savedCliDiscoveryFailed:"Enregistré · Échec de la découverte CLI : {{reason}}",savedConnected:"Enregistré · Connecté.",savedConnectedAsAgent:"Enregistré · Connecté en tant que {{agentName}}{{companyInfo}}.",savedProbeFailed:"Enregistré, mais le sondage a échoué.",savedUnreachable:"Enregistré · {{reason}}",settingsSaved:"Paramètres enregistrés.",statusCliDiscoveryFailed:"Échec de la découverte CLI : {{reason}}",statusConnected:"Connecté",statusConnectedAs:"Connecté en tant que {{agentName}}{{roleInfo}}{{companyInfo}}",statusProbing:"Sondage du serveur Paperclip…",statusUnreachable:"{{reason}}",tabApi:"API (URL + jeton)",tabCliAutoDerve:"CLI local (dérivation automatique)",testFailed:"Le test a échoué — voir le statut ci-dessus.",unreachable:"{{reason}}"},we={filterHint:""},Ie={addButton:"Ajouter",discoveredDescription:"Extensions installées résolues à partir de paquets et de chemins configurés.",discoveredTitle:"Extensions découvertes",enterSource:"Veuillez entrer une source de paquet",extensionDisabled:"Extension désactivée",extensionEnabled:"Extension activée",filterExtensions:"Extensions :",filterPrompts:"Invites :",filterSkills:"Compétences :",filterThemes:"Thèmes :",installFailed:"Impossible d'installer le paquet : {{error}}",installing:"Installation…",installSuccess:"Paquet installé avec succès",loadExtensionsFailed:"Impossible de charger les extensions : {{error}}",loading:"Chargement des paramètres Pi…",loadingExtensions:"Chargement des extensions…",loadingFailed:"Impossible de charger les paramètres Pi.",loadSettingsFailed:"Impossible de charger les paramètres Pi : {{error}}",noExtensions:"Aucune extension découverte.",noPackages:"Aucun paquet configuré.",noPackagesHelp:"Ajoutez une source de paquet ci-dessus pour commencer.",packagePlaceholder:"npm:pi-extension-name ou git:https://github.com/...",packageRemoved:"Paquet supprimé",refreshButton:"Actualiser",refreshExtensions:"Actualiser les extensions",reinstallButton:"Réinstaller la compétence Fusion",reinstallFailed:"Impossible de réinstaller la compétence Fusion : {{error}}",reinstalling:"Réinstallation de Fusion…",reinstallSuccess:"Compétence Fusion réinstallée avec succès",removeFailed:"Impossible de supprimer le paquet : {{error}}",removePackage:"Supprimer le package",removePackageLabel:"Supprimer le package {{label}}",removeResource:"Supprimer {{path}}",resourceRemoved:"{{resource}} supprimé",sectionExtensions:"Extensions",sectionPrompts:"Invites",sectionSkills:"Compétences",sectionThemes:"Thèmes",title:"Extensions Pi",toggleExtension:"Activer/désactiver {{name}}",updateFailed:"Impossible de mettre à jour l'extension : {{error}}",updateSettingsFailed:"Impossible de mettre à jour les paramètres : {{error}}"},Fe={additionalComments:"Commentaires supplémentaires (facultatif)",additionalCommentsPlaceholder:"Ajoutez du contexte ou des précisions supplémentaires…",addSubtask:"Ajouter une sous-tâche",advancedSettings:"Paramètres de planification avancés",aiThinking:"L'IA réfléchit…",archiveSession:"Archiver la session",backToSessions:"Retour aux sessions",backToSummary:"Retour au résumé",baseBranch:"Cible de fusion / branche de base (facultatif)",baseBranchPlaceholder:"main",branchAutoNew:"Créer une branche nommée automatiquement par tâche",branchCustomNew:"Créer une nouvelle branche personnalisée",branchExisting:"Utiliser une branche existante",branchName:"Nom de la branche",branchNameRequired:"Le nom de la branche est requis pour cette stratégie.",branchProjectDefault:"Utiliser la branche par défaut du projet",branchStrategy:"Stratégie de branche",breakdownSubheading:"Vérifiez et modifiez les sous-tâches générées à partir de votre plan. Ajustez les titres, descriptions, tailles, priorités et dépendances avant de créer.",breakingDown:"Décomposition…",breakIntoTasks:"Décomposer en tâches",breakIntoTasksTitle:"Décomposer le plan en plusieurs tâches avec dépendances",collapse:"Réduire",continue:"Continuer",createSingleTask:"Créer une seule tâche",createTasks:"Créer les tâches",creating:"Création…",delete:"Supprimer",deleteSession:"Supprimer la session",dependencies:"Dépendances",dependencyCycle:"Les dépendances contiennent un cycle. Supprimez les références circulaires avant de créer les tâches.",depthBlurb:"La taille du plan définit la profondeur d'entretien par défaut. Le champ Questions permet de la remplacer par un nombre exact.",depthLarge:"Grand",depthMedium:"Moyen",depthSmall:"Petit",description:"Description",dismiss:"Ignorer",dragToReorder:"Faire glisser pour réorganiser",examplePlan1:"Créer un système d'authentification avec connexion et inscription",examplePlan2:"Ajouter le support du mode sombre au tableau de bord",examplePlan3:"Créer un point de terminaison API pour exporter les tâches en CSV",examplePlan4:"Refactoriser le composant de carte de tâche pour de meilleures performances",expand:"Développer",failedCreateTask:"Impossible de créer la tâche",failedCreateTasks:"Impossible de créer les tâches",failedDeleteSession:"Impossible de supprimer la session",failedGoBack:"Impossible de revenir à la question précédente",failedLoadModels:"Impossible de charger les modèles",failedLoadSession:"Impossible de charger la session",failedRefinePlan:"Impossible d'affiner le plan",failedStartBreakdown:"Impossible de démarrer la décomposition",failedStartSession:"Impossible de démarrer la session de planification",failedSubmitResponse:"Impossible d'envoyer la réponse",firstSubtaskNoDeps:"La première sous-tâche ne peut pas avoir de dépendances.",generatingQuestion:"Génération de la prochaine question…",generationStopped:"Génération arrêtée. Vous pouvez réessayer ou démarrer une nouvelle session.",hideArchived:"Masquer les archivées",hideThinking:"Masquer la réflexion",initialHeading:"Transformez votre idée en tâche détaillée",initialSubheading:"Décrivez ce que vous voulez construire en langage simple. L'IA posera des questions de clarification et vous aidera à structurer une tâche bien définie.",keyDeliverables:"Livrables clés",loadingModels:"Chargement des modèles…",markdown:"Markdown",moveDown:"Déplacer vers le bas",moveSubtaskDown:"Déplacer la sous-tâche vers le bas",moveSubtaskUp:"Déplacer la sous-tâche vers le haut",moveUp:"Déplacer vers le haut",newPlanningSession:"Nouvelle session de planification",newSession:"Nouvelle session",noActiveQuestion:"Aucune question active dans la session",noPreviousSubtasks:"Aucune sous-tâche précédente disponible.",noSavedSessions:"Aucune session sauvegardée. Démarrez-en une à droite pour la voir ici.",plain:"Texte brut",planningComplete:"Planification terminée !",planningCompleteSubheading:"Vérifiez et affinez votre tâche avant de la créer.",planningDepth:"Profondeur de planification",planningModel:"Modèle de planification",planningModelBlurb:"Choisit le modèle qui conduit l'entretien de planification et rédige l'ébauche finale.",planningSessions:"Sessions de planification",priority:"Priorité",questionProgress:"Question {{progress}} sur ~3",questionsAuto:"Auto",questionsLabel:"Questions",reconnecting:"Reconnexion…",refineFurther:"Affiner davantage",relativeTimeDays_one:"",relativeTimeDays_other:"",relativeTimeHours_one:"",relativeTimeHours_other:"",relativeTimeJustNow:"à l'instant",relativeTimeMinutes_one:"",relativeTimeMinutes_other:"",relativeTimeWeeks_one:"",relativeTimeWeeks_other:"",remove:"Supprimer",retryFailed:"Nouvelle tentative échouée. Veuillez réessayer.",retrying:"Nouvelle tentative…",sessionActiveOtherTab:"Cette session est active dans un autre onglet",sessionActiveOtherTabLive:"Cette session est active dans un autre onglet (signal de vie actif)",sessionFailed:"La session a échoué lors de la connexion à l'IA.",sessionFailed2:"Échec de la session",showArchived:"Afficher les archivées",showFormattedMarkdown:"Afficher le markdown formaté",showQA:"Afficher les Q&R",showRawText:"Afficher le texte brut",showThinking:"Afficher la réflexion",sizeLarge:"L (Grand)",sizeMedium:"M (Moyen)",sizeSmall:"S (Petit)",startPlanning:"Démarrer la planification",statusComplete:"Terminé",statusError:"Erreur",statusGenerating:"En cours",statusNeedsInput:"En attente",stop:"Arrêter",subtaskDescription:"Description",subtaskPriority:"Priorité",subtaskSize:"Taille",subtaskTitle:"Titre",suggestedDependencies:"Dépendances suggérées",suggestedSize:"Taille suggérée",takeControl:"Prendre le contrôle",takingControl:"Prise de contrôle…",thinkingElapsed:"Réflexion… ({{seconds}} s)",title:"Mode planification",tryAnExample:"Essayez un exemple :",typeAnswerPlaceholder:"Saisissez votre réponse ici…",unarchiveSession:"Désarchiver la session",untitled:"Sans titre",untitledSession:"Session sans titre",usingDefault:"Modèle par défaut",whatToBuild:"Que voulez-vous construire ?",whatToBuildPlaceholder:"ex : Construire un système d'authentification avec connexion, inscription et réinitialisation du mot de passe…"},Ee={addItem:"Ajouter un élément",aiScanDisabled:"Analyse IA au chargement désactivée",aiScanEnabled:"Analyse IA au chargement activée",aiScanHint:"Activer cette option met uniquement à jour la configuration. Utilisez Réanalyser et recharger pour l'exécuter maintenant.",author:"Auteur :",backToList:"Retour à la liste des plugins",browseRegistry:"",builtinInstalledGlobally:"{{name}} installé globalement",builtinInstallFailed:"Échec de l'installation de {{name}} : {{error}}",builtinMetadataOnly:"Métadonnées intégrées uniquement",builtinNoPackage:"{{name}} est intégré et ne possède pas encore de package installable",builtinPluginRecommendations:"Recommandations de plugins intégrés",builtinPlugins:"Plugins intégrés",builtinPluginsCatalog:"Catalogue de plugins intégrés pour les runtimes et les intégrations.",cancel:"Annuler",checkingSetup:"Vérification de la configuration…",componentUnavailable:"Composant du plugin indisponible",couldNotResolve:"Le tableau de bord n'a pas pu résoudre cette surface de plugin du registre d'hôte statique.",disabledForProject:"{{name}} désactivé pour ce projet",disableInProject:"Désactiver dans le projet",disablePlugin:"Désactiver {{name}}",disablePluginFailed:"Échec de la désactivation du plugin : {{error}}",droidOnboardingTip:"Astuce : Activez Droid CLI pour réutiliser votre abonnement Factory AI sans ajouter de clé API.",droidRecommendDesc:"Utilisez votre session Droid CLI locale comme fournisseur d'IA dans Fusion.",droidRecommendTitle:"Activer Droid CLI",enableAiScanBeforeLoad:"Activer l'analyse IA avant chargement/rechargement",enableAiSecurityScan:"Activer l'analyse de sécurité IA au chargement",enabledForProject:"{{name}} activé pour ce projet",enableFailed:"Échec de l'activation de {{name}} : {{error}}",enableInProject:"Activer dans le projet",enablePlugin:"Activer {{name}}",enablePluginFailed:"Échec de l'activation du plugin : {{error}}",experimental:"Expérimental",findings_one:"",findings_other:"",homepage:"Page d'accueil :",install:"Installer",installedGlobally:"Plugin installé globalement",installedPlugins:"Plugins installés",installFailed:"Échec de l'installation du plugin : {{error}}",installFromRegistry:"",installHint:"Naviguez jusqu'à la racine du package du plugin (contenant manifest.json) ou un répertoire dist compilé.",installing:"Installation…",installNamed:"Installer {{name}}",installPathPlaceholder:"Chemin absolu vers le répertoire du plugin ou le dossier dist",installPathRequired:"Veuillez saisir un chemin de plugin",installPluginGlobally:"Installer le plugin globalement",installSetup:"Installer la configuration",loadFailed:"Échec du chargement des plugins : {{error}}",loading:"Chargement…",loadingPlugins:"Chargement des plugins…",manage:"Gérer",noConfigurableSettings:"Aucun paramètre configurable.",noHostRegistration:"",noPluginsHint:"Installez un plugin pour commencer, ou utilisez le catalogue intégré ci-dessous.",noPluginsInstalled:"Aucun plugin installé.",noSecurityScan:"Aucune analyse de sécurité n'a encore été effectuée.",openAuthentication:"Ouvrir l'authentification",openOnboarding:"Ouvrir l'intégration",refresh:"Actualiser",refreshPluginList:"Actualiser la liste des plugins",registryByAuthor:"",registryCategory:"",registryCategoryAll:"",registryCategoryIntegration:"",registryCategoryRuntime:"",registryComingSoon:"",registryDescription:"",registryEmpty:"",registryEmptySearch:"",registryInstalled:"",registryInstallFailed:"",registryLoadFailed:"",registryLoading:"",registryNotInstallable:"",registryPluginResults:"",reload:"Recharger",reloaded:"{{name}} rechargé",reloadFailed:"Échec du rechargement du plugin : {{error}}",reloading:"Rechargement…",removeItem:"Supprimer l'élément",rescanAndReload:"Réanalyser et recharger",rescanFailed:"Échec de la réanalyse du plugin : {{error}}",rescanned:"{{name}} réanalysé",retry:"",saveSettings:"Enregistrer les paramètres",saveSettingsFailed:"Échec de l'enregistrement des paramètres : {{error}}",searchRegistry:"",searchRegistryPlaceholder:"",securityScan:"Analyse de sécurité",selectOption:"Sélectionner…",settings:"Paramètres",settingsSaved:"Paramètres enregistrés",settingUp:"Configuration…",setupInstalled:"Configuration de {{name}} installée",setupInstallFailed:"Échec de l'installation de la configuration de {{name}} : {{error}}",setupReady:"Configuration prête",setupRequired:"Configuration requise",startPluginToCheckSetup:"Démarrez le plugin pour vérifier la configuration",statusBuiltIn:"Intégré",statusInstalled:"Installé",statusNotInstalled:"Non installé",uninstallConfirm:"Voulez-vous vraiment désinstaller « {{name}} » globalement (tous les projets) ?",uninstalledGlobally:"{{name}} désinstallé globalement",uninstallFailed:"Échec de la désinstallation du plugin : {{error}}",uninstallGlobally:"Désinstaller globalement",uninstallGloballyTitle:"Désinstaller globalement",uninstallTitle:"Désinstaller le plugin globalement",unknownError:"erreur inconnue",updateFailed:"Échec de la mise à jour du plugin : {{error}}",version:"Version :",viewUnavailable:""},qe={authFail:"Exécutez gh auth login et réessayez.",authOk:"L'authentification CLI GitHub est disponible.",baseBranch:"Branche de base",bodyLabel:"Corps",branchRemoteFail:"Poussez la branche vers le serveur distant avant de créer une RP.",branchRemoteOk:"La branche distante est disponible.",changedFilesLabel:"Fichiers modifiés",checkAuth:"Authentification GitHub disponible",checkBranch:"Branche envoyée vers le serveur distant",checkCommits:"Commits disponibles",checkConflicts:"Aucun conflit avec la base",commitsFail:"Aucun commit trouvé pour cette branche.",commitsLabel:"Commits",commitsOk:"Les commits sont prêts à être soumis.",conflictsDetected:"Conflits détectés. Résolvez les conflits ou relancez les vérifications de pré-vol.",createAsDraft:"Créer en tant que brouillon",createDraftPr:"Créer une RP de brouillon",createPr:"Créer une RP",createTitle:"Créer une demande de tirage",dismissError:"Ignorer l'erreur de RP",noConflicts:"Aucun conflit de fusion détecté.",preflightChecks:"Vérifications de pré-vol",previewTitle:"Aperçu des différences et des commits",regenerate:"Régénérer",rerunPreflight:"Relancer les vérifications de pré-vol",revertToAi:"Revenir à la version IA",titleLabel:"Titre",usingTemplate:"Utilisation de <code>.github/pull_request_template.md</code>",assignees:"",dismissConflictResolutionError:"",dismissPushBranchError:"",error:{actionOpen:"",actionRun:"",docs:""},generatingBody:"",generatingTitle:"",labels:"",loadingOptions:"",loadingPreflight:"",noChangedFiles:"",noCommits:"",pushBranch:{button:"",message:"",title:""},resolveConflicts:{button:"",message:"",title:""},reviewers:"",view:{agentDisagreed:"",agentReplyFix:"",approve:"",autoMerge:"",close:"",confirmMerge:"",creating:"",creationFailed:"",loading:"",merge:"",mergeableLabel:"",mergeDisabledUntilVerified:"",none:"",noReviewThreads:"",requestRetry:"",resolveConflictsBeforeMerge:"",resolveConflictsOnGithub:"",responseAlreadyInProgress:"",responsePending_one:"",responsePending_other:"",retryCreation:"",reviewLabel:"",threadFixed:"",threadPending:"",verifyingGithub:"",backToList:"",listEmpty:"",listError:"",listItemLabel:"",listLoading:"",listTitle:""}},je={blockedDescription:"Vous pouvez afficher l'aperçu dans un onglet du navigateur séparé.",blockedTitle:"L'aperçu ne peut pas être intégré",errorTitle:"Impossible de charger l'aperçu",loading:"Chargement de l'aperçu...",openInNewTab:"Ouvrir dans un nouvel onglet"},He={activeTasks:"Tâches actives",agents:"Agents",cannotPauseWhileInitializing:"",completed:"Complétée",confirm:"Confirmer",confirmRemove:"Confirmer la suppression",confirmRemoveProject:"Confirmer la suppression du projet",daysAgo_one:"",daysAgo_other:"",hoursAgo_one:"",hoursAgo_other:"",justNow:"À l'instant",lastActivity:"Dernière activité :",minutesAgo_one:"",minutesAgo_other:"",moreItems_one:"",moreItems_other:"",never:"Jamais",nodeAvailability:"Disponibilité du nœud du projet",noHealthData:"Aucune donnée de santé disponible",open:"Ouvrir",openProject:"Ouvrir le projet",pause:"",pauseProject:"",removeProject:"Supprimer le projet",resume:"",resumeProject:""},Ne={editName:"Modifier le nom",empty:"Aucun projet détecté",emptyHint:"Essayez un chemin de base différent ou ajoutez un projet manuellement",noDbWarning:"Aucune base de données fn trouvée - sera initialisée",registerAll:"Enregistrer tout",registering:"Enregistrement en cours...",registerSelected_one:"",registerSelected_other:"",selectAll_one:"",selectAll_other:"",selectedCount_one:"",selectedCount_other:""},Be={actions:{favoritesError:"Impossible de mettre à jour les favoris",modelFavoritesError:"Impossible de mettre à jour les modèles favoris",pauseError:"Impossible de mettre en pause le projet {{name}}",pauseSuccess:"Le projet {{name}} a été mis en pause",removeError:"Impossible de supprimer le projet {{name}}",removeSuccess:"Le projet {{name}} a été supprimé",resumeError:"Impossible de reprendre le projet {{name}}",resumeSuccess:"Le projet {{name}} a été repris"},activeTasksLabel:"Tâches actives",addFirstProject:"Ajouter votre premier projet",addProject:"Ajouter un projet",allNodes:"Tous les nœuds",completedLabel:"Complétées",emptyStateDescription:"Commencez par ajouter votre premier projet. Les projets vous permettent d'organiser et de suivre les tâches dans plusieurs référentiels.",erroredLabel:"Erreurs",filterActive:"Actifs",filterAll:"Tous",filterByNode:"Filtrer par nœud",filterErrored:"Erreurs",filterPaused:"En pause",nodesLabel:"Nœuds",noMatch:"Aucun projet ne correspond au filtre actuel",noProjectsFound:"Aucun projet trouvé",setup:{success:"Le projet {{name}} a été enregistré avec succès"},showAll:"Afficher tous les projets",sortActivityNewest:"Dernière activité (Plus récente)",sortActivityOldest:"Dernière activité (Plus ancienne)",sortNameAsc:"Nom (A-Z)",sortNameDesc:"Nom (Z-A)",sortProjects:"Trier les projets",sortStatusAsc:"Statut (Erreur → Actif)",sortStatusDesc:"Statut (Actif → Erreur)",title:"Projets",totalLabel:"Total"},ze={addBookmark:"",allProjects:"Tous les projets",ariaLabel:"Sélectionner le projet",bookmarked:"",clearSearch:"Effacer la recherche",exact:"",exactMatch:"",noResults:"Aucun projet ne correspond à votre recherche",projects:"",projectsTitle:"",recent:"Récent",removeBookmark:"",searchAriaLabel:"",searchPlaceholder:"Rechercher des projets...",switchProjectTitle:"",viewAll:"Voir tous les projets"},_e={actions:{addModel:"+ Ajouter un modèle",detecting:"Détection en cours…",detectModels:"Détecter les modèles",detectModelsTitle:"Appeler le point d'accès /models du fournisseur pour découvrir les modèles disponibles",removeModel_one:"",removeModel_other:"",save:"Enregistrer le fournisseur",saving:"Enregistrement en cours..."},addCustom:"Ajouter un fournisseur personnalisé",apiKeyKeepPlaceholder:"",apiKeyLabel:"Clé API",apiTypeAnthropic:"Compatible avec Anthropic",apiTypeGoogle:"Google Generative AI",apiTypeInvalid:"Le type d'API est invalide.",apiTypeLabel:"Type d'API",apiTypeOpenAi:"Compatible avec OpenAI",apiTypeOpenAiResp:"Réponses OpenAI",baseUrlLabel:"URL de base",deleteConfirm:'Supprimer le fournisseur personnalisé "{{name}}"?',deleteLabel:"Supprimer {{name}}",detectError:{allDuplicate:"Tous les modèles découverts sont déjà dans la liste.",failed:"Impossible de détecter les modèles",noModels:"Aucun modèle trouvé. Le fournisseur peut nécessiter une clé API.",urlRequired:"L'URL de base est requise pour détecter les modèles."},detecting:"Détection en cours…",detectModels:"Détecter les modèles",detectTitle:"Détection automatique des modèles à partir du point de terminaison /models du fournisseur",editLabel:"Modifier {{name}}",failedDelete:"Échec de la suppression du fournisseur.",failedDetect:"Échec de la détection des modèles",failedLoad:"Échec du chargement des fournisseurs personnalisés.",failedSave:"Échec de l'enregistrement du fournisseur.",fields:{apiKey:"Clé API",apiType:"Type d'API",baseUrl:"URL de base",contextWindow:"Fenêtre de contexte",id:"ID du fournisseur",maxTokens:"Tokens max",modelId:"ID du modèle",modelName:"Nom d'affichage",modelNameLabel:"",models:"Modèles",name:"Nom d'affichage",reasoning:"Raisonnement"},llamaCpp:{disable:"Désactiver",disabling:"Désactivation en cours…",enable:"Activer",enabling:"Activation en cours…",probing:"Sondage du serveur llama.cpp…",reachable:"Serveur accessible à {{url}}",test:"Test",testing:"Test en cours…",title:"llama.cpp — via serveur HTTP",unavailable:"Serveur indisponible: {{reason}}"},loading:"Chargement des fournisseurs personnalisés…",modelsLabel:"Modèles disponibles",nameLabel:"Nom du fournisseur",nameRequired:"Le nom du fournisseur est requis.",noModelsFound:"Aucun modèle trouvé. Le fournisseur peut nécessiter une clé API.",noneConfigured:"Aucun fournisseur personnalisé configuré.",placeholders:{apiKey:"sk-..., MY_API_KEY, ou !command"},saveChanges:"Enregistrer les modifications",saveProvider:"Enregistrer le fournisseur",saving:"Enregistrement en cours…",urlInvalid:"L'URL de base doit être une URL http/https valide.",urlRequired:"L'URL de base est requise.",urlRequiredForDetect:"L'URL de base est requise pour détecter les modèles.",validation:{apiTypeRequired:"Le type d'API est requis.",idConflict:"L'ID du fournisseur entre en conflit avec un fournisseur intégré.",idKebabCase:"L'ID du fournisseur doit être en kebab-case.",idRequired:"L'ID du fournisseur est requis.",modelId:"Chaque modèle doit avoir un ID de modèle.",modelRequired:"Au moins un modèle est requis.",urlProtocol:"L'URL de base doit utiliser http ou https.",urlRequired:"L'URL de base est requise.",urlValid:"L'URL de base doit être une URL valide."}},Oe={errorAttachmentsBeforeSession:"Impossible d'envoyer des pièces jointes avant que la session de chat soit prête",errorAttachmentsWhileStreaming:"Impossible d'envoyer des pièces jointes pendant qu'une réponse est en cours de diffusion",errorGettingResponse:"Impossible d'obtenir une réponse",errorInitializingChat:"Impossible d'initialiser le chat",errorRefreshingSessions:"Impossible de rafraîchir les sessions de chat",errorStartingNewChat:"Impossible de démarrer un nouveau chat"},Ue={bouncedEntered:"{{bounced}} rejetés / {{entered}} entrés ({{days}} derniers jours)",countingSince:"Comptage depuis {{date}}",details:"Détails",duration:{heading:"Durée",moreStats:"Plus de statistiques",p50:"P50",p50Raw:"P50 brut : {{value}} ms",p95:"P95",p95Raw:"P95 brut : {{value}} ms",reason:"Raison : {{reason}}",sampleCount_one:"",sampleCount_other:"",samples_one:"",samples_other:""},failedToLoad:"",failureRate:"Taux d'échec : {{rate}}",flowChart:{aria:"",bounced:"",empty:"",entered:"",heading:""},heading:"Fiabilité",hideEmptyDays:"Masquer les jours vides",inReviewFlow:"Flux en révision",insufficientData:"Données insuffisantes — {{reason}}",loading:"",mergeAttempts:{heading:"Tentatives de fusion",histogramTotal_one:"",histogramTotal_other:"",max:"Max",mean:"Moyenne",moreStats:"Plus de statistiques",reason:"Raison : {{reason}}",tasksCounted_one:"",tasksCounted_other:""},mergeAttemptsChart:{aria:"",empty:"",heading:""},reason:"Raison : {{reason}}",resetBaseline:"Réinitialiser la ligne de base : {{date}}",resetModal:{confirm:"Confirmer la réinitialisation",description:"Cela définit une nouvelle ligne de base pour les statistiques de fiabilité. Les événements historiques antérieurs à l'heure de réinitialisation sont exclus des décomptes mais ne sont pas supprimés.",failedError:"Impossible de réinitialiser les statistiques de fiabilité",title:"Réinitialiser les statistiques de fiabilité ?"},resetStats:"Réinitialiser les statistiques",showEmptyDays:"Afficher les jours vides",successRateLabel:"Taux de réussite en révision (7 derniers jours)",table:{bounced:"Rejetés",date:"Date",entered:"Entrés"},window:"Fenêtre : {{start}} → {{end}}"},Ge={actionFailed:"L'action a échoué",addCredentialsHint:"Ajoutez les informations d'identification du fournisseur dans les paramètres d'authentification.",alwaysOn:"Toujours activé",attachExport:"Joindre l'artefact d'exportation Markdown",createRun:"Créer une exécution",createRunFailed:"Échec de la création de l'exécution",createTask:"Créer une tâche",createTaskButton:"Créer une tâche",createTaskTitle:"Créer une tâche à partir du résultat",currentDefaults:"",defaultFindingHeading:"Résultat de recherche",descriptionLabel:"Description",disabled:"La recherche est désactivée pour ce projet.",enableResearchHint:"Activez les paramètres de recherche du projet pour créer des exécutions.",enrichTask:"Enrichir la tâche",enrichTaskButton:"Enrichir la tâche",enrichTaskTitle:"Enrichir la tâche existante",enterTaskId:"Entrez l'ID de la tâche",exportedFile:"Exporté {{filename}}",exportFailed:"L'exportation a échoué",exportHtml:"Exporter en HTML",exportJson:"Exporter en JSON",exportMd:"Exporter en MD",findingLabel:"Résultat :",loadingRuns:"Chargement des exécutions…",loadingTasks:"Chargement des tâches…",missingApiKey:"Clé API manquante pour {{provider}}.",noPreview:"Aucun aperçu disponible.",noRunSelected:"Aucune exécution sélectionnée",noRunsYet:"Aucune exécution pour l'instant",noSourcesAvailable:"Aucune source de recherche activée n'est disponible pour ce projet.",noSummaryYet:"Pas de résumé pour l'instant.",notSet:"",openAuthSettings:"Ouvrir les paramètres d'authentification",openResearchSettings:"Ouvrir les paramètres de recherche",priorityHigh:"Élevé",priorityLabel:"Priorité",priorityLow:"Faible",priorityNormal:"Normal",priorityUrgent:"Urgent",providersLabel:"Fournisseurs",queryLabel:"Requête",runCancelled:"Exécution annulée",runCreated:"Exécution de recherche créée",runHistory:"Historique des exécutions",runLabel:"Exécution :",runRetried:"Exécution relancée",searchRunsPlaceholder:"Rechercher les exécutions",selectRunToViewDetails:"Sélectionnez une exécution pour voir les détails.",statCompleted:"Terminée",statFailed:"Échoué",statRunning:"En cours",subtitle:"Recherche et synthèse citées : rassemblez les sources, récupérez le contenu et synthétisez les résultats.",targetTaskLabel:"Tâche cible",taskCreatedFromResearch:"Tâche créée à partir de la recherche",taskEnrichedFromResearch:"Tâche enrichie par la recherche",title:"Recherche",titleLabel:"Titre",unavailable:"La recherche est indisponible pour ce projet.",viewLabel:"Affichage de la recherche"},Ve={closeExpandedView:"",collapse:"",expand:"",expandView:"",label:"",resize:"",viewExpanded:"",views:"",resizeExpandedView:""},We={andMore_one:"",andMore_other:"",delete:"Supprimer",deleteMessage:"Supprimer la routine {{name}} ? Cette action ne peut pas être annulée.",deleteName:"Supprimer {{name}}",deleteTitle:"Supprimer la routine",disable:"Désactiver",disableName:"Désactiver {{name}}",edit:"Modifier",editName:"Modifier {{name}}",enable:"Activer",enableName:"Activer {{name}}",resultFailed:"Échoué",resultSuccess:"Succès",runHistory_one:"",runHistory_other:"",runNameNow:"Exécuter {{name}} maintenant",running:"Exécution…",runNow:"Exécuter maintenant",stepCount_one:"",stepCount_other:""},Ke={cannotChangeWhileActive:"La substitution du nœud ne peut pas être modifiée tant que la tâche est active.",clearOverride:"Effacer la substitution",effectiveNode:"Nœud effectif",errorLoadingNodes:"Impossible de charger les nœuds",errorUpdatingOverride:"Impossible de mettre à jour la substitution du nœud",intro:"Affichez le nœud d'exécution effectif et contrôlez la substitution de nœud par tâche.",localNoConfiguration:"Local (pas de routage configuré)",lockedWhileActive:"Le routage est verrouillé pendant que cette tâche est active. La substitution du nœud ne peut pas être modifiée tant que la tâche reste active.",nodeOptionLabel:"",nodeUnavailable:"nœud indisponible ou inconnu",overrideCleared:"Substitution du nœud effacée",overrideSection:"Substitution du nœud",overrideSetTo:"Substitution définie sur",overrideUpdated:"Substitution du nœud mise à jour",selectLabel:"Sélectionner le nœud d'exécution",source:{noRouting:"Aucun routage",override:"Substitution par tâche",projectDefault:"Défaut du projet"},summarySection:"Résumé du routage",title:"Routage des tâches",unavailablePolicy:"Politique en cas de nœud indisponible",unhealthy:"Défaillant",useProjectDefault:"Utiliser le défaut du projet"},Qe={nousResearchLogoAlt:""},Je=JSON.parse(`{"actionAiPrompt":"Invite IA","actionCommand":"Commande","actionCreateTask":"Créer une tâche","actionModeAdvanced":"Multi-étapes","actionModeAdvancedHint":"Exécuter plusieurs actions séquentiellement","actionModeAriaLabel":"Mode d'action","actionModeLabel":"Mode d'action","actionModeSimple":"Simple","actionModeSimpleHint":"Exécuter une commande, une invite ou une action de création de tâche","actionTypeAiPrompt":"Invite IA","actionTypeAriaLabel":"Type d'action","actionTypeCommand":"Commande","actionTypeCreateTask":"Créer une tâche","actionTypeLabel":"Type d'action","addAiPromptStep":"Ajouter une étape d'invite IA","addCommandStep":"Ajouter une étape de commande","addCreateTaskStep":"Ajouter une étape de création de tâche","advancedMode":"Multi-étapes","advancedModeHelp":"Exécuter plusieurs étapes séquentiellement (commandes et invites IA)","aiPromptType":"Invite IA","andMore_one":"","andMore_other":"","apiEndpointHint":"Chemin du point de terminaison API qui déclenche cette routine","apiEndpointLabel":"Point de terminaison API","apiEndpointPlaceholder":"/api/routine/my-routine","automationCount_one":"","automationCount_other":"","cancelButton":"Annuler","catchUpPolicyHint":"Que faire lorsqu'une exécution planifiée est manquée","catchUpPolicyLabel":"Politique de rattrapage","catchUpPolicyRunAll":"Exécuter toutes les exécutions manquées","catchUpPolicyRunOne":"Exécuter la dernière exécution manquée","catchUpPolicySkip":"Ignorer les exécutions manquées","columnTodo":"À faire","columnTriage":"Triage","command":"Commande","commandHelp":"Commande shell à exécuter. S'exécute avec vos autorisations utilisateur.","commandHint":"Commande shell à exécuter.","commandLabel":"Commande","commandPlaceholder":"p. ex. npm test","commandRequired":"La commande est requise","commandType":"Commande","continueOnFailure":"Continuer en cas d'échec","continueOnFailureHelp":"Si cette option est activée, l'étape suivante s'exécutera même si celle-ci échoue","continuesOnFailure":"Continue en cas d'échec","createButton":"Créer un calendrier","createError":"Impossible de créer la routine","createFirst":"Créez votre première automatisation","createNew":"Créer une nouvelle automatisation","createRoutine":"Créer une routine","createTaskType":"Créer une tâche","cronAutoFilled":"Rempli automatiquement à partir du préréglage : {{cron}}","cronAutoFilledHint":"Rempli automatiquement depuis le préréglage : {{expression}}","cronCustomHint":"min heure jour mois joursemaine","cronExpressionLabel":"Expression cron","cronHelp":"min heure jour mois jour semaine — ","cronInvalid":"Format cron invalide — 5 champs attendus (par exemple '0 */6 * * *')","cronLabel":"Expression Cron","cronPresetCustom":"Expression cron personnalisée","cronPresetDaily":"Tous les jours (minuit)","cronPresetHourly":"Toutes les heures","cronPresetMonthly":"Tous les mois (1er)","cronPresetWeekly":"Toutes les semaines (lundi)","cronRequired":"L'expression cron est requise pour les calendriers personnalisés","crontabGuru":"","delete":"Supprimer","deleteError":"Impossible de supprimer la routine","deleteMessage":"Supprimer l'horaire {{name}} ? Cette action ne peut pas être annulée.","deleteName":"Supprimer {{name}}","deleteStep":"Supprimer {{name}}","deleteTitle":"Supprimer l'horaire","descriptionLabel":"Description (facultatif)","descriptionPlaceholder":"Que fait ce calendrier ?","disable":"Désactiver","disableName":"Désactiver {{name}}","edit":"Modifier","editName":"Modifier {{name}}","editRoutineHeading":"Modifier la routine","editStep":"Modifier {{name}}","editTitle":"Modifier le calendrier","emptyStateDescription":"Créez une automatisation avec un calendrier, un webhook, une API ou un déclencheur manuel.","enable":"Activer","enabledHelp":"Lorsqu'il est désactivé, le calendrier ne s'exécutera pas automatiquement","enabledHint":"Lorsque désactivée, la routine ne s'exécutera pas automatiquement","enabledLabel":"Activé","enableName":"Activer {{name}}","errorApiEndpointRequired":"Le point de terminaison API est obligatoire","errorCommandRequired":"La commande est obligatoire","errorCronInvalid":"Format cron invalide — 5 champs attendus (ex. '0 */6 * * *')","errorCronRequired":"L'expression cron est obligatoire","errorLoadModels":"Échec du chargement des modèles","errorModelIncomplete":"Le fournisseur de modèle et l'ID de modèle doivent être tous les deux définis ou tous les deux vides","errorNameRequired":"Le nom est obligatoire","errorPromptRequired":"L'invite est obligatoire","errorScopeNoProject":"Les entrées spécifiques au projet nécessitent un projet actif.","errorStepCommandRequired":"Étape {{n}} : la commande est obligatoire","errorStepNameRequired":"Étape {{n}} : le nom est obligatoire","errorStepPromptRequired":"Étape {{n}} : l'invite est obligatoire","errorStepsEditing":"Veuillez enregistrer ou annuler toutes les modifications des étapes avant d'enregistrer la routine","errorStepsRequired":"Au moins une étape est requise","errorStepTaskDescRequired":"Étape {{n}} : la description de la tâche est obligatoire","errorTaskDescriptionRequired":"La description de la tâche est obligatoire","errorTimeoutMin":"Le délai d'expiration doit être d'au moins 1 seconde (1000 ms)","errorWebhookPathRequired":"Le chemin du webhook est obligatoire","executionPolicyHint":"Comment gérer les exécutions simultanées de cette routine","executionPolicyLabel":"Politique d'exécution","executionPolicyParallel":"Autoriser les exécutions simultanées","executionPolicyQueue":"File d'attente après l'actuel (une à la fois)","executionPolicyReject":"Rejeter les nouvelles exécutions en cours","executorModelDropdownLabel":"Modèle d'exécuteur","executorModelHelp":"Modèle IA pour l'exécution de la tâche créée. Utilise la valeur par défaut si elle n'est pas sélectionnée.","executorModelLabel":"Modèle d'exécuteur (facultatif)","executorModelOptional":"Modèle d'exécuteur (optionnel)","executorModelPlaceholder":"Utiliser la valeur par défaut","frequencyLabel":"Fréquence","global":"Global","globalScope":"Automatisations globales (au niveau de l'utilisateur)","globalScoped":"Ce calendrier sera créé à portée mondiale.","globalScopeTitle":"Portée mondiale","lastLabel":"","loadRoutinesError":"Impossible de charger les routines","manualTriggerInfo":"Cette routine sera déclenchée manuellement via le tableau de bord ou l'API.","modeAriaLabel":"Mode d'exécution","model":"Modèle","modeLabel":"Mode d'exécution","modelConsistency":"Le fournisseur de modèle et l'ID du modèle doivent tous deux être définis ou tous deux être vides","modelDropdownLabel":"Modèle","modelHelp":"Modèle IA pour cette étape. Utilise la valeur par défaut si elle n'est pas sélectionnée.","modelLabel":"Modèle (facultatif)","modelOptional":"Modèle (optionnel)","modelPlaceholder":"Utiliser la valeur par défaut","modelProviderRequired":"Le fournisseur de modèles et l'ID de modèle doivent être définis ensemble","moveDown":"Déplacer vers le bas","moveStepDown":"Déplacer {{name}} vers le bas","moveStepUp":"Déplacer {{name}} vers le haut","moveUp":"Déplacer vers le haut","nameLabel":"Nom","namePlaceholder":"Par exemple Mettre à jour les dépendances","nameRequired":"Le nom est requis","newAutomation":"Nouvelle automatisation","newRoutineHeading":"Nouvelle routine","newTitle":"Nouveau calendrier","nextLabel":"","noActiveProject":"Aucun projet actif. Les calendriers seront créés à portée mondiale.","noAutomations":"Pas encore d'automatisations","noStepsEmpty":"Aucune étape ajoutée pour l'instant. Ajoutez une commande ou une étape d'invite IA pour commencer.","project":"Projet","projectRequired":"Les entrées spécifiques au projet nécessitent un projet actif.","projectScope":"Automatisations limitées au projet","projectScoped":"Ce calendrier sera limité au projet actuel.","projectScopeDisabled":"Sélectionnez un projet pour activer la portée du projet","projectScopeTitle":"Portée du projet","prompt":"Invite","promptHelp":"Invite IA à exécuter. Fournir des instructions claires pour la tâche.","promptHint":"Invite IA à exécuter.","promptLabel":"Invite","promptPlaceholder":"p. ex. Résumez les résultats des tests et mettez en évidence les échecs","promptRequired":"L'invite est requise","resultFailed":"Échoué","resultSuccess":"Succès","routineCreated":"Routine créée","routineDeleted":"\\"{{name}}\\" supprimé","routineDisabled":"\\"{{name}}\\" désactivé","routineEnabled":"\\"{{name}}\\" activé","routineFailed":"\\"{{name}}\\" échoué : {{error}}","routineSuccess":"\\"{{name}}\\" terminé avec succès","routineUpdated":"Routine mise à jour","runError":"Impossible d'exécuter la routine","runHistory_one":"","runHistory_other":"","runNameNow":"Exécuter {{name}} maintenant","running":"Exécution…","runNow":"Exécuter maintenant","runsLabel":"","saveChanges":"Enregistrer les modifications","saveStep":"Enregistrer l'étape","saving":"Enregistrement…","scheduleLabel":"Calendrier","scopeAriaLabel":"Portée du calendrier","scopeGroup":"Portée de la planification","scopeHintGlobal":"Cette routine sera créée avec une portée globale.","scopeHintNoProject":"Aucun projet actif. Les routines seront créées avec une portée globale.","scopeHintProject":"Cette routine sera limitée au projet actuel.","scopeLabel":"Portée","scopeLocked":"La portée est verrouillée à {{scope}} pour les calendriers existants","scopeLockedTitle":"La portée est verrouillée sur {{scope}} pour les routines existantes","selectProjectTitle":"Sélectionnez un projet pour activer la portée projet","simpleMode":"Simplifier","simpleModeHelp":"Exécuter une commande shell unique ou une invite IA","stepCommandRequired":"Étape {{index}} : La commande est requise","stepCount_one":"","stepCount_other":"","stepName":"Nom de l'étape","stepNamePlaceholder":"p. ex. Exécuter les tests","stepNameRequired":"Le nom de l'étape est obligatoire","stepPromptRequired":"Étape {{index}} : L'invite est requise","steps":"Étapes","stepsEditing":"Veuillez enregistrer ou annuler toutes les modifications d'étapes avant d'enregistrer le calendrier","stepsRequired":"Au moins une étape est requise","stepType":"Type d'étape","targetColumn":"Colonne cible","targetColumnHelp":"Colonne dans laquelle la nouvelle tâche sera créée","targetColumnLabel":"Colonne cible","taskColumnLabel":"Colonne cible","taskColumnTodo":"À faire","taskColumnTriage":"Triage","taskDescription":"Description de la tâche *","taskDescriptionHelp":"Décrit la tâche qui sera créée.","taskDescriptionHint":"Décrit la tâche qui sera créée.","taskDescriptionLabel":"Description de la tâche (requise)","taskDescriptionPlaceholder":"p. ex. Vérifier toutes les dépendances npm pour les vulnérabilités de sécurité et mettre à jour les packages obsolètes","taskDescriptionRequired":"La description de la tâche est requise","taskTitleHelp":"Laissez vide pour un résumé automatique à partir de la description","taskTitleLabel":"Titre de la tâche (facultatif)","taskTitleOptional":"Titre de la tâche (optionnel)","taskTitlePlaceholder":"p. ex. Examiner les dépendances hebdomadaires","timeoutHelp":"Temps d'exécution maximal en millisecondes (par défaut 300000 = 5 min)","timeoutHint":"Durée maximale d'exécution en millisecondes.","timeoutLabel":"Délai d'attente (ms)","timeoutMinimum":"Le délai d'expiration doit être d'au moins 1 seconde (1000 ms)","timeoutOptional":"Délai d'expiration (ms, optionnel)","timeoutPlaceholder":"Remplacer le délai d'expiration du planning","title":"Automatisations","todoColumn":"À faire","toggleError":"Impossible de basculer la routine","triageColumn":"Triage","triggerApi":"API","triggerCron":"Cron","triggerManual":"Manuel","triggerTypeAriaLabel":"Type de déclencheur","triggerTypeLabel":"Type de déclencheur","triggerWebhook":"Webhook","typeCustom":"Expression cron personnalisée","typeDaily":"Chaque jour (minuit)","typeEvery12Hours":"Chaque 12 heures","typeEvery15Min":"Chaque 15 minutes","typeEvery2Hours":"Chaque 2 heures","typeEvery30Min":"Chaque 30 minutes","typeEvery6Hours":"Chaque 6 heures","typeHourly":"Chaque heure","typeMonthly":"Chaque mois (1er)","typeWeekdays":"Jours de semaine à 9h (lun-ven)","typeWeekly":"Chaque semaine (lundi)","unknownError":"Erreur inconnue","updateError":"Impossible de mettre à jour la routine","useDefault":"Utiliser le défaut","webhookPathHint":"Chemin URL du point de terminaison webhook","webhookPathLabel":"Chemin du webhook","webhookPathPlaceholder":"/trigger/my-routine","webhookSecretHint":"Secret HMAC pour la vérification de signature. Laisser vide pour les webhooks non authentifiés.","webhookSecretLabel":"Secret webhook (facultatif)","webhookSecretPlaceholder":"Facultatif — laisser vide pour les webhooks non authentifiés","allowedToolsHint":"AI prompt steps use all tools by default. Clear tools only when this automation should run without tool access.","allowedToolsLabel":"Allowed tools","clearTools":"Clear","liveOutput":"Live output","liveOutputRunning":"Live output — running","liveRunComplete":"Run complete","liveRunError":"Run failed","liveRunStarting":"Starting run…","selectAllTools":"Select all"}`),Ye={title:""},Ze={addScript:"Ajouter un script",addScriptsHint:"Ajoutez des scripts pour exécuter rapidement les commandes courantes depuis le tableau de bord.",cancelDelete:"Annuler la suppression",command:"Commande",commandPlaceholder:"p. ex., npm run build",confirmDelete:"Confirmer la suppression",confirmDeleteNamed:"Confirmer la suppression de {{name}}",deleteScriptNamed:"Supprimer {{name}}",editScriptNamed:"Modifier {{name}}",failedToDelete:"Impossible de supprimer le script",failedToLoadScripts:"Échec du chargement des scripts",failedToSave:"Impossible d'enregistrer le script",loadingScripts:"Chargement des scripts...",nameErrorMsg:"Le nom ne doit contenir que des lettres, des chiffres, des tirets et des traits de soulignement (pas d'espaces)",nameHint:"Lettres, chiffres, tirets et traits de soulignement uniquement",noScriptsDefined:"Aucun script défini",noScriptsYet:"Aucun script défini pour l'instant.",runScript:"Exécuter le script",runScriptNamed:"Exécuter {{name}}",saving:"Enregistrement...",scriptAlreadyExists:"Un script portant ce nom existe déjà",scriptCommandRequired:"La commande de script est requise",scriptCount_one:"",scriptCount_other:"",scriptCreated:"Script créé",scriptDeleted:"Script supprimé",scriptName:"Nom du script",scriptNamePlaceholder:"p. ex., build, test, lint",scriptNameRequired:"Le nom du script est requis",scriptUpdated:"Script mis à jour",title:"Scripts"},Xe={accessPolicyAuto:"auto",accessPolicyDeny:"refuser",accessPolicyLabel:"Politique d'accès",accessPolicyPrompt:"demander",addSecret:"Ajouter un secret",addSecretModalTitle:"Ajouter un secret",cancelBtn:"Annuler",cancelDelete:"Annuler",clearSyncPassphrase:"Effacer",closeAriaLabel:"Fermer",confirmClearSyncPassphrase:"Effacer le mot de passe de synchronisation inter-nœuds ? Les paires de synchronisation existantes cesseront de fonctionner jusqu'à ce que vous en définissiez un nouveau.",confirmDelete:"Confirmer",confirmPassphraseLabel:"Confirmer le mot de passe",copied:"Copié",copyAriaLabel:"Copier",createBtn:"Créer",deleteAriaLabel:"Supprimer",descriptionLabel:"Description",editAriaLabel:"Modifier",editSecretModalTitle:"Modifier le secret",empty:"Aucun secret trouvé.",envExportableChip:"exportable env",envKeyLabel:"Clé d'environnement",errorClearSyncPassphrase:"Échec de la suppression du mot de passe de synchronisation : {{error}}",errorLoadSyncStatus:"Échec du chargement du statut du mot de passe de synchronisation : {{error}}",errorSaveSyncPassphrase:"Échec de l'enregistrement du mot de passe de synchronisation : {{error}}",exportToEnvLabel:"Exporter vers l'env",hideAriaLabel:"Masquer",hideValueAriaLabel:"Masquer la valeur",keyLabel:"Clé",loading:"Chargement…",neverRead:"Jamais lu",passphraseLabel:"Mot de passe",passphraseMustMatch:"Les mots de passe doivent correspondre.",refresh:"Actualiser",revealAriaLabel:"Révéler",revealed:"Révélé",rotateSyncPassphrase:"Renouveler",rotateSyncPassphraseModalTitle:"Renouveler le mot de passe de synchronisation",saveBtn:"Enregistrer",scopeGlobal:"Global",scopeLabel:"Portée",scopeProject:"Projet",setPassphrase:"Définir un mot de passe",setSyncPassphraseModalTitle:"Définir le mot de passe de synchronisation",showValueAriaLabel:"Afficher la valeur",syncConfigured:"Configuré",syncNotConfigured:"Non configuré",syncPassphraseCleared:"Mot de passe de synchronisation effacé",syncPassphraseDescription:"Mot de passe partagé utilisé pour encapsuler les paquets de secrets inter-nœuds. Les deux nœuds d'une paire de synchronisation doivent partager la même valeur. Stocké localement uniquement, jamais transmis.",syncPassphraseRotated:"Mot de passe de synchronisation renouvelé",syncPassphraseSet:"Mot de passe de synchronisation défini",syncPassphraseTitle:"Mot de passe de synchronisation inter-nœuds",title:"Secrets",valueLabel:"Valeur"},$e={addComment:"",addCommentAria:"",cancel:"",commentAria:"",commentPlaceholder:"",dialogAria:"",selectedSnippet:"",sendToNewTask:"",title:""},et={cli:{actionUnavailable:""},dismissAll:"Fermer tout",dismissItem:"Fermer {{title}}",failed:"Échoué",headerAwaitingAndErrorPlural:"{{awaitingCount}} sessions IA nécessitent votre saisie, {{errorCount}} échouée(s)",headerAwaitingAndErrorSingular:"{{awaitingCount}} session IA nécessite votre saisie, {{errorCount}} échouée(s)",headerAwaitingPlural_one:"",headerAwaitingPlural_other:"",headerAwaitingSingular_one:"",headerAwaitingSingular_other:"",headerErrorPlural_one:"",headerErrorPlural_other:"",headerErrorSingular_one:"",headerErrorSingular_other:"",regionLabel:"Sessions IA nécessitant une entrée ou ayant échoué",resume:"Reprendre",retry:"Réessayer"},tt=JSON.parse(`{"actions":{"cancel":"Annuler","save":"Enregistrer"},"agentPermissions":{"agentPermissions":"","agentProvisioningApprovals":"","configureProjectLevelApprovalBehaviorForDurableProvisioning":"","perAgentSettingsOverrideProjectDefaultsEachCategory":""},"appearance":{"hideAISessionNotificationBanners":"","language":"Langue","languageAuto":"Auto","languageAutoHint":"Suivre la langue du navigateur","suppressTheLdquoNeedsYourInputRdquoBanner":"","title":"Apparence"},"auth":{"apiKeyCleared":"Clé API effacée","apiKeySaved":"Clé API enregistrée","authCodeAlreadySubmitted":"Ce code d'autorisation a déjà été soumis. En attente de la connexion…","authCodeReceived":"Code d'autorisation reçu. Finalisation de la connexion…","clearKey":"Effacer","continueToLogin":"Continuer vers la connexion","copiedCodeToClipboard":"Code copié dans le presse-papiers","copyCode":"Copier le code","enterCodeOnGitHub":"Entrez ce code sur GitHub","failedToCopyCode":"Échec de la copie du code — copiez-le manuellement depuis la zone ci-dessus","groupAuthenticated":"Authentifié","groupAvailable":"Disponible","hint":"Les modifications d'authentification prennent effet immédiatement — pas besoin d'enregistrer.","loadingStatus":"Chargement du statut d'authentification…","loggedOut":"Déconnecté","loggingOut":"Déconnexion…","login":"Se connecter","loginAlreadyInProgress":"Une connexion est déjà en cours. Vous pouvez l'annuler et réessayer.","loginCancelled":"Connexion annulée","loginDidNotComplete":"La connexion n'a pas abouti. Veuillez réessayer.","loginSuccessful":"Connexion réussie","logout":"Se déconnecter","manualPasteMessage":"Après vous être connecté avec {{name}}, le navigateur tentera de rediriger vers une adresse localhost que ce tableau de bord ne peut pas atteindre. L'onglet de redirection semblera avoir échoué. Avant que cela se produise, copiez l'URL complète depuis la barre d'adresse du navigateur — vous devrez la coller ici pour terminer la connexion. Continuer ?","manualPasteTitle":"Attention — un collage manuel est requis","noProviders":"Aucun fournisseur disponible","openGitHub":"Ouvrir GitHub","pasteRedirectUrlFirst":"Collez d'abord l'URL de redirection complète ou le code d'autorisation.","reopenOnboarding":"Rouvrir le guide de démarrage","reopenOnboardingHint":"Relancez l'assistant de configuration pour revoir ou mettre à jour votre configuration de fournisseur et de modèle IA.","savingKey":"Enregistrement…","signInHint":"Connectez-vous à au moins un fournisseur pour commencer à utiliser les modèles IA.","statusActive":"✓ Actif","statusNotConnected":"✗ Non connecté","title":"Authentification","waitingForLogin":"En attente de connexion…"},"authentication":{"enterAPIKey":"","key":""},"backups":{"02":"","03":"","agentsOnlyFusionAgentMemory":"","allProjectAgents":"","and":"","backupCreated":"Sauvegarde créée avec succès","backupDirectory":"","backupNow":"Sauvegarder maintenant","backups":"","backupS":"","backupScheduleCron":"","creating":"Création…","cronExpressionForBackupTimingDefault02":"","cronExpressionForMemoryBackupTimingDefault0":"","currentBackups":"","databaseBackups":"","directoryForBackupFilesRelativeToProjectRoot":"","directoryForMemoryBackupsRelativeToProjectRoot":"","enableAutomaticDatabaseBackups":"","enableAutomaticMemoryBackups":"","fusionBackups":"","fusionBackupsMemory":"","invalidCronExpressionFormat":"","loadingBackupInfo":"","memoryBackupDirectory":"","memoryBackups":"","memoryBackupScheduleCron":"","memoryBackupScope":"","memoryRetentionCount":"","more":"","mustBeBetween1And100":"","numberOfBackupFilesToKeepOldestAre":"","numberOfMemoryBackupsToKeepOldestAre":"","pathCannotContainParentDirectoryTraversal":"","projectOnlyFusionMemory":"","retentionCount":"","totalSize":"","view":"","whenEnabledProjectAndAgentMemoryFilesAre":"","whenEnabledTheDatabaseIsBackedUpAutomatically":"","createFailed":""},"clearToDefault":"","cliAgents":{"adapterLabel":"","approvedNote":"","approveFailed":"","autonomy":{"default":"","elevated":""},"autonomyHelp":"","autonomyLabel":"","commandHelp":"","commandLabel":"","description":"","elevatedConfirmAction":"","elevatedConfirmBody":"","elevatedConfirmTitle":"","envHelp":"","envLabel":"","extraArgsHelp":"","extraArgsLabel":"","heading":"","saveFailed":""},"closeModal":"Fermer la boîte de dialogue de conflit","commands":{"buildCommand":"","commands":"","commandUsedToBuildTheProjectInjectedInto":"","commandUsedToRunTestsInjectedIntoGenerated":"","eGPnpmBuild":"","eGPnpmTest":"","testCommand":""},"conflictModalTitle":"Résoudre les conflits de paramètres","experimental":{"experimentalFeatures":"","experimentalFeaturesAreEarlyCapabilitiesThatAreNot":"","featureFlags":""},"footer":{"help":"Aide","version":"Version {{version}}","checkUpdates":"","helpDiscussions":""},"general":{"25":"","200":"","3000":"","14Days":"","30Days":"","60Days":"","7Days":"","90Days":"","agentsToRunEachTaskWhenDisabledOnly":"","autoCleanupOldChats":"","autoPruneOldMail":"","bannerFiresWhenTodoCountIsStrictlyGreater":"","builtInWorkflows":"","capacityRiskBanner":"","chatHistory":"","chatRooms":"","completionDocumentationAutomation":"","controlsHowFutureTaskSpecsHandleReleaseNote":"","controlsWhetherNewlyCreatedTasksHaveGitHubIssue":"","defaultRepoUsedWhenCreatingGitHubIssuesFor":"","defaultTrackingModeForNewTasks":"","deleteChatSessionsAndRoomsThatHaveBeen":"","deleteInboxOutboxMessagesOlderThanThisMany":"","disabledBuiltInWorkflowsAreHiddenFromWorkflow":"","enableSummarizationInProjectModelsToConfigureThatModel":"","fN":"","general":"","gitHubTracking":"","hardCapOnTheSynthesizedEarlierRoomContext":"","learnMore":"En savoir plus","loweringThisWindowMeansReliabilityMetricsChartsAnd":"","newTasksInheritThisCustomWorkflowsStepsOverridable":"","numberOfMostRecentChatRoomMessagesKept":"","off":"","offDefault":"","onForNewTasks":"","operationalLogRetention":"","ownerRepo":"","prefixForNewTaskIDsEGKB":"","prefixMustBe110UppercaseLetters":"","projectDefaultTrackingRepo":"","recentVerbatimRoomMessages":"","requireChangelogUpdateExistingChangelog":"","requireChangesetChangesetMd":"","roomCompactionFetchLimit":"","roomSummaryMaxCharacters":"","searchTheTrackingRepoForLikelyDuplicatesBefore":"","settingsSaved":"Paramètres enregistrés","showCapacityRiskBanner":"","showQuickChatButton":"","showTheFloatingChatButtonInTheDashboard":"","taskPrefix":"","todoThreshold":"","trackingIssuesUseThisTaskAposSTitle":"","updateAvailablePrefix":"v{{version}} disponible","updateCheckFailed":"","updateFailed":"","updateFailedWithMessage":"","updateNow":"","updateSuccess":"","updateSuccessToast":"","updating":"","upperBoundOnMessagesFetchedFromTheRoom":"","upToDate":"Vous êtes à jour ✓","useEphemeralTaskWorkerAgents":"","warnOnTheBoardWhenTodoWorkExceeds":"","whenEnabledDefaultFusionSpawnsShortLived":"","whenEnabledFusionChecksOpenAndClosedIssues":"","workflowsOrChangelogModeWhenContributorsShouldUpdate":""},"globalGeneral":{"andShowsUpdateNoticesInTheCLIAnd":"","autoReloadDashboardOnVersionChange":"","checkForThe":"","checkForUpdatesAutomatically":"","cLIBinaryOnPATH":"","cLIBySpawning":"","controlsHowOftenTheDashboardReFetchesThe":"","dailyRecommended":"","disableThisIfYourLocalDevProcessIs":"","frequency":"","general":"","globalDefaultTrackingRepo":"","leaveBothThinkingTogglesOffToKeepThe":"","manualOnlyNeverAutoCheck":"","onStartupOncePerServerLaunch":"","ownerRepo":"","projectsInheritThisValueWhenTheyDoNot":"","rowsAndDoesNotAffectAssistantTextOr":"","saveAIThinkingForEphemeralTaskWorkerAgents":"","saveAIThinkingForPermanentAgents":"","saveAIThinkingLogs":"","saveToolOutputInAgentLogs":"","updates":"","weekly":"","whenDisabledToolRowsAreStillLoggedBut":"","whenEnabledDefaultTheDashboardAutomaticallyReloadsWhen":"","whenEnabledFusionChecksNpmForNewVersions":"","whenEnabledTheDashboardProbesForAGlobally":""},"globalModels":{"allow":"","commaSeparatedValuesSentToOpenRouterModelSync":"","controlsHowMuchReasoningEffortTheAIModel":"","default":"","default2":"","defaultAIModelUsedForTaskExecutionWhen":"","defaultModel":"","deny":"","fallbackModel":"","flowAndPublishesThemUnderTheOpencodeGo":"","fusion":"","globalBaselineModelsForEachAIRoleProject":"","httpsRunfusionAi":"","latency":"","leaveEmptyToOmitThisHeaderDefaultFusion":"","leaveEmptyToOmitThisHeaderDefaultHttps":"","modelLanes":"","noFallback":"","openaiAnthropic":"","openRouterAdvanced":"","openRouterAllowFallbacks":"","openRouterHTTPReferer":"","openRouterOutputModalitiesFilter":"","openRouterRoutingIgnore":"","openRouterRoutingOnly":"","openRouterRoutingOrder":"","openRouterRoutingSort":"","openRouterSupportedParametersFilter":"","openRouterXTitle":"","price":"","providerName":"","requireParameters":"","startupModelSync":"","syncOpencodeGoModelListAtStartup":"","syncOpenRouterModelListAtStartup":"","text":"","thinkingEffort":"","throughput":"","toolsStructuredOutputs":"","usedAutomaticallyIfThePrimaryDefaultModelHits":"","useDefault":"","whenEnabledStartupFetchesTheLatestAvailableModels":"","whenEnabledStartupRefreshesModelsThroughTheLocal":""},"header":{"discord":"Discord","joinDiscord":"","star":"","starFusion":""},"importExport":{"confirmImport":"Confirmer l'importation","exportBtn":"Exporter","exportTitle":"Exporter les paramètres vers un fichier JSON","importBtn":"Importer","importing":"Importation…","importTitle":"Importer les paramètres","loadingFile":"Chargement…","reviewPrompt":"Vérifiez les paramètres à importer :","counts":{"global_one":"","global_other":"","project_one":"","project_other":"","workflowSettings_one":"","workflowSettings_other":""},"exported":"","exportFailed":"","globalSettings":"","imported":"","importFailed":"","importFailedDetailed":"","importScope":"","importTitleAttr":"","invalidJson":"","mergeExisting":"","projectSettings":"","replaceWarning":"","scopeBoth":"","scopeGlobal":"","scopeLabel":{"all":"","global":"","project":""},"scopeProject":""},"jsonPlaceholder":"Entrez une valeur JSON...","keepLocal":"Garder la version locale","keepRemote":"Garder la version distante","loading":"Chargement…","memory":{"03":"","agentsGetMemorySearchMemoryGetAndMemory":"","agentsSearchWithQmdFirstFallBackTo":"","automaticallyCompactMemoryWhenItExceedsTheThreshold":"","autoSummarizeMemory":"","bytesUpdated":"","cannotSave":"","checkingMemoryWriteAccess":"","compacting":"Compactage…","compactionThresholdChars":"","compactSelectedFile":"Compacter le fichier sélectionné","cronExpressionForAutoSummarizeScheduleDefaultDaily":"","cronExpressionForDreamProcessing":"","dreamCompleted":"Traitement des rêves terminé","dreaming":"","dreamNow":"Rêver maintenant","dreamSchedule":"","enableMemoryTools":"","failedToLoadBackendStatus":"","for":"","installing":"Installation…","installQmd":"Installer qmd","loadingMemory":"","manuallyTriggerDreamProcessingNow":"","memory":"","memoryCompacted":"Fichier mémoire compacté","memoryFile":"","memoryIsConfiguredWithAReadOnlyBackend":"","memoryIsCurrentlyDisabledYouCanViewThe":"","memoryLivesIn":"","memorySaved":"Mémoire enregistrée","memoryWillBeCompactedWhenItExceedsThis":"","noMatchingMemoryFound":"","processDreamsFromDailyMemory":"","qmd":"","qmdIsNotInstalledSearchWillUseLocal":"","result":"","runsTheSameQmdBackedMemorySearchPath":"","saveMemory":"Enregistrer la mémoire","scheduleCron":"","searchMemoryWithQmd":"","testing":"Test en cours…","testRetrieval":"Tester la récupération","turnsDailyNotesIntoDREAMSMdAndPromotes":"","qmdInstalled":"","qmdInstallFailed":"","qmdInstallUnavailable":""},"merge":{"abort":"","abortOneAIAttemptRequireManualResolutionIf":"","addFusionAsCoAuthorOnCommits":"","afterFusionAdvancesTheIntegrationBranchRefThe":"","aICorrectiveRoundsBeforeLandingTheBestResult":"","aIMerge":"","aIMergeDefaultAIMergesInAClean":"","aIModeMergesTheTaskBranchIntoAn":"","aIOnly":"","aIOnlyAIAutoResolveAIRetryNever":"","allowAIMergeToSyncADirtyChecked":"","alwaysPreserveDirectMergeCommitHistory":"","alwaysSquashDirectMerges":"","and":"","and2":"","areListedFirstOrChoose":"","autoCompletionMode":"","autoDetect":"","autoDetectOriginHEADMain":"","autoKeepsTodayAposSSquashBehaviorFor":"","autoMergeCompletedTasks":"","autoMergeConflictRetries":"","autoMergeRunsInTheTaskWorktreeBy":"","autoMergeWillRunRebaseConflictResolutionAnd":"","autoResolveConflictsInLockFilesAndGenerated":"","autoSquashSingleSubstantiveBranchesPreserveMultiSubstantive":"","autoSyncProjectCheckoutAfterMerge":"","block":"","blockStrict":"","both":"","branchName":"","checkingForLegacyAutoMergeStamps":"","coAuthorEmail":"","coAuthorName":"","conflictFallbackStrategy":"","controlsThePostMergeAuditGate":"","controlsWhatHappensAfterATaskReachesIn":"","createMonitorAndMergeAGitHubPullRequest":"","custom":"","dangerousCompatibilityEscapeHatchLeaveOffUnlessYou":"","defaultLogsFindingsButAutoCompletesTheMerge":"","deterministicLegacyRebaseConflictStrategyAuditPipeline":"","directMergeCommitRouting":"","directMergeIntoTheCurrentBranch":"","emailUsedInThe":"","enableTestMode":"","fastForwardOfLocalMainFrom":"","fastForwardOnlySkipDirtyWorktrees":"","finalFallback":"","findsInReviewTasksWhoseAutoMergeValue":"","flipOverlappingFilesToPreferTheTaskBranch":"","forcesAllAILanesToUseTheDeterministic":"","fusion":"","gitHubAuthentication":"","gitHubAuthMode":"","gitHubCLIGhAuth":"","gitHubPersonalAccessToken":"","gitRemoteToPushToEGOrigin":"","ignoreOverlapDetectionPreserveLegacyBehavior":"","includeTaskIDInCommitScope":"","insteadOf":"","integrationBranch":"","integrationWorktree":"","inYourProjectRootWillShowTheNew":"","isTheLegacyBehavior":"","isTheStricterOptInModeThatRefuses":"","legacy":"","legacy2":"","legacyAutoMergeStamp":"","legacyAutoMergeStampCleanup":"","legacyIntegrationBranchMode":"","maxAIReviewPasses":"","merge":"","moreDetails":"","nameUsedInThe":"","noLegacyAutoMergeStampsToCleanUp":"","noreplyRunfusionAi":"","off":"","offLeaveTheProjectRootStaleLegacyBehavior":"","offSkipAudit":"","optionsStartWithABestEffort":"","origin":"","personalAccessToken":"","pickALocalBranchFromTheDropdownCommon":"","positiveIntegerRetryCapForAutoMergeConflict":"","postMergeAuditMode":"","pushRemote":"","pushToRemoteAfterMerge":"","readyToCleanUp":"","retriesTheAIAgentRatherThanAutoPicking":"","reuseTaskWorktreeDefault":"","skipsTheAuditEntirelySwitchingToOffIs":"","smart":"","smartConflictResolution":"","smartPreferMain":"","smartPreferMainOnFallbackFetchFfOrigin":"","smartPreferMainOverlapGuard":"","smartPreferTask":"","smartPreferTaskOnFallbackFetchFfOrigin":"","snapsCleanlyWhenTheWorktreeHasNoEdits":"","snapshotsRealLocalEditsAsAPatchAgainst":"","soAFreshlyPushedSiblingCommitDoesntGet":"","soMainWinsProtectsJustMergedSiblingWork":"","soTheTaskBranchWinsFastButCan":"","stashFastForwardDefaultPreserveLocalEdits":"","stopsAfterTheFirstAIAttemptAndWaits":"","symbolicRefFallback":"","theCanonicalBranchFusionMergesTasksIntoAnd":"","theLegacyMergeSettingsBelowDoNotApply":"","toResolveViaTheStandardCascade":"","toTypeABranchThatDoesnAposT":"","trailer":"","trailerCreditingFusionRecognizedByGitHubForShared":"","useDropdown":"","useProjectRootLegacy":"","uses":"","valuesFromOlderSettingsAreMigratedAutomatically":"","warn":"","warnDefaultLogFindingsContinue":"","warnOnlyKeepLegacyMainWinsFallback":"","whenDisabledMergeCommitMessagesOmitTheTask":"","whenEnabledCommitsMadeByFusionKeepYour":"","whenEnabledLockFilesPackageLockJsonPnpm":"","whenEnabledLockFilesPackageLockJsonPnpm2":"","whenEnabledTasksThatPassReviewAreAutomatically":"","whenEnabledTheMergedResultIsAutomaticallyPushed":"","whenUsingSmartPreferMainAutomaticallyPreferThe":"","planApprovalMode":"Plan approval mode","planApprovalModeAutoApproveAll":"Auto-approve all tasks","planApprovalModeHelp":"Project-wide override for the planning approval gate. Leave on workflow to use each workflow's Require plan approval setting, or force all approved specs to bypass or wait for manual approval.","planApprovalModeRequireAll":"Require approval for all tasks","planApprovalModeWorkflow":"Use workflow setting"},"mergeManually":"Fusionner manuellement","mobileNav":{"label":"Section des paramètres"},"models":{"deletePresetMessage":"Le préréglage « {{name}} » est utilisé dans la sélection automatique. Le supprimer quand même ?","deletePresetTitle":"Supprimer le préréglage","loadingModels":"Chargement des modèles disponibles…","noModels":"Aucun modèle disponible. Configurez d'abord l'authentification.","presetNameRequired":"Le nom du préréglage est requis","savePreset":"Enregistrer le préréglage"},"movedStub":{"modelLanes":"","openWorkflowSettings":"","reviewVerification":"","stepExecution":"","summarizerModelInline":""},"nav":{"aria":{"global":"Paramètre global","project":"Paramètre de projet"},"prompts":"","secrets":"","tooltip":{"global":"Partagé entre tous les projets","project":"Spécifique à ce projet"},"globalMcp":"MCP Servers","mcp":"MCP Servers"},"nodeRouting":{"blockExecution":"","configureHowTasksAreRoutedToExecutionNodes":"","defaultExecutionNode":"","fallBackToLocal":"","localExecutionNoDefaultNode":"","nodeRouting":"","selectedNode":"","theseSettingsApplyAtTheProjectLevel":"","unavailableNodePolicy":"","usedWhenATaskHasNoNodeOverride":""},"nodeSync":{"alwaysAsk":"","automaticallySynchronizeSettingsBetweenThisNodeAndConnected":"","conflictResolution":"","enableAutomaticSettingsSync":"","every15Minutes":"","every1Hour":"","every30Minutes":"","every5Minutes":"","includeAPIKeysAndOAuthTokensInSync":"","keepLocal":"","keepRemote":"","lastWriteWins":"","nodeSync":"","syncInterval":"","syncModelAuthCredentials":"","workflowSettingsNotSynced":""},"notifications":{"accessTokenOptional":"","advanced":"","allFailuresLegacy":"","baseURLForDeepLinksInNotificationsWhen":"","customNtfyServerURLOptional":"","dashboardHostname":"","discord":"","enable":"","failureNotificationDelayMs":"","failureNotificationMode":"","format":"","general":"","generic":"","howLongAFailureMustPersistBeforeA":"","httpLocalhost3000":"","httpsHooksExampleCom":"","httpsNtfySh":"","learnMoreAboutNtfySh":"","leaveBlankToKeepTheDefaultServerHttps":"","leaveBlankToPublishWithoutAuthenticationWhenSet":"","messageInbox":"","mustBeAValidURLStartingWithHttp":"","myTopicName":"","notifications":"","notifyOnEvents":"","ntfy":"","ntfyTopic":"","roomReply":"","sending":"Envoi…","slack":"","stickyFailuresOnlyDefault":"","stickyOnlySuppressesRecoveredFailuresTerminalOnlyWaits":"","terminalFailuresOnlySuppressAutoRetried":"","testMessageInbox":"Tester la boîte de réception des messages","testNotification":"Tester la notification","testRoomReply":"Tester la réponse en salle","tk":"","topicMustBe164AlphanumericHyphenOr":"","webhook":"","webhookNotifications":"","webhookURL":"","yourNtfyShTopicName164Alphanumeric":""},"plugins":{"fusionPlugins":"","piExtensions":"","pluginManagerType":"","plugins":""},"projectModels":{"addPreset":"","advancedWorkflowPolicy":"","aIMergeCommitSummaries":"","aITitleAndGitCommitMessageSummarization":"","automaticallyCompactContextWhenApproachingThisTokenCount":"","autoSelectPresetBasedOnTaskSize":"","autoSummarizeLongDescriptionsAsTitles":"","configuredPresets":"","configuresTheModelUsedForTwoShortSummary":"","defaultWorkflowModelLaneActions":"","defaultWorkflowModelLanes":"","delete":"","edit":"","executorModel":"","fallsBackTo":"","loadingAvailableModels":"","loadingWorkflowModelLanes":"","modelLanes":"","modelPresets":"","name":"","noCap":"","noModelsAvailableConfigureAuthenticationBeforeSelectingWorkflow":"","noModelsAvailableConfigureAuthenticationFirst":"","noModelsAvailableConfigureAuthenticationFirst2":"","noPreset":"","noPresetsConfiguredYet":"","openAProjectToEditWorkflowModelLanes":"","overrideGlobalModelSettingsAtTheProjectLevel":"","presetEditor":"","reset":"","resetToDefaultNoCap":"","resetToInheritFromGlobal":"","resetToInheritFromWorkflow":"","reviewerModel":"","theseProjectOverridesApplyToTheActiveDefault":"","tokenCap":"","useDefault":"","useWorkflowDefault":"","whenEnabledMergeCommitMessagesIncludeAnAI":"","whenEnabledTasksCreatedWithoutATitleBut":""},"remote":{"acceptRoutes":"","advancedNamedTunnel":"","advancedSettings":"","authenticatedURL":"","authLinks":"","authLinkTokenType":"","automaticallyRestoreTunnelOnStartupIfItWas":"","cloudflare":"","cloudflaredInstalled":"cloudflared installé avec succès","cloudflaredIsInstalled":"","cloudflaredIsNotInstalled":"","cloudflaredMustBeInstalledToStartTheTunnel":"","enableShortLivedTokens":"","expiresAt":"","external":"","externalTunnelQRCode":"","generateQR":"","generateShortLivedToken":"","httpsYourDomainExample":"","ifHomebrewIsUnavailable":"","ingressURL":"","installCloudflared":"","installing":"","lastShortLivedTokenExpiresAt":"","manualInstall":"","ms":"","namedTunnelModeEnabled":"","noExpiry":"","persistentToken":"","persistentTokenRegenerated":"Jeton persistant régénéré","qRSVGMarkup":"","regeneratePersistentToken":"","rememberLastRunningState":"","remoteAccess":"","remoteAccessCode":"","remoteAccessQRCode":"","remoteProvider":"","restarting":"Redémarrage…","scanThisQRCodeOnYourPhone":"","scanToConnect":"","scanToOpen":"","selectAProviderAboveToConfigureRemoteAccess":"","shortLivedToken":"","shortLivedTokenGenerated":"Jeton de courte durée généré","shortLivedTTLMs":"","showURL":"","startFresh":"Redémarrer","starting":"Démarrage…","startTunnel":"Démarrer le tunnel","stopping":"Arrêt…","stopTunnel":"Arrêter le tunnel","tailnetURL":"","tailscale":"","tailscaleFunnelWillExposeThisDashboardOnYour":"","tokenType":"","tunnelDetected":"","tunnelName":"","tunnelRestarted":"Tunnel distant redémarré","tunnelStarted":"Tunnel distant démarré","tunnelStopped":"Tunnel distant arrêté","tunnelToken":"","uRLAndQRGenerationUseTheSelectedToken":"","uRLNoHostnameOrPortConfigurationNeeded":"","useExisting":"Utiliser l'existant","usingQuickTunnel":"","installationFailed":""},"researchGlobal":{"advancedExternalSearchProviders":"","alwaysOn":"","brave":"","builtInUsesAgentWebTools":"","configureBraveTavilyAndGoogleAPIKeysIn":"","customSearchEngineId":"","defaultMaxConcurrentRuns":"","defaultMaxDurationMs":"","defaultMaxSourcesPerRun":"","enabledSources":"","gitHub":"","googleCustomSearch":"","googleSearchCX":"","httpsSearxExampleCom":"","localDocs":"","maxSynthesisRounds":"","missingCredentialsForTheSelectedResearchProvider":"","openAuthentication":"","openAuthenticationSettings":"","requestTimeoutMs":"","researchDefaults":"","searchesAndFetchesUseTheAgentsNativeWebSearch":"","searchProvider":"","searXNG":"","searXNGURL":"","tavily":"","webSearch":""},"researchProject":{"alwaysOn":"","enabledSources":"","enableResearchInThisProject":"","github":"","llmSynthesis":"","localDocs":"","maxConcurrentRuns":"","maxDurationMs":"","maxSourcesPerRun":"","pageFetch":"","projectResearchSettings":"","requestTimeoutMs":"","webSearch":"","webSearchIsAlwaysEnabledConfigureTheSearch":""},"resolveAllLocal":"Résoudre tous : Garder la version locale","resolveAllRemote":"Résoudre tous : Garder la version distante","resolvedSuccess":"Conflits de paramètres résolus avec succès","resolveFailed":"Impossible de résoudre les conflits","resolving":"Résolution...","runtimesRuntimes":{"hermesRuntime":"","openClawRuntime":"","paperclipRuntime":""},"scheduledEvals":{"autoCreateTasks":"","disabled":"","enableScheduledEvalRunsForThisProject":"","evaluatorModel":"","evaluatorProvider":"","followUpPolicy":"","gpt5":"","intervalMs":"","leaveProviderAndModelBlankToInheritThe":"","openai":"","retentionDays":"","scheduledEvals":"","suggestOnly":""},"scheduling":{"addIgnoredPath":"","archiveAgentLog":"","archiveCompletedTasksAfterDays":"","backlogNoTaskAutoClaimIsExecutorOnly":"","browse":"","closeParenPeriod":"","compactModeKeepsArchiveSizeLowWhilePreserving":"","compactSummaryAndRecentEntries":"","completedTasksOlderThanTheThresholdAreMoved":"","docs":"","doNotArchiveAgentLogs":"","enableAutomaticTaskArchiving":"","enablePlanStalenessEnforcement":"","escalateHighFanOutBlockersOnlyAfterThey":"","fullAgentLog":"","globalMaxConcurrent":"","heartbeatScopeDiscipline":"","ignoredOverlapPaths":"","letEngineerAgentsAutoClaimBacklogTasks":"","lite":"","maxConcurrentTasks":"","maximumAgeInHoursBeforeAPlanIs":"","maximumConcurrentAgentsAcrossAllProjects":"","maximumConcurrentPlanningAgents":"","maximumStuckDetectorRetriesBeforeATaskIs":"","maxStuckRetries":"","maxTriageConcurrent":"","numberOfDaysATaskCanStayIn":"","off":"","optionalFileOrDirectoryPathsToIgnoreWhen":"","or":"","pollIntervalMs":"","preserveStepProgressOnStuckTaskRequeue":"","remove":"","scheduling":"","selectCurrentDir":"Sélectionner le répertoire actuel","selectIgnoredOverlapPath":"Sélectionner le chemin de chevauchement ignoré","serializeTasksWithOverlappingFiles":"","staleHighFanOutEscalationHours":"","staleSpecThresholdHours":"","stepExecution":"","strictCoordinationFocusedHigherPerTickTokensLite":"","strictDefault":"","stuckTaskTimeoutMinutes":"","timeoutInMinutesForDetectingStuckTasksWhen":"","whenEnabledTasksThatModifyTheSameFiles":"","whenEnabledTasksWithStalePlansPROMPTMd":"","whenTheStuckDetectorKillsAndReQueues":"","browseWorkspacePath":"","overlapPickerNote":"","ignoreHiddenDotPathsHelp":"","ignoreHiddenDotPathsInOverlapChecks":""},"scope":{"globalBanner":"Ces paramètres sont partagés entre tous vos projets Fusion.","projectBanner":"Ces paramètres n'affectent que ce projet."},"title":"Paramètres","worktrees":{"allowSilentSiblingBranchRenameDuringExecutorConflicts":"","alsoRebaseOntoLocalDefaultBranchHEAD":"","and":"","andCanHidePriorCommitsFromTheDefault":"","autoDetectFusionBinWorktrunkOrPATH":"","awaitingApproval":"En attente d'approbation — ouvrez les approbations pour continuer.","branchCollisionSilentlyForksWorkOntoSiblingBranches":"","browse":"","browseWorktreesDirectory":"","closeParenPeriod":"","defaultsTo":"","defaultsToWorktreesLeaveEmptyUnlessOverriding":"","disabledByDefaultOptInWhenEnabledFusion":"","discouragedThisRestoresTheLegacyBehaviorWhereA":"","enableWorktrunkAndRequestApprovalToInstallThe":"","enableWorktrunkIntegration":"","failAndPauseTheTaskDefault":"","fallBackToFusionsNativeWorktreeBackend":"","forWorktreeCreateSyncPruneAndRemoveOperations":"","inAdditionToTheRemoteRebaseAboveAlso":"","installedAt":"","installTheWorktrunkBinaryBelowToEnableThis":"","installWorktrunk":"Installer le binaire worktrunk","keepsProgressMovingBySwitchingToFusionApos":"","limitsTotalGitWorktreesIncludingInReviewTasks":"","maxWorktrees":"","offByDefaultOptInWhenEnabledCompleted":"","openApprovals":"Ouvrir les approbations","optionalLeaveBlankToAutoResolveFusionWill":"","optionalSupports":"","pnpmInstallFrozenLockfile":"","randomNamesEGSwiftFalcon":"","rebaseFromRemoteBeforeMerge":"","rebaseRemote":"","recycleWorktrees":"","selectWorktreesDir":"Sélectionner le répertoire des worktrees","shellCommandToRunInEachNewWorktree":"","stopsOnWorktrunkErrorsForExplicitOperatorRecovery":"","taskIDEGFN042":"","taskTitleEGFixLoginBug":"","tryAgain":"Réessayer","useGitDefault":"","whenEnabledTheMergerFetchesFromTheConfigured":"","whenUnsetOnlyAffectsNewlyCreatedWorktrees":"","whichRemoteToFetchForThePreMerge":"","worktreeInitCommand":"","worktreeNamingStyle":"","worktrees":"","worktreesDirectory":"","worktrunk":"","worktrunkBinaryPath":"","worktrunkFailureBehavior":"","worktrunkIntegration":"","worktreesPickerNote":""},"fileBrowser":{"currentDirectory":"","projectRoot":""},"mcp":{"globalTitle":"Global MCP servers","projectTitle":"Project MCP servers","globalDescription":"Configure MCP servers shared by all projects. Project settings may override or disable these servers by name.","projectDescription":"Configure project-specific MCP servers, overrides, and disabled inherited servers."}}`),rt=JSON.parse(`{"addCustomProvider":"Ajouter un fournisseur personnalisé","addMoreProjectsHint":"Vous pouvez ajouter d'autres projets à tout moment à partir de l'aperçu du projet.","advancedProviderSettings":"Paramètres avancés du fournisseur","advancedSettings":"Paramètres avancés","advancedSetupDetails":"Détails de configuration avancés","aiSetupDescription":"Fusion utilise des modèles IA pour planifier, écrire et réviser du code pour vous. Connectez un fournisseur IA ci-dessous pour commencer — utilisez un service hébergé ou saisissez une clé API.","allProvidersShown":"Tous les fournisseurs disponibles sont déjà affichés ci-dessus.","allSet":"Tout est prêt !","apiKeyFormatHint":"Format : {{hint}}","apiKeyHint":"Clé : {{keyHint}}","apiKeyRemoved":"Clé API supprimée","apiKeySaved":"✓ Clé API enregistrée","apiKeySavedToast":"Clé API enregistrée","ariaDismissRecommendations":"Ignorer les recommandations","ariaSetupRecommendations":"Recommandations de configuration","authCodeAlreadySubmitted":"Ce code d'autorisation a déjà été soumis. En attente de la connexion…","authCodeReceived":"Code d'autorisation reçu. Finalisation de la connexion…","authTokenOptional":"Jeton d'authentification (facultatif)","back":"← Retour","cancelLogin":"Annuler","childProcess":"Processus enfant","childProcessDesc":"Isolation forte. Les tâches s'exécutent dans des processus séparés.","childProcessLabel":"Processus enfant (isolé)","chooseModel":"Choisir un modèle","claudeCli":{"acpAuthFailed":"","acpAuthFailedTitle":"","active":"✓ Actif","binaryNotFound":"Binaire \`claude\` non détecté sur PATH — installez d'abord Claude CLI.","binaryNotFoundPath":"\`claude\` non trouvé sur PATH","connected":"✓ Connecté{{version}}","description":"Acheminez les appels d'IA via votre CLI claude installé localement. Utilise votre abonnement/quota Claude existant au lieu d'une clé API.","details":"Détails","detectedPrompt":"détecté{{path}}. Cliquez sur Activer pour acheminer les appels d'IA à travers.","disable":"Désactiver","disabledMessage":"Les modèles acheminés par Claude-CLI sont masqués du sélecteur de modèles.","disabledVerb":"Désactivé","disabling":"Désactivation…","enable":"Activer","enabledMessage":"Les modèles acheminés par Claude-CLI sont maintenant visibles dans le sélecteur de modèles.","enabledVerb":"Activé","enabling":"Activation…","extensionFailed":"Échec du chargement de l'extension: {{reason}}","fixAuthHint":"","name":"Anthropic — via Claude CLI","notConnected":"✗ Non connecté","notInstalled":"✗ Non installé","probing":"Sonde CLI local…","recheckAuth":"","test":"Tester","testing":"Test en cours…","useDashP":"","validating":"Activé. Validation…"},"cloneGitHint":"Fusion exécutera git clone dans le répertoire de destination, puis enregistrera ce dossier cloné.","cloneGitRepository":"Cloner le référentiel Git","clonePathHint":"Sélectionnez ou entrez un chemin de destination absolu. Fusion clotera dans ce répertoire.","clonePathPlaceholder":"/chemin/pour/nouveau-clone","closeWizard":"Fermer l'assistant","compactWarning":"⚠ Configuration incomplète — Les fonctionnalités IA et/ou GitHub seront limitées.","completeSetup":"Complétez ces éléments de configuration pour tirer le meilleur parti de Fusion.","connect":"Connecter","connectAiProvider":"Connecter un fournisseur IA","connectAiProviderDesc":"Connectez un fournisseur IA pour activer les agents IA pour la planification des tâches et la génération de code","connectAnyway":"Connecter quand même","connectedProviders":"Fournisseurs connectés","connectGitHub":"Connecter GitHub","connectGitHubAnytime":"Pas de souci si vous n'êtes pas prêt — connectez GitHub à tout moment depuis Paramètres → Authentification.","connectGitHubButton":"Connecter GitHub","connectGitHubDesc":"Connectez GitHub pour importer des problèmes et suivre les demandes de tirage","connectOauthOptional":"Connecter OAuth (facultatif)","connectRemoteServer":"Connecter le serveur Fusion distant","continueToLogin":"Continuer la connexion","continueWithGhCli":"Continuer avec l'auth gh CLI →","continueWithoutGitHub":"Continuer sans GitHub →","copiedCodeToClipboard":"Code copié dans le presse-papiers","copyCode":"Copier le code","couldNotReachServer":"Impossible de joindre le serveur. Vérifiez votre connexion et réessayez.","createFirstAgent":"","createFirstTask":"Créer la première tâche","createNewTask":"Créer une nouvelle tâche","createNewTaskSubtitle":"Décrivez ce que vous souhaitez construire et l'IA s'en occupera","createProject":"Créer un projet","createTasksAnytimeNote":"Vous pouvez créer des tâches à tout moment depuis le tableau, ou utiliser","createTasksAnytimeNoteTerminal":"dans le terminal.","creating":"Création...","creatingFirstAgent":"","creatingTask":"Création de la tâche…","cursorCli":{"active":"✓ Actif","binaryNotFound":"\`cursor-agent\` non trouvé sur PATH","connected":"Connecté{{version}}","description":"Acheminez les appels d'IA via votre runtime d'agent Cursor local.","detectedPrompt":"Détecté. Cliquez sur Activer pour acheminer les appels via Cursor CLI.","disable":"Désactiver","disabling":"Désactivation…","enable":"Activer","enabling":"Activation…","notConnected":"✗ Non connecté","probing":"Sonde CLI local…","providerName":"","test":"Tester","testing":"Test en cours…"},"defaultModelDescription":"Choisissez un modèle par défaut pour les tâches IA, ou laissez vide pour choisir plus tard. Les modèles varient en vitesse, capacité et coût.","defaultModelLabel":"Modèle par défaut","defaultModelOptional":"Modèle par défaut (facultatif)","describeFirstTask":"Décrivez votre première tâche","destinationDirectory":"Répertoire de destination","directoryPath":"Chemin du répertoire","disconnect":"Déconnecter","dismissWarning":"Ignorer l'avertissement de configuration","enterApiKey":"Saisir la clé API","enterCodeOnGitHub":"Saisir ce code sur GitHub","executionMode":"Mode d'exécution","failedToCancelLogin":"Échec de l'annulation de la connexion","failedToClearApiKey":"Échec de la suppression de la clé API","failedToCopyCode":"Échec de la copie du code — copiez-le manuellement depuis la zone ci-dessus","failedToCreateCustomProvider":"Échec de la création du fournisseur personnalisé","failedToSaveApiKey":"Échec de l'enregistrement de la clé API","failedToSaveShellConnection":"Échec de l'enregistrement de la connexion shell","failedToSubmitAuthCode":"Échec de la soumission du code d'autorisation","finishSetup":"Terminer la configuration","firstAgentCreateError":"","firstAgentCreatedSuccess":"","firstAgentCustomDraft":"","firstAgentDraftName":"","firstAgentContinueWithTemplates":"","firstAgentInterviewLoadError":"","firstAgentInterviewLoading":"","firstAgentIntro":"","firstAgentNoInstructions":"","firstAgentPreview":"","firstAgentSkippedHint":"","firstAgentTemplates":"","firstAgentTitle":"","firstTaskDescription":"Créez votre première tâche pour démarrer le tableau et lancer l'exécution IA.","firstTaskPlaceholder":"Exemple : Créer une page de connexion avec email et mot de passe","firstTaskReady":"Votre première tâche est prête !","getApiKeyLink":"Obtenir votre clé API →","getStarted":"Commencer","githubCliAlreadyAuth":"GitHub CLI est déjà authentifié — les imports de tickets et le suivi des pull requests fonctionnent dès maintenant. Tout est prêt, aucune action supplémentaire requise.","githubCliAuthNote":"GitHub CLI est déjà authentifié, les imports et le suivi des PR fonctionnent donc maintenant. L'OAuth depuis le tableau de bord est optionnel et ne contrôle que la connexion/déconnexion gérée par le tableau de bord.","githubCliAuthSuccess":"GitHub CLI est authentifié. Les imports et le suivi des pull requests sont disponibles. Connectez OAuth dans Paramètres → Authentification si vous souhaitez des contrôles de connexion gérés par le tableau de bord.","githubConnected":"GitHub est connecté — les imports de tickets et le suivi des pull requests sont disponibles. Tout est prêt, aucune action supplémentaire requise.","githubConnectionDescription":"Connecter GitHub débloque les imports de tickets et le suivi des pull requests. Vous pouvez ignorer cela — la création de tâches fonctionne sans.","githubConnectionFailed":"La connexion a échoué ou expiré.","githubOauthConnected":"GitHub OAuth est connecté. Vous pouvez importer des tickets et suivre les pull requests.","githubOauthNotConnected":"GitHub OAuth n'est pas encore connecté. Configurez-le dans Paramètres → Authentification, ou continuez maintenant et connectez-vous plus tard.","githubProvider":"","githubSkipped":"GitHub a été ignoré. Vous pouvez vous connecter à tout moment depuis Paramètres → Authentification.","goBackToStep":"Retour à {{label}}","goToDashboard":"Aller au tableau de bord","howDoesLoginWork":"Comment fonctionne la connexion ?","howDoesLoginWorkBody":"Cliquer sur Connexion ouvre le site du fournisseur dans un nouvel onglet pour vous connecter. Une fois Fusion autorisé, cette page détectera automatiquement la connexion. Vos identifiants ne sont jamais stockés dans Fusion.","howDoIChooseModel":"Comment choisir un modèle ?","howDoIChooseModelBody":"Les modèles varient en vitesse, capacité et coût. Un bon défaut est généralement le dernier modèle de votre fournisseur connecté. Vous pouvez toujours modifier cela dans les Paramètres.","importFromGitHub":"Importer depuis GitHub","importFromGitHubSubtitle":"Transformez les tickets GitHub en tâches que vous pouvez suivre ici","inProcess":"En cours","inProcessDesc":"Rapide, faible surcharge. Les tâches s'exécutent dans le processus principal.","inProcessLabel":"En processus (par défaut)","isolationMode":"Mode d'isolation","keySavedInline":"✓ Clé enregistrée","loadingProviders":"Chargement des fournisseurs…","localNode":"Nœud local","loggedOut":"Déconnecté","loggingOut":"Déconnexion…","login":"Connexion","loginAlreadyInProgress":"Une connexion est déjà en cours. Annulez-la pour réessayer.","loginCancelled":"Connexion annulée","loginDidNotComplete":"La connexion n'a pas abouti. Veuillez réessayer.","loginFailed":"Connexion échouée","loginFailedInline":"Connexion échouée. Veuillez réessayer.","loginSuccessful":"Connexion réussie","loginTimedOut":"Délai de connexion expiré. Veuillez réessayer.","loginTimedOutInline":"Délai de connexion expiré. Veuillez réessayer.","logout":"Déconnexion","logoutFailed":"Échec de la déconnexion","manualPastebackTitle":"Attention — retour collage manuel requis","nameHint":"Utilisez uniquement des lettres, chiffres, tirets et tirets bas","namePlaceholder":"mon-projet","needHelp":"Besoin d'aide?","next":"Suivant →","noAiProvider":"Aucun fournisseur d'IA connecté","noAiProviderBody":"Les fonctionnalités IA comme la planification de tâches et la génération de code ne seront pas disponibles avant que vous en connectiez un. Vous pouvez le configurer plus tard dans les Paramètres.","noAiProviderConnected":"Aucun fournisseur IA connecté","noAiProviderDesc":"Les agents IA ne pourront pas travailler sur les tâches tant que vous ne connectez pas un fournisseur. Configurez-en un dans Paramètres → Configuration IA.","noGithub":"GitHub non connecté","noGithubDesc":"Vous ne pourrez pas importer de problèmes depuis GitHub, mais vous pouvez toujours créer des tâches manuellement.","noModelsAvailable":"Aucun modèle disponible pour l'instant. Connectez un fournisseur ci-dessus pour voir les options.","noProvidersConfigured":"Aucun fournisseur IA n'est configuré. Vérifiez votre configuration Fusion.","noProvidersConnectedYet":"Aucun fournisseur connecté pour l'instant","noQuickStartProviders":"Aucun fournisseur de démarrage rapide n'est disponible dans cet environnement.","onlyNeedOneProvider":"Un seul fournisseur suffit pour commencer.","openGitHub":"Ouvrir GitHub","openManager":"Ouvrir le gestionnaire","optionalBadge":"Facultatif","pasteRedirectUrlFirst":"Collez d'abord l'URL de redirection complète ou le code d'autorisation.","pathHint":"Entrez le chemin absolu de votre répertoire de projet","pathPlaceholder":"/chemin/vers/votre/projet","pleaseEnterTaskDescription":"Veuillez saisir une description de tâche.","profileName":"Nom du profil","projectDirectory":"Répertoire du projet","projectMustBeSelected":"Un projet doit être sélectionné avant de pouvoir créer des tâches ou importer depuis GitHub.","projectMustBeSelectedForAgent":"","projectName":"Nom du projet","projectNameHintClone":"Par défaut, cela suit le nom du dossier de destination sauf si vous l'éditez.","projectNameHintExisting":"Par défaut, cela suit le nom du répertoire sélectionné sauf si vous l'éditez.","projectNamePlaceholder":"mon-projet","projectPathHint":"Sélectionnez ou entrez le chemin absolu de votre projet","projectPathPlaceholder":"/chemin/vers/votre/projet","projectRegisteredSuccess":"Votre projet a été enregistré avec succès.","projectRequired":"Un projet est requis avant que les actions de première tâche soient disponibles.","projectSelected":"Projet sélectionné — la création de tâches et les imports sont disponibles.","projectSetupDescription":"Choisissez votre premier projet avant de créer ou d'importer des tâches. Vous pouvez enregistrer un répertoire local existant ou cloner une URL de dépôt GitHub via l'assistant de configuration.","providersConnectedSummary":"✓ {{connected}} fournisseur(s) sur {{total}} connecté(s)","providersSkippedSummary_one_one":"","providersSkippedSummary_one_other":"","providersSkippedSummary_other_one":"","providersSkippedSummary_other_other":"","quickStartProviders":"Fournisseurs de démarrage rapide","readinessAiProviderConnected":"{{name}} connecté — les agents IA peuvent travailler sur les tâches","readinessAiProviderLabel":"Fournisseur IA","readinessAiProviderMissing":"Connectez un fournisseur dans Paramètres → Configuration IA","readinessAiProviderSkipped":"Les agents IA ne seront pas disponibles tant que vous n'aurez pas connecté un fournisseur","readinessAllConnected":"✓ Toutes les intégrations connectées","readinessDefaultModelLabel":"Modèle par défaut","readinessGitHubConnected":"Les tickets et les PR peuvent être importés","readinessGitHubLabel":"GitHub","readinessGitHubMissing":"Connectez-vous pour importer des tickets comme tâches","readinessGitHubSkipped":"Vous pouvez vous connecter à tout moment depuis les Paramètres","readinessGitHubViaCli":"Connecté via GitHub CLI — les imports et le suivi des PR sont disponibles","readinessProjectConnected":"Projet sélectionné — la création de tâches et les imports sont disponibles","readinessProjectLabel":"Projet","readinessProjectMissing":"Enregistrez un projet pour activer la création de tâches et les imports","readinessSummaryHeader":"Résumé de la configuration","recommended":"Recommandé","recommendedNextSteps":"Étapes suivantes recommandées","registering":"Enregistrement...","registerProject":"Enregistrer le projet","remoteServerNote":"Votre shell natif nécessite un profil distant actif pour que le transfert vers le tableau de bord puisse s'effectuer.","remoteServerProfileSaved":"Profil de serveur distant enregistré","removeKey":"Supprimer la clé","removingKey":"Suppression…","repositoryUrl":"URL du référentiel","repositoryUrlPlaceholder":"https://github.com/proprietaire/repo.git","requiresGitHubConnection":"Nécessite une connexion GitHub","researchRunsNote":"Les recherches nécessitent des identifiants de fournisseur et une vue Recherche activée. Après l'intégration, vérifiez-les dans Paramètres → Authentification et Paramètres → Fonctionnalités expérimentales.","retry":"Réessayer","reviewStep":"Revoir {{label}}","runtimeNode":"Nœud d'exécution","savedProfileButFailedToActivate":"Profil enregistré mais échec de l'activation","saveKey":"Enregistrer","saveRemoteServer":"Enregistrer le serveur distant","saving":"Enregistrement…","savingKey":"Enregistrement…","savingRemoteServer":"Enregistrement…","selectDefaultModel":"Sélectionner un modèle par défaut","selectDefaultModelDesc":"Choisissez un modèle IA par défaut pour l'exécution des tâches","selectedAgentTemplate":"","selectedModel":"Sélectionné :","serverUrl":"URL du serveur","serverUrlPlaceholder":"https://your-fusion-host","setUpAi":"Configurer l'IA","setupComplete":"Configuration terminée !","setupMode":"Mode de configuration","setUpProject":"Configurer le projet","setupWizardHint":"Dans l'assistant de configuration, choisissez un répertoire existant ou collez une URL de clone GitHub.","skip":"Sauter","skipFirstAgent":"","skipForNow":"Ignorer pour l'instant","skipGitHub":"Ignorer GitHub →","skipOnboardingAriaLabel":"Ignorer l'intégration","skipProviderHint":"Vous pouvez ignorer cette étape — les fournisseurs peuvent être ajoutés plus tard dans les Paramètres.","skipSetup":"Ignorer la configuration →","statusConnected":"✓ Connecté","statusConnecting":"⏳ Connexion…","statusConnectionFailed":"✗ Connexion échouée","statusNotConnected":"Non connecté","statusRetry":"Réessayer","statusSkipped":"Ignoré","stepAgent":"","stepAiSetup":"Configuration IA","stepFirstTask":"Première tâche","stepGithub":"GitHub","stepProject":"Projet","submitCode":"Soumettre le code","submittingCode":"Soumission…","taskCreated":"Tâche créée","taskCreatedHint":"Votre tâche a été créée et apparaîtra sur le tableau.","taskCreationFailed":"Une erreur s'est produite lors de la création de la tâche. Veuillez réessayer.","taskErrorHint":"Votre texte a été préservé — corrigez le problème et réessayez.","titleAiSetup":"Configurer l'IA","titleAllSet":"C'est parti !","titleConnectGitHub":"Connecter GitHub","titleCreateFirstAgent":"","titleCreateFirstTask":"Créer votre première tâche","titleSetUpProject":"Configurer votre projet","useExistingDirectory":"Utiliser le répertoire existant","viewTask":"Voir la tâche","waitingForGitHubAuth":"En attente de l'autorisation GitHub…","waitingForLogin":"En attente de la connexion…","waitingForOauthLogin":"En attente de la connexion OAuth…","welcomeToFusion":"Bienvenue dans Fusion","whatAreAiProviders":"Que sont les fournisseurs IA ?","whatAreAiProvidersBody":"Des fournisseurs comme OpenAI et Anthropic alimentent les capacités IA de Fusion. Connecter un fournisseur permet aux agents de Fusion d'utiliser des modèles IA pour vous aider dans vos tâches.","whatDoesGitHubIntegrationDo":"À quoi sert l'intégration GitHub ?","whatDoesGitHubIntegrationDoBody":"Sans GitHub, vous pouvez toujours créer et gérer des tâches manuellement. L'intégration GitHub ajoute la possibilité d'importer des tickets comme tâches, de suivre le statut des pull requests et de lier automatiquement les commits aux tâches. Connectez-vous à tout moment depuis Paramètres → Authentification.","whatDoesProjectSetupDo":"À quoi sert la configuration du projet ?","whatDoesProjectSetupDoBody":"La configuration du projet enregistre un espace de travail pour que Fusion sache où lire les fichiers, exécuter les commandes et suivre les modifications de tâches.","whatHappensWhenCreateTask":"Que se passe-t-il quand je crée une tâche ?","whatHappensWhenCreateTaskBody":"Une tâche décrit ce que vous voulez réaliser. Les agents IA de Fusion liront votre description et travailleront à sa mise en œuvre. Vous pouvez suivre la progression sur le tableau et examiner les résultats.","whatIsApiKey":"Qu'est-ce qu'une clé API ?","whatIsApiKeyBody":"Une clé API est un jeton secret qui authentifie Fusion auprès du fournisseur. Vous pouvez trouver votre clé dans le tableau de bord du fournisseur sous les paramètres API. Les clés sont stockées de manière sécurisée sur votre machine.","withGitHub1":"Importer des tickets comme tâches","withGitHub2":"Synchroniser le statut des pull requests","withGitHub3":"Lier les modifications de code aux tâches","withGitHubHeading":"Avec GitHub (après connexion) :","withoutGitHub1":"Créer des tâches manuellement","withoutGitHub2":"Décrire le travail pour les agents IA","withoutGitHub3":"Suivre la progression sur le tableau","withoutGitHubHeading":"Sans GitHub (disponible maintenant) :","brandLogo":"","brandName":"","setupCompleteTitle":""}`),it={activePill:"Actif",addConnection:"Ajouter une connexion",addServer:"Ajouter un serveur",authTokenLabel:"Jeton d'authentification (facultatif)",connectionManager:"Gestionnaire de connexion",connectionManagerLabel:"Gestionnaire de connexion",defaultProfileName:"Serveur distant",deleteConfirmLabel:"Confirmation de suppression du serveur",deleteConfirmMessage:"Supprimer {{name}} ? Cela supprimera le profil enregistré.",deleteProfile:"Supprimer {{name}}",editProfile:"Modifier {{name}}",modeLocal:"Local",modeRemote:"Distant",nameLabel:"Nom",noServersSaved:"Aucun serveur distant enregistré pour l'instant.",scanQr:"Scanner le code QR",serverUrlLabel:"URL du serveur",serverUrlProtocolError:"L'URL du serveur doit utiliser http ou https",use:"Utiliser",useProfile:"Utiliser {{name}}"},nt={addSkill:"Ajouter une compétence…",allSkillsSelected:"Toutes les compétences sélectionnées",catalogSection:"Catalogue des compétences",catalogUnavailable:"Le catalogue n'est pas disponible pour le moment. Veuillez réessayer plus tard.",closeDetail:"Fermer le détail de la compétence",closeView:"Fermer la vue des compétences",disabled:"Compétence désactivée",disableSkill:"Désactiver {{name}}",discovered:"découvertes",discoveredCount_one:"",discoveredCount_other:"",discoveredSection:"Compétences découvertes",enabled:"Compétence activée",enableSkill:"Activer {{name}}",filesLabel:"Fichiers",install:"Installer",installError:"Impossible d'installer la compétence",installFailed:"Impossible d'installer {{name}} : {{message}}",installing:"Installation en cours…",installsCount:"{{count}} installations",installSkill:"Installer {{name}}",installSuccess:"{{name}} installé",loadCatalogError:"Impossible de charger le catalogue",loadContentError:"Impossible de charger le contenu de la compétence",loadDiscoveredError:"Impossible de charger les compétences découvertes",loading:"Chargement des compétences…",loadingCatalog:"Chargement du catalogue...",loadingContent:"Chargement du contenu de la compétence...",loadingDiscovered:"Chargement des compétences découvertes...",noCatalogAvailable:"Aucune compétence disponible dans le catalogue.",noDiscovered:"Aucune compétence découverte dans ce projet.",noMatchingDiscovered:"Aucune compétence découverte ne correspond à votre recherche.",noMatchingSearch:"Aucune compétence ne correspond à votre recherche.",noSkillMd:"(Aucun fichier SKILL.md trouvé)",noSkillsDiscovered:"Aucune compétence trouvée",removeSkill:"Supprimer {{name}}",searchLabel:"Rechercher des compétences",searchPlaceholder:"Rechercher des compétences...",title:"Compétences",toggleError:"Impossible de basculer la compétence",toggleFailed:"Impossible de basculer la compétence : {{message}}",viewDetails:"Afficher les détails de {{name}}"},ot={edit:"Modifier",empty:"(pas de spécification)",feedbackPlaceholder:"par exemple, 'Ajouter plus de détails sur la gestion des erreurs', 'Diviser ceci en étapes plus petites', 'Inclure des tests pour les points de terminaison de l'API'...",keyboardHint:"Appuyez sur <ctrl>Ctrl</ctrl>+<enter>Entrée</enter> (ou <cmd>Cmd</cmd>+<enter2>Entrée</enter2>) pour enregistrer",placeholder:"Entrez la spécification de la tâche en Markdown...",requesting:"Demande en cours…",requestRevision:"Demander une révision de l'IA",revisionHelp:"Fournissez des commentaires à l'IA pour améliorer cette spécification. La tâche passera à la phase de planification pour une nouvelle planification.",revisionTitle:"Demander à l'IA de réviser",saving:"Enregistrement…",view:"Afficher"},at={copyReference:""},st={applied:"Appliqué",apply:"Appliquer",applyFailed:"Échec de l'application",changedPathsLabel:"Chemins modifiés",classificationLabel:"Classification",closeDiffDialog:"Fermer la boîte de dialogue diff",diffDialogLabel:"Diff pour {{sha}}",diffHeader:"Diff pour {{sha}}",diffTruncated:"Sortie diff tronquée.",drop:"Supprimer",dropConfirm:"Supprimer",dropMessage:"Cela supprime définitivement l'entrée de sauvegarde.",dropTitle:"Supprimer la sauvegarde orpheline ?",failedToLoadDiff:"Échec du chargement du diff",failedToLoadOrphans:"Échec du chargement des orphelins",fileCount_one:"",fileCount_other:"",inspectDiff:"Inspecter diff",loadingDiff:"Chargement du diff…",noDiffOutput:"Aucune sortie diff disponible.",noOrphans:"Aucune sauvegarde automatique de fusion orpheline trouvée.",orphanCount_one:"",orphanCount_other:"",shaLabel:"SHA",title:"Récupération de stash",unknownSource:"Source inconnue"},lt={aiPrompt:"Prompt IA",aiPromptStepTitle:"Étape de prompt IA",command:"Commande",commandStepTitle:"Étape de commande",createTask:"Créer une tâche",createTaskStepTitle:"Étape de création de tâche"},ut={addSubtask:"Ajouter une sous-tâche",baseBranchLabel:"Cible de fusion / branche de base (facultatif)",baseBranchPlaceholder:"main",branchAssignmentPerTask:"Branches par tâche dérivées de la branche de planification",branchAssignmentShared:"Cible de fusion partagée — les sous-tâches s'exécutent sur leurs propres branches",branchModeAutoNew:"Créer une branche nommée automatiquement par tâche",branchModeCustomNew:"Créer une nouvelle branche personnalisée",branchModeExisting:"Utiliser une branche existante",branchModeProjectDefault:"Utiliser la branche projet/défaut",branchNameLabel:"Nom de la branche",branchStrategyLabel:"Stratégie de branche",createTasks:"Créer les tâches",creating:"Création en cours...",dependenciesLabel:"Dépendances",dependencyCycleError:"Les dépendances contiennent un cycle. Supprimez les références circulaires avant de créer les tâches.",descriptionLabel:"Description",dragToReorder:"Faire glisser pour réorganiser",errorCreateTasks:"Impossible de créer les tâches",errorRefreshSession:"Impossible d'actualiser la session de sous-tâches.",errorResumeSession:"Impossible de reprendre la session",errorRetryFailed:"La nouvelle tentative a échoué. Veuillez réessayer.",errorSessionEncountered:"La session a rencontré une erreur",errorSessionFailed:"La session a échoué lors de la communication avec l'IA.",errorSessionNoResult:"La session de sous-tâches est terminée mais n'a aucun résultat.",errorStartBreakdown:"Impossible de démarrer la décomposition des sous-tâches",generatingSubtasks:"L'IA génère des sous-tâches...",groupedOnSharedBranch:"Regroupé sur la branche partagée",hideThinking:"Masquer la réflexion",keepSessionMessage:"",keepSessionTitle:"",modalTitle:"Décomposition en sous-tâches",moveDown:"Descendre",moveSubtaskDownAriaLabel:"Déplacer la sous-tâche vers le bas",moveSubtaskUpAriaLabel:"Déplacer la sous-tâche vers le haut",moveUp:"Monter",noDepsFirstSubtask:"La première sous-tâche ne peut pas avoir de dépendances.",noPreviousSubtasks:"Aucune sous-tâche précédente disponible.",openGroupModal:"Ouvrir le modal de groupe",planningBranchModeLabel:"Mode de branche de planification",preparingBreakdown:"Préparation de la décomposition de cette tâche en sous-tâches.",progressHint:"",reconnecting:"Reconnexion en cours…",remove:"Supprimer",retry:"Réessayer",retrying:"Nouvelle tentative...",reviewSubtasksHeading:"Vérifiez vos sous-tâches",reviewSubtasksHint:"Modifiez les titres, descriptions, tailles et dépendances avant de créer toutes les tâches d'un coup.",sendToBackgroundAriaLabel:"Envoyer en arrière-plan",sendToBackgroundTitle:"Envoyer en arrière-plan",sessionActiveAnotherTab:"La session est active dans un autre onglet.",sessionActiveAnotherTabLive:"Cette session est active dans un autre onglet (signal de présence actif)",sessionActiveAnotherTabTakeover:"Cette session est active dans un autre onglet",showThinking:"Afficher la réflexion",sizeLabel:"Taille",startingBreakdown:"",takeControl:"Prendre le contrôle",takingControl:"Prise de contrôle...",titleLabel:"Titre",untitled:"Sans titre",waitingForThinking:""},dt={entryCount_one:"",entryCount_other:"",filterAll:"Tous",filterAllNodes:"Tous les nœuds",filterDirection:"Direction :",filterNode:"Nœud :",filterPull:"Récupérer",filterPush:"Envoyer",loading:"Chargement...",noHistory:"Aucun historique de synchronisation",resultConflict:"Conflit",resultError:"Erreur",resultSuccess:"Succès"},ct={agentActive:"active",agentError:"error",agentIdle:"idle",agentRunning:"running",autoKillLabel:"Arrêt automatique de vitest sous pression mémoire",autoRefresh:"Actualisation auto · 5s",confirmKill:"Confirmer l'arrêt ?",cpuFirstSamplePending:"Premier échantillon en attente",cpuProcessUsage:"utilisation du processus",cpuSampling:"Échantillonnage…",errorKillVitest:"Échec de l'arrêt des processus vitest",errorLoadStats:"Échec du chargement des statistiques système",errorLoadVitestSettings:"Échec du chargement des paramètres vitest",errorSaveVitestSettings:"Échec de l'enregistrement des paramètres vitest",footerRefreshFailed:"Dernière actualisation échouée : {{error}}",killedProcesses_one:"",killedProcesses_other:"",killThresholdInputAriaLabel:"Seuil d'arrêt (%)",killThresholdLabel:"Seuil d'arrêt (%)",killThresholdSliderAriaLabel:"Curseur de seuil d'arrêt (%)",killVitest:"Arrêter les processus vitest",lastAutoKill:"Dernier arrêt automatique : {{time}}",localNodeFallback:"Local node",nodeSelectorAriaLabel:"Select system stats node",nodeSelectorLabel:"Node",nodeStatusSuffix:"{{status}}",notYet:"Pas encore",refreshAriaLabel:"Actualiser les statistiques système",refreshTitle:"Actualiser",rowAppCpu:"CPU app",rowArrayBuffers:"Tampons tableau",rowCores:"Cœurs",rowExternal:"Externe",rowHeapLimit:"Limite du tas",rowHeapLimitDetail:"Limite V8",rowHeapUsed:"Tas utilisé",rowHeapUsedDetail:"sur {{total}}",rowLoadAvg:"Charge moy.",rowMemoryFree:"Mémoire libre",rowMemoryUsed:"Mémoire utilisée",rowNode:"Node",rowPid:"PID",rowPlatform:"Plateforme",rowRss:"RSS",sectionAgents:"Agents",sectionAgentsAriaLabel:"Statistiques des agents",sectionTasks:"Tâches",sectionTasksAriaLabel:"Statistiques des tâches",sectionVitest:"Contrôles vitest",thisNodeSuffix:"this node",updatedAt:"Mis à jour {{time}}",viewingNode:"Viewing {{node}}",vitestProcesses:"Processus vitest",waitingFirstUpdate:"En attente de la première mise à jour"},pt={attributionFailed:"L'ensemble des fichiers déposés peut inclure des commits étrangers (attribution indisponible).",disableWordWrap:"Désactiver le retour à la ligne",enableWordWrap:"Activer le retour à la ligne",error:"Erreur lors du chargement des modifications : {{error}}",expandDiff:"Développer la vue de diff en plein écran",expandDiffView:"Développer la vue de diff",filesChangedHeading_one:"",filesChangedHeading_other:"",loadError:"Impossible de charger les modifications de la tâche",loading:"Chargement des modifications...",mergedAt:"Fusionné {{date}}",nextFile:"Fichier suivant",noExecutionModifications:"L'agent n'a modifié aucun fichier lors de l'exécution.",noFilesModified:"Aucun fichier modifié.",noMergeCommit:"Aucun commit de fusion n'a été enregistré pour cette tâche.",noMergeFileChanges:"Aucune modification de fichier n'a été enregistrée dans le commit de fusion.",noOpShortCircuit:"Court-circuit vérifié — le travail était déjà sur main (le rebase a parcouru des commits étrangers).",noWorktree:"Aucun répertoire de travail disponible pour cette tâche.",noWorktreeHint:"Les modifications s'afficheront une fois la tâche en cours.",previousFile:"Fichier précédent",summaryHint:"Résumé du commit final : {{files}} fichier{{plural}} modifié(s), +{{additions}} additions, -{{deletions}} suppressions. Ne compte que le commit de fusion/compression enregistré, pas la lignée complète de la tâche.",toggleWordWrap:"Basculer le retour à la ligne",unavailable:"Modifications de fichiers détaillées non disponibles."},mt=JSON.parse(`{"actions":{"menuBtn":"Actions"},"agent":{"assignBtn":"Assigner un agent","assignedUpdated":"Agent assigné mis à jour","assignFailed":"Échec de l'affectation de l'agent : {{error}}","label":"Agent","loadFailed":"Échec du chargement des agents : {{error}}","loadingAgents":"Chargement des agents...","noAgents":"Aucun agent disponible","unassigned":"Agent désaffecté","unassignFailed":"Échec de la désaffectation de l'agent : {{error}}","unassignTitle":"Désaffecter l'agent"},"agentLink":"agent {{id}}","ageStaleness":{"active":"Actif","age":"Âge","column":"Colonne","critical":"Critique","observed":"Observé","paused":"En pause","title":"Ancienneté de la tâche","warning":"Avertissement"},"attachments":{"attachBtn":"Joindre une capture d'écran","attached":"Capture d'écran jointe","deleted":"Pièce jointe supprimée","deleteTitle":"Supprimer la pièce jointe","heading":"Pièces jointes","none":"(aucune pièce jointe)","uploading":"Téléversement…"},"blockedByLink":"bloqué par {{id}}","blocking":{"heading":"Blocage","none":"(aucune tâche en aval bloquée)","stale":"(obsolète)","staleTitle":"Arête blockedBy obsolète : le clearStaleBlockedBy auto-réparant devrait la supprimer automatiquement"},"branchBinding":{"candidates":"Candidats :","copy":"Cette tâche en révision n'est pas actuellement attachée à une branche fusion. Si une branche fusion active existe encore pour elle, vous pouvez la rattacher ici.","headline":"La branche doit être rattachée","reattachBtn":"Rattacher la branche","reattached":"Branche rattachée pour {{id}} ({{branch}})","reattachedResult":"{{branch}} rattachée ({{count}} commits devant {{base}}).","reattachedResult_one":"","reattachedResult_other":"","reattaching":"Rattachement…","skipped":"Rattachement de branche ignoré pour {{id}} : {{reason}}","skippedResult":"Rattachement ignoré : {{reason}}"},"cacheBreakdown":"(lus {{read}} / écrits {{write}} / entrée {{input}})","cacheHitRatio":"Taux de hits du cache :","cacheRead":"Lecture du cache","cacheWrite":"Écriture du cache","checkoutLink":"checkout {{id}}","delete":{"actionClosed":"fermé","actionDeleted":"supprimé","actionLeft":"laissé","allowRecreation":"Autoriser la recréation ultérieure (déverrouillage opérateur)","allowRecreationDesc":"Permet aux agents de recréer cet ID de tâche sans --force-resurrect. Laissez décoché pour conserver l'état de tombstone.","archivedAfterUnlink":"{{id}} archivé après dissociation des références de lignage","archiveInstead":"Archiver à la place","archiveUnlinkPrompt":"Archiver quand même en dissociant ces références d'abord ?","ariaLabel":"Supprimer la tâche","btn":"Supprimer","closeIssue":"Fermer l'issue","confirm":"Supprimer","deletedAfterRemovingDeps":"{{id}} supprimé après la suppression des références de dépendance","deletedAfterUnlinkLineage":"{{id}} supprimé après dissociation des références de lignage","deletedToast":"{{id}} supprimé{{suffix}}","deleteIssue":"Supprimer l'issue","deleteLinkedIssueMessage":"Supprimer {{issueRef}} sur GitHub, ou le laisser inchangé ?","deleteLinkedIssueTitle":"Supprimer l'issue GitHub liée","deleteUnlinkDepsPrompt":"Supprimer quand même en supprimant ces références de dépendance d'abord ?","deleteUnlinkLineagePrompt":"Supprimer quand même en dissociant ces références d'abord ?","forceDeleteTitle":"Forcer la suppression de la tâche","issueSuffix":"et {{action}} l'issue {{ref}}","leaveUnchanged":"Laisser inchangé","linkedIssueMessage":"Choisissez ce que faire avec {{issueRef}} lors de la suppression de {{id}}.\\n\\nFermer l'issue ?","linkedIssueTitle":"Issue GitHub liée","message":"Supprimer {{id}} ?","moreOptions":"Plus d'options","title":"Supprimer la tâche"},"deps":{"addBtn":"Ajouter une dépendance","clearBlockerTitle":"Effacer le bloqueur de chevauchement {{id}}","clearBtn":"Effacer","clickToView":"Cliquez pour voir {{id}}","heading":"Dépendances","loadFailed":"Échec du chargement de la dépendance {{id}}","noAvailableTasks":"Aucune tâche disponible","none":"(aucune dépendance)","overlapBlocker":"Bloqueur de chevauchement de portée de fichier :","removeTitle":"Supprimer la dépendance {{id}}","searchPlaceholder":"Rechercher des tâches…","stale":"(obsolète)"},"description":{"showLess":"Afficher moins","showMore":"Afficher plus"},"duplicate":{"btn":"Dupliquer","message":"Dupliquer {{id}} ? Cela créera une nouvelle tâche dans Triage avec la même description et invite.","success":"{{id}} dupliqué → {{newId}}","title":"Dupliquer la tâche"},"edit":{"autosaveHint":"Les modifications sont enregistrées automatiquement","autosaving":"Enregistrement automatique…","nodeOverrideLocked":"Le remplacement du nœud d'exécution est verrouillé pendant qu'une tâche est active/en cours.","saved":"Enregistré","saveFailed":"Échec de l'enregistrement","saving":"Enregistrement…","sourceExternalIdPlaceholder":"Identifiant de l'issue","sourceIssueHint":"Laissez tous les champs vides pour effacer les métadonnées de l'issue source.","sourceIssueIdentifierNumeric":"L'identifiant d'issue source doit être numérique pour les nouvelles métadonnées","sourceIssueLabel":"Issue source","sourceIssueRequiredFields":"Le fournisseur de l'issue source, le dépôt et l'identifiant d'issue sont obligatoires","sourceProviderPlaceholder":"Fournisseur (p. ex. github)","sourceRepositoryPlaceholder":"Dépôt (p. ex. owner/repo)","sourceUrlPlaceholder":"URL de l'issue"},"error":{"taskFailed":"Tâche échouée"},"executionAndTokenStats":"Stats d'exécution et de tokens","executionDetails":"Détails d'exécution","executionMode":{"ariaLabel":"Mode d'exécution : {{mode}}","fast":"Rapide","standard":"Standard","updated":"Mode d'exécution mis à jour : {{mode}}","replanMessage":"Changer le mode d'exécution de cette tâche la renverra en planification afin que Fusion reconstruise le plan pour le mode {{mode}}.","replanTitle":"Changer le mode d'exécution et replanifier ?","replanning":"Mode d'exécution mis à jour vers {{mode}} — {{id}} est revenue en planification pour replanification"},"executionModeFast":"Rapide","executionModeStandard":"Standard","executionStatsAria":"Statistiques d'exécution de la tâche","executionTiming":"Durée d'exécution","executionTimingMetricsAria":"Métriques de durée d'exécution","firstUsed":"Première utilisation","githubTracking":{"addTitleBeforeCreating":"Ajoutez un titre avant de créer une issue de suivi","checking":"Vérification du statut de suivi","collapse":"Réduire les détails du suivi GitHub","createIssueBtn":"Créer une issue de suivi","createIssueDisabledTitle":"Ajoutez un titre ou une description pour créer une issue de suivi.","createIssueHelper":"L'issue de suivi sera créée dès que cette tâche aura un titre ou une description.","disabled":"Le suivi est actuellement désactivé","enableAriaLabel":"Activer le suivi GitHub","enableBtn":"Activer","enableCheckboxLabel":"Activer le suivi GitHub","enabling":"Activation du suivi GitHub…","enablingAriaLabel":"Activation du suivi GitHub","expand":"Développer les détails du suivi GitHub","issue":"Issue","issueCreationRequested":"Création d'une issue de suivi GitHub demandée","issueUnlinked":"Issue GitHub dissociée","label":"Suivi GitHub","loading":"Chargement du statut de suivi GitHub…","loadingAriaLabel":"Chargement du statut de suivi GitHub","notYetCreated":"Issue pas encore créée","repoOverrideFormat":"La substitution de dépôt doit être au format propriétaire/dépôt","state":"État","statusAriaLabel":"État du suivi GitHub","statusDisabled":"Désactivé","statusEnabled":"Activé","statusLinked":"Liée","statusLoading":"Chargement","unlinkBtn":"Dissocier l'issue GitHub","unlinkConfirm":"Dissocier","unlinkMessage":"Cela arrête la synchronisation de Fusion avec l'issue GitHub liée. L'issue elle-même ne sera pas modifiée.","unlinkTitle":"Dissocier l'issue GitHub ?"},"hasSession":"a une session","header":{"back":"Retour","backToList":"Retour à la liste des tâches","editTask":"Modifier la tâche"},"inputTokens":"Entrée","lastUsed":"Dernière utilisation","loadingTokenStats":"Chargement des statistiques de tokens…","logs":{"activity":"Activité","activityHeading":"Activité","agentLog":"Journal de l'agent","loadingActivity":"","noActivity":"(aucune activité)","truncated_one":"","truncated_other":""},"longestTimingEvent":"Événement de minutage le plus long","longestWorkflowStep":"Étape de workflow la plus longue","merge":{"closed":"{{id}} fermé ({{reason}})","merged":"{{id}} fusionné (branche : {{branch}})","merging":"Fusion de {{id}}…","message":"Fusionner {{id}} dans la branche actuelle ?","noBranchToMerge":"aucune branche à fusionner","title":"Fusionner la tâche"},"move":{"backToInProgress":"Retour à En cours","cancelMove":"Annuler le déplacement","keepProgress":"Conserver la progression","movedTo":"Déplacé vers {{column}}","moveTo":"Déplacer vers {{column}}","preserveProgressMessage":"Cette tâche a des étapes terminées. Conserver la progression avant de déplacer ?","preserveProgressTitle":"Conserver la progression ?","resetProgress":"Réinitialiser la progression","resetProgressMessage":"Réinitialiser toute la progression des étapes avant de déplacer cette tâche ?","resetProgressTitle":"Réinitialiser la progression ?"},"nearDuplicate":{"actions":"Choisissez Archiver pour déplacer cette tâche vers les archives, ou Conserver pour continuer avec cette tâche.","archiveBtn":"Archiver","archiveConfirm":"Archiver","archived":"{{id}} archivé","archiveMessage":"Archiver {{id}} en tant que doublon de {{duplicateOf}} ?","archiveTitle":"Archiver la tâche quasi-dupliquée","copy":"Cette tâche semble être un quasi-doublon de","headline":"Doublon potentiel détecté","keepBtn":"Conserver","kept":"{{id}} conservé et avertissement de doublon ignoré"},"nextRecoveryAt":"Prochaine récupération à {{time}}","no":"Non","noCommits":{"disabled":"Attente sans commit désactivée","enabled":"Attente sans commit activée","hint":"Permet à la tâche de se terminer sans produire de commits git. À utiliser pour les tâches d'évaluation, de vérification ou d'audit où le livrable est la décision enregistrée.","label":"Aucun commit attendu (tâche décisionnelle)"},"noRuntimeLinks":"Aucun lien d'exécution","noScheduledRecovery":"Aucune récupération planifiée","noSteps":"Aucune étape","noTimedEvents":"Aucun événement chronométré enregistré pour l'instant.","noTokenUsage":"Aucune utilisation de tokens enregistrée pour cette tâche pour l'instant.","notSet":"Non défini","noWorkflowStepTimings":"Aucune durée d'étape de workflow terminée pour l'instant.","outputTokens":"Sortie","pause":{"pauseBtn":"Mettre en pause","paused":"{{id}} mis en pause","pausedByAgent":"Mis en pause par l'agent","unpauseBtn":"Reprendre","unpaused":"{{id}} sorti de pause","worktrunkFailed":"Opération Worktrunk échouée"},"paused":"En pause","plan":{"approveBtn":"Approuver le plan","approved":"Plan approuvé — {{id}} déplacé vers Todo","rebuildMessage":"Reconstruire le plan pour cette tâche ? La tâche passera en planification.","rebuildTitle":"Reconstruire le plan","rejectBtn":"Rejeter le plan","rejected":"Plan rejeté — {{id}} renvoyé en planification pour replanning","rejectMessage":"Rejeter ce plan ? La spécification sera supprimée et régénérée.","rejectTitle":"Rejeter le plan","replanning":"Replanning de {{id}}…"},"pr":{"awaitingChecks":"En attente des vérifications du PR","checkPrStatus":"Vérifier le statut du PR","creatingPr":"Création du PR…","finishAndClose":"Terminer et fermer","mergeAndClose":"Fusionner et fermer","mergingFixes":"Fusion des corrections…","mergingPr":"Fusion du PR…","startPrReview":"Démarrer la révision du PR","statusRefreshed":"Statut du PR actualisé","label":""},"priority":{"ariaLabel":"Priorité de la tâche","label":"Priorité :","updated":"Priorité mise à jour : {{priority}}"},"progress":{"heading":"Progression","noSteps":"(aucune étape définie)","stepCount_one":"","stepCount_other":""},"provenance":{"createdBy":"Créé par","createdVia":"Créé via","parentTaskOf":""},"recoveryState":"État de récupération","refine":{"btn":"Affiner","charCount_one":"","charCount_other":"","createBtn":"Créer une tâche de raffinement","creating":"Création...","feedbackRequired":"Veuillez saisir des commentaires décrivant ce qui doit être affiné","feedbackTooLong":"Le commentaire ne peut pas dépasser 2000 caractères","help":"Décrivez ce qui doit être affiné ou amélioré...","modalTitle":"Affiner","placeholder":"Saisissez votre commentaire ici...","taskCreated":"Tâche de raffinement créée : {{id}}"},"reset":{"btn":"Réinitialiser","confirmMessage":"Cela effacera toute la progression de {{id}} et relancera la tâche depuis le début. Continuer ?","resetSuccess":"{{id}} réinitialisé — une nouvelle exécution sera allouée"},"respecify":{"btn":"Respécifier"},"retries":{"branchConflict":"Récupération après conflit de branche","branchConflictTitle":"FN-4068 tentatives de récupération après conflit de branche","capReached":"Limite de tentatives atteinte pour cette tâche.","collapse":"Réduire les détails des tentatives","expand":"Développer les détails des tentatives","label":"Tentatives","mergeConflict":"Rebonds de conflit de fusion","mergeConflictTitle":"Tentatives après rebond de conflit de fusion","postReviewFix":"Corrections post-révision","postReviewFixTitle":"Tentatives de remédiation post-révision","recovery":"Tentatives de récupération","recoveryTitle":"Tentatives de récupération transitoire de l'exécuteur","reviewerContext":"Tentatives de contexte réviseur","reviewerContextTitle":"FN-4082 tentative de révision compacte","reviewerFallback":"Tentatives de repli du réviseur","reviewerFallbackTitle":"FN-4092 tentative avec modèle de repli","stuckKill":"Arrêts pour blocage","stuckKillTitle":"Le détecteur de tâches bloquées a forcé des arrêts d'agent","taskDone":"Tentatives task_done","taskDoneTitle":"L'agent a quitté sans task_done, la tâche a été relancée","verification":"Rebonds de vérification","verificationTitle":"Tentatives après échec de vérification","workflowStep":"Tentatives de workflow","workflowStepTitle":"Tentatives après échec d'étape de workflow"},"retriesLabel":"Nouvelles tentatives (récupération / workflow / fusion / tâche terminée)","retry":{"btn":"Réessayer","retried":"{{id}} relancé"},"runtimeLinks":"Liens d'exécution","runtimeStatus":"Statut d'exécution","selfHealCounters":"Compteurs d'auto-réparation","selfHealValues":"arrêts pour blocage : {{stuckKills}}, corrections après revue : {{postReviewFixes}}","sourceIssue":{"collapse":"Réduire les détails de l'issue source","expand":"Développer les détails de l'issue source","githubAriaLabel":"Issue source GitHub","githubBadge":"GitHub","identifier":"Identifiant de l'issue","label":"Issue source","none":"(aucune)","provider":"Fournisseur","repository":"Dépôt","url":"URL"},"spec":{"aiReviseHeading":"Demander une révision à l'IA","aiReviseHelp":"Fournissez des commentaires pour que l'IA améliore cette spécification. La tâche passera en planification.","editBtn":"Modifier","feedbackPlaceholder":"p. ex., « Ajoutez plus de détails sur la gestion des erreurs », « Découpez en étapes plus petites »...","hintCancel":"pour annuler","hintSave":"pour enregistrer","loading":"Chargement de la spécification…","noPrompt":"(aucune invite)","placeholder":"Saisissez la spécification de la tâche en Markdown...","requesting":"Demande en cours…","requestRevisionBtn":"Demander une révision IA","revisionColumnError":"Impossible de demander une révision : la tâche doit être dans la colonne « triage », « todo », « in-progress » ou « in-review ».","revisionRequested":"Révision IA demandée. La tâche a été déplacée en planification.","saving":"Enregistrement…","updated":"Spécification mise à jour"},"stall":{"noLogEntry":"Aucune entrée de journal pour l'instant","noLogEntryTitle":"Aucune entrée « In-review stall surfaced » sur cette tâche pour l'instant — l'auto-réparation n'en a peut-être pas enregistré dans sa fenêtre de limitation.","observed":"Observé","threshold":"Seuil","viewActivityLog":"Voir le journal d'activité"},"stepProgress":"Avancement des étapes","summary":{"heading":"Résumé"},"tabs":{"changes":"Modifications","chat":"Chat","comments":"Commentaires","definition":"Définition","documents":"Artifacts","logs":"Journaux","model":"Modèle","pullRequest":"Pull Request","review":"Révision","routing":"Routage","stats":"Statistiques","terminal":"","workflow":"Workflow","summary":"Summary"},"terminal":{"loading":""},"timedDuration":"Durée mesurée","timestamps":{"ariaLabel":"Horodatages de la tâche","created":"Créé","updated":"Mis à jour"},"timingEvents":"Événements de minutage","title":{"summarize":"","summarizeFailed":"","summarizeSuccess":""},"tokenTotalsAria":"Totaux de tokens de la tâche","tokenUsage":"Utilisation des tokens","totalExecutionTime":"Temps d'exécution total","totalTokens":"Total","updateFailed":"Échec de la mise à jour de {{id}} : {{error}}","updateSuccess":"{{id}} mis à jour","wallClockSinceFirst":"Temps réel depuis la première exécution","workflow":{"loadFailed":"Échec du chargement des résultats du workflow : {{error}}","stepsUpdated":"Étapes du workflow mises à jour","stepsUpdateFailed":"Échec de la mise à jour des étapes du workflow : {{error}}"},"workflowRuntime":"Durée d'exécution du workflow","workflowTimedSteps":"Étapes chronométrées du workflow","yes":"Oui","summaryTab":{"agentWorkHeading":"Work done by agents","cachedTokens":"Cached","changedHeading":"What changed","commit":"Commit","completedSteps":"Completed steps","completionHeading":"Completion summary","cost":"Cost","costUnavailable":"No pricing for this model","deletions":"Removed","filesChanged":"Files","inputTokens":"Input","insertions":"Added","model":"Model","noAgentWork":"No completed steps or workflow results are available for this task.","noChangedFiles":"No changed-file list is available for this task.","noCompletionSummary":"No completion summary was recorded for this task.","noTokenUsage":"No token usage recorded for this task yet.","outputTokens":"Output","retries":"Agents retried this task {{count}} time{{plural}}.","tokenCostHeading":"Token usage & cost","totalCost":"Total cost","totalTokens":"Total","unknownModel":"(unknown)","workflowResults":"Workflow results"}}`),ht={cancel:"Annuler",collapse:"Réduire",contentLabel:"Contenu",contentPlaceholder:"Saisissez le contenu du document…",contentRequired:"Le contenu est requis",create:"Créer",created:"Document créé",creating:"Création…",deleteConfirm:"Supprimer ?",deleted:"Document supprimé",edit:"Modifier",expand:"Développer",failedToCreate:"Échec de la création du document",failedToDelete:"Échec de la suppression du document",failedToLoad:"Échec du chargement des documents",failedToLoadRevisions:"Échec du chargement des révisions",failedToSave:"Échec de l'enregistrement du document",heading:"Artifacts",history:"Historique",invalidKeyFormat:"Format de clé invalide. Utilisez 1-64 caractères alphanumériques, tirets ou traits de soulignement.",keyHint:"Alphanumériques, tirets, traits de soulignement (1-64 caractères)",keyLabel:"Clé",keyPlaceholder:"ex. plan, notes, recherche",keyRequired:"La clé du document est requise",loading:"Loading documents and artifacts…",loadingRevisions:"Chargement…",modeMarkdown:"Markdown",modePlain:"Texte brut",newDocumentButton:"Nouveau document",newDocumentTitle:"Nouveau document",no:"Non",noDocuments:"No documents or artifacts yet.",noPreviousRevisions:"Aucune révision précédente.",revisionHistory:"Historique des révisions",save:"Enregistrer",saved:"Document enregistré",saving:"Enregistrement…",switchToMarkdown:"Basculer vers markdown",switchToPlainText:"Basculer vers du texte brut",yes:"Oui",artifactCount:"{{count}} artifact{{plural}}",artifactsSubheading:"Media artifacts",documentCount:"{{count}} document{{plural}}",documentsSubheading:"Task documents",failedToLoadArtifacts:"Failed to load artifacts",noTaskDocuments:"No task documents yet."},gt={moreFields:"Champs supplémentaires",orphaned:"Champs orphelins",saveFailed:"Échec de l'enregistrement du champ",unset:"—"},vt={addDependencies:"Ajouter des dépendances",attachHint:"Vous pouvez aussi coller des images ou les glisser-déposer",attachmentsLabel:"Pièces jointes",attachScreenshot:"Joindre une capture d'écran",autoMergeDefault:"Défaut (suivre le paramètre du projet)",autoMergeDisabled:"Désactivé",autoMergeEnabled:"Activé",autoMergeHint:"Le défaut suit le paramètre de fusion automatique du projet.",autoMergeLabel:"Fusion automatique",autoSaveSaved:"Enregistré",autoSaveSaving:"Enregistrement…",baseBranchCustom:"Personnalisé…",baseBranchDefault:"(par défaut / branche projet)",baseBranchLabel:"Cible de fusion / branche de base",baseBranchPlaceholder:"ex. main",branchModeAutoNew:"Créer une branche nommée automatiquement par tâche",branchModeCustomNew:"Créer une nouvelle branche personnalisée",branchModeExisting:"Utiliser une branche existante",branchModeProjectDefault:"Utiliser la branche projet/par défaut",branchModeSharedGroup:"Fusionner dans une branche de fonctionnalité partagée",branchNameLabel:"Nom de la branche",branchPlaceholder:"ex. feature/my-task",branchSettingsLabel:"Paramètres de branche",branchStrategyLabel:"Stratégie de branche",collapseDescription:"Réduire la description",dependenciesLabel:"Dépendances",dependenciesSelected_one:"",dependenciesSelected_other:"",descriptionLabel:"Description",descriptionPlaceholder:"Que faut-il faire ?",descriptionRefinedToast:"Description affinée avec l'IA",editingDescription:"Modification de la description",enterDescriptionFirst:"Saisissez d'abord une description",executionModeFast:"Rapide",executionModeLabel:"Mode d'exécution",executionModeStandard:"Standard",executorLabel:"Exécuteur",executorModelLabel:"Modèle exécuteur",expandDescription:"Développer la description",githubRepoFormatError:"Le dépôt doit être au format propriétaire/dépôt.",githubRepoLabel:"Dépôt (propriétaire/dépôt)",githubTrackingEnable:"Activer le suivi des issues GitHub pour cette tâche",githubTrackingLabel:"Suivi GitHub",loadingModels:"Chargement des modèles…",modelConfigLabel:"Configuration du modèle",moreOptions:"Plus d'options",noAvailableTasks:"Aucune tâche disponible",nodeDefaultOption:"Utiliser le nœud par défaut du projet / local",nodeOverrideHint:"La substitution de tâche a la priorité sur le routage de nœud par défaut du projet.",nodeOverrideLabel:"Substitution du nœud d'exécution",noModelsAvailable:"Aucun modèle disponible. Configurez l'authentification dans les paramètres.",overridePreset:"Remplacer",planButton:"Planifier",planningLabel:"Planification",planningModelLabel:"Modèle de planification",presetCustom:"Personnalisé",presetLabel:"Préréglage",presetUseDefault:"Utiliser le défaut",priorityLabel:"Priorité",refineAddDetailsDesc:"Ajouter des détails d'implémentation et du contexte",refineAddDetailsTitle:"Ajouter des détails",refineButton:"Affiner",refineClarifyDesc:"Rendre la description plus claire et précise",refineClarifyTitle:"Clarifier",refineExpandDesc:"Développer en une description plus complète",refineExpandTitle:"Développer",refineInProgress:"Affinement…",refineSimplifyDesc:"Simplifier et rendre plus concis",refineSimplifyTitle:"Simplifier",refineTitle:"Affiner la description avec l'IA",removeImage:"Supprimer l'image",reviewDefault:"Défaut (Auto — le triage décide)",reviewerLabel:"Réviseur",reviewerModelLabel:"Modèle réviseur",reviewLabel:"Révision",reviewLevel0:"0 — Aucune",reviewLevel1:"1 — Plan seulement",reviewLevel2:"2 — Plan et code",reviewLevel3:"3 — Complet",searchTasksPlaceholder:"Rechercher des tâches…",sharedBranchPlaceholder:"ex. clionboarding",sharedFeatureBranchLabel:"Branche de fonctionnalité partagée",subtaskButton:"Sous-tâche",thinkingDefault:"Défaut ({{level}})",thinkingHigh:"Élevé",thinkingLabel:"Réflexion",thinkingLow:"Faible",thinkingMedium:"Moyen",thinkingMinimal:"Minimal",thinkingOff:"Désactivé",thinkingXhigh:"Très élevé",titleLabel:"Titre",titlePlaceholder:"Titre de la tâche",useDropdown:"Utiliser la liste déroulante",usingPreset:"Préréglage utilisé : {{name}}",workflowDefaultBadge:"(par défaut)",workflowHelp:"Les étapes du workflow sélectionné s'exécutent automatiquement autour de l'exécution de cette tâche.",workflowLabel:"Workflow",workflowNone:"Aucun workflow",workflowsCta:"Configurez des workflows dans l'éditeur",workflowsLoading:"Chargement des workflows…",workingBranchLabel:"Branche de travail"},ft={githubImported:"Importé {{id}} depuis GitHub"},bt={autoMergeOff:"Fusion automatique désactivée",autoMergeOn:"Fusion automatique activée",autoMergePreferenceUpdated:"Préférence de fusion automatique par tâche mise à jour",completedAtSep:" · Terminé : {{timestamp}}",createPr:"Créer une demande de tirage",effective:"Effectif : {{label}}",effectiveFrozen:"Effectif : {{label}} — gelé à l'entrée de la révision",errorSep:" · Erreur : {{message}}",followDefault:"Suivre par défaut",loadError:"Impossible de charger les données de révision.",loadingData:"Chargement des données de révision…",markdown:"Markdown",noCapturedFeedback:"Aucun retour d'examen capturé pour le moment.",noFeedbackDirect:"Aucun retour d'examen pour le moment — cette tâche n'a pas généré de retour d'agent d'examen en mode direct.",noReviewItems:"Aucun élément d'examen pour le moment.",perTaskAutoMerge:"Fusion automatique par tâche",plain:"Texte brut",prSummaryLine_one:"",prSummaryLine_other:"",queueing:"Mise en file d'attente en cours…",refresh:"Actualiser",refreshDataFailed:"Impossible de rafraîchir les données de révision.",refreshed:"Examen actualisé",refreshFailed:"Échec de l'actualisation",refreshing:"Actualisation en cours…",refreshStatusLine:"{{status}} · Dernière actualisation : {{timestamp}} · {{source}}",requestRevision:"Demander une révision",reviewerSummaryLine_one:"",reviewerSummaryLine_other:"",revisionQueueFailed:"Impossible de mettre en file d'attente la révision",revisionStarted:"Révision IA de même tâche démarrée à partir du retour d'examen sélectionné",selectedAt:"Sélectionné : {{timestamp}}",showMarkdown:"Afficher le Markdown formaté",showRawText:"Afficher le texte brut",startedAtSep:" · Démarré : {{timestamp}}",updateFailed:"Échec de la mise à jour {{taskId}} : {{error}}",upToDate:"À jour",addressPrFeedback:"",addressPrFeedbackFailed:"",addressPrFeedbackStarted:"",addressingPrFeedback:""},At={addTaskPlaceholder:"Ajouter une tâche…",agent:"Agent",agentLabel:"Agent",answerQuestions:"",archive:"Archiver",archived:"{{taskId}} archivé",archivedUnlinked:"{{taskId}} archivé après dissociation des références de lignée",archiveFailed:"Impossible d'archiver {{taskId}} : {{error}}",archiveLineageConflict:`{{taskId}} a des enfants de lignée ({{children}}) qui le référencent comme parent source.
|
|
6
6
|
|
|
7
7
|
Archiver quand même en dissociant d'abord ces références ?`,archiveTask:"Archiver la tâche",assignedTo:"Assigné à {{name}}",attach:"Joindre",attachCount_one:"",attachCount_other:"",attachedFile:"{{fileName}} joint à {{taskId}}",attachFileFailed:"Échec de la pièce jointe {{fileName}} : {{error}}",awaitingApproval:"En attente d'approbation",baseBranch:"Base",blockedByTooltip:"Bloqué par {{taskId}} (conflit de fichiers)",branch:"Branche",branchMetadata:"Métadonnées de branche",branchProgress:"",branchProgressTitle:"",cancelMove:"Annuler le déplacement",clearSelection:"Effacer la sélection",cliNeedsAttention:"",cliNeedsAttentionTitle:"",cliWaitingOnInput:"",cliWaitingOnInputTitle:"",closeIssue:"Fermer l'issue",collapse:"Réduire",createdByAgent:"Créé par un agent",createdByAgentNamed:"Créé par l'agent : {{name}}",createdPr:"PR #{{number}} créée",createFailed:"Impossible de créer la tâche",createPr:"Créer une PR",createPrAriaLabel:"Créer une pull request",createPrTitle:"Créer une PR pour cette tâche",createTaskTitle:"Créer une tâche",creating:"Création en cours…",decisionOnly:"décision uniquement",decisionOnlyTitle:"Tâche décisionnelle uniquement",deleteConfirm:"Supprimer {{taskId}} ?",deleted:"{{taskId}} supprimé{{suffix}}",deletedRemovedDeps:"{{taskId}} supprimé après suppression des références de dépendance",deletedUnlinked:"{{taskId}} supprimé après dissociation des références de lignée",deleteFailed:"Impossible de supprimer {{taskId}} : {{error}}",deleteIssue:"Supprimer l'issue",deleteLinkedIssueMessage:"Supprimer {{issueLabel}} sur GitHub ou le laisser intact ?",deleteLinkedIssueTitle:"Supprimer l'issue GitHub liée",deleteTask:"Supprimer la tâche",deleteTitle:"Supprimer la tâche",dependencyConflict:`{{taskId}} est une dépendance de {{dependentList}}.
|
|
8
8
|
|