@cat-factory/app 0.116.9 → 0.117.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/app/components/board/AddTaskModal.vue +63 -4
- package/app/components/settings/WorkspaceSettingsPanel.vue +1 -0
- package/i18n/locales/de.json +11 -3
- package/i18n/locales/en.json +10 -2
- package/i18n/locales/es.json +11 -3
- package/i18n/locales/fr.json +11 -3
- package/i18n/locales/he.json +11 -3
- package/i18n/locales/it.json +11 -3
- package/i18n/locales/ja.json +11 -3
- package/i18n/locales/pl.json +11 -3
- package/i18n/locales/tr.json +11 -3
- package/i18n/locales/uk.json +11 -3
- package/package.json +2 -2
|
@@ -76,6 +76,11 @@ const TASK_TYPES = computed<{ value: TaskTypeChoice; label: string; icon: string
|
|
|
76
76
|
{ value: 'bug', label: t('board.addTask.types.bug'), icon: 'i-lucide-bug' },
|
|
77
77
|
{ value: 'document', label: t('board.addTask.types.document'), icon: 'i-lucide-file-text' },
|
|
78
78
|
{ value: 'spike', label: t('board.addTask.types.spike'), icon: 'i-lucide-flask-conical' },
|
|
79
|
+
{
|
|
80
|
+
value: 'review',
|
|
81
|
+
label: t('board.addTask.types.review'),
|
|
82
|
+
icon: 'i-lucide-clipboard-check',
|
|
83
|
+
},
|
|
79
84
|
{ value: 'recurring', label: t('board.addTask.types.recurring'), icon: 'i-lucide-repeat' },
|
|
80
85
|
]
|
|
81
86
|
// A document repository only accepts document/spike tasks (see BoardService.addTask).
|
|
@@ -103,6 +108,25 @@ const docKind = ref<DocKind | ''>('')
|
|
|
103
108
|
const docAudience = ref('')
|
|
104
109
|
const docTargetPath = ref('')
|
|
105
110
|
const docOutlineHints = ref('')
|
|
111
|
+
// Review-task fields: the target PR (entered as a full URL or a bare #number) + optional
|
|
112
|
+
// review focus. The single input is parsed into the contract's `prUrl`/`prNumber` fields.
|
|
113
|
+
const reviewPrRef = ref('')
|
|
114
|
+
const reviewFocus = ref('')
|
|
115
|
+
|
|
116
|
+
// Parse the PR-reference input into the contract fields: a bare positive integer (optionally
|
|
117
|
+
// `#`-prefixed) becomes `prNumber` (a PR on the service's linked repo); anything else is taken
|
|
118
|
+
// as a full URL (`prUrl`). Returns undefined when blank or unparseable — the caller uses that
|
|
119
|
+
// to require a target on a review task.
|
|
120
|
+
function parseReviewPrRef(raw: string): Pick<TaskTypeFields, 'prUrl' | 'prNumber'> | undefined {
|
|
121
|
+
const trimmed = raw.trim()
|
|
122
|
+
if (!trimmed) return undefined
|
|
123
|
+
const bareNumber = /^#?(\d+)$/.exec(trimmed)
|
|
124
|
+
if (bareNumber) {
|
|
125
|
+
const n = Number(bareNumber[1])
|
|
126
|
+
return Number.isSafeInteger(n) && n >= 1 ? { prNumber: n } : undefined
|
|
127
|
+
}
|
|
128
|
+
return { prUrl: trimmed }
|
|
129
|
+
}
|
|
106
130
|
// Per-kind specific fields (see DOC_KIND_FIELDS). Held in one keyed record; only the fields
|
|
107
131
|
// for the selected kind are shown and submitted, so a value from a previously-selected kind is
|
|
108
132
|
// never sent. The catalog keys below keep the labels/placeholders i18n and drift-guarded.
|
|
@@ -168,6 +192,11 @@ function buildTypeFields(): TaskTypeFields | undefined {
|
|
|
168
192
|
}
|
|
169
193
|
return Object.keys(f).length ? f : undefined
|
|
170
194
|
}
|
|
195
|
+
if (taskType.value === 'review') {
|
|
196
|
+
const f: TaskTypeFields = { ...parseReviewPrRef(reviewPrRef.value) }
|
|
197
|
+
if (reviewFocus.value.trim()) f.reviewFocus = reviewFocus.value.trim()
|
|
198
|
+
return Object.keys(f).length ? f : undefined
|
|
199
|
+
}
|
|
171
200
|
return undefined
|
|
172
201
|
}
|
|
173
202
|
|
|
@@ -381,6 +410,8 @@ watch(open, (isOpen) => {
|
|
|
381
410
|
docAudience.value = ''
|
|
382
411
|
docTargetPath.value = ''
|
|
383
412
|
docOutlineHints.value = ''
|
|
413
|
+
reviewPrRef.value = ''
|
|
414
|
+
reviewFocus.value = ''
|
|
384
415
|
for (const key of Object.keys(docKindFieldValues) as DocKindFieldKey[])
|
|
385
416
|
delete docKindFieldValues[key]
|
|
386
417
|
riskPolicyId.value = ''
|
|
@@ -434,10 +465,13 @@ const { requestClose } = useUnsavedGuard({
|
|
|
434
465
|
})
|
|
435
466
|
|
|
436
467
|
// A recurring task only needs a target frame (its details are filled in the schedule
|
|
437
|
-
// modal); every other type needs a title.
|
|
438
|
-
const canAdd = computed(() =>
|
|
439
|
-
isRecurring.value
|
|
440
|
-
)
|
|
468
|
+
// modal); every other type needs a title. A review task additionally needs a target PR.
|
|
469
|
+
const canAdd = computed(() => {
|
|
470
|
+
if (isRecurring.value) return recurringFrameId.value !== null
|
|
471
|
+
if (title.value.trim().length === 0) return false
|
|
472
|
+
if (taskType.value === 'review' && !parseReviewPrRef(reviewPrRef.value)) return false
|
|
473
|
+
return true
|
|
474
|
+
})
|
|
441
475
|
|
|
442
476
|
async function add() {
|
|
443
477
|
const containerId = ui.addTaskContainerId
|
|
@@ -720,6 +754,31 @@ async function add() {
|
|
|
720
754
|
</UFormField>
|
|
721
755
|
</div>
|
|
722
756
|
|
|
757
|
+
<div v-else-if="taskType === 'review'" class="space-y-3">
|
|
758
|
+
<UFormField
|
|
759
|
+
:label="t('board.addTask.review.prUrl')"
|
|
760
|
+
:hint="t('board.addTask.review.prUrlHint')"
|
|
761
|
+
required
|
|
762
|
+
>
|
|
763
|
+
<UInput
|
|
764
|
+
v-model="reviewPrRef"
|
|
765
|
+
placeholder="https://github.com/owner/repo/pull/123"
|
|
766
|
+
class="w-full"
|
|
767
|
+
/>
|
|
768
|
+
</UFormField>
|
|
769
|
+
<UFormField
|
|
770
|
+
:label="t('board.addTask.review.focus')"
|
|
771
|
+
:hint="t('board.addTask.optional')"
|
|
772
|
+
>
|
|
773
|
+
<UTextarea
|
|
774
|
+
v-model="reviewFocus"
|
|
775
|
+
:rows="2"
|
|
776
|
+
:placeholder="t('board.addTask.review.focusPlaceholder')"
|
|
777
|
+
class="w-full"
|
|
778
|
+
/>
|
|
779
|
+
</UFormField>
|
|
780
|
+
</div>
|
|
781
|
+
|
|
723
782
|
<div class="grid grid-cols-2 gap-3">
|
|
724
783
|
<UFormField :label="t('board.addTask.pipeline')">
|
|
725
784
|
<UDropdownMenu :items="pipelineMenu" class="w-full">
|
|
@@ -98,6 +98,7 @@ const TASK_TYPE_KEYS: Record<CreateTaskType, string> = {
|
|
|
98
98
|
bug: 'settings.workspaceSettings.taskTypes.bug',
|
|
99
99
|
document: 'settings.workspaceSettings.taskTypes.document',
|
|
100
100
|
spike: 'settings.workspaceSettings.taskTypes.spike',
|
|
101
|
+
review: 'settings.workspaceSettings.taskTypes.review',
|
|
101
102
|
}
|
|
102
103
|
|
|
103
104
|
const MODES = computed<{ value: TaskLimitMode; label: string }[]>(() => [
|
package/i18n/locales/de.json
CHANGED
|
@@ -693,7 +693,8 @@
|
|
|
693
693
|
"feature": "Feature",
|
|
694
694
|
"bug": "Bug",
|
|
695
695
|
"document": "Dokument",
|
|
696
|
-
"spike": "Spike"
|
|
696
|
+
"spike": "Spike",
|
|
697
|
+
"review": "Review"
|
|
697
698
|
},
|
|
698
699
|
"observability": {
|
|
699
700
|
"heading": "Agenten-Observability",
|
|
@@ -1989,7 +1990,8 @@
|
|
|
1989
1990
|
"bug": "Bug",
|
|
1990
1991
|
"document": "Dokument",
|
|
1991
1992
|
"spike": "Spike",
|
|
1992
|
-
"recurring": "Wiederkehrend"
|
|
1993
|
+
"recurring": "Wiederkehrend",
|
|
1994
|
+
"review": "Review"
|
|
1993
1995
|
},
|
|
1994
1996
|
"recurringWithFrame": "Eine wiederkehrende Aufgabe führt eine Pipeline in einem Takt aus. Fahren Sie fort, um Zeitplan + Prompt festzulegen.",
|
|
1995
1997
|
"recurringNoFrame": "Eine wiederkehrende Aufgabe muss auf einem Service liegen. Fügen Sie sie aus einem Service-Frame (oder einem darin enthaltenen Modul) hinzu.",
|
|
@@ -2085,7 +2087,13 @@
|
|
|
2085
2087
|
"continue": "Weiter",
|
|
2086
2088
|
"submit": "Aufgabe hinzufügen",
|
|
2087
2089
|
"addFailedTitle": "Aufgabe konnte nicht hinzugefügt werden",
|
|
2088
|
-
"linkFailed": "Aufgabe hinzugefügt, aber {count} Anhang konnte nicht verknüpft werden | Aufgabe hinzugefügt, aber {count} Anhänge konnten nicht verknüpft werden"
|
|
2090
|
+
"linkFailed": "Aufgabe hinzugefügt, aber {count} Anhang konnte nicht verknüpft werden | Aufgabe hinzugefügt, aber {count} Anhänge konnten nicht verknüpft werden",
|
|
2091
|
+
"review": {
|
|
2092
|
+
"prUrl": "Pull Request",
|
|
2093
|
+
"prUrlHint": "URL oder Nummer des zu prüfenden Pull Requests",
|
|
2094
|
+
"focus": "Prüfungsschwerpunkt",
|
|
2095
|
+
"focusPlaceholder": "z. B. Fokus auf die Auth-Änderungen und Fehlerbehandlung"
|
|
2096
|
+
}
|
|
2089
2097
|
},
|
|
2090
2098
|
"recurring": {
|
|
2091
2099
|
"title": "Eine wiederkehrende Pipeline hinzufügen",
|
package/i18n/locales/en.json
CHANGED
|
@@ -185,7 +185,8 @@
|
|
|
185
185
|
"bug": "Bug",
|
|
186
186
|
"document": "Document",
|
|
187
187
|
"spike": "Spike",
|
|
188
|
-
"recurring": "Recurring"
|
|
188
|
+
"recurring": "Recurring",
|
|
189
|
+
"review": "Review"
|
|
189
190
|
},
|
|
190
191
|
"recurringWithFrame": "A recurring task runs a pipeline on a cadence. Continue to set the schedule + prompt.",
|
|
191
192
|
"recurringNoFrame": "A recurring task must live on a service. Add it from a service frame (or a module inside one).",
|
|
@@ -284,6 +285,12 @@
|
|
|
284
285
|
"linkFailed": "Task added, but {count} attachment could not be linked | Task added, but {count} attachments could not be linked",
|
|
285
286
|
"@linkFailed": {
|
|
286
287
|
"description": "Count-based: how many context attachments (docs/issues) failed to link after the task was created (count is always >= 1). Provide ALL plural forms your language needs (English has 2; Polish/Ukrainian need 3 - one/few/many - via the custom pluralRules in i18n.config.ts)."
|
|
288
|
+
},
|
|
289
|
+
"review": {
|
|
290
|
+
"prUrl": "Pull request",
|
|
291
|
+
"prUrlHint": "URL or number of the pull request to review",
|
|
292
|
+
"focus": "Review focus",
|
|
293
|
+
"focusPlaceholder": "e.g. focus on the auth changes and error handling"
|
|
287
294
|
}
|
|
288
295
|
},
|
|
289
296
|
"recurring": {
|
|
@@ -2548,7 +2555,8 @@
|
|
|
2548
2555
|
"feature": "feature",
|
|
2549
2556
|
"bug": "bug",
|
|
2550
2557
|
"document": "document",
|
|
2551
|
-
"spike": "spike"
|
|
2558
|
+
"spike": "spike",
|
|
2559
|
+
"review": "review"
|
|
2552
2560
|
},
|
|
2553
2561
|
"observability": {
|
|
2554
2562
|
"heading": "Agent observability",
|
package/i18n/locales/es.json
CHANGED
|
@@ -167,7 +167,8 @@
|
|
|
167
167
|
"bug": "Error",
|
|
168
168
|
"document": "Documento",
|
|
169
169
|
"spike": "Spike",
|
|
170
|
-
"recurring": "Recurrente"
|
|
170
|
+
"recurring": "Recurrente",
|
|
171
|
+
"review": "Revisión"
|
|
171
172
|
},
|
|
172
173
|
"recurringWithFrame": "Una tarea recurrente ejecuta una pipeline con cierta cadencia. Continúa para definir el horario y el prompt.",
|
|
173
174
|
"recurringNoFrame": "Una tarea recurrente debe vivir en un servicio. Añádela desde un marco de servicio (o un módulo dentro de él).",
|
|
@@ -263,7 +264,13 @@
|
|
|
263
264
|
"continue": "Continuar",
|
|
264
265
|
"submit": "Añadir tarea",
|
|
265
266
|
"addFailedTitle": "No se pudo añadir la tarea",
|
|
266
|
-
"linkFailed": "Tarea añadida, pero no se pudo vincular {count} adjunto | Tarea añadida, pero no se pudieron vincular {count} adjuntos"
|
|
267
|
+
"linkFailed": "Tarea añadida, pero no se pudo vincular {count} adjunto | Tarea añadida, pero no se pudieron vincular {count} adjuntos",
|
|
268
|
+
"review": {
|
|
269
|
+
"prUrl": "Pull request",
|
|
270
|
+
"prUrlHint": "URL o número de la pull request a revisar",
|
|
271
|
+
"focus": "Enfoque de la revisión",
|
|
272
|
+
"focusPlaceholder": "p. ej., céntrate en los cambios de autenticación y el manejo de errores"
|
|
273
|
+
}
|
|
267
274
|
},
|
|
268
275
|
"recurring": {
|
|
269
276
|
"title": "Añadir una pipeline recurrente",
|
|
@@ -2363,7 +2370,8 @@
|
|
|
2363
2370
|
"feature": "función",
|
|
2364
2371
|
"bug": "error",
|
|
2365
2372
|
"document": "documento",
|
|
2366
|
-
"spike": "spike"
|
|
2373
|
+
"spike": "spike",
|
|
2374
|
+
"review": "revisión"
|
|
2367
2375
|
},
|
|
2368
2376
|
"observability": {
|
|
2369
2377
|
"heading": "Observabilidad del agente",
|
package/i18n/locales/fr.json
CHANGED
|
@@ -167,7 +167,8 @@
|
|
|
167
167
|
"bug": "Bug",
|
|
168
168
|
"document": "Document",
|
|
169
169
|
"spike": "Spike",
|
|
170
|
-
"recurring": "Récurrent"
|
|
170
|
+
"recurring": "Récurrent",
|
|
171
|
+
"review": "Revue"
|
|
171
172
|
},
|
|
172
173
|
"recurringWithFrame": "Une tâche récurrente exécute une pipeline selon une cadence. Continuez pour définir le calendrier et le prompt.",
|
|
173
174
|
"recurringNoFrame": "Une tâche récurrente doit appartenir à un service. Ajoutez-la depuis un cadre de service (ou un module à l’intérieur).",
|
|
@@ -263,7 +264,13 @@
|
|
|
263
264
|
"continue": "Continuer",
|
|
264
265
|
"submit": "Ajouter la tâche",
|
|
265
266
|
"addFailedTitle": "Impossible d’ajouter la tâche",
|
|
266
|
-
"linkFailed": "Tâche ajoutée, mais {count} pièce jointe n’a pas pu être liée | Tâche ajoutée, mais {count} pièces jointes n’ont pas pu être liées"
|
|
267
|
+
"linkFailed": "Tâche ajoutée, mais {count} pièce jointe n’a pas pu être liée | Tâche ajoutée, mais {count} pièces jointes n’ont pas pu être liées",
|
|
268
|
+
"review": {
|
|
269
|
+
"prUrl": "Pull request",
|
|
270
|
+
"prUrlHint": "URL ou numéro de la pull request à examiner",
|
|
271
|
+
"focus": "Objet de la revue",
|
|
272
|
+
"focusPlaceholder": "p. ex. concentrez-vous sur les changements d'authentification et la gestion des erreurs"
|
|
273
|
+
}
|
|
267
274
|
},
|
|
268
275
|
"recurring": {
|
|
269
276
|
"title": "Ajouter une pipeline récurrente",
|
|
@@ -2363,7 +2370,8 @@
|
|
|
2363
2370
|
"feature": "fonctionnalité",
|
|
2364
2371
|
"bug": "bug",
|
|
2365
2372
|
"document": "document",
|
|
2366
|
-
"spike": "spike"
|
|
2373
|
+
"spike": "spike",
|
|
2374
|
+
"review": "revue"
|
|
2367
2375
|
},
|
|
2368
2376
|
"observability": {
|
|
2369
2377
|
"heading": "Observabilité de l'agent",
|
package/i18n/locales/he.json
CHANGED
|
@@ -167,7 +167,8 @@
|
|
|
167
167
|
"bug": "באג",
|
|
168
168
|
"document": "מסמך",
|
|
169
169
|
"spike": "ספייק",
|
|
170
|
-
"recurring": "מחזורי"
|
|
170
|
+
"recurring": "מחזורי",
|
|
171
|
+
"review": "סקירה"
|
|
171
172
|
},
|
|
172
173
|
"recurringWithFrame": "משימה מחזורית מריצה צינור במרווחים קבועים. המשך כדי להגדיר את התזמון והפרומפט.",
|
|
173
174
|
"recurringNoFrame": "משימה מחזורית חייבת להתקיים על שירות. הוסף אותה ממסגרת שירות (או ממודול בתוכה).",
|
|
@@ -263,7 +264,13 @@
|
|
|
263
264
|
"continue": "המשך",
|
|
264
265
|
"submit": "הוסף משימה",
|
|
265
266
|
"addFailedTitle": "לא ניתן היה להוסיף משימה",
|
|
266
|
-
"linkFailed": "המשימה נוספה, אך {count} צרופה לא ניתנה לקישור | המשימה נוספה, אך {count} צרופות לא ניתנו לקישור"
|
|
267
|
+
"linkFailed": "המשימה נוספה, אך {count} צרופה לא ניתנה לקישור | המשימה נוספה, אך {count} צרופות לא ניתנו לקישור",
|
|
268
|
+
"review": {
|
|
269
|
+
"prUrl": "בקשת משיכה",
|
|
270
|
+
"prUrlHint": "כתובת או מספר של בקשת המשיכה לסקירה",
|
|
271
|
+
"focus": "מוקד הסקירה",
|
|
272
|
+
"focusPlaceholder": "לדוגמה, להתמקד בשינויי האימות ובטיפול בשגיאות"
|
|
273
|
+
}
|
|
267
274
|
},
|
|
268
275
|
"recurring": {
|
|
269
276
|
"title": "הוסף צינור מחזורי",
|
|
@@ -2484,7 +2491,8 @@
|
|
|
2484
2491
|
"feature": "תכונה",
|
|
2485
2492
|
"bug": "באג",
|
|
2486
2493
|
"document": "מסמך",
|
|
2487
|
-
"spike": "חקירה"
|
|
2494
|
+
"spike": "חקירה",
|
|
2495
|
+
"review": "סקירה"
|
|
2488
2496
|
},
|
|
2489
2497
|
"observability": {
|
|
2490
2498
|
"heading": "תצפיתיות סוכנים",
|
package/i18n/locales/it.json
CHANGED
|
@@ -693,7 +693,8 @@
|
|
|
693
693
|
"feature": "feature",
|
|
694
694
|
"bug": "bug",
|
|
695
695
|
"document": "documento",
|
|
696
|
-
"spike": "spike"
|
|
696
|
+
"spike": "spike",
|
|
697
|
+
"review": "revisione"
|
|
697
698
|
},
|
|
698
699
|
"observability": {
|
|
699
700
|
"heading": "Osservabilita degli agenti",
|
|
@@ -1989,7 +1990,8 @@
|
|
|
1989
1990
|
"bug": "Bug",
|
|
1990
1991
|
"document": "Documento",
|
|
1991
1992
|
"spike": "Spike",
|
|
1992
|
-
"recurring": "Ricorrente"
|
|
1993
|
+
"recurring": "Ricorrente",
|
|
1994
|
+
"review": "Revisione"
|
|
1993
1995
|
},
|
|
1994
1996
|
"recurringWithFrame": "Un'attività ricorrente esegue una pipeline a cadenza regolare. Continua per impostare la pianificazione e il prompt.",
|
|
1995
1997
|
"recurringNoFrame": "Un'attività ricorrente deve risiedere su un servizio. Aggiungila da un frame di servizio (o da un modulo al suo interno).",
|
|
@@ -2085,7 +2087,13 @@
|
|
|
2085
2087
|
"continue": "Continua",
|
|
2086
2088
|
"submit": "Aggiungi attività",
|
|
2087
2089
|
"addFailedTitle": "Impossibile aggiungere l'attività",
|
|
2088
|
-
"linkFailed": "Attività aggiunta, ma {count} allegato non è stato collegato | Attività aggiunta, ma {count} allegati non sono stati collegati"
|
|
2090
|
+
"linkFailed": "Attività aggiunta, ma {count} allegato non è stato collegato | Attività aggiunta, ma {count} allegati non sono stati collegati",
|
|
2091
|
+
"review": {
|
|
2092
|
+
"prUrl": "Pull request",
|
|
2093
|
+
"prUrlHint": "URL o numero della pull request da revisionare",
|
|
2094
|
+
"focus": "Focus della revisione",
|
|
2095
|
+
"focusPlaceholder": "es. concentrati sulle modifiche di autenticazione e sulla gestione degli errori"
|
|
2096
|
+
}
|
|
2089
2097
|
},
|
|
2090
2098
|
"recurring": {
|
|
2091
2099
|
"title": "Aggiungi una pipeline ricorrente",
|
package/i18n/locales/ja.json
CHANGED
|
@@ -167,7 +167,8 @@
|
|
|
167
167
|
"bug": "バグ",
|
|
168
168
|
"document": "ドキュメント",
|
|
169
169
|
"spike": "スパイク",
|
|
170
|
-
"recurring": "繰り返し"
|
|
170
|
+
"recurring": "繰り返し",
|
|
171
|
+
"review": "レビュー"
|
|
171
172
|
},
|
|
172
173
|
"recurringWithFrame": "繰り返しタスクは一定の周期でパイプラインを実行します。続行してスケジュールとプロンプトを設定してください。",
|
|
173
174
|
"recurringNoFrame": "繰り返しタスクはサービス上に配置する必要があります。サービスフレーム(またはその中のモジュール)から追加してください。",
|
|
@@ -263,7 +264,13 @@
|
|
|
263
264
|
"continue": "続行",
|
|
264
265
|
"submit": "タスクを追加",
|
|
265
266
|
"addFailedTitle": "タスクを追加できませんでした",
|
|
266
|
-
"linkFailed": "タスクを追加しましたが、{count} 件の添付をリンクできませんでした | タスクを追加しましたが、{count} 件の添付をリンクできませんでした"
|
|
267
|
+
"linkFailed": "タスクを追加しましたが、{count} 件の添付をリンクできませんでした | タスクを追加しましたが、{count} 件の添付をリンクできませんでした",
|
|
268
|
+
"review": {
|
|
269
|
+
"prUrl": "プルリクエスト",
|
|
270
|
+
"prUrlHint": "レビュー対象のプルリクエストのURLまたは番号",
|
|
271
|
+
"focus": "レビューの重点",
|
|
272
|
+
"focusPlaceholder": "例: 認証の変更とエラー処理に注目"
|
|
273
|
+
}
|
|
267
274
|
},
|
|
268
275
|
"recurring": {
|
|
269
276
|
"title": "繰り返しパイプラインを追加",
|
|
@@ -2485,7 +2492,8 @@
|
|
|
2485
2492
|
"feature": "機能",
|
|
2486
2493
|
"bug": "バグ",
|
|
2487
2494
|
"document": "ドキュメント",
|
|
2488
|
-
"spike": "スパイク"
|
|
2495
|
+
"spike": "スパイク",
|
|
2496
|
+
"review": "レビュー"
|
|
2489
2497
|
},
|
|
2490
2498
|
"observability": {
|
|
2491
2499
|
"heading": "エージェントの可観測性",
|
package/i18n/locales/pl.json
CHANGED
|
@@ -167,7 +167,8 @@
|
|
|
167
167
|
"bug": "Błąd",
|
|
168
168
|
"document": "Dokument",
|
|
169
169
|
"spike": "Spike",
|
|
170
|
-
"recurring": "Cykliczne"
|
|
170
|
+
"recurring": "Cykliczne",
|
|
171
|
+
"review": "Przegląd"
|
|
171
172
|
},
|
|
172
173
|
"recurringWithFrame": "Zadanie cykliczne uruchamia pipeline w określonym rytmie. Kontynuuj, aby ustawić harmonogram i prompt.",
|
|
173
174
|
"recurringNoFrame": "Zadanie cykliczne musi należeć do usługi. Dodaj je z ramki usługi (lub modułu w jej obrębie).",
|
|
@@ -263,7 +264,13 @@
|
|
|
263
264
|
"continue": "Dalej",
|
|
264
265
|
"submit": "Dodaj zadanie",
|
|
265
266
|
"addFailedTitle": "Nie udało się dodać zadania",
|
|
266
|
-
"linkFailed": "Zadanie dodane, ale nie udało się powiązać {count} załącznika | Zadanie dodane, ale nie udało się powiązać {count} załączników | Zadanie dodane, ale nie udało się powiązać {count} załączników"
|
|
267
|
+
"linkFailed": "Zadanie dodane, ale nie udało się powiązać {count} załącznika | Zadanie dodane, ale nie udało się powiązać {count} załączników | Zadanie dodane, ale nie udało się powiązać {count} załączników",
|
|
268
|
+
"review": {
|
|
269
|
+
"prUrl": "Pull request",
|
|
270
|
+
"prUrlHint": "URL lub numer pull requesta do przeglądu",
|
|
271
|
+
"focus": "Zakres przeglądu",
|
|
272
|
+
"focusPlaceholder": "np. skup się na zmianach uwierzytelniania i obsłudze błędów"
|
|
273
|
+
}
|
|
267
274
|
},
|
|
268
275
|
"recurring": {
|
|
269
276
|
"title": "Dodaj cykliczny pipeline",
|
|
@@ -2363,7 +2370,8 @@
|
|
|
2363
2370
|
"feature": "funkcja",
|
|
2364
2371
|
"bug": "błąd",
|
|
2365
2372
|
"document": "dokument",
|
|
2366
|
-
"spike": "spike"
|
|
2373
|
+
"spike": "spike",
|
|
2374
|
+
"review": "przegląd"
|
|
2367
2375
|
},
|
|
2368
2376
|
"observability": {
|
|
2369
2377
|
"heading": "Obserwowalność agenta",
|
package/i18n/locales/tr.json
CHANGED
|
@@ -167,7 +167,8 @@
|
|
|
167
167
|
"bug": "Hata",
|
|
168
168
|
"document": "Belge",
|
|
169
169
|
"spike": "Spike",
|
|
170
|
-
"recurring": "Yinelenen"
|
|
170
|
+
"recurring": "Yinelenen",
|
|
171
|
+
"review": "İnceleme"
|
|
171
172
|
},
|
|
172
173
|
"recurringWithFrame": "Yinelenen bir görev, bir işlem hattını belirli bir aralıkta çalıştırır. Programı ve istemi ayarlamak için devam edin.",
|
|
173
174
|
"recurringNoFrame": "Yinelenen bir görev bir serviste bulunmalıdır. Bir servis çerçevesinden (veya içindeki bir modülden) ekleyin.",
|
|
@@ -263,7 +264,13 @@
|
|
|
263
264
|
"continue": "Devam",
|
|
264
265
|
"submit": "Görev ekle",
|
|
265
266
|
"addFailedTitle": "Görev eklenemedi",
|
|
266
|
-
"linkFailed": "Görev eklendi, ancak {count} ek bağlanamadı | Görev eklendi, ancak {count} ek bağlanamadı"
|
|
267
|
+
"linkFailed": "Görev eklendi, ancak {count} ek bağlanamadı | Görev eklendi, ancak {count} ek bağlanamadı",
|
|
268
|
+
"review": {
|
|
269
|
+
"prUrl": "Pull request",
|
|
270
|
+
"prUrlHint": "İncelenecek pull request'in URL'si veya numarası",
|
|
271
|
+
"focus": "İnceleme odağı",
|
|
272
|
+
"focusPlaceholder": "örn. kimlik doğrulama değişikliklerine ve hata yönetimine odaklan"
|
|
273
|
+
}
|
|
267
274
|
},
|
|
268
275
|
"recurring": {
|
|
269
276
|
"title": "Yinelenen bir işlem hattı ekle",
|
|
@@ -2485,7 +2492,8 @@
|
|
|
2485
2492
|
"feature": "özellik",
|
|
2486
2493
|
"bug": "hata",
|
|
2487
2494
|
"document": "belge",
|
|
2488
|
-
"spike": "inceleme"
|
|
2495
|
+
"spike": "inceleme",
|
|
2496
|
+
"review": "inceleme"
|
|
2489
2497
|
},
|
|
2490
2498
|
"observability": {
|
|
2491
2499
|
"heading": "Agent gözlemlenebilirliği",
|
package/i18n/locales/uk.json
CHANGED
|
@@ -167,7 +167,8 @@
|
|
|
167
167
|
"bug": "Помилка",
|
|
168
168
|
"document": "Документ",
|
|
169
169
|
"spike": "Spike",
|
|
170
|
-
"recurring": "Періодичне"
|
|
170
|
+
"recurring": "Періодичне",
|
|
171
|
+
"review": "Огляд"
|
|
171
172
|
},
|
|
172
173
|
"recurringWithFrame": "Періодичне завдання запускає конвеєр із заданою періодичністю. Продовжте, щоб задати розклад і промпт.",
|
|
173
174
|
"recurringNoFrame": "Періодичне завдання має належати сервісу. Додайте його з рамки сервісу (або модуля всередині неї).",
|
|
@@ -263,7 +264,13 @@
|
|
|
263
264
|
"continue": "Продовжити",
|
|
264
265
|
"submit": "Додати завдання",
|
|
265
266
|
"addFailedTitle": "Не вдалося додати завдання",
|
|
266
|
-
"linkFailed": "Завдання додано, але не вдалося прив’язати {count} вкладення | Завдання додано, але не вдалося прив’язати {count} вкладення | Завдання додано, але не вдалося прив’язати {count} вкладень"
|
|
267
|
+
"linkFailed": "Завдання додано, але не вдалося прив’язати {count} вкладення | Завдання додано, але не вдалося прив’язати {count} вкладення | Завдання додано, але не вдалося прив’язати {count} вкладень",
|
|
268
|
+
"review": {
|
|
269
|
+
"prUrl": "Pull request",
|
|
270
|
+
"prUrlHint": "URL або номер pull request для огляду",
|
|
271
|
+
"focus": "Фокус огляду",
|
|
272
|
+
"focusPlaceholder": "напр. зосередься на змінах автентифікації та обробці помилок"
|
|
273
|
+
}
|
|
267
274
|
},
|
|
268
275
|
"recurring": {
|
|
269
276
|
"title": "Додати періодичний конвеєр",
|
|
@@ -2363,7 +2370,8 @@
|
|
|
2363
2370
|
"feature": "функція",
|
|
2364
2371
|
"bug": "помилка",
|
|
2365
2372
|
"document": "документ",
|
|
2366
|
-
"spike": "spike"
|
|
2373
|
+
"spike": "spike",
|
|
2374
|
+
"review": "огляд"
|
|
2367
2375
|
},
|
|
2368
2376
|
"observability": {
|
|
2369
2377
|
"heading": "Спостережуваність агента",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cat-factory/app",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.117.0",
|
|
4
4
|
"description": "Reusable Nuxt layer for the Agent Architecture Board SPA (components, stores, composables, pages). Consume it from a thin deployment app via `extends: ['@cat-factory/app']` and point it at your backend with NUXT_PUBLIC_API_BASE. See deploy/frontend for an example.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"valibot": "^1.4.2",
|
|
35
35
|
"vue": "3.5.39",
|
|
36
36
|
"wretch": "^3.0.9",
|
|
37
|
-
"@cat-factory/contracts": "0.
|
|
37
|
+
"@cat-factory/contracts": "0.130.0"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
40
|
"@toad-contracts/testing": "0.3.2",
|