@cat-factory/app 0.172.0 → 0.174.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.
Files changed (35) hide show
  1. package/README.md +4 -0
  2. package/app/components/board/AddTaskModal.vue +10 -252
  3. package/app/components/board/CreateInitiativeModal.vue +27 -0
  4. package/app/components/board/nodes/InitiativeCard.vue +14 -0
  5. package/app/components/common/InterviewGateNotice.vue +39 -0
  6. package/app/components/context/ContextAttachmentFields.vue +289 -0
  7. package/app/components/docs/DocInterviewWindow.vue +77 -14
  8. package/app/components/focus/BlockFocusView.vue +35 -1
  9. package/app/components/fragments/FragmentLibraryManager.vue +91 -13
  10. package/app/components/fragments/GitHubDocUrlImport.vue +83 -0
  11. package/app/components/github/RepoTreeBrowser.vue +65 -10
  12. package/app/components/initiative/InitiativePlanningWindow.vue +127 -16
  13. package/app/components/panels/InspectorPanel.vue +17 -3
  14. package/app/components/panels/inspector/InitiativeInspector.vue +15 -0
  15. package/app/components/panels/inspector/TaskExecution.vue +5 -20
  16. package/app/composables/useBlockDeletion.ts +8 -1
  17. package/app/composables/useContextLinking.ts +14 -2
  18. package/app/composables/useInitiativePlanning.ts +28 -6
  19. package/app/composables/useRunReset.ts +48 -0
  20. package/app/modular/panels/inspector.logic.spec.ts +8 -2
  21. package/app/modular/panels/inspector.logic.ts +14 -2
  22. package/app/stores/observability.ts +4 -0
  23. package/app/utils/interviewGate.spec.ts +51 -0
  24. package/app/utils/interviewGate.ts +51 -0
  25. package/i18n/locales/de.json +66 -25
  26. package/i18n/locales/en.json +69 -25
  27. package/i18n/locales/es.json +66 -25
  28. package/i18n/locales/fr.json +66 -25
  29. package/i18n/locales/he.json +66 -25
  30. package/i18n/locales/it.json +66 -25
  31. package/i18n/locales/ja.json +66 -25
  32. package/i18n/locales/pl.json +66 -25
  33. package/i18n/locales/tr.json +66 -25
  34. package/i18n/locales/uk.json +66 -25
  35. package/package.json +2 -2
@@ -285,17 +285,6 @@
285
285
  "bestPractices": "Buenas prácticas",
286
286
  "bestPracticesHint": "Fija fragmentos de buenas prácticas para que los agentes de esta tarea los sigan, además de los estándares del servicio.",
287
287
  "agentConfiguration": "Configuración del agente",
288
- "contextDocuments": "Documentos de contexto",
289
- "contextIssues": "Incidencias de contexto",
290
- "attach": "Adjuntar",
291
- "connectSource": "Conectar una fuente",
292
- "connectSourceNamed": "Conectar {source}",
293
- "done": "Hecho",
294
- "attachDocDisabledConnect": "Conecta primero una fuente de documentos (Integraciones)",
295
- "attachDocDisabledEnable": "Activa primero la integración de documentos",
296
- "attachIssueDisabledConnect": "Conecta primero un gestor de incidencias (Integraciones)",
297
- "attachIssueDisabledEnable": "Activa primero la integración del gestor de incidencias",
298
- "importsOnAdd": "se importa al añadir",
299
288
  "noDocsHint": "Adjunta un requisito, RFC o PRD para que los agentes lo vean al implementar esta tarea.",
300
289
  "noIssuesHint": "Adjunta una incidencia del gestor para que los agentes vean su descripción y comentarios al implementar esta tarea.",
301
290
  "plannedHint": "La tarea se añade en estado planificado. No se ejecutará hasta que inicies una pipeline sobre ella; puedes seguir editándola hasta entonces.",
@@ -461,6 +450,19 @@
461
450
  "noTasksYet": "Aún no hay tareas"
462
451
  }
463
452
  },
