@cat-factory/app 0.293.1 → 0.295.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 (39) hide show
  1. package/app/components/board/AddTaskModal.vue +80 -0
  2. package/app/components/board/RecurringPipelineModal.vue +34 -20
  3. package/app/components/bootstrap/BootstrapModal.logic.spec.ts +54 -0
  4. package/app/components/bootstrap/BootstrapModal.logic.ts +44 -0
  5. package/app/components/bootstrap/BootstrapModal.vue +155 -16
  6. package/app/components/bugFishing/BugFishingWindow.vue +524 -0
  7. package/app/components/focus/BlockFocusView.vue +2 -0
  8. package/app/components/github/RepoTreeBrowser.vue +89 -6
  9. package/app/components/layout/NotificationsInbox.vue +15 -0
  10. package/app/components/panels/ResultWindowDrafts.logic.spec.ts +25 -3
  11. package/app/components/panels/ResultWindowShell.logic.spec.ts +4 -0
  12. package/app/components/settings/WorkspaceSettingsPanel.vue +46 -1
  13. package/app/components/slack/SlackPanel.vue +1 -0
  14. package/app/composables/api/bugFishing.ts +52 -0
  15. package/app/composables/useApi.ts +2 -0
  16. package/app/composables/usePipelineErrorToast.ts +21 -0
  17. package/app/modular/result-views.ts +6 -0
  18. package/app/stores/agentRuns.spec.ts +1 -0
  19. package/app/stores/bugFishing.ts +143 -0
  20. package/app/stores/ui/resultViews.ts +14 -7
  21. package/app/stores/ui/runStepOpeners.ts +29 -1
  22. package/app/stores/workspaceSettings.ts +1 -0
  23. package/app/types/bootstrap.ts +1 -0
  24. package/app/types/execution.ts +9 -0
  25. package/app/utils/catalog.spec.ts +1 -0
  26. package/app/utils/catalog.ts +25 -0
  27. package/app/utils/repoPath.spec.ts +49 -0
  28. package/app/utils/repoPath.ts +28 -0
  29. package/i18n/locales/de.json +121 -10
  30. package/i18n/locales/en.json +120 -9
  31. package/i18n/locales/es.json +121 -10
  32. package/i18n/locales/fr.json +121 -10
  33. package/i18n/locales/he.json +121 -10
  34. package/i18n/locales/it.json +121 -10
  35. package/i18n/locales/ja.json +121 -10
  36. package/i18n/locales/pl.json +121 -10
  37. package/i18n/locales/tr.json +121 -10
  38. package/i18n/locales/uk.json +121 -10
  39. package/package.json +2 -2
@@ -1175,6 +1175,11 @@
1175
1175
  "ageToggle": "Nascondi anche le attività completate da tempo",
1176
1176
  "days": "Conserva (giorni)",
1177
1177
  "hidesOnlyHint": "Non viene eliminato nulla. Le attività senza data di completamento registrata non vengono mai nascoste per anzianità."
1178
+ },
1179
+ "bugFishing": {
1180
+ "heading": "Pipeline di correzione della pesca di bug",
1181
+ "body": "La pipeline con cui viene eseguita un'attività di correzione quando contrassegna un rilievo di una pesca di bug. Ogni rilievo contrassegnato diventa una sua attività su questa pipeline; chi contrassegna può cambiare la scelta per un singolo lotto.",
1182
+ "builtInDefault": "Usa il preset di correzione integrato"
1178
1183
  }
1179
1184
  },
1180
1185
  "localModelEndpoints": {
@@ -2533,7 +2538,8 @@
2533
2538
  "budget_paused": "Segna come letto",
2534
2539
  "budget_threshold": "Segna come letto",
2535
2540
  "key_drift": "Elimina credenziali obsolete",
2536
- "merge_tag_request": "Registra l’impegno"
2541
+ "merge_tag_request": "Registra l’impegno",
2542
+ "bug_fishing_triage": "Segna come letto"
2537
2543
  },
2538
2544
  "failingRun": "{kind} · {at}",
2539
2545
  "failingRunsMore": "altre {count} non mostrate",
@@ -2999,7 +3005,8 @@
2999
3005
  "media": "Media",
3000
3006
  "recurring": "Ricorrente",
3001
3007
  "review": "Revisione",
3002
- "ralph": "Ciclo Ralph"
3008
+ "ralph": "Ciclo Ralph",
3009
+ "bugFishing": "Pesca di bug"
3003
3010
  },
3004
3011
  "recurringWithFrame": "Un'attività ricorrente esegue una pipeline a cadenza regolare. Continua per impostare la pianificazione e il prompt.",
3005
3012
  "recurringNoFrame": "Un'attività ricorrente deve risiedere su un servizio. Aggiungila da un frame di servizio (o da un modulo al suo interno).",
@@ -3114,7 +3121,18 @@
3114
3121
  "prNotFound": "La pull request n. {number} non è stata trovata nel repository di questo servizio. Controlla il numero, oppure collega il servizio al repository in cui si trova la pull request.",
3115
3122
  "prRepoMismatch": "Quella pull request si trova in un altro repository. Questo servizio revisiona {repo}, quindi crea l'attività di revisione sotto il servizio collegato al repository della pull request."
3116
3123
  },
3117
- "contextFailed": "Attività non creata: {count} allegato non leggibile | Attività non creata: {count} allegati non leggibili"
3124
+ "contextFailed": "Attività non creata: {count} allegato non leggibile | Attività non creata: {count} allegati non leggibili",
3125
+ "bugFishingFields": {
3126
+ "angles": {
3127
+ "label": "Angolazioni da esplorare",
3128
+ "hint": "Ogni angolazione è un passaggio a sé sul codice, con una domanda diversa. Lasci tutte le caselle vuote per esplorarle tutte.",
3129
+ "allSelected": "Verranno esplorate tutte le angolazioni."
3130
+ },
3131
+ "focus": {
3132
+ "label": "Dove concentrarsi",
3133
+ "placeholder": "Sottosistemi, cartelle o il tipo di difetto che sta costando più tempo a questo team"
3134
+ }
3135
+ }
3118
3136
  },
