-
@@ -981,7 +983,7 @@ async function addDecision() {
- ⚠ Требуют ручного решения
+ {{ t('projectView.manual_escalations_warn') }}
({{ manualEscalationTasks.length }})
@@ -1003,7 +1005,7 @@ async function addDecision() {
-
No tasks.
+
{{ t('projectView.no_tasks') }}
✕
- Loading phases...
+
No research phases. Use "New Project" to start a research workflow.
@@ -1224,7 +1226,7 @@ async function addDecision() {
@@ -1432,7 +1434,7 @@ async function addDecision() {
{{ linkFormError }}
+ class="px-3 py-1.5 text-sm text-gray-400 hover:text-gray-200">{{ t('common.cancel') }}
diff --git a/web/frontend/src/views/SettingsView.vue b/web/frontend/src/views/SettingsView.vue
index eaeec8e..42a91ff 100644
--- a/web/frontend/src/views/SettingsView.vue
+++ b/web/frontend/src/views/SettingsView.vue
@@ -1,7 +1,10 @@
- Loading...
+ {{ t('taskDetail.loading') }}
{{ error }}
@@ -422,7 +420,7 @@ async function saveEdit() {
- ⚠ Требует ручного решения
+ {{ t('taskDetail.requires_manual') }}
— эскалация из
@@ -432,15 +430,15 @@ async function saveEdit() {
{{ task.title }}
{{ task.brief.description }}
-
Автопилот не смог выполнить это автоматически. Примите меры вручную и нажмите «Решить вручную».
+
{{ t('taskDetail.autopilot_failed') }}
⚠
-
--dangerously-skip-permissions использовался в этой задаче
-
Агент выполнял команды с обходом проверок разрешений. Проверьте pipeline-шаги и сделанные изменения.
+
{{ t('taskDetail.dangerously_skipped') }}
+
{{ t('taskDetail.dangerously_skipped_hint') }}
@@ -448,7 +446,7 @@ async function saveEdit() {
Brief: {{ JSON.stringify(task.brief) }}
-
Критерии приёмки
+
{{ t('taskDetail.acceptance_criteria') }}
{{ task.acceptance_criteria }}
@@ -462,8 +460,8 @@ async function saveEdit() {
- Pipeline
- running...
+ {{ t('taskDetail.pipeline') }}
+ {{ t('taskDetail.running') }}
@@ -493,7 +491,7 @@ async function saveEdit() {
- No pipeline steps yet.
+ {{ t('taskDetail.no_pipeline') }}
@@ -516,7 +514,7 @@ async function saveEdit() {
{{ parsedSelectedOutput.verdict }}
- ↓ подробнее
+ {{ t('taskDetail.more_details') }}
{{ parsedSelectedOutput.details }}
@@ -542,7 +540,7 @@ async function saveEdit() {
-
Вложения
+
{{ t('taskDetail.attachments') }}
@@ -552,22 +550,22 @@ async function saveEdit() {
- Автопилот активен
+ {{ t('taskDetail.autopilot_active') }}
- ✓ Approve
+ {{ t('taskDetail.approve_task') }}
- 🔄 Revise
+ {{ t('taskDetail.revise_task') }}
- ✗ Reject
+ {{ t('taskDetail.reject_task') }}
- ✎ Edit
+ {{ t('taskDetail.edit') }}
- {{ (polling || pipelineStarting) ? 'Pipeline running...' : '▶ Run Pipeline' }}
+ {{ (polling || pipelineStarting) ? t('taskDetail.pipeline_running') : t('taskDetail.run_pipeline') }}
- {{ resolvingManually ? 'Сохраняем...' : '✓ Решить вручную' }}
+ {{ resolvingManually ? t('taskDetail.resolving') : t('taskDetail.resolve_manually') }}
- {{ deploying ? 'Deploying...' : '🚀 Deploy' }}
+ {{ deploying ? t('taskDetail.deploying') : t('taskDetail.deploy') }}
@@ -611,9 +609,9 @@ async function saveEdit() {
⚠ Claude CLI requires login
-
Откройте терминал и выполните:
+
{{ t('taskDetail.terminal_login_hint') }}
claude login
-
После входа повторите запуск pipeline.
+
{{ t('taskDetail.login_after_hint') }}
✕
@@ -624,7 +622,7 @@ async function saveEdit() {
:class="deployResult.overall_success !== false && deployResult.success ? 'border-teal-800 bg-teal-950/30 text-teal-300' : 'border-red-800 bg-red-950/30 text-red-300'">
- {{ deployResult.overall_success !== false && deployResult.success ? 'Deploy succeeded' : 'Deploy failed' }}
+ {{ deployResult.overall_success !== false && deployResult.success ? t('taskDetail.deploy_succeeded') : t('taskDetail.deploy_failed') }}
{{ deployResult.duration_seconds }}s
x
@@ -650,7 +648,7 @@ async function saveEdit() {
-
Зависимые проекты:
+
{{ t('taskDetail.dependent_projects') }}
ok
{{ dep }}
@@ -704,9 +702,9 @@ async function saveEdit() {
Create follow-up tasks from pipeline results
Optionally record a decision:
-
-
@@ -728,14 +726,14 @@ async function saveEdit() {
-
+
@@ -744,30 +742,30 @@ async function saveEdit() {