@cat-factory/app 0.156.0 → 0.157.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/panels/inspector/TaskRunSettings.vue +23 -0
- package/app/components/settings/IssueTrackerPanel.vue +15 -0
- package/app/stores/tracker.ts +2 -0
- package/i18n/locales/de.json +5 -0
- package/i18n/locales/en.json +5 -0
- package/i18n/locales/es.json +5 -0
- package/i18n/locales/fr.json +5 -0
- package/i18n/locales/he.json +5 -0
- package/i18n/locales/it.json +5 -0
- package/i18n/locales/ja.json +5 -0
- package/i18n/locales/pl.json +5 -0
- package/i18n/locales/tr.json +5 -0
- package/i18n/locales/uk.json +5 -0
- package/package.json +2 -2
|
@@ -183,6 +183,11 @@ function setCommentOnPrOpen(value: WritebackOverride | null) {
|
|
|
183
183
|
function setResolveOnMerge(value: WritebackOverride | null) {
|
|
184
184
|
board.updateBlock(props.block.id, { trackerResolveOnMerge: value })
|
|
185
185
|
}
|
|
186
|
+
// Only consulted for runs started through the public API — a task started here keeps its in-app
|
|
187
|
+
// clarification window regardless (docs/initiatives/headless-clarification-loop.md).
|
|
188
|
+
function setQuestionsOnPark(value: WritebackOverride | null) {
|
|
189
|
+
board.updateBlock(props.block.id, { trackerQuestionsOnPark: value })
|
|
190
|
+
}
|
|
186
191
|
function writebackMenu(set: (value: WritebackOverride | null) => void) {
|
|
187
192
|
return [
|
|
188
193
|
[
|
|
@@ -212,6 +217,9 @@ const commentOnPrOpenLabel = computed(() =>
|
|
|
212
217
|
const resolveOnMergeLabel = computed(() =>
|
|
213
218
|
writebackLabel(props.block.trackerResolveOnMerge, tracker.settings.writebackResolveOnMerge),
|
|
214
219
|
)
|
|
220
|
+
const questionsOnParkLabel = computed(() =>
|
|
221
|
+
writebackLabel(props.block.trackerQuestionsOnPark, tracker.settings.writebackQuestionsOnPark),
|
|
222
|
+
)
|
|
215
223
|
|
|
216
224
|
// ---- technical label (tri-state) -------------------------------------------
|
|
217
225
|
// Whether this is a purely technical task (the implementer then treats the task
|
|
@@ -520,6 +528,21 @@ const technicalLabel = computed(() => {
|
|
|
520
528
|
</UButton>
|
|
521
529
|
</UDropdownMenu>
|
|
522
530
|
</div>
|
|
531
|
+
<div class="flex items-center justify-between">
|
|
532
|
+
<span class="text-[11px] text-slate-400">{{
|
|
533
|
+
t('inspector.runSettings.questionsOnPark')
|
|
534
|
+
}}</span>
|
|
535
|
+
<UDropdownMenu :items="writebackMenu(setQuestionsOnPark)">
|
|
536
|
+
<UButton
|
|
537
|
+
size="xs"
|
|
538
|
+
variant="ghost"
|
|
539
|
+
color="neutral"
|
|
540
|
+
trailing-icon="i-lucide-chevron-down"
|
|
541
|
+
>
|
|
542
|
+
{{ questionsOnParkLabel }}
|
|
543
|
+
</UButton>
|
|
544
|
+
</UDropdownMenu>
|
|
545
|
+
</div>
|
|
523
546
|
</div>
|
|
524
547
|
<div class="mt-1 text-[11px] text-slate-500">
|
|
525
548
|
{{ t('inspector.runSettings.writebackHint') }}
|
|
@@ -29,6 +29,7 @@ const jiraProjectKey = ref('')
|
|
|
29
29
|
const linearTeamId = ref('')
|
|
30
30
|
const commentOnPrOpen = ref(false)
|
|
31
31
|
const resolveOnMerge = ref(false)
|
|
32
|
+
const questionsOnPark = ref(false)
|
|
32
33
|
const saving = ref(false)
|
|
33
34
|
|
|
34
35
|
function hydrate() {
|
|
@@ -37,6 +38,7 @@ function hydrate() {
|
|
|
37
38
|
linearTeamId.value = tracker.settings.linearTeamId ?? ''
|
|
38
39
|
commentOnPrOpen.value = tracker.settings.writebackCommentOnPrOpen
|
|
39
40
|
resolveOnMerge.value = tracker.settings.writebackResolveOnMerge
|
|
41
|
+
questionsOnPark.value = tracker.settings.writebackQuestionsOnPark
|
|
40
42
|
}
|
|
41
43
|
onMounted(() => {
|
|
42
44
|
hydrate()
|
|
@@ -111,6 +113,7 @@ async function save() {
|
|
|
111
113
|
linearTeamId: trackerKind.value === 'linear' ? linearTeamId.value.trim() : null,
|
|
112
114
|
writebackCommentOnPrOpen: commentOnPrOpen.value,
|
|
113
115
|
writebackResolveOnMerge: resolveOnMerge.value,
|
|
116
|
+
writebackQuestionsOnPark: questionsOnPark.value,
|
|
114
117
|
})
|
|
115
118
|
toast.add({
|
|
116
119
|
title: t('settings.issueTracker.toast.saved'),
|
|
@@ -591,6 +594,18 @@ const STATUS_UI: Record<
|
|
|
591
594
|
</span>
|
|
592
595
|
</span>
|
|
593
596
|
</label>
|
|
597
|
+
|
|
598
|
+
<label class="flex items-start gap-3 rounded-lg border border-slate-700 bg-slate-800/40 p-3">
|
|
599
|
+
<USwitch v-model="questionsOnPark" />
|
|
600
|
+
<span class="text-sm">
|
|
601
|
+
<span class="block text-slate-200">
|
|
602
|
+
{{ t('settings.issueTracker.writeback.questionsOnPark.label') }}
|
|
603
|
+
</span>
|
|
604
|
+
<span class="block text-xs text-slate-500">
|
|
605
|
+
{{ t('settings.issueTracker.writeback.questionsOnPark.help') }}
|
|
606
|
+
</span>
|
|
607
|
+
</span>
|
|
608
|
+
</label>
|
|
594
609
|
</section>
|
|
595
610
|
|
|
596
611
|
<div class="flex justify-end">
|
package/app/stores/tracker.ts
CHANGED
|
@@ -18,6 +18,7 @@ export const useTrackerStore = defineStore('tracker', () => {
|
|
|
18
18
|
linearTeamId: null,
|
|
19
19
|
writebackCommentOnPrOpen: false,
|
|
20
20
|
writebackResolveOnMerge: false,
|
|
21
|
+
writebackQuestionsOnPark: false,
|
|
21
22
|
updatedAt: 0,
|
|
22
23
|
})
|
|
23
24
|
|
|
@@ -31,6 +32,7 @@ export const useTrackerStore = defineStore('tracker', () => {
|
|
|
31
32
|
linearTeamId: null,
|
|
32
33
|
writebackCommentOnPrOpen: false,
|
|
33
34
|
writebackResolveOnMerge: false,
|
|
35
|
+
writebackQuestionsOnPark: false,
|
|
34
36
|
updatedAt: 0,
|
|
35
37
|
}
|
|
36
38
|
}
|
package/i18n/locales/de.json
CHANGED
|
@@ -350,6 +350,10 @@
|
|
|
350
350
|
"resolveOnMerge": {
|
|
351
351
|
"label": "Beim Mergen eines PR als gelöst schließen",
|
|
352
352
|
"help": "Kommentiere, dass der PR gemergt wurde, und schließe / löse dann das verknüpfte Issue."
|
|
353
|
+
},
|
|
354
|
+
"questionsOnPark": {
|
|
355
|
+
"label": "Offene Fragen bei einem pausierten Headless-Lauf posten",
|
|
356
|
+
"help": "Wenn ein über die API gestarteter Lauf zur Klärung der Anforderungen pausiert, poste seine offenen Fragen — jeweils mit der ID, die eine Antwort nennt — am verknüpften Issue. In der App gestartete Aufgaben sind nicht betroffen."
|
|
353
357
|
}
|
|
354
358
|
},
|
|
355
359
|
"probeFailure": {
|
|
@@ -1317,6 +1321,7 @@
|
|
|
1317
1321
|
"issueWriteback": "Issue-Rückschreibung",
|
|
1318
1322
|
"commentOnPrOpen": "Kommentar beim PR-Öffnen",
|
|
1319
1323
|
"closeOnMerge": "Beim Mergen schließen",
|
|
1324
|
+
"questionsOnPark": "Fragen beim Pausieren stellen",
|
|
1320
1325
|
"writebackHint": "Schreibt zurück in das verknüpfte Tracker-Issue dieser Aufgabe. Überschreibt den Workspace-Standard.",
|
|
1321
1326
|
"responsibleProduct": "Verantwortliches Produkt",
|
|
1322
1327
|
"responsibleEmpty": "Nicht zugewiesen. Setze einen Product Owner, um ihn zu benachrichtigen, wenn die Anforderungsprüfung diese Aufgabe kennzeichnet.",
|
package/i18n/locales/en.json
CHANGED
|
@@ -1088,6 +1088,7 @@
|
|
|
1088
1088
|
"issueWriteback": "Issue writeback",
|
|
1089
1089
|
"commentOnPrOpen": "Comment on PR open",
|
|
1090
1090
|
"closeOnMerge": "Close on merge",
|
|
1091
|
+
"questionsOnPark": "Ask questions on park",
|
|
1091
1092
|
"writebackHint": "Writes back to this task's linked tracker issue. Overrides the workspace default.",
|
|
1092
1093
|
"responsibleProduct": "Responsible product",
|
|
1093
1094
|
"responsibleEmpty": "Unassigned. Set a product owner to notify them when requirement review flags this task.",
|
|
@@ -2416,6 +2417,10 @@
|
|
|
2416
2417
|
"resolveOnMerge": {
|
|
2417
2418
|
"label": "Close as resolved when a PR merges",
|
|
2418
2419
|
"help": "Comment that the PR merged, then close / resolve the linked issue."
|
|
2420
|
+
},
|
|
2421
|
+
"questionsOnPark": {
|
|
2422
|
+
"label": "Post open questions on a parked headless run",
|
|
2423
|
+
"help": "When a run started through the API pauses to clarify requirements, post its open questions — each with the id an answer names — on the linked issue. Tasks started in the app are unaffected."
|
|
2419
2424
|
}
|
|
2420
2425
|
},
|
|
2421
2426
|
"probeFailure": {
|
package/i18n/locales/es.json
CHANGED
|
@@ -1031,6 +1031,7 @@
|
|
|
1031
1031
|
"issueWriteback": "Reescritura de incidencias",
|
|
1032
1032
|
"commentOnPrOpen": "Comentar al abrir el PR",
|
|
1033
1033
|
"closeOnMerge": "Cerrar al fusionar",
|
|
1034
|
+
"questionsOnPark": "Preguntar al pausarse",
|
|
1034
1035
|
"writebackHint": "Reescribe en la incidencia del tracker vinculada a esta tarea. Anula el valor predeterminado del espacio de trabajo.",
|
|
1035
1036
|
"responsibleProduct": "Producto responsable",
|
|
1036
1037
|
"responsibleEmpty": "Sin asignar. Define un responsable de producto para notificarle cuando la revisión de requisitos marque esta tarea.",
|
|
@@ -2228,6 +2229,10 @@
|
|
|
2228
2229
|
"resolveOnMerge": {
|
|
2229
2230
|
"label": "Cerrar como resuelta cuando se fusiona un PR",
|
|
2230
2231
|
"help": "Comenta que el PR se fusionó y luego cierra / resuelve la incidencia vinculada."
|
|
2232
|
+
},
|
|
2233
|
+
"questionsOnPark": {
|
|
2234
|
+
"label": "Publicar preguntas abiertas cuando un ejecución headless se detiene",
|
|
2235
|
+
"help": "Cuando una ejecución iniciada por la API se detiene para aclarar requisitos, publica sus preguntas abiertas — cada una con el id que debe nombrar la respuesta — en la incidencia vinculada. Las tareas iniciadas en la aplicación no se ven afectadas."
|
|
2231
2236
|
}
|
|
2232
2237
|
},
|
|
2233
2238
|
"probeFailure": {
|
package/i18n/locales/fr.json
CHANGED
|
@@ -1031,6 +1031,7 @@
|
|
|
1031
1031
|
"issueWriteback": "Réécriture d'issue",
|
|
1032
1032
|
"commentOnPrOpen": "Commenter à l'ouverture de la PR",
|
|
1033
1033
|
"closeOnMerge": "Fermer à la fusion",
|
|
1034
|
+
"questionsOnPark": "Poser les questions en pause",
|
|
1034
1035
|
"writebackHint": "Réécrit dans l'issue de tracker liée à cette tâche. Remplace la valeur par défaut de l'espace de travail.",
|
|
1035
1036
|
"responsibleProduct": "Produit responsable",
|
|
1036
1037
|
"responsibleEmpty": "Non assigné. Définissez un responsable produit pour le notifier lorsque la revue d'exigences signale cette tâche.",
|
|
@@ -2228,6 +2229,10 @@
|
|
|
2228
2229
|
"resolveOnMerge": {
|
|
2229
2230
|
"label": "Clore comme résolu à la fusion d'une PR",
|
|
2230
2231
|
"help": "Commente que la PR a été fusionnée, puis ferme / résout le ticket lié."
|
|
2232
|
+
},
|
|
2233
|
+
"questionsOnPark": {
|
|
2234
|
+
"label": "Publier les questions ouvertes d'une exécution headless en pause",
|
|
2235
|
+
"help": "Quand une exécution lancée via l'API se met en pause pour clarifier les exigences, publie ses questions ouvertes — chacune avec l'identifiant qu'une réponse doit nommer — sur le ticket lié. Les tâches lancées dans l'application ne sont pas concernées."
|
|
2231
2236
|
}
|
|
2232
2237
|
},
|
|
2233
2238
|
"probeFailure": {
|
package/i18n/locales/he.json
CHANGED
|
@@ -1031,6 +1031,7 @@
|
|
|
1031
1031
|
"issueWriteback": "כתיבה חזרה לאישו",
|
|
1032
1032
|
"commentOnPrOpen": "הגב בפתיחת PR",
|
|
1033
1033
|
"closeOnMerge": "סגור במיזוג",
|
|
1034
|
+
"questionsOnPark": "לשאול שאלות בעת השהיה",
|
|
1034
1035
|
"writebackHint": "כותב חזרה לאישו המקושר במעקב של משימה זו. עוקף את ברירת המחדל של מרחב העבודה.",
|
|
1035
1036
|
"responsibleProduct": "מוצר אחראי",
|
|
1036
1037
|
"responsibleEmpty": "לא משויך. הגדר בעלים של מוצר כדי ליידע אותו כאשר סקירת הדרישות מסמנת משימה זו.",
|
|
@@ -2349,6 +2350,10 @@
|
|
|
2349
2350
|
"resolveOnMerge": {
|
|
2350
2351
|
"label": "סגור כפתור כשממוזג PR",
|
|
2351
2352
|
"help": "הגב שה-PR מוזג, ואז סגור / פתור את הכרטיס המקושר."
|
|
2353
|
+
},
|
|
2354
|
+
"questionsOnPark": {
|
|
2355
|
+
"label": "פרסם שאלות פתוחות בהרצה חסרת-ממשק שהושהתה",
|
|
2356
|
+
"help": "כאשר הרצה שהופעלה דרך ה-API עוצרת כדי להבהיר דרישות, פרסם את השאלות הפתוחות שלה — כל אחת עם המזהה שתשובה צריכה לציין — על הכרטיס המקושר. משימות שהופעלו באפליקציה אינן מושפעות."
|
|
2352
2357
|
}
|
|
2353
2358
|
},
|
|
2354
2359
|
"probeFailure": {
|
package/i18n/locales/it.json
CHANGED
|
@@ -350,6 +350,10 @@
|
|
|
350
350
|
"resolveOnMerge": {
|
|
351
351
|
"label": "Chiudi come risolto quando una PR viene mergiata",
|
|
352
352
|
"help": "Commenta che la PR e stata mergiata, poi chiudi / risolvi l'issue collegato."
|
|
353
|
+
},
|
|
354
|
+
"questionsOnPark": {
|
|
355
|
+
"label": "Pubblica le domande aperte di un'esecuzione headless in pausa",
|
|
356
|
+
"help": "Quando un'esecuzione avviata tramite API si mette in pausa per chiarire i requisiti, pubblica le sue domande aperte — ciascuna con l'id che una risposta deve indicare — sull'issue collegato. Le attivita avviate nell'app non sono interessate."
|
|
353
357
|
}
|
|
354
358
|
},
|
|
355
359
|
"probeFailure": {
|
|
@@ -1317,6 +1321,7 @@
|
|
|
1317
1321
|
"issueWriteback": "Writeback della issue",
|
|
1318
1322
|
"commentOnPrOpen": "Commenta all'apertura della PR",
|
|
1319
1323
|
"closeOnMerge": "Chiudi al merge",
|
|
1324
|
+
"questionsOnPark": "Chiedi in pausa",
|
|
1320
1325
|
"writebackHint": "Scrive di ritorno sulla issue del tracker collegata a questa attivita'. Sovrascrive il predefinito del workspace.",
|
|
1321
1326
|
"responsibleProduct": "Prodotto responsabile",
|
|
1322
1327
|
"responsibleEmpty": "Non assegnato. Imposta un product owner per notificarlo quando la revisione dei requisiti segnala questa attivita'.",
|
package/i18n/locales/ja.json
CHANGED
|
@@ -1031,6 +1031,7 @@
|
|
|
1031
1031
|
"issueWriteback": "Issue への書き戻し",
|
|
1032
1032
|
"commentOnPrOpen": "PR オープン時にコメント",
|
|
1033
1033
|
"closeOnMerge": "マージ時にクローズ",
|
|
1034
|
+
"questionsOnPark": "一時停止時に質問",
|
|
1034
1035
|
"writebackHint": "このタスクにリンクされたトラッカーの Issue に書き戻します。ワークスペースの既定を上書きします。",
|
|
1035
1036
|
"responsibleProduct": "担当プロダクト",
|
|
1036
1037
|
"responsibleEmpty": "未割り当て。要件レビューがこのタスクをフラグしたときに通知するため、プロダクトオーナーを設定してください。",
|
|
@@ -2350,6 +2351,10 @@
|
|
|
2350
2351
|
"resolveOnMerge": {
|
|
2351
2352
|
"label": "PR がマージされたら解決済みとしてクローズ",
|
|
2352
2353
|
"help": "PR がマージされた旨をコメントし、リンクされた課題をクローズ / 解決します。"
|
|
2354
|
+
},
|
|
2355
|
+
"questionsOnPark": {
|
|
2356
|
+
"label": "ヘッドレス実行が一時停止したら未解決の質問を投稿",
|
|
2357
|
+
"help": "API 経由で開始した実行が要件確認のため一時停止したとき、その未解決の質問を — 回答が指定する ID を添えて — リンクされた課題に投稿します。アプリで開始したタスクには影響しません。"
|
|
2353
2358
|
}
|
|
2354
2359
|
},
|
|
2355
2360
|
"probeFailure": {
|
package/i18n/locales/pl.json
CHANGED
|
@@ -1031,6 +1031,7 @@
|
|
|
1031
1031
|
"issueWriteback": "Zapis zwrotny do zgłoszenia",
|
|
1032
1032
|
"commentOnPrOpen": "Komentarz przy otwarciu PR",
|
|
1033
1033
|
"closeOnMerge": "Zamknij przy scaleniu",
|
|
1034
|
+
"questionsOnPark": "Pytaj przy wstrzymaniu",
|
|
1034
1035
|
"writebackHint": "Zapisuje zwrotnie do powiązanego zgłoszenia w trackerze tego zadania. Nadpisuje domyślne obszaru roboczego.",
|
|
1035
1036
|
"responsibleProduct": "Odpowiedzialny produkt",
|
|
1036
1037
|
"responsibleEmpty": "Nieprzypisane. Ustaw właściciela produktu, aby powiadamiać go, gdy recenzja wymagań oznaczy to zadanie.",
|
|
@@ -2228,6 +2229,10 @@
|
|
|
2228
2229
|
"resolveOnMerge": {
|
|
2229
2230
|
"label": "Zamknij jako rozwiązane, gdy PR zostanie scalony",
|
|
2230
2231
|
"help": "Skomentuj, że PR został scalony, a następnie zamknij / rozwiąż powiązane zgłoszenie."
|
|
2232
|
+
},
|
|
2233
|
+
"questionsOnPark": {
|
|
2234
|
+
"label": "Publikuj otwarte pytania wstrzymanego uruchomienia headless",
|
|
2235
|
+
"help": "Gdy uruchomienie rozpoczęte przez API wstrzymuje się, aby doprecyzować wymagania, opublikuj jego otwarte pytania — każde z identyfikatorem, który ma wskazać odpowiedź — w powiązanym zgłoszeniu. Zadania rozpoczęte w aplikacji pozostają bez zmian."
|
|
2231
2236
|
}
|
|
2232
2237
|
},
|
|
2233
2238
|
"probeFailure": {
|
package/i18n/locales/tr.json
CHANGED
|
@@ -1031,6 +1031,7 @@
|
|
|
1031
1031
|
"issueWriteback": "Issue geri yazma",
|
|
1032
1032
|
"commentOnPrOpen": "PR açılışında yorum yap",
|
|
1033
1033
|
"closeOnMerge": "Birleştirmede kapat",
|
|
1034
|
+
"questionsOnPark": "Duraklamada soru sor",
|
|
1034
1035
|
"writebackHint": "Bu görevin bağlı izleyici issue'suna geri yazar. Çalışma alanı varsayılanını geçersiz kılar.",
|
|
1035
1036
|
"responsibleProduct": "Sorumlu ürün",
|
|
1036
1037
|
"responsibleEmpty": "Atanmamış. Gereksinim incelemesi bu görevi işaretlediğinde bildirim almak için bir ürün sahibi belirleyin.",
|
|
@@ -2350,6 +2351,10 @@
|
|
|
2350
2351
|
"resolveOnMerge": {
|
|
2351
2352
|
"label": "Bir PR birleştiğinde çözüldü olarak kapat",
|
|
2352
2353
|
"help": "PR'ın birleştiğini belirten bir yorum yap, ardından bağlı sorunu kapat / çöz."
|
|
2354
|
+
},
|
|
2355
|
+
"questionsOnPark": {
|
|
2356
|
+
"label": "Duraklatılan başsız çalıştırmanın açık sorularını gönder",
|
|
2357
|
+
"help": "API üzerinden başlatılan bir çalıştırma gereksinimleri netleştirmek için duraklattığında, açık sorularını — her biri bir yanıtın belirteceği kimlikle — bağlı soruna gönderir. Uygulamada başlatılan görevler etkilenmez."
|
|
2353
2358
|
}
|
|
2354
2359
|
},
|
|
2355
2360
|
"probeFailure": {
|
package/i18n/locales/uk.json
CHANGED
|
@@ -1031,6 +1031,7 @@
|
|
|
1031
1031
|
"issueWriteback": "Зворотний запис у задачу",
|
|
1032
1032
|
"commentOnPrOpen": "Коментувати при відкритті PR",
|
|
1033
1033
|
"closeOnMerge": "Закрити при злитті",
|
|
1034
|
+
"questionsOnPark": "Питати під час паузи",
|
|
1034
1035
|
"writebackHint": "Записує назад до пов'язаної задачі трекера цього завдання. Перевизначає типове для робочого простору.",
|
|
1035
1036
|
"responsibleProduct": "Відповідальний продукт",
|
|
1036
1037
|
"responsibleEmpty": "Не призначено. Призначте власника продукту, щоб сповіщати його, коли огляд вимог позначає це завдання.",
|
|
@@ -2228,6 +2229,10 @@
|
|
|
2228
2229
|
"resolveOnMerge": {
|
|
2229
2230
|
"label": "Закрити як вирішене, коли PR зливається",
|
|
2230
2231
|
"help": "Коментує, що PR злито, а потім закриває / вирішує пов'язаний тикет."
|
|
2232
|
+
},
|
|
2233
|
+
"questionsOnPark": {
|
|
2234
|
+
"label": "Публікувати відкриті запитання призупиненого headless-запуску",
|
|
2235
|
+
"help": "Коли запуск, розпочатий через API, призупиняється для уточнення вимог, опублікуй його відкриті запитання — кожне з ідентифікатором, який має назвати відповідь — у пов'язаному тикеті. Завдання, розпочаті в застосунку, лишаються без змін."
|
|
2231
2236
|
}
|
|
2232
2237
|
},
|
|
2233
2238
|
"probeFailure": {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cat-factory/app",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.157.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",
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"valibot": "^1.4.2",
|
|
41
41
|
"vue": "3.5.40",
|
|
42
42
|
"wretch": "^3.0.9",
|
|
43
|
-
"@cat-factory/contracts": "0.
|
|
43
|
+
"@cat-factory/contracts": "0.166.0"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
46
|
"@toad-contracts/testing": "0.3.2",
|