3119
3137
  "recurring": {
3120
3138
  "title": "Aggiungi una pipeline ricorrente",
@@ -3700,6 +3718,10 @@
3700
3718
  "selected": "Selezionata",
3701
3719
  "added": "Aggiunto",
3702
3720
  "useThisFolder": "Usa questa cartella",
3721
+ "createHere": "Crea qui",
3722
+ "newDirTarget": "Nuova cartella:",
3723
+ "nameTaken": "{name} esiste già qui. Scegli un’altra cartella o cambia il nome sopra.",
3724
+ "exists": "Esiste",
3703
3725
  "errors": {
3704
3726
  "listDirectory": "Impossibile elencare la directory"
3705
3727
  },
@@ -5064,7 +5086,8 @@
5064
5086
  "title": "Esecuzioni recenti",
5065
5087
  "fromArch": "da {name}",
5066
5088
  "fromScratch": "da zero",
5067
- "open": "Apri"
5089
+ "open": "Apri",
5090
+ "openPr": "Pull request"
5068
5091
  },
5069
5092
  "status": {
5070
5093
  "pending": "in attesa",
@@ -5112,11 +5135,24 @@
5112
5135
  "label": "Dove va il servizio",
5113
5136
  "newRepo": {
5114
5137
  "label": "Un nuovo repository",
5115
- "description": "Creare un repository dedicato e caricare il servizio come primo commit."
5138
+ "description": "Crea un repository dedicato e ci scrive il servizio."
5116
5139
  },
5117
5140
  "monorepo": {
5118
5141
  "label": "Una cartella di un monorepo esistente",
5119
- "description": "Aggiungere il servizio a un repository che hai già e aprire una pull request."
5142
+ "description": "Aggiunge il servizio a un repository che hai già."
5143
+ }
5144
+ },
5145
+ "delivery": {
5146
+ "label": "Come viene consegnato il lavoro",
5147
+ "pullRequest": {
5148
+ "label": "Apri una pull request",
5149
+ "descNewRepo": "Pubblica un branch e apre una pull request sul primo commit del repository, così qualcuno rivede l’impalcatura prima che diventi il branch predefinito. Il repository deve già avere un commit.",
5150
+ "descMonorepo": "Pubblica un branch e apre una pull request. Non viene unito nulla al posto tuo."
5151
+ },
5152
+ "directPush": {
5153
+ "label": "Pubblica direttamente",
5154
+ "descNewRepo": "Scrive il servizio direttamente sul branch predefinito, come primo commit del repository.",
5155
+ "descMonorepo": "Fa commit sul branch predefinito mentre l’agente lavora. Se l’esecuzione fallisce, resta quanto era già stato scritto."
5120
5156
  }
5121
5157
  },
5122
5158
  "serviceName": {
@@ -5124,7 +5160,7 @@
5124
5160
  "description": "Dà il nome al servizio sulla lavagna e propone la sua cartella."
5125
5161
  },
