-
-
{{ t('admin.codexGatewayBorrow.historyHint') }}
-
{{ t('admin.codexGatewayBorrow.refreshHistory') }}
-
-
{{ historyError }}
+
+
{{ text('上次提交结果尚未确认。查询或重试使用同一个任务标识,避免重复生成。', 'The previous submission is unconfirmed. Checking or retrying uses the same task identity to avoid duplicate generation.') }}
+
{{ text('查询任务', 'Check task') }} {{ text('重试同一提交', 'Retry same submission') }}
+
+
{{ text('任务', 'Tasks') }} {{ text('作品与比较', 'Works and comparison') }}
+
+
+
{{ text('最近 24 小时任务', 'Tasks from the last 24 hours') }} {{ t('admin.codexGatewayBorrow.refreshHistory') }}
{{ t('common.loading') }}
-
-
- {{ formatTime(task.created_at) }} · {{ task.completed }} / {{ task.total }} · {{ stateLabel(task.status) }}
- {{ task.id }} · {{ t('admin.codexGatewayBorrow.expiresAt') }} {{ formatTime(task.expires_at) }}
-
- {{ t('admin.codexGatewayBorrow.viewResults') }}
+
+ {{ formatTime(task.created_at) }} {{ stateLabel(task.status) }} · {{ text('已处理', 'Processed') }} {{ task.completed }} / {{ task.total }} {{ task.id }}
- {{ t('admin.codexGatewayBorrow.noHistory') }}
-
- {{ t('admin.codexGatewayBorrow.previous') }}
- {{ historyPage }} / {{ Math.ceil(history.total / 12) }}
- {{ t('common.next') }}
-
-
-
-
-
{{ t('admin.codexGatewayBorrow.taskId') }}: {{ activeTask.id }} · {{ formatTime(activeTask.created_at) }} · {{ t('admin.codexGatewayBorrow.expiresAt') }}: {{ formatTime(activeTask.expires_at) }}
+
{{ t('admin.codexGatewayBorrow.noHistory') }}
+
{{ t('pagination.previous') }} {{ historyPage }} {{ t('pagination.next') }}
+
+
+
+
{{ text('跨任务比较', 'Compare across tasks') }} {{ comparison.length }} / 4 {{ text('并排查看', 'View side by side') }}
+ {{ item.account_name }} · {{ item.model_id }} ×
+ {{ text('重试选中失败项(新任务)', 'Retry selected failures (new task)') }} ({{ selectedFailures.length }})
+
+
+ {{ text('任务结果', 'Task results') }} {{ activeTask.id }} · {{ formatTime(activeTask.created_at) }}
{{ text('复制参数', 'Copy parameters') }} {{ text('重试全部失败项', 'Retry all failures') }} ({{ failedCount }}) {{ text('停止任务', 'Stop task') }}
+ {{ text('已完成', 'Completed') }}{{ activeTask.counts.complete || 0 }}
{{ text('失败/中断', 'Failed / interrupted') }}{{ failedCount }}
{{ text('取消', 'Cancelled') }}{{ activeTask.counts.cancelled || 0 }}
{{ text('等待/进行中', 'Pending / running') }}{{ (activeTask.counts.pending || 0) + (activeTask.counts.running || 0) }}
+ {{ text('已处理', 'Processed') }} {{ activeTask.completed }} / {{ activeTask.total }} · {{ text('完成但不可预览', 'Completed without preview') }} {{ activeTask.counts.no_preview || 0 }} · {{ text('每项生成预算', 'Generation budget per item') }} {{ (activeTask.generation_timeout_seconds || 600) / 60 }} {{ t('admin.pelicanTests.minutes') }}
+ {{ connection === 'retrying' ? text('观察连接中断,正在重连;后台任务继续。', 'Observation disconnected; reconnecting. The background task continues.') : text('后台任务运行中,离开页面不会取消。', 'Running in the background; leaving this page does not cancel it.') }}
+ {{ text('已请求停止,正在保存已有结果。', 'Stop requested; preserving existing results.') }}
{{ activeTask.error }}
-
-
{{ t('admin.codexGatewayBorrow.noResults') }}
-
-
-
-
-
{{ result.account_name || accountName(result.account_id) }}
-
{{ result.phase && ['pending', 'running'].includes(result.status) ? t(`admin.pelicanTests.phases.${result.phase}`) : stateLabel(result.status) }}
-
- {{ result.platform || accountById(result.account_id)?.platform || '—' }} · {{ result.model_id }}
- {{ result.effort || t('admin.pelicanTests.normalDefault') }} · {{ formatDuration(result.generation_duration_ms ?? result.duration_ms) }}
-
-
-
-
{{ result.preview_url ? t('admin.pelicanTests.previewOnVisible') : previewPlaceholder(result) }}
-
-
- {{ t('admin.pelicanTests.details') }}
-
-
-
-
-
-
-
+
{{ t('admin.pelicanTests.viewPrompt') }} {{ activeTask.prompt || PELICAN_PROMPT }}
+
{{ text('按账号 ID 筛选', 'Filter by account ID') }} {{ text('按模型筛选', 'Filter by model') }} {{ text('结果状态', 'Result status') }}{{ text('全部', 'All') }} {{ status === 'no_preview' ? text('不可预览', 'No preview') : stateLabel(status) }}
+
+
+
{{ text('当前筛选没有结果。', 'No results match these filters.') }}
+
+
{{ text('选择任务查看作品,或新建一组测试', 'Select a task or create a new test') }} {{ text('查看历史、筛选、放大和比较都只读取结果,不会重新调用模型。', 'History, filters, enlargement and comparison only read saved results; they never generate again.') }}
+
+
+