453
+ "contextAttachments": {
454
+ "documents": "Documentos de contexto",
455
+ "issues": "Incidencias de contexto",
456
+ "attach": "Adjuntar",
457
+ "done": "Hecho",
458
+ "connectSource": "Conectar una fuente",
459
+ "connectSourceNamed": "Conectar {source}",
460
+ "attachDocDisabledConnect": "Conecta primero una fuente de documentos (Integraciones)",
461
+ "attachDocDisabledEnable": "Activa primero la integración de documentos",
462
+ "attachIssueDisabledConnect": "Conecta primero un gestor de incidencias (Integraciones)",
463
+ "attachIssueDisabledEnable": "Activa primero la integración del gestor de incidencias",
464
+ "importsOnAdd": "se importa al añadir"
465
+ },
464
466
  "errors": {
465
467
  "action": {
466
468
  "retryFailed": "El reintento falló",
@@ -940,7 +942,7 @@
940
942
  },
941
943
  "execution": {
942
944
  "title": "Ejecución",
943
- "hint": "La ejecución en vivo del pipeline de esta tarea: cada paso de agente, su progreso y el pull request resultante.",
945
+ "hint": "La ejecución en vivo del pipeline: cada paso de agente, su progreso y el pull request resultante.",
944
946
  "stage": {
945
947
  "incorporating": "Incorporando…",
946
948
  "reviewing": "Revisando de nuevo…",
@@ -961,10 +963,10 @@
961
963
  "stop": "Detener",
962
964
  "stopTooltip": "Detener la ejecución pero conservarla (legible y reintentable)",
963
965
  "reset": "Restablecer",
964
- "resetTooltip": "Descartar esta ejecución y restablecer la tarea a planificada",
966
+ "resetTooltip": "Descartar esta ejecución y restablecer el estado a planificada",
965
967
  "resetConfirm": {
966
968
  "title": "¿Descartar esta ejecución?",
967
- "body": "Esto elimina la ejecución y devuelve la tarea a planificada. Esto no se puede deshacer.",
969
+ "body": "Esto elimina la ejecución y restablece el estado a planificada. Esto no se puede deshacer.",
968
970
  "confirm": "Descartar ejecución"
969
971
  },
970
972
  "mergeConfirm": {
@@ -1303,6 +1305,7 @@
1303
1305
  "deleteRecurringPipeline": "Eliminar pipeline recurrente",
1304
1306
  "deleteTask": "Eliminar tarea",
1305
1307
  "deleteModule": "Eliminar módulo",
1308
+ "deleteInitiative": "Eliminar iniciativa",
1306
1309
  "deleteService": "Eliminar servicio",
1307
1310
  "titlePlaceholder": "Título…",
1308
1311
  "reworkedRequirements": "Requisitos reelaborados",
@@ -1331,6 +1334,10 @@
1331
1334
  "title": "¿Eliminar este módulo?",
1332
1335
  "body": "Se eliminará \"{name}\" y todo su contenido. Esta acción no se puede deshacer."
1333
1336
  },
1337
+ "initiative": {
1338
+ "title": "¿Eliminar esta iniciativa?",
1339
+ "body": "Se eliminarán \"{name}\" y su plan. Las tareas que ya creó permanecen en el tablero. Esta acción no se puede deshacer."
1340
+ },
1334
1341
  "service": {
1335
1342
  "title": "¿Eliminar este servicio?",
1336
1343
  "body": "Se eliminará \"{name}\" y todo su contenido. Esta acción no se puede deshacer."
@@ -3394,7 +3401,8 @@
3394
3401
  "useThisFolder": "Usar esta carpeta",
3395
3402
  "errors": {
3396
3403
  "listDirectory": "No se pudo listar el directorio"
3397
- }
3404
+ },
3405
+ "selectAllFiles": "Seleccionar {count} archivo | Seleccionar los {count} archivos"
3398
3406
  }
3399
3407
  },
3400
3408
  "slack": {
@@ -3468,14 +3476,21 @@
3468
3476
  "docInterview": {
3469
3477
  "title": "Refinar el documento",
3470
3478
  "subtitle": "Responde a las preguntas del entrevistador para dar forma al documento",
3471
- "intro": "El entrevistador está refinando este documento antes de redactarlo. Responde a sus preguntas para definir el alcance, el público y la estructura, y luego continúa o procede a redactar con lo que tiene.",
3479
+ "intro": "El entrevistador está refinando este documento antes de redactarlo. Responde a sus preguntas para definir el alcance, el público y la estructura, y luego envíalas. También puedes pedirle que redacte ahora con lo que ya tiene.",
3472
3480
  "empty": "No se encontró ninguna entrevista para este bloque.",
3473
3481
  "brief": "Resumen de redacción",
3474
3482
  "converged": "No hay preguntas pendientes. El entrevistador tiene lo que necesita y el documento se está redactando.",
3483
+ "working": "El entrevistador está procesando tus respuestas",
3484
+ "workingHint": "Esto tarda un momento. Las preguntas de seguimiento aparecerán aquí cuando termine, o empezará la redacción si ya tiene suficiente.",
3485
+ "failed": "La ejecución del documento se detuvo",
3486
+ "failedHint": "Terminó antes de que el entrevistador pudiera responder. Tus respuestas están guardadas; vuelve a ejecutar la tarea del documento.",
3475
3487
  "answerPlaceholder": "Tu respuesta",
3476
- "hint": "Continuar permite al entrevistador hacer preguntas de seguimiento; Proceder redacta con las respuestas actuales.",
3477
- "proceed": "Proceder a redactar",
3478
- "continue": "Continuar",
3488
+ "hint": "Enviar respuestas permite al entrevistador hacer preguntas de seguimiento; Redactar ahora redacta con las respuestas actuales.",
3489
+ "unanswered": "Preguntas sin responder: {count}",
3490
+ "proceed": "Redactar ahora",
3491
+ "proceedTitle": "Omitir las preguntas restantes y empezar la redacción ahora",
3492
+ "continue": "Enviar respuestas",
3493
+ "continueTitle": "Envía tus respuestas; el entrevistador puede hacer preguntas de seguimiento",
3479
3494
  "status": {
3480
3495
  "awaiting": "Esperando respuestas",
3481
3496
  "done": "Hecho"
@@ -4793,7 +4808,19 @@
4793
4808
  "link": "Vincular como fragmento vivo",
4794
4809
  "githubBrowseHint": "Explora el repositorio y elige uno o más archivos a enlazar.",
4795
4810
  "selectedFiles": "Archivos seleccionados ({count})",
4796
- "removeFile": "Quitar archivo"
4811
+ "removeFile": "Quitar archivo",
4812
+ "blockedReason": {
4813
+ "noSource": "Elige primero una fuente de documentos arriba.",
4814
+ "noRepo": "Elige un repositorio o pega arriba la URL de un archivo o carpeta de GitHub.",
4815
+ "noFiles": "Marca al menos un archivo en el explorador del repositorio.",
4816
+ "noRef": "Introduce primero un id de página o una URL."
4817
+ },
4818
+ "urlImport": {
4819
+ "placeholder": "Pega la URL de un archivo o carpeta de GitHub (p. ej. https://github.com/owner/repo/tree/main/docs)",
4820
+ "action": "Buscar",
4821
+ "invalid": "Esto no parece la URL de un archivo o carpeta de un repositorio.",
4822
+ "notFound": "Ningún repositorio accesible coincide con {slug}. Revisa la URL o conecta primero el repositorio."
4823
+ }
4797
4824
  },
4798
4825
  "sources": {
4799
4826
  "metaSynced": "sincronizado · ref {ref}",
@@ -5117,7 +5144,10 @@
5117
5144
  "pathInvalid": "Introduce una ruta dentro del repositorio (sin \"..\", rutas absolutas ni barras invertidas).",
5118
5145
  "hint": "Todavia no se ejecuta nada: tras crearla, ejecuta el pipeline de planificacion de iniciativas sobre el bloque. Analiza el codigo y redacta el plan multifase para tu aprobacion.",
5119
5146
  "submit": "Crear iniciativa",
5120
- "failedTitle": "No se pudo crear la iniciativa"
5147
+ "failedTitle": "No se pudo crear la iniciativa",
5148
+ "contextDocsHint": "Adjunta un requisito, RFC o PRD para que los agentes de planificación lo lean al delimitar y redactar el plan.",
5149
+ "contextIssuesHint": "Adjunta una incidencia para que los agentes de planificación vean su descripción y comentarios al redactar el plan.",
5150
+ "linkFailed": "Iniciativa creada, pero no se pudo vincular {count} adjunto | Iniciativa creada, pero no se pudieron vincular {count} adjuntos"
5121
5151
  },
5122
5152
  "status": {
5123
5153
  "planning": "Planificando",
@@ -5170,6 +5200,7 @@
5170
5200
  "inspector": {
5171
5201
  "runPlanning": "Ejecutar planificacion",
5172
5202
  "answerPlanning": "Responder preguntas de planificacion",
5203
+ "planningInProgress": "Planificacion en curso",
5173
5204
  "pause": "Pausar",
5174
5205
  "resume": "Reanudar",
5175
5206
  "cancel": "Cancelar iniciativa",
@@ -5178,13 +5209,23 @@
5178
5209
  "planning": {
5179
5210
  "title": "Planificar la iniciativa",
5180
5211
  "subtitle": "Responde las preguntas del planificador para acotar la iniciativa",
5181
- "intro": "El planificador esta acotando esta iniciativa. Responde sus preguntas para definir el objetivo y las restricciones, luego continua, o procede a planificar con lo que tiene.",
5212
+ "intro": "El planificador esta acotando esta iniciativa. Responde sus preguntas para definir el objetivo y las restricciones, y luego envialas. Tambien puedes pedirle que planifique ahora con lo que ya tiene.",
5182
5213
  "empty": "No se encontro ninguna iniciativa para este bloque.",
5183
5214
  "converged": "No hay preguntas pendientes. El planificador tiene lo que necesita y esta redactando el plan.",
5215
+ "idle": "La planificacion aun no ha comenzado. Ejecuta la planificacion desde la iniciativa para iniciar la entrevista.",
5216
+ "working": "El planificador esta procesando tus respuestas",
5217
+ "workingHint": "Esto tarda un momento. Las preguntas de seguimiento apareceran aqui cuando termine, o empezara a redactar el plan si ya tiene suficiente.",
5218
+ "failed": "La ejecucion de planificacion se detuvo",
5219
+ "failedHint": "Termino antes de que el planificador pudiera responder. Tus respuestas estan guardadas; vuelve a ejecutar la planificacion desde la iniciativa.",
5184
5220
  "answerPlaceholder": "Tu respuesta",
5185
- "hint": "Continuar permite al planificador hacer mas preguntas; Proceder planifica con las respuestas actuales.",
5186
- "proceed": "Proceder a planificar",
5187
- "continue": "Continuar"
5221
+ "hint": "Enviar respuestas permite al planificador hacer mas preguntas; Planificar ahora redacta el plan con las respuestas actuales.",
5222
+ "unanswered": "Preguntas sin responder: {count}",
5223
+ "proceed": "Planificar ahora",
5224
+ "proceedTitle": "Omitir las preguntas restantes y redactar el plan ahora",
5225
+ "discard": "Descartar ejecución",
5226
+ "discardTitle": "Descartar la ejecución de planificación bloqueada para volver a empezar",
5227
+ "continue": "Enviar respuestas",
5228
+ "continueTitle": "Envia tus respuestas; el planificador puede hacer preguntas de seguimiento"
5188
5229
  },
5189
5230
  "followUpStatus": {
5190
5231
  "open": "Abierto",
@@ -285,17 +285,6 @@
285
285
  "bestPractices": "Bonnes pratiques",
286
286
  "bestPracticesHint": "Épinglez des fragments de bonnes pratiques pour que les agents de cette tâche les suivent, en plus des standards au niveau du service.",
287
287
  "agentConfiguration": "Configuration de l’agent",
288
- "contextDocuments": "Documents de contexte",
289
- "contextIssues": "Tickets de contexte",
290
- "attach": "Joindre",
291
- "connectSource": "Connecter une source",
292
- "connectSourceNamed": "Connecter {source}",
293
- "done": "Terminé",
294
- "attachDocDisabledConnect": "Connectez d’abord une source de documents (Intégrations)",
295
- "attachDocDisabledEnable": "Activez d’abord l’intégration de documents",
296
- "attachIssueDisabledConnect": "Connectez d’abord un suivi de tickets (Intégrations)",
297
- "attachIssueDisabledEnable": "Activez d’abord l’intégration du suivi de tickets",
298
- "importsOnAdd": "importé à l’ajout",
299
288
  "noDocsHint": "Joignez une exigence, un RFC ou un PRD pour que les agents le voient en implémentant cette tâche.",
300
289
  "noIssuesHint": "Joignez un ticket du suivi pour que les agents voient sa description et ses commentaires en implémentant cette tâche.",
301
290
  "plannedHint": "La tâche est ajoutée à l’état planifié. Elle ne s’exécutera pas tant que vous n’aurez pas lancé une pipeline dessus ; vous pouvez la modifier jusque-là.",
@@ -461,6 +450,19 @@
461
450
  "noTasksYet": "Pas encore de tâches"
462
451
  }
463
452
  },
453
+ "contextAttachments": {
454
+ "documents": "Documents de contexte",
455
+ "issues": "Tickets de contexte",
456
+ "attach": "Joindre",
457
+ "done": "Terminé",
458
+ "connectSource": "Connecter une source",
459
+ "connectSourceNamed": "Connecter {source}",
460
+ "attachDocDisabledConnect": "Connectez d’abord une source de documents (Intégrations)",
461
+ "attachDocDisabledEnable": "Activez d’abord l’intégration de documents",
462
+ "attachIssueDisabledConnect": "Connectez d’abord un suivi de tickets (Intégrations)",
463
+ "attachIssueDisabledEnable": "Activez d’abord l’intégration du suivi de tickets",
464
+ "importsOnAdd": "importé à l’ajout"
465
+ },
464
466
  "errors": {
465
467
  "action": {
466
468
  "retryFailed": "Échec de la nouvelle tentative",
@@ -940,7 +942,7 @@
940
942
  },
941
943
  "execution": {
942
944
  "title": "Exécution",
943
- "hint": "L'exécution en direct du pipeline de cette tâche : chaque étape d'agent, sa progression et la pull request obtenue.",
945
+ "hint": "L'exécution en direct du pipeline : chaque étape d'agent, sa progression et la pull request obtenue.",
944
946
  "stage": {
945
947
  "incorporating": "Intégration en cours…",
946
948
  "reviewing": "Nouvelle revue en cours…",
@@ -961,10 +963,10 @@
961
963
  "stop": "Arrêter",
962
964
  "stopTooltip": "Arrêter l'exécution mais la conserver (lisible et relançable)",
963
965
  "reset": "Réinitialiser",
964
- "resetTooltip": "Abandonner cette exécution et réinitialiser la tâche à planifiée",
966
+ "resetTooltip": "Abandonner cette exécution et réinitialiser le statut à planifiée",
965
967
  "resetConfirm": {
966
968
  "title": "Abandonner cette exécution ?",
967
- "body": "Cela supprime l'exécution et ramène la tâche à planifiée. Cette action est irréversible.",
969
+ "body": "Cela supprime l'exécution et réinitialise le statut à planifiée. Cette action est irréversible.",
968
970
  "confirm": "Abandonner l'exécution"
969
971
  },
970
972
  "mergeConfirm": {
@@ -1303,6 +1305,7 @@
1303
1305
  "deleteRecurringPipeline": "Supprimer le pipeline récurrent",
1304
1306
  "deleteTask": "Supprimer la tâche",
1305
1307
  "deleteModule": "Supprimer le module",
1308
+ "deleteInitiative": "Supprimer l'initiative",
1306
1309
  "deleteService": "Supprimer le service",
1307
1310
  "titlePlaceholder": "Titre…",
1308
1311
  "reworkedRequirements": "Exigences retravaillées",
@@ -1331,6 +1334,10 @@
1331
1334
  "title": "Supprimer ce module ?",
1332
1335
  "body": "\"{name}\" et tout son contenu seront supprimés. Cette action est irréversible."
1333
1336
  },
1337
+ "initiative": {
1338
+ "title": "Supprimer cette initiative ?",
1339
+ "body": "\"{name}\" et son plan seront supprimés. Les tâches déjà créées restent sur le tableau. Cette action est irréversible."
1340
+ },
1334
1341
  "service": {
1335
1342
  "title": "Supprimer ce service ?",
1336
1343
  "body": "\"{name}\" et tout son contenu seront supprimés. Cette action est irréversible."
@@ -3394,7 +3401,8 @@
3394
3401
  "useThisFolder": "Utiliser ce dossier",
3395
3402
  "errors": {
3396
3403
  "listDirectory": "Impossible de lister le répertoire"
3397
- }
3404
+ },
3405
+ "selectAllFiles": "Sélectionner {count} fichier | Sélectionner les {count} fichiers"
3398
3406
  }
3399
3407
  },
3400
3408
  "slack": {
@@ -3468,14 +3476,21 @@
3468
3476
  "docInterview": {
3469
3477
  "title": "Affiner le document",
3470
3478
  "subtitle": "Répondez aux questions de l'intervieweur pour façonner le document",
3471
- "intro": "L'intervieweur affine ce document avant sa rédaction. Répondez à ses questions pour définir la portée, le public et la structure, puis continuez ou procédez à la rédaction avec ce qu'il a.",
3479
+ "intro": "L'intervieweur affine ce document avant sa rédaction. Répondez à ses questions pour définir la portée, le public et la structure, puis envoyez-les. Vous pouvez aussi lui demander de rédiger maintenant avec ce qu'il a déjà.",
3472
3480
  "empty": "Aucun entretien trouvé pour ce bloc.",
3473
3481
  "brief": "Brief de rédaction",
3474
3482
  "converged": "Aucune question en attente. L'intervieweur a ce qu'il lui faut et le document est en cours de rédaction.",
3483
+ "working": "L'intervieweur traite vos réponses",
3484
+ "workingHint": "Cela prend un instant. Les questions complémentaires apparaîtront ici une fois terminé, ou la rédaction commencera s'il en a assez.",
3485
+ "failed": "L'exécution du document s'est arrêtée",
3486
+ "failedHint": "Elle s'est terminée avant que l'intervieweur puisse répondre. Vos réponses sont enregistrées ; relancez la tâche du document.",
3475
3487
  "answerPlaceholder": "Votre réponse",
3476
- "hint": "Continuer permet à l'intervieweur de poser des questions complémentaires ; Procéder rédige avec les réponses actuelles.",
3477
- "proceed": "Procéder à la rédaction",
3478
- "continue": "Continuer",
3488
+ "hint": "Envoyer les réponses permet à l'intervieweur de poser des questions complémentaires ; Rédiger maintenant rédige avec les réponses actuelles.",
3489
+ "unanswered": "Questions sans réponse : {count}",
3490
+ "proceed": "Rédiger maintenant",
3491
+ "proceedTitle": "Ignorer les questions restantes et commencer la rédaction maintenant",
3492
+ "continue": "Envoyer les réponses",
3493
+ "continueTitle": "Envoyez vos réponses ; l'intervieweur peut poser des questions complémentaires",
3479
3494
  "status": {
3480
3495
  "awaiting": "En attente de réponses",
3481
3496
  "done": "Terminé"
@@ -4793,7 +4808,19 @@
4793
4808
  "link": "Lier comme fragment vivant",
4794
4809
  "githubBrowseHint": "Parcourez le dépôt et choisissez un ou plusieurs fichiers à lier.",
4795
4810
  "selectedFiles": "Fichiers sélectionnés ({count})",
4796
- "removeFile": "Retirer le fichier"
4811
+ "removeFile": "Retirer le fichier",
4812
+ "blockedReason": {
4813
+ "noSource": "Choisissez d'abord une source de documents ci-dessus.",
4814
+ "noRepo": "Choisissez un dépôt ou collez ci-dessus l'URL d'un fichier ou d'un dossier GitHub.",
4815
+ "noFiles": "Cochez au moins un fichier dans l'explorateur du dépôt.",
4816
+ "noRef": "Saisissez d'abord un id de page ou une URL."
4817
+ },
4818
+ "urlImport": {
4819
+ "placeholder": "Collez l'URL d'un fichier ou d'un dossier GitHub (par ex. https://github.com/owner/repo/tree/main/docs)",
4820
+ "action": "Rechercher",
4821
+ "invalid": "Ceci ne ressemble pas à l'URL d'un fichier ou d'un dossier de dépôt.",
4822
+ "notFound": "Aucun dépôt accessible ne correspond à {slug}. Vérifiez l'URL ou connectez d'abord le dépôt."
4823
+ }
4797
4824
  },
4798
4825
  "sources": {
4799
4826
  "metaSynced": "synchronisé · ref {ref}",
@@ -5117,7 +5144,10 @@
5117
5144
  "pathInvalid": "Saisissez un chemin a l'interieur du depot (pas de \"..\", de chemins absolus ni d'antislashs).",
5118
5145
  "hint": "Rien ne s'execute encore : apres la creation, lancez le pipeline de planification d'initiative sur le bloc. Il analyse le code et redige le plan multiphase pour votre approbation.",
5119
5146
  "submit": "Creer l'initiative",
5120
- "failedTitle": "Impossible de creer l'initiative"
5147
+ "failedTitle": "Impossible de creer l'initiative",
5148
+ "contextDocsHint": "Joignez une exigence, une RFC ou un PRD pour que les agents de planification la lisent en cadrant et en rédigeant le plan.",
5149
+ "contextIssuesHint": "Joignez un ticket pour que les agents de planification voient sa description et ses commentaires en rédigeant le plan.",
5150
+ "linkFailed": "Initiative créée, mais {count} pièce jointe n’a pas pu être liée | Initiative créée, mais {count} pièces jointes n’ont pas pu être liées"
5121
5151
  },
5122
5152
  "status": {
5123
5153
  "planning": "Planification",
@@ -5170,6 +5200,7 @@
5170
5200
  "inspector": {
5171
5201
  "runPlanning": "Lancer la planification",
5172
5202
  "answerPlanning": "Repondre aux questions de planification",
5203
+ "planningInProgress": "Planification en cours",
5173
5204
  "pause": "Mettre en pause",
5174
5205
  "resume": "Reprendre",
5175
5206
  "cancel": "Annuler l'initiative",
@@ -5178,13 +5209,23 @@
5178
5209
  "planning": {
5179
5210
  "title": "Planifier l'initiative",
5180
5211
  "subtitle": "Repondez aux questions du planificateur pour cadrer l'initiative",
5181
- "intro": "Le planificateur cadre cette initiative. Repondez a ses questions pour definir l'objectif et les contraintes, puis continuez, ou procedez a la planification avec ce qu'il a.",
5212
+ "intro": "Le planificateur cadre cette initiative. Repondez a ses questions pour definir l'objectif et les contraintes, puis envoyez-les. Vous pouvez aussi lui demander de planifier maintenant avec ce qu'il a deja.",
5182
5213
  "empty": "Aucune initiative trouvee pour ce bloc.",
5183
5214
  "converged": "Aucune question en attente. Le planificateur dispose de ce qu'il faut et redige le plan.",
5215
+ "idle": "La planification n'a pas encore demarre. Lancez la planification depuis l'initiative pour commencer l'entretien.",
5216
+ "working": "Le planificateur traite vos reponses",
5217
+ "workingHint": "Cela prend un instant. Les questions complementaires apparaitront ici une fois termine, ou il commencera a rediger le plan s'il en a assez.",
5218
+ "failed": "L'execution de planification s'est arretee",
5219
+ "failedHint": "Elle s'est terminee avant que le planificateur puisse repondre. Vos reponses sont enregistrees ; relancez la planification depuis l'initiative.",
5184
5220
  "answerPlaceholder": "Votre reponse",
5185
- "hint": "Continuer permet au planificateur de poser des questions complementaires ; Proceder planifie avec les reponses actuelles.",
5186
- "proceed": "Proceder a la planification",
5187
- "continue": "Continuer"
5221
+ "hint": "Envoyer les reponses permet au planificateur de poser des questions complementaires ; Planifier maintenant redige le plan avec les reponses actuelles.",
5222
+ "unanswered": "Questions sans reponse : {count}",
5223
+ "proceed": "Planifier maintenant",
5224
+ "proceedTitle": "Ignorer les questions restantes et rediger le plan maintenant",
5225
+ "discard": "Abandonner l'exécution",
5226
+ "discardTitle": "Abandonner l'exécution de planification bloquée pour recommencer",
5227
+ "continue": "Envoyer les reponses",
5228
+ "continueTitle": "Envoyez vos reponses ; le planificateur peut poser des questions complementaires"
5188
5229
  },
5189
5230
  "followUpStatus": {
5190
5231
  "open": "Ouvert",
@@ -285,17 +285,6 @@
285
285
  "bestPractices": "מומלצות עבודה",
286
286
  "bestPracticesHint": "הצמידו מקטעי מומלצות עבודה כדי שסוכני המשימה יפעלו לפיהם, בנוסף לסטנדרטים ברמת השירות.",
287
287
  "agentConfiguration": "תצורת סוכן",
288
- "contextDocuments": "מסמכי הקשר",
289
- "contextIssues": "אישיו הקשר",
290
- "attach": "צרף",
291
- "connectSource": "חבר מקור",
292
- "connectSourceNamed": "חבר את {source}",
293
- "done": "סיום",
294
- "attachDocDisabledConnect": "חבר תחילה מקור מסמכים (אינטגרציות)",
295
- "attachDocDisabledEnable": "הפעל תחילה את אינטגרציית המסמכים",
296
- "attachIssueDisabledConnect": "חבר תחילה מערכת לניהול אישיו (אינטגרציות)",
297
- "attachIssueDisabledEnable": "הפעל תחילה את אינטגרציית מערכת האישיו",
298
- "importsOnAdd": "מיובא בעת ההוספה",
299
288
  "noDocsHint": "צרף דרישה, RFC או PRD כדי שסוכנים יראו אותם בעת מימוש המשימה.",
300
289
  "noIssuesHint": "צרף אישיו ממערכת המעקב כדי שסוכנים יראו את תיאורו ותגובותיו בעת מימוש המשימה.",
301
290
  "plannedHint": "המשימה נוספת במצב מתוכנן. היא לא תרוץ עד שתתחיל עליה צינור — תוכל להמשיך לערוך אותה עד אז.",
@@ -461,6 +450,19 @@
461
450
  "noTasksYet": "אין עדיין משימות"
462
451
  }
463
452
  },
453
+ "contextAttachments": {
454
+ "documents": "מסמכי הקשר",
455
+ "issues": "אישיו הקשר",
456
+ "attach": "צרף",
457
+ "done": "סיום",
458
+ "connectSource": "חבר מקור",
459
+ "connectSourceNamed": "חבר את {source}",
460
+ "attachDocDisabledConnect": "חבר תחילה מקור מסמכים (אינטגרציות)",
461
+ "attachDocDisabledEnable": "הפעל תחילה את אינטגרציית המסמכים",
462
+ "attachIssueDisabledConnect": "חבר תחילה מערכת לניהול אישיו (אינטגרציות)",
463
+ "attachIssueDisabledEnable": "הפעל תחילה את אינטגרציית מערכת האישיו",
464
+ "importsOnAdd": "מיובא בעת ההוספה"
465
+ },
464
466
  "errors": {
465
467
  "action": {
466
468
  "retryFailed": "הניסיון החוזר נכשל",
@@ -940,7 +942,7 @@
940
942
  },
941
943
  "execution": {
942
944
  "title": "הרצה",
943
- "hint": "ההרצה החיה של הפייפליין של משימה זו: כל שלב סוכן, ההתקדמות שלו ובקשת המשיכה שנוצרת.",
945
+ "hint": "ההרצה החיה של הפייפליין: כל שלב סוכן, ההתקדמות שלו ובקשת המשיכה שנוצרת.",
944
946
  "stage": {
945
947
  "incorporating": "משלב…",
946
948
  "reviewing": "סוקר מחדש…",
@@ -961,10 +963,10 @@
961
963
  "stop": "עצור",
962
964
  "stopTooltip": "עצור את ההרצה אך שמור אותה (ניתנת לקריאה ולחזרה)",
963
965
  "reset": "אפס",
964
- "resetTooltip": "השלך הרצה זו ואפס את המשימה למתוכננת",
966
+ "resetTooltip": "השלך הרצה זו ואפס את הסטטוס למתוכנן",
965
967
  "resetConfirm": {
966
968
  "title": "להשליך הרצה זו?",
967
- "body": "פעולה זו מוחקת את ההרצה ומחזירה את המשימה למתוכננת. לא ניתן לבטל פעולה זו.",
969
+ "body": "פעולה זו מוחקת את ההרצה ומאפסת את הסטטוס למתוכנן. לא ניתן לבטל פעולה זו.",
968
970
  "confirm": "השלך הרצה"
969
971
  },
970
972
  "mergeConfirm": {
@@ -1303,6 +1305,7 @@
1303
1305
  "deleteRecurringPipeline": "מחק צינור חוזר",
1304
1306
  "deleteTask": "מחק משימה",
1305
1307
  "deleteModule": "מחק מודול",
1308
+ "deleteInitiative": "מחק יוזמה",
1306
1309
  "deleteService": "מחק שירות",
1307
1310
  "titlePlaceholder": "כותרת…",
1308
1311
  "reworkedRequirements": "דרישות מעובדות מחדש",
@@ -1331,6 +1334,10 @@
1331
1334
  "title": "למחוק את המודול הזה?",
1332
1335
  "body": "\"{name}\" וכל התוכן שבו יימחקו. לא ניתן לבטל פעולה זו."
1333
1336
  },
1337
+ "initiative": {
1338
+ "title": "למחוק את היוזמה הזו?",
1339
+ "body": "\"{name}\" והתוכנית שלה יימחקו. משימות שכבר נוצרו יישארו בלוח. לא ניתן לבטל פעולה זו."
1340
+ },
1334
1341
  "service": {
1335
1342
  "title": "למחוק את השירות הזה?",
1336
1343
  "body": "\"{name}\" וכל התוכן שבו יימחקו. לא ניתן לבטל פעולה זו."
@@ -3405,7 +3412,8 @@
3405
3412
  "useThisFolder": "השתמש בתיקייה זו",
3406
3413
  "errors": {
3407
3414
  "listDirectory": "לא ניתן היה לרשום את הספרייה"
3408
- }
3415
+ },
3416
+ "selectAllFiles": "בחר {count} קובץ | בחר את כל {count} הקבצים"
3409
3417
  }
3410
3418
  },
3411
3419
  "slack": {
@@ -3479,14 +3487,21 @@
3479
3487
  "docInterview": {
3480
3488
  "title": "חידוד המסמך",
3481
3489
  "subtitle": "ענו על שאלות המראיין כדי לעצב את המסמך",
3482
- "intro": "המראיין מחדד את המסמך לפני כתיבתו. ענו על שאלותיו כדי לעצב את ההיקף, הקהל והמבנה, ואז המשיכו או המשיכו לטיוטה עם מה שיש לו.",
3490
+ "intro": "המראיין מחדד את המסמך לפני כתיבתו. ענו על שאלותיו כדי לעצב את ההיקף, הקהל והמבנה, ואז שלחו את התשובות. אפשר גם לבקש ממנו לכתוב טיוטה עכשיו עם מה שכבר יש לו.",
3483
3491
  "empty": "לא נמצא ראיון עבור בלוק זה.",
3484
3492
  "brief": "תקציר כתיבה",
3485
3493
  "converged": "אין שאלות ממתינות. למראיין יש את מה שהוא צריך והמסמך בכתיבה.",
3494
+ "working": "המראיין מעבד את התשובות שלך",
3495
+ "workingHint": "זה לוקח רגע. שאלות המשך יופיעו כאן בסיום, או שתתחיל כתיבת הטיוטה אם יש לו מספיק מידע.",
3496
+ "failed": "הרצת המסמך נעצרה",
3497
+ "failedHint": "היא הסתיימה לפני שהמראיין הספיק להשיב. התשובות שלך נשמרו; הריצו מחדש את משימת המסמך.",
3486
3498
  "answerPlaceholder": "התשובה שלך",
3487
- "hint": "המשך מאפשר למראיין לשאול שאלות המשך; המשך לטיוטה כותב עם התשובות עד כה.",
3488
- "proceed": "המשך לטיוטה",
3489
- "continue": "המשך",
3499
+ "hint": "שליחת תשובות מאפשרת למראיין לשאול שאלות המשך; כתוב טיוטה עכשיו כותב עם התשובות עד כה.",
3500
+ "unanswered": "שאלות ללא מענה: {count}",
3501
+ "proceed": "כתוב טיוטה עכשיו",
3502
+ "proceedTitle": "לדלג על שאר השאלות ולהתחיל את הטיוטה עכשיו",
3503
+ "continue": "שלח תשובות",
3504
+ "continueTitle": "שלחו את התשובות שלכם; המראיין עשוי לשאול שאלות המשך",
3490
3505
  "status": {
3491
3506
  "awaiting": "ממתין לתשובות",
3492
3507
  "done": "הושלם"
@@ -4804,7 +4819,19 @@
4804
4819
  "link": "קשר כמקטע חי",
4805
4820
  "githubBrowseHint": "עיין במאגר ובחר קובץ אחד או יותר לקישור.",
4806
4821
  "selectedFiles": "קבצים שנבחרו ({count})",
4807
- "removeFile": "הסר קובץ"
4822
+ "removeFile": "הסר קובץ",
4823
+ "blockedReason": {
4824
+ "noSource": "בחר תחילה מקור מסמכים למעלה.",
4825
+ "noRepo": "בחר מאגר, או הדבק למעלה כתובת URL של קובץ או תיקייה ב-GitHub.",
4826
+ "noFiles": "סמן לפחות קובץ אחד בדפדפן המאגר.",
4827
+ "noRef": "הזן תחילה מזהה עמוד או כתובת URL."
4828
+ },
4829
+ "urlImport": {
4830
+ "placeholder": "הדבק כתובת URL של קובץ או תיקייה ב-GitHub (למשל https://github.com/owner/repo/tree/main/docs)",
4831
+ "action": "חפש",
4832
+ "invalid": "זה לא נראה כמו כתובת URL של קובץ או תיקייה במאגר.",
4833
+ "notFound": "אין מאגר נגיש התואם ל-{slug}. בדוק את הכתובת או חבר תחילה את המאגר."
4834
+ }
4808
4835
  },
4809
4836
  "sources": {
4810
4837
  "metaSynced": "סונכרן · ref {ref}",
@@ -5128,7 +5155,10 @@
5128
5155
  "pathInvalid": "הזינו נתיב בתוך המאגר (ללא \"..\", נתיבים מוחלטים או קו נטוי הפוך).",
5129
5156
  "hint": "שום דבר לא רץ עדיין: לאחר היצירה, הריצו את צינור תכנון היוזמה על הבלוק. הוא מנתח את הקוד ומנסח את התוכנית הרב-שלבית לאישורכם.",
5130
5157
  "submit": "יצירת יוזמה",
5131
- "failedTitle": "לא ניתן היה ליצור את היוזמה"
5158
+ "failedTitle": "לא ניתן היה ליצור את היוזמה",
5159
+ "contextDocsHint": "צרף דרישה, RFC או PRD כדי שסוכני התכנון יקראו אותם בעת תיחום וגיבוש התוכנית.",
5160
+ "contextIssuesHint": "צרף אישיו כדי שסוכני התכנון יראו את התיאור והתגובות שלו בעת גיבוש התוכנית.",
5161
+ "linkFailed": "היוזמה נוצרה, אך {count} צרופה לא ניתנה לקישור | היוזמה נוצרה, אך {count} צרופות לא ניתנו לקישור"
5132
5162
  },
5133
5163
  "status": {
5134
5164
  "planning": "בתכנון",
@@ -5181,6 +5211,7 @@
5181
5211
  "inspector": {
5182
5212
  "runPlanning": "הרצת תכנון",
5183
5213
  "answerPlanning": "מענה על שאלות התכנון",
5214
+ "planningInProgress": "התכנון מתבצע",
5184
5215
  "pause": "השהה",
5185
5216
  "resume": "המשך",
5186
5217
  "cancel": "ביטול היוזמה",
@@ -5189,13 +5220,23 @@
5189
5220
  "planning": {
5190
5221
  "title": "תכנון היוזמה",
5191
5222
  "subtitle": "ענה על שאלות המתכנן כדי למקד את היוזמה",
5192
- "intro": "המתכנן ממקד את היוזמה. ענה על שאלותיו כדי לעצב את המטרה והאילוצים, ואז המשך או עבור לתכנון עם מה שיש לו.",
5223
+ "intro": "המתכנן ממקד את היוזמה. ענה על שאלותיו כדי לעצב את המטרה והאילוצים, ואז שלח את התשובות. אפשר גם לבקש ממנו לתכנן עכשיו עם מה שכבר יש לו.",
5193
5224
  "empty": "לא נמצאה יוזמה עבור בלוק זה.",
5194
5225
  "converged": "אין שאלות ממתינות. למתכנן יש את מה שנדרש והוא מנסח את התוכנית.",
5226
+ "idle": "התכנון עדיין לא התחיל. הרץ תכנון מהיוזמה כדי להתחיל את הראיון.",
5227
+ "working": "המתכנן מעבד את התשובות שלך",
5228
+ "workingHint": "זה לוקח רגע. שאלות המשך יופיעו כאן בסיום, או שהוא יתחיל לנסח את התוכנית אם יש לו מספיק מידע.",
5229
+ "failed": "הרצת התכנון נעצרה",
5230
+ "failedHint": "היא הסתיימה לפני שהמתכנן הספיק להשיב. התשובות שלך נשמרו; הרץ תכנון מחדש מהיוזמה.",
5195
5231
  "answerPlaceholder": "התשובה שלך",
5196
- "hint": "המשך מאפשר למתכנן לשאול שאלות המשך; עבור לתכנון מתכנן עם התשובות עד כה.",
5197
- "proceed": "עבור לתכנון",
5198
- "continue": "המשך"
5232
+ "hint": "שליחת תשובות מאפשרת למתכנן לשאול שאלות המשך; תכנן עכשיו מנסח את התוכנית עם התשובות עד כה.",
5233
+ "unanswered": "שאלות ללא מענה: {count}",
5234
+ "proceed": "תכנן עכשיו",
5235
+ "proceedTitle": "לדלג על שאר השאלות ולנסח את התוכנית עכשיו",
5236
+ "discard": "השלך הרצה",
5237
+ "discardTitle": "השלכת הרצת התכנון התקועה כדי להתחיל את התכנון מחדש",
5238
+ "continue": "שלח תשובות",
5239
+ "continueTitle": "שלח את התשובות שלך; המתכנן עשוי לשאול שאלות המשך"
5199
5240
  },
5200
5241
  "followUpStatus": {
5201
5242
  "open": "פתוח",