5126
5162
  "monorepo": {
5127
- "intro": "Il servizio viene scritto in una cartella di un repository esistente e consegnato come pull request. Nulla viene unito al posto tuo e nulla viene modificato fuori dalla nuova cartella.",
5163
+ "intro": "Il servizio viene scritto in una directory di un repository esistente e nulla al di fuori di quella directory viene modificato.",
5128
5164
  "repo": {
5129
5165
  "label": "Monorepo",
5130
5166
  "description": "Il repository in cui vivrà il nuovo servizio. Deve essere già collegato a questo spazio di lavoro.",
@@ -5133,8 +5169,11 @@
5133
5169
  },
5134
5170
  "directory": {
5135
5171
  "label": "Cartella del servizio",
5136
- "description": "Dove vive il servizio, rispetto alla radice del repository. Non deve ancora esistere.",
5172
+ "description": "Dove vive il servizio, rispetto alla radice del repo. L’esecuzione la crea, quindi non deve ancora esistere.",
5137
5173
  "placeholder": "services/payments",
5174
+ "browse": "Esplora il repository",
5175
+ "browseHint": "Apri la cartella in cui il servizio deve stare. Il nome indicato sopra viene creato al suo interno, quindi non c’è nulla da scegliere nell’albero.",
5176
+ "browseNeedsName": "Indica prima una cartella sopra (o il nome del servizio sotto). Esplorare decide dove va quel nome, non come si chiama.",
5138
5177
  "error": {
5139
5178
  "empty": "Indica una cartella dentro il repository.",
5140
5179
  "escapes": "La cartella deve restare dentro il repository."
@@ -6109,7 +6148,11 @@
6109
6148
  "kaizen_entry_not_settled": "La voce Kaizen non è ancora stata valutata",
6110
6149
  "bootstrap_not_awaiting_review": "Questo bootstrap non attende una revisione",
6111
6150
  "adoption_plan_unavailable": "Non c’è alcun piano da approvare",
6112
- "monorepo_directory_taken": "Quella cartella esiste già"
6151
+ "monorepo_directory_taken": "Quella cartella esiste già",
6152
+ "no_expedition": "Questa esecuzione non contiene una pesca di bug",
6153
+ "not_awaiting_triage": "Questa spedizione non è in attesa di triage",
6154
+ "already_addressed": "Alcuni rilievi hanno già un'attività di correzione",
6155
+ "no_host_frame": "Questa spedizione non si trova sotto un servizio"
6113
6156
  },
6114
6157
  "description": {
6115
6158
  "dependencies_unmet": "Questa attività dipende da altre non ancora completate. Completale o sbloccale, poi avviala di nuovo.",
@@ -6154,7 +6197,11 @@
6154
6197
  "kaizen_entry_not_settled": "La sua valutazione è ancora in coda o in corso, quindi non ci sono raccomandazioni da confermare. Riprova quando sarà terminata.",
6155
6198
  "bootstrap_not_awaiting_review": "L'esecuzione è andata avanti da quando questa revisione è stata aperta. Ricarica la lavagna.",
6156
6199
  "adoption_plan_unavailable": "L'analisi non è riuscita a produrne uno, quindi non ci sono decisioni da inviare.",
6157
- "monorepo_directory_taken": "Un bootstrap crea un nuovo servizio. Scegli una cartella che non esiste ancora, o importa quella esistente come servizio."
6200
+ "monorepo_directory_taken": "Un bootstrap crea un nuovo servizio. Scegli una cartella che non esiste ancora, o importa quella esistente come servizio.",
6201
+ "no_expedition": "L'esecuzione che sta guardando non porta alcuno stato di spedizione, quindi non c'è nulla da valutare. Ricarichi l'esecuzione e riprovi.",
6202
+ "not_awaiting_triage": "O sta ancora esplorando un'altra angolazione o è già stata conclusa. Ricarichi l'esecuzione per vedere a che punto è.",
6203
+ "already_addressed": "Un'attività di correzione era già stata creata per essi, quindi non è stato creato nulla di nuovo. Apra il rilievo per raggiungere l'attività esistente.",
6204
+ "no_host_frame": "Un'attività di correzione ha bisogno di un servizio in cui vivere e di un repository da correggere. Sposti l'attività della spedizione sotto un frame di servizio e riprovi."
6158
6205
  },
6159
6206
  "action": {
6160
6207
  "connectGitHub": "Collega GitHub",
@@ -8298,5 +8345,69 @@
8298
8345
  "disconnected": "Catalogo dei servizi scollegato",
8299
8346
  "disconnectFailed": "Non è stato possibile scollegare il catalogo dei servizi"
8300
8347
  }
8348
+ },
8349
+ "bugFishing": {
8350
+ "title": "Spedizione di pesca di bug",
8351
+ "titleWithBlock": "Pesca di bug: {title}",
8352
+ "subtitle": "Contrassegni i rilievi da correggere: ognuno diventa una sua attività di correzione.",
8353
+ "stillFishing": "Pesca ancora in corso — sono arrivate {done} angolazioni su {total}. Tutto quanto sotto è già gestibile.",
8354
+ "counts": "{untriaged} da valutare, {spawned} inviati alla correzione",
8355
+ "showTriaged": "Mostra i decisi",
8356
+ "phases": {
8357
+ "heading": "Angolazioni",
8358
+ "all": "Tutto il pescato ({count})",
8359
+ "found": "{count} trovati",
8360
+ "failedNote": "Questa angolazione non è stata completata: {reason}",
8361
+ "status": {
8362
+ "pending": "In coda",
8363
+ "fishing": "Pesca in corso…",
8364
+ "completed": "Completata",
8365
+ "failed": "Fallita"
8366
+ }
8367
+ },
8368
+ "fixPipeline": {
8369
+ "label": "Le correzioni vengono eseguite su",
8370
+ "boardDefault": "Il valore predefinito della board",
8371
+ "hint": "I rilievi che contrassegnerà da ora in poi verranno eseguiti su {pipeline}."
8372
+ },
8373
+ "empty": {
8374
+ "nothingCaught": "Finora questa spedizione non ha trovato nulla.",
8375
+ "allTriaged": "Su ogni rilievo è stata presa una decisione."
8376
+ },
8377
+ "finding": {
8378
+ "failureScenario": "Come si manifesta",
8379
+ "evidence": "Prove citate dalla spedizione",
8380
+ "suggestedFix": "Correzione suggerita",
8381
+ "fixThis": "Correggi",
8382
+ "dismiss": "Scarta",
8383
+ "spawned": "Un'attività di correzione è in esecuzione su {pipeline}",
8384
+ "spawning": "Creazione dell'attività di correzione…",
8385
+ "spawnFailed": "Non è stato possibile creare l'attività di correzione: {reason} Contrassegnalo di nuovo per riprovare.",
8386
+ "openTask": "Apri l'attività"
8387
+ },
8388
+ "severity": {
8389
+ "critical": "Critica",
8390
+ "high": "Alta",
8391
+ "medium": "Media",
8392
+ "low": "Bassa"
8393
+ },
8394
+ "kind": {
8395
+ "bug": "Bug",
8396
+ "logic-gap": "Lacuna logica",
8397
+ "edge-case": "Caso limite",
8398
+ "footgun": "Trappola",
8399
+ "requirement-gap": "Lacuna nei requisiti",
8400
+ "other": "Altro"
8401
+ },
8402
+ "confidence": {
8403
+ "high": "Confidenza alta",
8404
+ "medium": "Confidenza media",
8405
+ "low": "Confidenza bassa"
8406
+ },
8407
+ "footer": {
8408
+ "parked": "Tutte le angolazioni sono state esplorate.",
8409
+ "parkedWithUntriaged": "Restano {count} rilievi senza decisione.",
8410
+ "finish": "Concludi il triage"
8411
+ }
8301
8412
  }
8302
8413
  }
@@ -223,7 +223,8 @@
223
223
  "media": "メディア",
224
224
  "recurring": "繰り返し",
225
225
  "review": "レビュー",
