Skip to content

Commit 623f35a

Browse files
feat(stage-pages,stage-ui,i18n): disable auto trigger for chatcompletion check and use explict button (#1336)
Co-authored-by-agent: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Neko <neko@ayaka.moe>
1 parent 72925c1 commit 623f35a

22 files changed

Lines changed: 393 additions & 139 deletions

File tree

packages/i18n/src/locales/en/settings.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,12 @@ dialogs:
2020
baseUrlHelp: API endpoint URL (use default if unsure)
2121
accountId: Account ID
2222
validationSuccess: Configuration validation success
23+
validationPartial: Configuration partially validated
2324
validationFailed: Configuration validation failed
2425
validationError: 'Validation error: {error}'
26+
testGeneration: Test Generation
27+
testGenerationRunning: Testing...
28+
testGenerationFailed: Generation test failed
2529
skipForNow: Skip for now
2630
saveAndContinue: Save and Continue
2731
next: Next

packages/i18n/src/locales/es/settings.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,12 @@ dialogs:
1919
baseUrlHelp: URL del endpoint de la API (usa el predeterminado si no estás seguro)
2020
accountId: ID de Cuenta
2121
validationSuccess: La validación de la configuración fue exitosa
22+
validationPartial: Configuración parcialmente validada
2223
validationFailed: La validación de la configuración falló
2324
validationError: 'Error de validación: {error}'
25+
testGeneration: Prueba de Generación
26+
testGenerationRunning: Probando...
27+
testGenerationFailed: Prueba de generación fallida
2428
skipForNow: Omitir por ahora
2529
saveAndContinue: Guardar y Continuar
2630
next: Siguiente

packages/i18n/src/locales/fr/settings.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,12 @@ dialogs:
1919
baseUrlHelp: URL de l'endpoint API (utilisez la valeur par défaut si vous n’êtes pas sûr)
2020
accountId: ID du compte
2121
validationSuccess: Validation de la configuration réussie
22+
validationPartial: Configuration partiellement validée
2223
validationFailed: La validation de la configuration a échouée.
2324
validationError: 'Erreur de validation: {error}'
25+
testGeneration: Test de génération
26+
testGenerationRunning: Test en cours...
27+
testGenerationFailed: Test de génération échoué
2428
skipForNow: Passer pour l'instant
2529
saveAndContinue: Sauvegarder et Continuer
2630
next: Suivant

packages/i18n/src/locales/ja/settings.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,12 @@ dialogs:
1919
baseUrlHelp: APIエンドポイントURL(不明な場合はデフォルトを使用)
2020
accountId: アカウントID
2121
validationSuccess: 設定検証に成功
22+
validationPartial: 設定が部分的に検証されました
2223
validationFailed: 設定検証に失敗
2324
validationError: '検証エラー: {error}'
25+
testGeneration: 生成テスト
26+
testGenerationRunning: テスト中...
27+
testGenerationFailed: 生成テストに失敗
2428
skipForNow: 今はスキップ
2529
saveAndContinue: 保存して続行
2630
next: 次へ

packages/i18n/src/locales/ko/settings.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,12 @@ dialogs:
1919
baseUrlHelp: API 엔드포인트 URL(확실하지 않은 경우 기본값 사용)
2020
accountId: 계정 ID
2121
validationSuccess: 구성 검증 성공
22+
validationPartial: 구성이 부분적으로 검증됨
2223
validationFailed: 구성 검증 실패
2324
validationError: '검증 오류: {error}'
25+
testGeneration: 생성 테스트
26+
testGenerationRunning: 테스트 중...
27+
testGenerationFailed: 생성 테스트 실패
2428
skipForNow: 지금은 건너뛰기
2529
saveAndContinue: 저장 및 계속
2630
next: 다음

packages/i18n/src/locales/ru/settings.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,12 @@ dialogs:
1919
baseUrlHelp: URL конечной точки API (оставьте по умолчанию, если не уверены)
2020
accountId: ID аккаунта
2121
validationSuccess: Configuration validation success
22+
validationPartial: Конфигурация частично проверена
2223
validationFailed: Проверка конфигурации не удалась
2324
validationError: 'Ошибка проверки: {error}'
25+
testGeneration: Тест генерации
26+
testGenerationRunning: Тестирование...
27+
testGenerationFailed: Тест генерации не удался
2428
skipForNow: Пропустить на сейчас
2529
saveAndContinue: Сохранить и продолжить
2630
next: Далее

packages/i18n/src/locales/vi/settings.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,12 @@ dialogs:
1919
baseUrlHelp: Địa chỉ API đầu cuối (dùng mặc định nếu không chắc)
2020
accountId: ID tài khoản
2121
validationSuccess: Xác thực cấu hình thành công
22+
validationPartial: Cấu hình được xác thực một phần
2223
validationFailed: Xác thực cấu hình thất bại
2324
validationError: 'Lỗi xác thực: {error}'
25+
testGeneration: Kiểm tra tạo
26+
testGenerationRunning: Đang kiểm tra...
27+
testGenerationFailed: Kiểm tra tạo thất bại
2428
skipForNow: Bỏ qua
2529
saveAndContinue: Lưu và tiếp tục
2630
next: Tiếp

packages/i18n/src/locales/zh-Hans/settings.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,12 @@ dialogs:
1919
baseUrlHelp: API 端点 URL(如果不确定请使用默认值)
2020
accountId: 账户 ID
2121
validationSuccess: 配置验证成功
22+
validationPartial: 配置部分验证通过
2223
validationFailed: 配置验证失败
2324
validationError: '验证错误:{error}'
25+
testGeneration: 测试生成
26+
testGenerationRunning: 测试中...
27+
testGenerationFailed: 生成测试失败
2428
skipForNow: 暂时跳过
2529
saveAndContinue: 保存并继续
2630
next: 下一步

packages/i18n/src/locales/zh-Hant/settings.yaml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,12 @@ dialogs:
1919
baseUrlHelp: API 端點 URL(如果不確定請使用預設值)
2020
accountId: 帳號 ID
2121
validationSuccess: 設定驗證成功
22+
validationPartial: 設定部分驗證通過
2223
validationFailed: 設定驗證失敗
2324
validationError: '驗證錯誤:{error}'
25+
testGeneration: 測試生成
26+
testGenerationRunning: 測試中...
27+
testGenerationFailed: 生成測試失敗
2428
skipForNow: 先略過
2529
saveAndContinue: 儲存並繼續
2630
next: 下一步

packages/stage-pages/src/pages/settings/providers/chat/[providerId].vue

Lines changed: 18 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@
22
import type { RemovableRef } from '@vueuse/core'
33
44
import {
5-
Alert,
65
ProviderAdvancedSettings,
76
ProviderApiKeyInput,
87
ProviderBaseUrlInput,
98
ProviderBasicSettings,
109
ProviderSettingsContainer,
1110
ProviderSettingsLayout,
11+
ProviderValidationAlerts,
1212
} from '@proj-airi/stage-ui/components'
1313
import { useProviderValidation } from '@proj-airi/stage-ui/composables/use-provider-validation'
1414
import { useConsciousnessStore } from '@proj-airi/stage-ui/stores/modules/consciousness'
@@ -53,6 +53,11 @@ const {
5353
validationMessage,
5454
handleResetSettings,
5555
forceValid,
56+
hasManualValidators,
57+
isManualTesting,
58+
manualTestPassed,
59+
manualTestMessage,
60+
runManualTest,
5661
} = useProviderValidation(providerId)
5762
5863
function goToModelSelection() {
@@ -88,39 +93,18 @@ function goToModelSelection() {
8893
</ProviderAdvancedSettings>
8994

9095
<!-- Validation Status -->
91-
<Alert v-if="!isValid && isValidating === 0 && validationMessage" type="error">
92-
<template #title>
93-
<div class="w-full flex items-center justify-between">
94-
<span>{{ t('settings.dialogs.onboarding.validationFailed') }}</span>
95-
<button
96-
type="button"
97-
class="ml-2 rounded bg-red-100 px-2 py-0.5 text-xs text-red-600 font-medium transition-colors dark:bg-red-800/30 hover:bg-red-200 dark:text-red-300 dark:hover:bg-red-700/40"
98-
@click="forceValid"
99-
>
100-
{{ t('settings.pages.providers.common.continueAnyway') }}
101-
</button>
102-
</div>
103-
</template>
104-
<template v-if="validationMessage" #content>
105-
<div class="whitespace-pre-wrap break-all">
106-
{{ validationMessage }}
107-
</div>
108-
</template>
109-
</Alert>
110-
<Alert v-if="isValid && isValidating === 0" type="success">
111-
<template #title>
112-
<div class="w-full flex items-center justify-between">
113-
<span>{{ t('settings.dialogs.onboarding.validationSuccess') }}</span>
114-
<button
115-
type="button"
116-
:class="['ml-2 rounded px-2 py-0.5 text-xs font-medium transition-colors', 'bg-green-100 text-green-600 hover:bg-green-200', 'dark:bg-green-800/30 dark:text-green-300 dark:hover:bg-green-700/40']"
117-
@click="goToModelSelection"
118-
>
119-
{{ t('settings.pages.providers.common.goToModelSelection') }}
120-
</button>
121-
</div>
122-
</template>
123-
</Alert>
96+
<ProviderValidationAlerts
97+
:is-valid="isValid"
98+
:is-validating="isValidating"
99+
:validation-message="validationMessage"
100+
:has-manual-validators="hasManualValidators"
101+
:is-manual-testing="isManualTesting"
102+
:manual-test-passed="manualTestPassed"
103+
:manual-test-message="manualTestMessage"
104+
:on-run-test="runManualTest"
105+
:on-force-valid="forceValid"
106+
:on-go-to-model-selection="goToModelSelection"
107+
/>
124108
</ProviderSettingsContainer>
125109
</ProviderSettingsLayout>
126110
</template>

0 commit comments

Comments
 (0)