226
- "ralph": "Ralph ループ"
226
+ "ralph": "Ralph ループ",
227
+ "bugFishing": "バグ探索"
227
228
  },
228
229
  "recurringWithFrame": "繰り返しタスクは一定の周期でパイプラインを実行します。続行してスケジュールとプロンプトを設定してください。",
229
230
  "recurringNoFrame": "繰り返しタスクはサービス上に配置する必要があります。サービスフレーム(またはその中のモジュール)から追加してください。",
@@ -338,7 +339,18 @@
338
339
  "prNotFound": "プルリクエスト #{number} はこのサービスのリポジトリで見つかりませんでした。番号を確認するか、そのプルリクエストがあるリポジトリをサービスに紐付けてください。",
339
340
  "prRepoMismatch": "そのプルリクエストは別のリポジトリにあります。このサービスは {repo} をレビューします。プルリクエストのリポジトリに紐付いたサービスの下にレビュータスクを作成してください。"
340
341
  },
341
- "contextFailed": "タスクは作成されていません: {count} 件の添付を読み取れませんでした | タスクは作成されていません: {count} 件の添付を読み取れませんでした"
342
+ "contextFailed": "タスクは作成されていません: {count} 件の添付を読み取れませんでした | タスクは作成されていません: {count} 件の添付を読み取れませんでした",
343
+ "bugFishingFields": {
344
+ "angles": {
345
+ "label": "探索する観点",
346
+ "hint": "各観点はコードベースを異なる問いで見直す独立したパスです。すべて未選択のままにすると全観点を探索します。",
347
+ "allSelected": "すべての観点を探索します。"
348
+ },
349
+ "focus": {
350
+ "label": "重点を置く箇所",
351
+ "placeholder": "サブシステム、ディレクトリ、またはこのチームで手間になっている不具合の種類"
352
+ }
353
+ }
342
354
  },
343
355
  "recurring": {
344
356
  "title": "繰り返しパイプラインを追加",
@@ -690,7 +702,11 @@
690
702
  "kaizen_entry_not_settled": "この Kaizen エントリはまだ採点されていません",
691
703
  "bootstrap_not_awaiting_review": "このブートストラップはレビュー待ちではありません",
692
704
  "adoption_plan_unavailable": "承認できる計画がありません",
693
- "monorepo_directory_taken": "そのディレクトリはすでに存在します"
705
+ "monorepo_directory_taken": "そのディレクトリはすでに存在します",
706
+ "no_expedition": "この実行にはバグ探索がありません",
707
+ "not_awaiting_triage": "この探索はトリアージ待ちではありません",
708
+ "already_addressed": "一部の指摘にはすでに修正タスクがあります",
709
+ "no_host_frame": "この探索はサービスの配下にありません"
694
710
  },
695
711
  "description": {
696
712
  "dependencies_unmet": "このタスクは、まだ完了していない他のタスクに依存しています。それらを完了または解除してから、もう一度開始してください。",
@@ -735,7 +751,11 @@
735
751
  "kaizen_entry_not_settled": "採点が待機中または実行中のため、確認できる改善提案がまだありません。完了してから再試行してください。",
736
752
  "bootstrap_not_awaiting_review": "このレビューを開いてから実行が先に進みました。ボードを再読み込みしてください。",
737
753
  "adoption_plan_unavailable": "調査で計画を作成できなかったため、送信できる判断がありません。",
738
- "monorepo_directory_taken": "ブートストラップは新しいサービスを作成します。まだ存在しないディレクトリを選ぶか、既存のものをサービスとして取り込んでください。"
754
+ "monorepo_directory_taken": "ブートストラップは新しいサービスを作成します。まだ存在しないディレクトリを選ぶか、既存のものをサービスとして取り込んでください。",
755
+ "no_expedition": "表示中の実行には探索の状態がないため、トリアージするものがありません。実行を再読み込みしてやり直してください。",
756
+ "not_awaiting_triage": "まだ別の観点を探索中か、すでに終了しています。実行を再読み込みして状況を確認してください。",
757
+ "already_addressed": "以前に修正タスクが作成済みのため、新たには作成していません。指摘を開くと既存のタスクに移動できます。",
758
+ "no_host_frame": "修正タスクには所属するサービスと修正対象のリポジトリが必要です。探索タスクをサービスフレームの配下へ移動してからやり直してください。"
739
759
  },
740
760
  "action": {
741
761
  "connectGitHub": "GitHub に接続",
@@ -2344,7 +2364,8 @@
2344
2364
  "budget_paused": "既読にする",
2345
2365
  "budget_threshold": "既読にする",
2346
2366
  "key_drift": "古い認証情報を削除",
2347
- "merge_tag_request": "工数を記録"
2367
+ "merge_tag_request": "工数を記録",
2368
+ "bug_fishing_triage": "既読にする"
2348
2369
  },
2349
2370
  "toast": {
2350
2371
  "acted": "対応済みにしました",
@@ -3920,6 +3941,11 @@
3920
3941
  "ageToggle": "完了から時間が経ったタスクも隠す",
3921
3942
  "days": "保持期間(日)",
3922
3943
  "hidesOnlyHint": "削除は行われません。完了日が記録されていないタスクが期間によって隠されることはありません。"
3944
+ },
3945
+ "bugFishing": {
3946
+ "heading": "バグ探索の修正パイプライン",
3947
+ "body": "バグ探索の指摘をマークしたときに、修正タスクが実行されるパイプラインです。マークした指摘ごとに独立したタスクがこのパイプラインで作られます。マークする人はその都度この選択を上書きできます。",
3948
+ "builtInDefault": "組み込みのバグ修正プリセットを使う"
3923
3949
  }
3924
3950
  },
3925
3951
  "localModelEndpoints": {
@@ -4486,6 +4512,10 @@
4486
4512
  "selected": "選択済み",
4487
4513
  "added": "追加済み",
4488
4514
  "useThisFolder": "このフォルダを使用",
4515
+ "createHere": "ここに作成",
4516
+ "newDirTarget": "新しいディレクトリ:",
4517
+ "nameTaken": "{name} はここにすでに存在します。別のフォルダを選ぶか、上の名前を変更してください。",
4518
+ "exists": "既存",
4489
4519
  "errors": {
4490
4520
  "listDirectory": "ディレクトリを一覧表示できませんでした"
4491
4521
  },
@@ -6922,7 +6952,8 @@
6922
6952
  "title": "最近の実行",
6923
6953
  "fromArch": "{name} から",
6924
6954
  "fromScratch": "ゼロから",
6925
- "open": "開く"
6955
+ "open": "開く",
6956
+ "openPr": "プルリクエスト"
6926
6957
  },
6927
6958
  "status": {
6928
6959
  "pending": "保留中",
@@ -6974,11 +7005,24 @@
6974
7005
  "label": "サービスの配置先",
6975
7006
  "newRepo": {
6976
7007
  "label": "新しいリポジトリ",
6977
- "description": "専用のリポジトリを作成し、サービスを最初のコミットとしてプッシュします。"
7008
+ "description": "専用のリポジトリを作成し、そこにサービスを書き込みます。"
6978
7009
  },
6979
7010
  "monorepo": {
6980
7011
  "label": "既存モノレポ内のディレクトリ",
6981
- "description": "すでにあるリポジトリにサービスを追加し、プルリクエストを開きます。"
7012
+ "description": "すでにあるリポジトリにサービスを追加します。"
7013
+ }
7014
+ },
7015
+ "delivery": {
7016
+ "label": "成果物の届け方",
7017
+ "pullRequest": {
7018
+ "label": "プルリクエストを開く",
7019
+ "descNewRepo": "ブランチをプッシュし、リポジトリの最初のコミットに対してプルリクエストを開きます。既定ブランチになる前に足場を人がレビューできます。リポジトリにはすでにコミットが必要です。",
7020
+ "descMonorepo": "ブランチをプッシュしてプルリクエストを開きます。マージは代わりに行いません。"
7021
+ },
7022
+ "directPush": {
7023
+ "label": "直接プッシュ",
7024
+ "descNewRepo": "サービスをリポジトリの最初のコミットとして既定ブランチに直接書き込みます。",
7025
+ "descMonorepo": "エージェントの作業中に既定ブランチへコミットします。失敗した実行は、そこまでに書いた内容を残します。"
6982
7026
  }
6983
7027
  },
6984
7028
  "serviceName": {
@@ -6986,7 +7030,7 @@
6986
7030
  "description": "ボード上のサービス名になり、ディレクトリの初期値にもなります。"
6987
7031
  },
6988
7032
  "monorepo": {
6989
- "intro": "サービスは既存リポジトリのディレクトリに書き込まれ、プルリクエストとして届きます。代わりにマージすることはなく、新しいディレクトリの外は変更しません。",
7033
+ "intro": "サービスは既存リポジトリのディレクトリに書き込まれ、そのディレクトリの外は変更されません。",
6990
7034
  "repo": {
6991
7035
  "label": "モノレポ",
6992
7036
  "description": "新しいサービスを置くリポジトリ。このワークスペースにすでにリンクされている必要があります。",
@@ -6995,8 +7039,11 @@
6995
7039
  },
6996
7040
  "directory": {
6997
7041
  "label": "サービスディレクトリ",
6998
- "description": "リポジトリルートからの相対パス。まだ存在していない必要があります。",
7042
+ "description": "リポジトリルートからの相対パス。実行時に作成されるため、まだ存在していない必要があります。",
6999
7043
  "placeholder": "services/payments",
7044
+ "browse": "リポジトリを探索",
7045
+ "browseHint": "サービスを置くフォルダを開いてください。上で指定した名前がその中に作成されるため、ツリーから選ぶものはありません。",
7046
+ "browseNeedsName": "まず上でディレクトリ名(または下でサービス名)を指定してください。探索が決めるのはその名前をどこに置くかで、名前そのものではありません。",
7000
7047
  "error": {
7001
7048
  "empty": "リポジトリ内のディレクトリを指定してください。",
7002
7049
  "escapes": "ディレクトリはリポジトリの内側に収める必要があります。"
@@ -8298,5 +8345,69 @@
8298
8345
  "disconnected": "サービスカタログを切断しました",
8299
8346
  "disconnectFailed": "サービスカタログを切断できませんでした"
8300
8347
  }
8348
+ },
8349
+ "bugFishing": {
8350
+ "title": "バグ探索",
8351
+ "titleWithBlock": "バグ探索: {title}",
8352
+ "subtitle": "修正すべき指摘をマークしてください。マークするごとに専用のバグ修正タスクが作られます。",
8353
+ "stillFishing": "探索中 — {total} 観点のうち {done} 件が完了しました。以下の内容はすでに対応できます。",
8354
+ "counts": "未判断 {untriaged} 件、修正へ送付 {spawned} 件",
8355
+ "showTriaged": "判断済みを表示",
8356
+ "phases": {
8357
+ "heading": "観点",
8358
+ "all": "すべての指摘 ({count})",
8359
+ "found": "{count} 件",
8360
+ "failedNote": "この観点は完了しませんでした: {reason}",
8361
+ "status": {
8362
+ "pending": "待機中",
8363
+ "fishing": "探索中…",
8364
+ "completed": "完了",
8365
+ "failed": "失敗"
8366
+ }
8367
+ },
8368
+ "fixPipeline": {
8369
+ "label": "修正の実行先",
8370
+ "boardDefault": "ボードの既定値",
8371
+ "hint": "これ以降にマークした指摘は {pipeline} で実行されます。"
8372
+ },
8373
+ "empty": {
8374
+ "nothingCaught": "この探索ではまだ何も見つかっていません。",
8375
+ "allTriaged": "すべての指摘について判断が済んでいます。"
8376
+ },
8377
+ "finding": {
8378
+ "failureScenario": "発生条件",
8379
+ "evidence": "探索が挙げた根拠",
8380
+ "suggestedFix": "修正案",
8381
+ "fixThis": "これを修正",
8382
+ "dismiss": "却下",
8383
+ "spawned": "{pipeline} で修正タスクが実行中です",
8384
+ "spawning": "修正タスクを作成しています…",
8385
+ "spawnFailed": "修正タスクを作成できませんでした: {reason} もう一度マークすると再試行します。",
8386
+ "openTask": "タスクを開く"
8387
+ },
8388
+ "severity": {
8389
+ "critical": "致命的",
8390
+ "high": "高",
8391
+ "medium": "中",
8392
+ "low": "低"
8393
+ },
8394
+ "kind": {
8395
+ "bug": "バグ",
8396
+ "logic-gap": "ロジックの抜け",
8397
+ "edge-case": "境界ケース",
8398
+ "footgun": "落とし穴",
8399
+ "requirement-gap": "要件との乖離",
8400
+ "other": "その他"
8401
+ },
8402
+ "confidence": {
8403
+ "high": "確信度: 高",
8404
+ "medium": "確信度: 中",
8405
+ "low": "確信度: 低"
8406
+ },
8407
+ "footer": {
8408
+ "parked": "すべての観点の探索が終わりました。",
8409
+ "parkedWithUntriaged": "未判断の指摘が {count} 件あります。",
8410
+ "finish": "トリアージを終了"
8411
+ }
8301
8412
  }
8302
8413
  }
@@ -223,7 +223,8 @@
223
223
  "media": "Multimedia",
224
224
  "recurring": "Cykliczne",
225
225
  "review": "Przegląd",
226
- "ralph": "Pętla Ralph"
226
+ "ralph": "Pętla Ralph",
227
+ "bugFishing": "Polowanie na błędy"
227
228
  },
228
229
  "recurringWithFrame": "Zadanie cykliczne uruchamia pipeline w określonym rytmie. Kontynuuj, aby ustawić harmonogram i prompt.",
229
230
  "recurringNoFrame": "Zadanie cykliczne musi należeć do usługi. Dodaj je z ramki usługi (lub modułu w jej obrębie).",
@@ -338,7 +339,18 @@
338
339
  "prNotFound": "Nie znaleziono pull requesta #{number} w repozytorium tej usługi. Sprawdź numer albo powiąż usługę z repozytorium, w którym znajduje się ten pull request.",
339
340
  "prRepoMismatch": "Ten pull request jest w innym repozytorium. Ta usługa przegląda {repo}, więc utwórz zadanie przeglądu w usłudze powiązanej z repozytorium tego pull requesta."
340
341
  },
341
- "contextFailed": "Nie utworzono zadania: nie udało się odczytać {count} załącznika | Nie utworzono zadania: nie udało się odczytać {count} załączników | Nie utworzono zadania: nie udało się odczytać {count} załączników"
342
+ "contextFailed": "Nie utworzono zadania: nie udało się odczytać {count} załącznika | Nie utworzono zadania: nie udało się odczytać {count} załączników | Nie utworzono zadania: nie udało się odczytać {count} załączników",
343
+ "bugFishingFields": {
344
+ "angles": {
345
+ "label": "Perspektywy do przeszukania",
346
+ "hint": "Każda perspektywa to osobne przejście po kodzie z innym pytaniem. Zostaw wszystkie pola puste, aby przeszukać wszystkie.",
347
+ "allSelected": "Zostaną przeszukane wszystkie perspektywy."
348
+ },
349
+ "focus": {
350
+ "label": "Na czym się skupić",
351
+ "placeholder": "Podsystemy, katalogi albo rodzaj usterki, który najbardziej kosztuje ten zespół"
352
+ }
353
+ }
342
354
  },
343
355
  "recurring": {
344
356
  "title": "Dodaj cykliczny pipeline",
@@ -690,7 +702,11 @@
690
702
  "kaizen_entry_not_settled": "Wpis Kaizen nie został jeszcze oceniony",
691
703
  "bootstrap_not_awaiting_review": "Ten bootstrap nie czeka na przegląd",
692
704
  "adoption_plan_unavailable": "Nie ma planu do zatwierdzenia",
693
- "monorepo_directory_taken": "Ten katalog już istnieje"
705
+ "monorepo_directory_taken": "Ten katalog już istnieje",
706
+ "no_expedition": "To uruchomienie nie zawiera polowania na błędy",
707
+ "not_awaiting_triage": "Ta wyprawa nie czeka na segregację",
708
+ "already_addressed": "Część znalezisk ma już zadanie naprawcze",
709
+ "no_host_frame": "Ta wyprawa nie znajduje się pod żadną usługą"
694
710
  },
695
711
  "description": {
696
712
  "dependencies_unmet": "To zadanie zależy od innych, które nie zostały jeszcze ukończone. Ukończ je lub odblokuj, a następnie uruchom je ponownie.",
@@ -735,7 +751,11 @@
735
751
  "kaizen_entry_not_settled": "Jego ocena wciąż czeka w kolejce lub trwa, więc nie ma rekomendacji do potwierdzenia. Spróbuj ponownie po jej zakończeniu.",
736
752
  "bootstrap_not_awaiting_review": "Uruchomienie poszło dalej, odkąd otwarto ten przegląd. Odśwież tablicę.",
737
753
  "adoption_plan_unavailable": "Analiza nie zdołała go utworzyć, więc nie ma decyzji do wysłania.",
738
- "monorepo_directory_taken": "Bootstrap tworzy nową usługę. Wybierz katalog, który jeszcze nie istnieje, albo zaimportuj istniejący jako usługę."
754
+ "monorepo_directory_taken": "Bootstrap tworzy nową usługę. Wybierz katalog, który jeszcze nie istnieje, albo zaimportuj istniejący jako usługę.",
755
+ "no_expedition": "Uruchomienie, które oglądasz, nie niesie stanu wyprawy, więc nie ma czego segregować. Odśwież uruchomienie i spróbuj ponownie.",
756
+ "not_awaiting_triage": "Albo wciąż przeszukuje kolejną perspektywę, albo zostało już zakończone. Odśwież uruchomienie, aby zobaczyć jego stan.",
757
+ "already_addressed": "Zadanie naprawcze powstało dla nich wcześniej, więc nic nie utworzono ponownie. Otwórz znalezisko, aby przejść do istniejącego zadania.",
758
+ "no_host_frame": "Zadanie naprawcze potrzebuje usługi, pod którą będzie żyć, i repozytorium do naprawy. Przenieś zadanie wyprawy pod ramkę usługi i spróbuj ponownie."
739
759
  },
740
760
  "action": {
741
761
  "connectGitHub": "Połącz GitHub",
@@ -2344,7 +2364,8 @@
2344
2364
  "budget_paused": "Oznacz jako przeczytane",
2345
2365
  "budget_threshold": "Oznacz jako przeczytane",
2346
2366
  "key_drift": "Usuń nieaktualne poświadczenia",
2347
- "merge_tag_request": "Zapisz nakład"
2367
+ "merge_tag_request": "Zapisz nakład",
2368
+ "bug_fishing_triage": "Oznacz jako przeczytane"
2348
2369
  },
2349
2370
  "toast": {
2350
2371
  "acted": "Oznaczono jako obsłużone",
@@ -3778,6 +3799,11 @@
3778
3799
  "ageToggle": "Ukryj także zadania ukończone dawno temu",
3779
3800
  "days": "Przechowuj (dni)",
3780
3801
  "hidesOnlyHint": "Nic nie jest usuwane. Zadania bez zapisanej daty ukończenia nigdy nie są ukrywane z powodu wieku."
3802
+ },
3803
+ "bugFishing": {
3804
+ "heading": "Potok naprawczy polowania na błędy",
3805
+ "body": "Potok, w którym uruchamia się zadanie naprawcze, gdy oznaczysz znalezisko z polowania na błędy. Każde oznaczone znalezisko staje się osobnym zadaniem w tym potoku; osoba oznaczająca może zmienić ten wybór dla jednej partii.",
3806
+ "builtInDefault": "Użyj wbudowanego szablonu naprawy błędów"
3781
3807
  }
3782
3808
  },
3783
3809
  "localModelEndpoints": {
@@ -4486,6 +4512,10 @@
4486
4512
  "selected": "Wybrano",
4487
4513
  "added": "Dodano",
4488
4514
  "useThisFolder": "Użyj tego folderu",
4515
+ "createHere": "Utwórz tutaj",
4516
+ "newDirTarget": "Nowy katalog:",
4517
+ "nameTaken": "{name} już tu istnieje. Wybierz inny folder lub zmień nazwę powyżej.",
4518
+ "exists": "Istnieje",
4489
4519
  "errors": {
4490
4520
  "listDirectory": "Nie udało się wyświetlić katalogu"
4491
4521
  },
@@ -6922,7 +6952,8 @@
6922
6952
  "title": "Ostatnie uruchomienia",
6923
6953
  "fromArch": "z {name}",
6924
6954
  "fromScratch": "od zera",
6925
- "open": "Otwórz"
6955
+ "open": "Otwórz",
6956
+ "openPr": "Pull request"
6926
6957
  },
6927
6958
  "status": {
6928
6959
  "pending": "oczekuje",
@@ -6974,11 +7005,24 @@
6974
7005
  "label": "Gdzie trafi usługa",
6975
7006
  "newRepo": {
6976
7007
  "label": "Nowe repozytorium",
6977
- "description": "Utwórz osobne repozytorium i wypchnij usługę jako jego pierwszy commit."
7008
+ "description": "Utwórz osobne repozytorium i zapisz w nim usługę."
6978
7009
  },
6979
7010
  "monorepo": {
6980
7011
  "label": "Katalog w istniejącym monorepo",
6981
- "description": "Dodaj usługę do repozytorium, które już masz, i otwórz pull request."
7012
+ "description": "Dodaj usługę do repozytorium, które już masz."
7013
+ }
7014
+ },
7015
+ "delivery": {
7016
+ "label": "Jak trafia praca",
7017
+ "pullRequest": {
7018
+ "label": "Otwórz pull request",
7019
+ "descNewRepo": "Wypchnij gałąź i otwórz pull request wobec pierwszego commita repozytorium, żeby ktoś przejrzał szkielet, zanim stanie się gałęzią domyślną. Repozytorium musi już mieć commit.",
7020
+ "descMonorepo": "Wypchnij gałąź i otwórz pull request. Nic nie zostanie scalone za ciebie."
7021
+ },
7022
+ "directPush": {
7023
+ "label": "Wypchnij bezpośrednio",
7024
+ "descNewRepo": "Zapisz usługę prosto na gałęzi domyślnej, jako pierwszy commit repozytorium.",
7025
+ "descMonorepo": "Commituj na gałąź domyślną w trakcie pracy agenta. Nieudany przebieg zostawia to, co zdążył zapisać."
6982
7026
  }
6983
7027
  },
6984
7028
  "serviceName": {
@@ -6986,7 +7030,7 @@
6986
7030
  "description": "Nazywa usługę na tablicy i podpowiada jej katalog."
6987
7031
  },
6988
7032
  "monorepo": {
6989
- "intro": "Usługa jest zapisywana w katalogu istniejącego repozytorium i dostarczana jako pull request. Nic nie jest za Ciebie scalane ani zmieniane poza nowym katalogiem.",
7033
+ "intro": "Usługa jest zapisywana w katalogu istniejącego repozytorium; poza tym katalogiem nic się nie zmienia.",
6990
7034
  "repo": {
6991
7035
  "label": "Monorepo",
6992
7036
  "description": "Repozytorium, w którym zamieszka nowa usługa. Musi być już powiązane z tą przestrzenią roboczą.",
@@ -6995,8 +7039,11 @@
6995
7039
  },
6996
7040
  "directory": {
6997
7041
  "label": "Katalog usługi",
6998
- "description": "Gdzie znajduje się usługa, względem katalogu głównego repozytorium. Nie może jeszcze istnieć.",
7042
+ "description": "Gdzie znajduje się usługa, względem katalogu głównego repo. Uruchomienie go tworzy, więc nie może jeszcze istnieć.",
6999
7043
  "placeholder": "services/payments",
7044
+ "browse": "Przeglądaj repozytorium",
7045
+ "browseHint": "Otwórz folder, w którym ma znaleźć się usługa. Nazwa podana powyżej zostanie w nim utworzona, więc w drzewie nie ma czego wybierać.",
7046
+ "browseNeedsName": "Najpierw podaj katalog powyżej (lub nazwę usługi poniżej). Przeglądanie decyduje, gdzie ta nazwa wyląduje, a nie jak brzmi.",
7000
7047
  "error": {
7001
7048
  "empty": "Podaj katalog wewnątrz repozytorium.",
7002
7049
  "escapes": "Katalog musi pozostać wewnątrz repozytorium."
@@ -8298,5 +8345,69 @@
8298
8345
  "disconnected": "Katalog usług rozłączony",
8299
8346
  "disconnectFailed": "Nie udało się rozłączyć katalogu usług"
8300
8347
  }
8348
+ },
8349
+ "bugFishing": {
8350
+ "title": "Wyprawa na błędy",
8351
+ "titleWithBlock": "Polowanie na błędy: {title}",
8352
+ "subtitle": "Oznacz znaleziska warte naprawy — z każdego powstanie osobne zadanie naprawcze.",
8353
+ "stillFishing": "Polowanie trwa — dotarło {done} z {total} perspektyw. Wszystko poniżej można już obsłużyć.",
8354
+ "counts": "{untriaged} do rozpatrzenia, {spawned} wysłano do naprawy",
8355
+ "showTriaged": "Pokaż rozstrzygnięte",
8356
+ "phases": {
8357
+ "heading": "Perspektywy",
8358
+ "all": "Wszystkie znaleziska ({count})",
8359
+ "found": "znaleziono {count}",
8360
+ "failedNote": "Ta perspektywa nie została ukończona: {reason}",
8361
+ "status": {
8362
+ "pending": "W kolejce",
8363
+ "fishing": "Polowanie…",
8364
+ "completed": "Gotowe",
8365
+ "failed": "Niepowodzenie"
8366
+ }
8367
+ },
8368
+ "fixPipeline": {
8369
+ "label": "Naprawy uruchamiane w",
8370
+ "boardDefault": "Domyślny potok tablicy",
8371
+ "hint": "Znaleziska oznaczane od tej chwili uruchomią się w {pipeline}."
8372
+ },
8373
+ "empty": {
8374
+ "nothingCaught": "Ta wyprawa nie znalazła jak dotąd niczego.",
8375
+ "allTriaged": "Każde znalezisko zostało rozstrzygnięte."
8376
+ },
8377
+ "finding": {
8378
+ "failureScenario": "Jak się ujawnia",
8379
+ "evidence": "Dowody przytoczone przez wyprawę",
8380
+ "suggestedFix": "Proponowana naprawa",
8381
+ "fixThis": "Napraw to",
8382
+ "dismiss": "Odrzuć",
8383
+ "spawned": "Zadanie naprawcze działa w {pipeline}",
8384
+ "spawning": "Tworzenie zadania naprawczego…",
8385
+ "spawnFailed": "Nie udało się utworzyć zadania naprawczego: {reason} Oznacz je ponownie, aby spróbować jeszcze raz.",
8386
+ "openTask": "Otwórz zadanie"
8387
+ },
8388
+ "severity": {
8389
+ "critical": "Krytyczna",
8390
+ "high": "Wysoka",
8391
+ "medium": "Średnia",
8392
+ "low": "Niska"
8393
+ },
8394
+ "kind": {
8395
+ "bug": "Błąd",
8396
+ "logic-gap": "Luka w logice",
8397
+ "edge-case": "Przypadek brzegowy",
8398
+ "footgun": "Pułapka",
8399
+ "requirement-gap": "Luka w wymaganiach",
8400
+ "other": "Inne"
8401
+ },
8402
+ "confidence": {
8403
+ "high": "Wysoka pewność",
8404
+ "medium": "Średnia pewność",
8405
+ "low": "Niska pewność"
8406
+ },
8407
+ "footer": {
8408
+ "parked": "Przeszukano wszystkie perspektywy.",
8409
+ "parkedWithUntriaged": "Pozostało {count} nierozstrzygniętych znalezisk.",
8410
+ "finish": "Zakończ segregację"
8411
+ }
8301
8412
  }
8302
8413
  }