diff --git a/apps/web/src/i18n/locales/ar.ts b/apps/web/src/i18n/locales/ar.ts index 75cc1d8339e..0bb603bd98e 100644 --- a/apps/web/src/i18n/locales/ar.ts +++ b/apps/web/src/i18n/locales/ar.ts @@ -60,8 +60,17 @@ export const ar: Dict = { 'chat.runError.outputInvalidMessage': 'أنتج النموذج مخرجات غير صالحة وتم إيقاف هذه الجولة. عادةً ما تحل إعادة المحاولة المشكلة.', 'chat.runError.runtimeConfigMessage': 'إعداد وقت التشغيل للوكيل المحدد غير صالح، لذلك تعذّر بدء التشغيل. حدِّث إلى أحدث إصدار أو تواصل مع الدعم.', 'chat.runError.title.quotaExhausted': "انتهت الحصة", + 'chat.runError.title.timedOut': "انتهت المهلة", + 'chat.runError.title.emptyOutput': "لا يوجد ناتج", + 'chat.runError.title.sessionExpired': "انتهت الجلسة", + 'chat.runError.title.gitBashMissing': "Git Bash غير موجود", 'chat.runError.quotaExhaustedMessage': "انتهت حصة خدمة النموذج أو حد الفوترة، لذا لن تفيد إعادة المحاولة. اشحن رصيدك لدى المزوّد أو بدّل إلى نموذج أو خدمة أخرى.", 'chat.runError.workspaceCreditsMessage': "نفدت أرصدة مساحة عملك. أضف أرصدة (أو اطلب من مالك المساحة إعادة الشحن)، أو بدّل إلى نموذج أو خدمة أخرى.", + 'chat.runError.timedOutMessage': "استغرق هذا التشغيل وقتًا طويلاً وتم إيقافه. أعد المحاولة، أو قلّص المهمة ثم أعد المحاولة.", + 'chat.runError.inactivityTimeoutMessage': "توقّف الوكيل عن إنتاج ناتج جديد لفترة طويلة فتم إيقافه بسبب انتهاء المهلة. عادةً ما تعيد المحاولة تشغيله من جديد.", + 'chat.runError.emptyOutputMessage': "انتهى الوكيل دون إنتاج أي ناتج. هذا مؤقت غالبًا، فأعد المحاولة.", + 'chat.runError.sessionExpiredMessage': "انتهت صلاحية الجلسة المستأنفة. تمت إعادة ضبطها، لذا أعد المحاولة لبدء تشغيل جديد.", + 'chat.runError.gitBashMissingMessage': "يلزم Git Bash لتشغيل هذا الوكيل على Windows لكنه غير موجود. ثبّت Git for Windows ثم أعد المحاولة.", 'common.cancel': 'إلغاء', 'chat.selectFromLibrary': 'استيراد من المكتبة', 'chat.importFigma': 'استيراد من Figma', diff --git a/apps/web/src/i18n/locales/de.ts b/apps/web/src/i18n/locales/de.ts index 4e3ae79e363..b7b48c42608 100644 --- a/apps/web/src/i18n/locales/de.ts +++ b/apps/web/src/i18n/locales/de.ts @@ -60,8 +60,17 @@ export const de: Dict = { 'chat.runError.outputInvalidMessage': 'Das Modell hat ungültige Ausgabe erzeugt und diese Runde wurde abgebrochen. Ein erneuter Versuch behebt das meist.', 'chat.runError.runtimeConfigMessage': 'Die Laufzeitkonfiguration des ausgewählten Agents ist ungültig, daher konnte der Lauf nicht starten. Aktualisiere auf die neueste Version oder kontaktiere den Support.', 'chat.runError.title.quotaExhausted': "Kontingent aufgebraucht", + 'chat.runError.title.timedOut': "Zeitüberschreitung", + 'chat.runError.title.emptyOutput': "Keine Ausgabe", + 'chat.runError.title.sessionExpired': "Sitzung abgelaufen", + 'chat.runError.title.gitBashMissing': "Git Bash fehlt", 'chat.runError.quotaExhaustedMessage': "Das Kontingent oder Abrechnungslimit deines Modelldienstes ist aufgebraucht – ein erneuter Versuch hilft nicht. Lade bei deinem Anbieter auf oder wechsle zu einem anderen Modell oder Dienst.", 'chat.runError.workspaceCreditsMessage': "Dein Workspace hat keine Credits mehr. Füge Credits hinzu (oder bitte den Workspace-Eigentümer aufzuladen) oder wechsle zu einem anderen Modell oder Dienst.", + 'chat.runError.timedOutMessage': "Dieser Lauf hat zu lange gedauert und wurde abgebrochen. Versuche es erneut oder verkleinere die Aufgabe und wiederhole.", + 'chat.runError.inactivityTimeoutMessage': "Der Agent hat zu lange keine neue Ausgabe geliefert und wurde als Zeitüberschreitung abgebrochen. Ein erneuter Versuch bringt ihn meist wieder in Gang.", + 'chat.runError.emptyOutputMessage': "Der Agent wurde beendet, ohne Ausgabe zu erzeugen. Das ist meist vorübergehend, versuche es erneut.", + 'chat.runError.sessionExpiredMessage': "Die fortgesetzte Sitzung war abgelaufen. Sie wurde zurückgesetzt, wiederhole, um einen neuen Lauf zu starten.", + 'chat.runError.gitBashMissingMessage': "Für diesen Agenten unter Windows wird Git Bash benötigt, es wurde aber nicht gefunden. Installiere Git für Windows und versuche es erneut.", 'common.cancel': 'Abbrechen', 'chat.selectFromLibrary': 'Aus Bibliothek importieren', 'chat.importFigma': 'Aus Figma importieren', diff --git a/apps/web/src/i18n/locales/en.ts b/apps/web/src/i18n/locales/en.ts index 4afbd7f7122..73d2baa477b 100644 --- a/apps/web/src/i18n/locales/en.ts +++ b/apps/web/src/i18n/locales/en.ts @@ -60,8 +60,17 @@ export const en: Dict = { 'chat.runError.outputInvalidMessage': 'The model produced invalid output and this turn was interrupted. Retrying usually recovers.', 'chat.runError.runtimeConfigMessage': 'The selected agent\'s runtime configuration is invalid, so the run could not start. Update to the latest version or contact support.', 'chat.runError.title.quotaExhausted': "Quota exhausted", + 'chat.runError.title.timedOut': "Timed out", + 'chat.runError.title.emptyOutput': "No output produced", + 'chat.runError.title.sessionExpired': "Session expired", + 'chat.runError.title.gitBashMissing': "Git Bash missing", 'chat.runError.quotaExhaustedMessage': "Your model service's quota or billing limit is used up, so retrying won't help. Top up with your provider, or switch to another model or service.", 'chat.runError.workspaceCreditsMessage': "Your workspace is out of credits. Add credits (or ask your workspace owner to refill), or switch to another model or service.", + 'chat.runError.timedOutMessage': "This run took too long and was stopped. Try again, or narrow the task and retry.", + 'chat.runError.inactivityTimeoutMessage': "The agent went quiet for too long and was stopped as a timeout. Retrying usually gets it moving again.", + 'chat.runError.emptyOutputMessage': "The agent finished without producing any output. This is usually temporary, so retry to run it again.", + 'chat.runError.sessionExpiredMessage': "The resumed session had expired. It has been reset, so retry to start a fresh run.", + 'chat.runError.gitBashMissingMessage': "Git Bash is required to run this agent on Windows but wasn't found. Install Git for Windows, then retry.", 'common.cancel': 'Cancel', 'chat.selectFromLibrary': 'Import from library', 'chat.importFigma': 'Import from Figma', diff --git a/apps/web/src/i18n/locales/es-ES.ts b/apps/web/src/i18n/locales/es-ES.ts index 7c10e8b4462..e287bdca3a2 100644 --- a/apps/web/src/i18n/locales/es-ES.ts +++ b/apps/web/src/i18n/locales/es-ES.ts @@ -60,8 +60,17 @@ export const esES: Dict = { 'chat.runError.outputInvalidMessage': 'El modelo produjo una salida no válida y este turno se interrumpió. Reintentar suele resolverlo.', 'chat.runError.runtimeConfigMessage': 'La configuración de ejecución del agente seleccionado no es válida, por lo que no se pudo iniciar. Actualiza a la última versión o contacta con soporte.', 'chat.runError.title.quotaExhausted': "Cuota agotada", + 'chat.runError.title.timedOut': "Tiempo agotado", + 'chat.runError.title.emptyOutput': "Sin salida", + 'chat.runError.title.sessionExpired': "Sesión caducada", + 'chat.runError.title.gitBashMissing': "Falta Git Bash", 'chat.runError.quotaExhaustedMessage': "La cuota o el límite de facturación de tu servicio de modelo se ha agotado, así que reintentar no servirá. Recarga con tu proveedor o cambia a otro modelo o servicio.", 'chat.runError.workspaceCreditsMessage': "Tu espacio de trabajo se ha quedado sin créditos. Añade créditos (o pide al propietario del espacio que recargue) o cambia a otro modelo o servicio.", + 'chat.runError.timedOutMessage': "Esta ejecución tardó demasiado y se detuvo. Inténtalo de nuevo o reduce la tarea y reintenta.", + 'chat.runError.inactivityTimeoutMessage': "El agente estuvo demasiado tiempo sin nueva salida y se detuvo por tiempo agotado. Reintentar suele reanudarlo.", + 'chat.runError.emptyOutputMessage': "El agente terminó sin producir ninguna salida. Suele ser temporal: reintenta para ejecutarlo de nuevo.", + 'chat.runError.sessionExpiredMessage': "La sesión reanudada había caducado. Se ha restablecido, así que reintenta para iniciar una ejecución nueva.", + 'chat.runError.gitBashMissingMessage': "Se necesita Git Bash para ejecutar este agente en Windows, pero no se encontró. Instala Git para Windows y reintenta.", 'common.cancel': 'Cancelar', 'chat.selectFromLibrary': 'Importar de la biblioteca', 'chat.importFigma': 'Importar de Figma', diff --git a/apps/web/src/i18n/locales/fa.ts b/apps/web/src/i18n/locales/fa.ts index 163fb4673d4..4a283f50c0e 100644 --- a/apps/web/src/i18n/locales/fa.ts +++ b/apps/web/src/i18n/locales/fa.ts @@ -60,8 +60,17 @@ export const fa: Dict = { 'chat.runError.outputInvalidMessage': 'مدل خروجی نامعتبری تولید کرد و این نوبت قطع شد. معمولاً تلاش دوباره مشکل را حل می‌کند.', 'chat.runError.runtimeConfigMessage': 'پیکربندی زمان‌اجرای عامل انتخاب‌شده نامعتبر است، بنابراین اجرا آغاز نشد. به آخرین نسخه به‌روزرسانی کنید یا با پشتیبانی تماس بگیرید.', 'chat.runError.title.quotaExhausted': "سهمیه تمام شد", + 'chat.runError.title.timedOut': "زمان به پایان رسید", + 'chat.runError.title.emptyOutput': "بدون خروجی", + 'chat.runError.title.sessionExpired': "نشست منقضی شد", + 'chat.runError.title.gitBashMissing': "نبود Git Bash", 'chat.runError.quotaExhaustedMessage': "سهمیه یا سقف صورت‌حساب سرویس مدل شما تمام شده است، بنابراین تلاش دوباره کمکی نمی‌کند. نزد ارائه‌دهنده شارژ کنید یا به مدل یا سرویس دیگری تغییر دهید.", 'chat.runError.workspaceCreditsMessage': "اعتبار فضای کاری شما تمام شده است. اعتبار اضافه کنید (یا از مالک فضای کاری بخواهید شارژ کند)، یا به مدل یا سرویس دیگری تغییر دهید.", + 'chat.runError.timedOutMessage': "این اجرا بیش از حد طول کشید و متوقف شد. دوباره تلاش کنید یا کار را کوچک‌تر کرده و دوباره اجرا کنید.", + 'chat.runError.inactivityTimeoutMessage': "عامل مدت زیادی خروجی جدیدی نداشت و به‌دلیل اتمام زمان متوقف شد. معمولاً تلاش دوباره آن را از سر می‌گیرد.", + 'chat.runError.emptyOutputMessage': "عامل بدون تولید هیچ خروجی‌ای پایان یافت. این معمولاً موقتی است؛ دوباره تلاش کنید.", + 'chat.runError.sessionExpiredMessage': "نشستی که از سر گرفته شد منقضی شده بود. بازنشانی شد، پس برای شروع اجرای تازه دوباره تلاش کنید.", + 'chat.runError.gitBashMissingMessage': "برای اجرای این عامل در ویندوز به Git Bash نیاز است اما یافت نشد. Git for Windows را نصب کنید و دوباره تلاش کنید.", 'common.cancel': 'لغو', 'chat.selectFromLibrary': 'وارد کردن از کتابخانه', 'chat.importFigma': 'وارد کردن از Figma', diff --git a/apps/web/src/i18n/locales/fr.ts b/apps/web/src/i18n/locales/fr.ts index c47c9ecf506..d72f860e36f 100644 --- a/apps/web/src/i18n/locales/fr.ts +++ b/apps/web/src/i18n/locales/fr.ts @@ -60,8 +60,17 @@ export const fr: Dict = { 'chat.runError.outputInvalidMessage': 'Le modèle a produit une sortie invalide et ce tour a été interrompu. Réessayer suffit généralement.', 'chat.runError.runtimeConfigMessage': 'La configuration d’exécution de l’agent sélectionné est invalide, l’exécution n’a donc pas pu démarrer. Mettez à jour vers la dernière version ou contactez le support.', 'chat.runError.title.quotaExhausted': "Quota épuisé", + 'chat.runError.title.timedOut': "Délai dépassé", + 'chat.runError.title.emptyOutput': "Aucune sortie", + 'chat.runError.title.sessionExpired': "Session expirée", + 'chat.runError.title.gitBashMissing': "Git Bash manquant", 'chat.runError.quotaExhaustedMessage': "Le quota ou la limite de facturation de votre service de modèle est épuisé ; réessayer ne changera rien. Rechargez chez votre fournisseur ou passez à un autre modèle ou service.", 'chat.runError.workspaceCreditsMessage': "Votre espace de travail n'a plus de crédits. Ajoutez des crédits (ou demandez au propriétaire de l'espace de recharger), ou passez à un autre modèle ou service.", + 'chat.runError.timedOutMessage': "Cette exécution a été trop longue et a été arrêtée. Réessayez, ou réduisez la tâche puis relancez.", + 'chat.runError.inactivityTimeoutMessage': "L'agent est resté silencieux trop longtemps et a été arrêté pour dépassement de délai. Réessayer suffit généralement à le relancer.", + 'chat.runError.emptyOutputMessage': "L'agent s'est terminé sans produire de sortie. C'est généralement temporaire, réessayez.", + 'chat.runError.sessionExpiredMessage': "La session reprise avait expiré. Elle a été réinitialisée : réessayez pour démarrer une nouvelle exécution.", + 'chat.runError.gitBashMissingMessage': "Git Bash est requis pour exécuter cet agent sous Windows, mais il est introuvable. Installez Git pour Windows, puis réessayez.", 'common.cancel': 'Annuler', 'chat.selectFromLibrary': 'Importer depuis la bibliothèque', 'chat.importFigma': 'Importer depuis Figma', diff --git a/apps/web/src/i18n/locales/hu.ts b/apps/web/src/i18n/locales/hu.ts index 45c72a00724..178865f9ade 100644 --- a/apps/web/src/i18n/locales/hu.ts +++ b/apps/web/src/i18n/locales/hu.ts @@ -60,8 +60,17 @@ export const hu: Dict = { 'chat.runError.outputInvalidMessage': 'A modell érvénytelen kimenetet állított elő, és ez a kör megszakadt. Az újrapróbálkozás általában megoldja.', 'chat.runError.runtimeConfigMessage': 'A kiválasztott ügynök futásidejű konfigurációja érvénytelen, ezért a futtatás nem indulhatott el. Frissíts a legújabb verzióra, vagy fordulj a támogatáshoz.', 'chat.runError.title.quotaExhausted': "Elfogyott a keret", + 'chat.runError.title.timedOut': "Időtúllépés", + 'chat.runError.title.emptyOutput': "Nincs kimenet", + 'chat.runError.title.sessionExpired': "A munkamenet lejárt", + 'chat.runError.title.gitBashMissing': "Hiányzó Git Bash", 'chat.runError.quotaExhaustedMessage': "A modellszolgáltatásod kerete vagy számlázási korlátja elfogyott, ezért az újrapróbálkozás nem segít. Tölts fel a szolgáltatódnál, vagy válts másik modellre vagy szolgáltatásra.", 'chat.runError.workspaceCreditsMessage': "A munkaterületed kreditjei elfogytak. Adj hozzá kreditet (vagy kérd a munkaterület tulajdonosát, hogy töltse fel), vagy válts másik modellre vagy szolgáltatásra.", + 'chat.runError.timedOutMessage': "Ez a futás túl sokáig tartott, ezért leállt. Próbáld újra, vagy szűkítsd a feladatot, és ismételd meg.", + 'chat.runError.inactivityTimeoutMessage': "Az ügynök túl sokáig nem adott új kimenetet, ezért időtúllépés miatt leállt. Az újrapróbálkozás általában folytatja.", + 'chat.runError.emptyOutputMessage': "Az ügynök úgy fejeződött be, hogy nem adott kimenetet. Ez általában átmeneti, próbáld újra.", + 'chat.runError.sessionExpiredMessage': "A folytatott munkamenet lejárt. Visszaállt, ezért próbáld újra egy új futás indításához.", + 'chat.runError.gitBashMissingMessage': "Az ügynök Windowson való futtatásához Git Bash szükséges, de nem található. Telepítsd a Git for Windowst, majd próbáld újra.", 'common.cancel': 'Mégse', 'chat.selectFromLibrary': 'Importálás a könyvtárból', 'chat.importFigma': 'Importálás Figmából', diff --git a/apps/web/src/i18n/locales/id.ts b/apps/web/src/i18n/locales/id.ts index d766b9d4144..7a3728b67a9 100644 --- a/apps/web/src/i18n/locales/id.ts +++ b/apps/web/src/i18n/locales/id.ts @@ -60,8 +60,17 @@ export const id: Dict = { 'chat.runError.outputInvalidMessage': 'Model menghasilkan output tidak valid dan giliran ini terhenti. Mencoba lagi biasanya memulihkannya.', 'chat.runError.runtimeConfigMessage': 'Konfigurasi runtime agen yang dipilih tidak valid, sehingga eksekusi tidak dapat dimulai. Perbarui ke versi terbaru atau hubungi dukungan.', 'chat.runError.title.quotaExhausted': "Kuota habis", + 'chat.runError.title.timedOut': "Waktu habis", + 'chat.runError.title.emptyOutput': "Tidak ada keluaran", + 'chat.runError.title.sessionExpired': "Sesi kedaluwarsa", + 'chat.runError.title.gitBashMissing': "Git Bash tidak ada", 'chat.runError.quotaExhaustedMessage': "Kuota atau batas tagihan layanan model Anda sudah habis, jadi mencoba lagi tidak akan membantu. Isi ulang di penyedia Anda, atau beralih ke model atau layanan lain.", 'chat.runError.workspaceCreditsMessage': "Kredit ruang kerja Anda habis. Tambahkan kredit (atau minta pemilik ruang kerja mengisi ulang), atau beralih ke model atau layanan lain.", + 'chat.runError.timedOutMessage': "Proses ini terlalu lama dan dihentikan. Coba lagi, atau perkecil tugasnya lalu ulangi.", + 'chat.runError.inactivityTimeoutMessage': "Agen terlalu lama tidak menghasilkan keluaran baru dan dihentikan karena waktu habis. Mencoba lagi biasanya melanjutkannya.", + 'chat.runError.emptyOutputMessage': "Agen selesai tanpa menghasilkan keluaran apa pun. Biasanya ini sementara, coba lagi.", + 'chat.runError.sessionExpiredMessage': "Sesi yang dilanjutkan telah kedaluwarsa. Sesi sudah diatur ulang, jadi coba lagi untuk memulai proses baru.", + 'chat.runError.gitBashMissingMessage': "Git Bash diperlukan untuk menjalankan agen ini di Windows, tetapi tidak ditemukan. Pasang Git for Windows, lalu coba lagi.", 'common.cancel': 'Batal', 'chat.selectFromLibrary': 'Impor dari pustaka', 'chat.importFigma': 'Impor dari Figma', diff --git a/apps/web/src/i18n/locales/it.ts b/apps/web/src/i18n/locales/it.ts index f32cdcb0800..a9cd0c35a16 100644 --- a/apps/web/src/i18n/locales/it.ts +++ b/apps/web/src/i18n/locales/it.ts @@ -60,8 +60,17 @@ export const it: Dict = { 'chat.runError.outputInvalidMessage': "Il modello ha prodotto un output non valido e questo turno è stato interrotto. Di solito riprovare risolve.", 'chat.runError.runtimeConfigMessage': "La configurazione di runtime dell'agente selezionato non è valida, quindi l'esecuzione non è potuta partire. Aggiorna all'ultima versione o contatta il supporto.", 'chat.runError.title.quotaExhausted': "Quota esaurita", + 'chat.runError.title.timedOut': "Tempo scaduto", + 'chat.runError.title.emptyOutput': "Nessun output", + 'chat.runError.title.sessionExpired': "Sessione scaduta", + 'chat.runError.title.gitBashMissing': "Git Bash mancante", 'chat.runError.quotaExhaustedMessage': "La quota o il limite di fatturazione del tuo servizio di modello è esaurito, quindi riprovare non servirà. Ricarica presso il tuo provider o passa a un altro modello o servizio.", 'chat.runError.workspaceCreditsMessage': "Il tuo spazio di lavoro ha esaurito i crediti. Aggiungi crediti (o chiedi al proprietario dello spazio di ricaricare) oppure passa a un altro modello o servizio.", + 'chat.runError.timedOutMessage': "Questa esecuzione ha richiesto troppo tempo ed è stata interrotta. Riprova, oppure riduci l'attività e ripeti.", + 'chat.runError.inactivityTimeoutMessage': "L'agente è rimasto senza nuovo output troppo a lungo ed è stato interrotto per timeout. Di solito riprovando riparte.", + 'chat.runError.emptyOutputMessage': "L'agente è terminato senza produrre alcun output. In genere è temporaneo: riprova.", + 'chat.runError.sessionExpiredMessage': "La sessione ripresa era scaduta. È stata reimpostata, quindi riprova per avviare una nuova esecuzione.", + 'chat.runError.gitBashMissingMessage': "Per eseguire questo agente su Windows è necessario Git Bash, ma non è stato trovato. Installa Git per Windows e riprova.", 'common.cancel': 'Annulla', 'chat.selectFromLibrary': 'Importa dalla libreria', 'chat.importFigma': 'Importa da Figma', diff --git a/apps/web/src/i18n/locales/ja.ts b/apps/web/src/i18n/locales/ja.ts index a635e9cc075..cfda8bfc676 100644 --- a/apps/web/src/i18n/locales/ja.ts +++ b/apps/web/src/i18n/locales/ja.ts @@ -60,8 +60,17 @@ export const ja: Dict = { 'chat.runError.outputInvalidMessage': 'モデルが不正な出力を生成したため、この処理は中断されました。通常は再試行で回復します。', 'chat.runError.runtimeConfigMessage': '選択したエージェントのランタイム構成が無効なため、実行を開始できませんでした。最新バージョンに更新するか、サポートにお問い合わせください。', 'chat.runError.title.quotaExhausted': "利用上限に達しました", + 'chat.runError.title.timedOut': "タイムアウトしました", + 'chat.runError.title.emptyOutput': "出力がありません", + 'chat.runError.title.sessionExpired': "セッションの有効期限切れ", + 'chat.runError.title.gitBashMissing': "Git Bash がありません", 'chat.runError.quotaExhaustedMessage': "利用中のモデルサービスの割り当てまたは請求上限に達したため、再試行しても回復しません。プロバイダーでチャージするか、別のモデル/サービスに切り替えてください。", 'chat.runError.workspaceCreditsMessage': "ワークスペースのクレジットがなくなりました。クレジットを追加する(またはワークスペース管理者に補充を依頼する)か、別のモデル/サービスに切り替えてください。", + 'chat.runError.timedOutMessage': "実行に時間がかかりすぎたため中断しました。もう一度試すか、タスクを小さくして再試行してください。", + 'chat.runError.inactivityTimeoutMessage': "エージェントの新しい出力が長時間なく、タイムアウトとして中断しました。通常は再試行すれば再開できます。", + 'chat.runError.emptyOutputMessage': "エージェントは何も出力せずに終了しました。多くの場合は一時的なものなので、再試行してください。", + 'chat.runError.sessionExpiredMessage': "再開しようとしたセッションは期限切れでした。リセット済みなので、再試行すると新しい実行を開始します。", + 'chat.runError.gitBashMissingMessage': "Windows でこのエージェントを実行するには Git Bash が必要ですが、見つかりませんでした。Git for Windows をインストールして再試行してください。", 'common.cancel': 'キャンセル', 'chat.selectFromLibrary': 'ライブラリからインポート', 'chat.importFigma': 'Figma からインポート', diff --git a/apps/web/src/i18n/locales/ko.ts b/apps/web/src/i18n/locales/ko.ts index 74b2de355f1..19fca332b5f 100644 --- a/apps/web/src/i18n/locales/ko.ts +++ b/apps/web/src/i18n/locales/ko.ts @@ -60,8 +60,17 @@ export const ko: Dict = { 'chat.runError.outputInvalidMessage': '모델이 잘못된 출력을 생성하여 이번 실행이 중단되었습니다. 대개 다시 시도하면 복구됩니다.', 'chat.runError.runtimeConfigMessage': '선택한 에이전트의 런타임 구성이 잘못되어 실행을 시작할 수 없습니다. 최신 버전으로 업데이트하거나 지원팀에 문의하세요.', 'chat.runError.title.quotaExhausted': "사용 한도 소진", + 'chat.runError.title.timedOut': "시간 초과", + 'chat.runError.title.emptyOutput': "출력 없음", + 'chat.runError.title.sessionExpired': "세션 만료", + 'chat.runError.title.gitBashMissing': "Git Bash 없음", 'chat.runError.quotaExhaustedMessage': "사용 중인 모델 서비스의 할당량 또는 청구 한도를 모두 사용해 재시도해도 복구되지 않습니다. 해당 서비스에서 충전하거나 다른 모델/서비스로 전환하세요.", 'chat.runError.workspaceCreditsMessage': "워크스페이스 크레딧이 모두 소진되었습니다. 크레딧을 추가(또는 워크스페이스 관리자에게 충전 요청)하거나 다른 모델/서비스로 전환하세요.", + 'chat.runError.timedOutMessage': "이번 실행이 너무 오래 걸려 중단되었습니다. 다시 시도하거나 작업 범위를 줄여 재시도하세요.", + 'chat.runError.inactivityTimeoutMessage': "에이전트가 오랫동안 새 출력이 없어 시간 초과로 중단되었습니다. 보통 다시 시도하면 이어집니다.", + 'chat.runError.emptyOutputMessage': "에이전트가 아무 출력도 없이 종료되었습니다. 대개 일시적이므로 다시 시도하세요.", + 'chat.runError.sessionExpiredMessage': "재개하려던 세션이 만료되었습니다. 초기화되었으니 다시 시도하면 새 실행이 시작됩니다.", + 'chat.runError.gitBashMissingMessage': "Windows에서 이 에이전트를 실행하려면 Git Bash가 필요하지만 찾을 수 없습니다. Git for Windows를 설치한 후 다시 시도하세요.", 'common.cancel': '취소', 'chat.selectFromLibrary': '라이브러리에서 가져오기', 'chat.importFigma': 'Figma에서 가져오기', diff --git a/apps/web/src/i18n/locales/pl.ts b/apps/web/src/i18n/locales/pl.ts index 4d07577b0c3..1a3210c656a 100644 --- a/apps/web/src/i18n/locales/pl.ts +++ b/apps/web/src/i18n/locales/pl.ts @@ -60,8 +60,17 @@ export const pl: Dict = { 'chat.runError.outputInvalidMessage': 'Model wygenerował nieprawidłowe dane wyjściowe i ta tura została przerwana. Zwykle pomaga ponowna próba.', 'chat.runError.runtimeConfigMessage': 'Konfiguracja środowiska uruchomieniowego wybranego agenta jest nieprawidłowa, więc nie można było rozpocząć. Zaktualizuj do najnowszej wersji lub skontaktuj się z pomocą techniczną.', 'chat.runError.title.quotaExhausted': "Wyczerpano limit", + 'chat.runError.title.timedOut': "Przekroczono limit czasu", + 'chat.runError.title.emptyOutput': "Brak wyniku", + 'chat.runError.title.sessionExpired': "Sesja wygasła", + 'chat.runError.title.gitBashMissing': "Brak Git Bash", 'chat.runError.quotaExhaustedMessage': "Limit lub próg rozliczeniowy Twojej usługi modelu został wyczerpany, więc ponowna próba nie pomoże. Doładuj u swojego dostawcy lub przełącz się na inny model albo usługę.", 'chat.runError.workspaceCreditsMessage': "W Twoim obszarze roboczym skończyły się kredyty. Dodaj kredyty (lub poproś właściciela obszaru o doładowanie) albo przełącz się na inny model lub usługę.", + 'chat.runError.timedOutMessage': "To uruchomienie trwało zbyt długo i zostało zatrzymane. Spróbuj ponownie lub zawęź zadanie i powtórz.", + 'chat.runError.inactivityTimeoutMessage': "Agent zbyt długo nie dawał nowego wyniku i został zatrzymany z powodu przekroczenia limitu czasu. Ponowna próba zwykle go wznawia.", + 'chat.runError.emptyOutputMessage': "Agent zakończył działanie bez żadnego wyniku. Zwykle jest to chwilowe, spróbuj ponownie.", + 'chat.runError.sessionExpiredMessage': "Wznowiona sesja wygasła. Została zresetowana, więc spróbuj ponownie, aby rozpocząć nowe uruchomienie.", + 'chat.runError.gitBashMissingMessage': "Do uruchomienia tego agenta w systemie Windows wymagany jest Git Bash, ale go nie znaleziono. Zainstaluj Git dla Windows i spróbuj ponownie.", 'common.cancel': 'Anuluj', 'chat.selectFromLibrary': 'Importuj z biblioteki', 'chat.importFigma': 'Importuj z Figmy', diff --git a/apps/web/src/i18n/locales/pt-BR.ts b/apps/web/src/i18n/locales/pt-BR.ts index 3e5a4007e1c..6308fe52ad5 100644 --- a/apps/web/src/i18n/locales/pt-BR.ts +++ b/apps/web/src/i18n/locales/pt-BR.ts @@ -60,8 +60,17 @@ export const ptBR: Dict = { 'chat.runError.outputInvalidMessage': 'O modelo produziu uma saída inválida e este turno foi interrompido. Tentar novamente costuma resolver.', 'chat.runError.runtimeConfigMessage': 'A configuração de runtime do agente selecionado é inválida, então a execução não pôde iniciar. Atualize para a versão mais recente ou contate o suporte.', 'chat.runError.title.quotaExhausted': "Cota esgotada", + 'chat.runError.title.timedOut': "Tempo esgotado", + 'chat.runError.title.emptyOutput': "Sem saída", + 'chat.runError.title.sessionExpired': "Sessão expirada", + 'chat.runError.title.gitBashMissing': "Git Bash ausente", 'chat.runError.quotaExhaustedMessage': "A cota ou o limite de cobrança do seu serviço de modelo acabou, então tentar de novo não vai ajudar. Recarregue com seu provedor ou mude para outro modelo ou serviço.", 'chat.runError.workspaceCreditsMessage': "Seu espaço de trabalho ficou sem créditos. Adicione créditos (ou peça ao proprietário do espaço para recarregar) ou mude para outro modelo ou serviço.", + 'chat.runError.timedOutMessage': "Esta execução demorou demais e foi interrompida. Tente novamente ou reduza a tarefa e repita.", + 'chat.runError.inactivityTimeoutMessage': "O agente ficou sem nova saída por tempo demais e foi interrompido por tempo esgotado. Tentar de novo costuma retomá-lo.", + 'chat.runError.emptyOutputMessage': "O agente terminou sem produzir nenhuma saída. Isso costuma ser temporário, tente novamente.", + 'chat.runError.sessionExpiredMessage': "A sessão retomada havia expirado. Ela foi redefinida, então tente novamente para iniciar uma nova execução.", + 'chat.runError.gitBashMissingMessage': "O Git Bash é necessário para executar este agente no Windows, mas não foi encontrado. Instale o Git para Windows e tente novamente.", 'common.cancel': 'Cancelar', 'chat.selectFromLibrary': 'Importar da biblioteca', 'chat.importFigma': 'Importar do Figma', diff --git a/apps/web/src/i18n/locales/ru.ts b/apps/web/src/i18n/locales/ru.ts index a209f05f903..0efe848fcd5 100644 --- a/apps/web/src/i18n/locales/ru.ts +++ b/apps/web/src/i18n/locales/ru.ts @@ -60,8 +60,17 @@ export const ru: Dict = { 'chat.runError.outputInvalidMessage': 'Модель выдала недопустимый вывод, и этот запрос был прерван. Обычно помогает повтор.', 'chat.runError.runtimeConfigMessage': 'Конфигурация среды выполнения выбранного агента недействительна, поэтому запуск не удался. Обновитесь до последней версии или обратитесь в поддержку.', 'chat.runError.title.quotaExhausted': "Лимит исчерпан", + 'chat.runError.title.timedOut': "Время ожидания истекло", + 'chat.runError.title.emptyOutput': "Нет вывода", + 'chat.runError.title.sessionExpired': "Сессия истекла", + 'chat.runError.title.gitBashMissing': "Нет Git Bash", 'chat.runError.quotaExhaustedMessage': "Квота или платёжный лимит вашего модельного сервиса исчерпаны, повтор не поможет. Пополните баланс у провайдера или переключитесь на другую модель или сервис.", 'chat.runError.workspaceCreditsMessage': "В вашем рабочем пространстве закончились кредиты. Добавьте кредиты (или попросите владельца пространства пополнить) либо переключитесь на другую модель или сервис.", + 'chat.runError.timedOutMessage': "Этот запуск длился слишком долго и был остановлен. Повторите попытку или сократите задачу и попробуйте снова.", + 'chat.runError.inactivityTimeoutMessage': "Агент слишком долго не выдавал новый вывод и был остановлен по тайм-ауту. Обычно повторная попытка возобновляет работу.", + 'chat.runError.emptyOutputMessage': "Агент завершился, не выдав никакого вывода. Обычно это временно, повторите попытку.", + 'chat.runError.sessionExpiredMessage': "Возобновляемая сессия истекла. Она сброшена, поэтому повторите попытку, чтобы начать новый запуск.", + 'chat.runError.gitBashMissingMessage': "Для запуска этого агента в Windows требуется Git Bash, но он не найден. Установите Git для Windows и повторите попытку.", 'common.cancel': 'Отмена', 'chat.selectFromLibrary': 'Импортировать из библиотеки', 'chat.importFigma': 'Импортировать из Figma', diff --git a/apps/web/src/i18n/locales/th.ts b/apps/web/src/i18n/locales/th.ts index 507362d2ffd..99491396791 100644 --- a/apps/web/src/i18n/locales/th.ts +++ b/apps/web/src/i18n/locales/th.ts @@ -60,8 +60,17 @@ export const th: Dict = { 'chat.runError.outputInvalidMessage': 'โมเดลสร้างเอาต์พุตที่ไม่ถูกต้องและรอบนี้ถูกขัดจังหวะ โดยปกติการลองใหม่จะแก้ไขได้', 'chat.runError.runtimeConfigMessage': 'การตั้งค่ารันไทม์ของเอเจนต์ที่เลือกไม่ถูกต้อง จึงไม่สามารถเริ่มทำงานได้ โปรดอัปเดตเป็นเวอร์ชันล่าสุดหรือติดต่อฝ่ายสนับสนุน', 'chat.runError.title.quotaExhausted': "ใช้โควตาหมดแล้ว", + 'chat.runError.title.timedOut': "หมดเวลา", + 'chat.runError.title.emptyOutput': "ไม่มีผลลัพธ์", + 'chat.runError.title.sessionExpired': "เซสชันหมดอายุ", + 'chat.runError.title.gitBashMissing': "ไม่มี Git Bash", 'chat.runError.quotaExhaustedMessage': "โควตาหรือวงเงินเรียกเก็บของบริการโมเดลที่คุณใช้หมดแล้ว การลองใหม่จึงไม่ช่วย โปรดเติมเงินกับผู้ให้บริการ หรือสลับไปใช้โมเดลหรือบริการอื่น", 'chat.runError.workspaceCreditsMessage': "เครดิตของพื้นที่ทำงานของคุณหมดแล้ว โปรดเพิ่มเครดิต (หรือขอให้เจ้าของพื้นที่ทำงานเติม) หรือสลับไปใช้โมเดลหรือบริการอื่น", + 'chat.runError.timedOutMessage': "การรันนี้ใช้เวลานานเกินไปและถูกหยุด ลองใหม่อีกครั้ง หรือลดขอบเขตงานแล้วลองใหม่", + 'chat.runError.inactivityTimeoutMessage': "เอเจนต์ไม่มีผลลัพธ์ใหม่เป็นเวลานานจึงถูกหยุดเพราะหมดเวลา โดยปกติการลองใหม่จะทำให้ทำงานต่อได้", + 'chat.runError.emptyOutputMessage': "เอเจนต์ทำงานจบโดยไม่มีผลลัพธ์ใด ๆ มักเป็นเพียงชั่วคราว โปรดลองใหม่", + 'chat.runError.sessionExpiredMessage': "เซสชันที่กลับมาทำต่อหมดอายุแล้ว ระบบรีเซ็ตให้แล้ว โปรดลองใหม่เพื่อเริ่มการรันใหม่", + 'chat.runError.gitBashMissingMessage': "ต้องใช้ Git Bash เพื่อรันเอเจนต์นี้บน Windows แต่ไม่พบ โปรดติดตั้ง Git for Windows แล้วลองใหม่", 'common.cancel': 'ยกเลิก', 'chat.selectFromLibrary': 'นำเข้าจากไลบรารี', 'chat.importFigma': 'นำเข้าจาก Figma', diff --git a/apps/web/src/i18n/locales/tr.ts b/apps/web/src/i18n/locales/tr.ts index 0cd94ebe414..2da79fd4714 100644 --- a/apps/web/src/i18n/locales/tr.ts +++ b/apps/web/src/i18n/locales/tr.ts @@ -60,8 +60,17 @@ export const tr: Dict = { 'chat.runError.outputInvalidMessage': 'Model geçersiz çıktı üretti ve bu tur kesildi. Yeniden denemek genellikle sorunu giderir.', 'chat.runError.runtimeConfigMessage': 'Seçilen aracının çalışma zamanı yapılandırması geçersiz, bu yüzden çalıştırma başlatılamadı. En son sürüme güncelleyin veya destek ile iletişime geçin.', 'chat.runError.title.quotaExhausted': "Kota doldu", + 'chat.runError.title.timedOut': "Zaman aşımı", + 'chat.runError.title.emptyOutput': "Çıktı yok", + 'chat.runError.title.sessionExpired': "Oturum süresi doldu", + 'chat.runError.title.gitBashMissing': "Git Bash yok", 'chat.runError.quotaExhaustedMessage': "Model hizmetinizin kotası veya faturalandırma limiti doldu, bu yüzden yeniden denemek işe yaramaz. Sağlayıcınızda bakiye yükleyin ya da başka bir modele veya hizmete geçin.", 'chat.runError.workspaceCreditsMessage': "Çalışma alanınızın kredisi bitti. Kredi ekleyin (veya çalışma alanı sahibinden yükleme yapmasını isteyin) ya da başka bir modele veya hizmete geçin.", + 'chat.runError.timedOutMessage': "Bu çalışma çok uzun sürdü ve durduruldu. Yeniden deneyin veya görevi küçültüp tekrar deneyin.", + 'chat.runError.inactivityTimeoutMessage': "Aracı çok uzun süre yeni çıktı üretmedi ve zaman aşımı nedeniyle durduruldu. Yeniden denemek genellikle onu sürdürür.", + 'chat.runError.emptyOutputMessage': "Aracı herhangi bir çıktı üretmeden sona erdi. Bu genellikle geçicidir, yeniden deneyin.", + 'chat.runError.sessionExpiredMessage': "Sürdürülen oturumun süresi dolmuştu. Sıfırlandı, bu yüzden yeni bir çalışma başlatmak için yeniden deneyin.", + 'chat.runError.gitBashMissingMessage': "Bu aracıyı Windows'ta çalıştırmak için Git Bash gerekir ancak bulunamadı. Git for Windows'u kurup yeniden deneyin.", 'common.cancel': 'İptal et', 'chat.selectFromLibrary': 'Kitaplıktan içe aktar', 'chat.importFigma': 'Figma\'dan içe aktar', diff --git a/apps/web/src/i18n/locales/uk.ts b/apps/web/src/i18n/locales/uk.ts index a63026956ad..317c018af88 100644 --- a/apps/web/src/i18n/locales/uk.ts +++ b/apps/web/src/i18n/locales/uk.ts @@ -60,8 +60,17 @@ export const uk: Dict = { 'chat.runError.outputInvalidMessage': 'Модель видала некоректний вивід, і цей запит було перервано. Зазвичай допомагає повторення.', 'chat.runError.runtimeConfigMessage': 'Конфігурація середовища виконання вибраного агента недійсна, тому запуск не вдався. Оновіться до останньої версії або зверніться до підтримки.', 'chat.runError.title.quotaExhausted': "Ліміт вичерпано", + 'chat.runError.title.timedOut': "Час очікування вичерпано", + 'chat.runError.title.emptyOutput': "Немає виводу", + 'chat.runError.title.sessionExpired': "Сесія завершилася", + 'chat.runError.title.gitBashMissing': "Немає Git Bash", 'chat.runError.quotaExhaustedMessage': "Квоту або платіжний ліміт вашого модельного сервісу вичерпано, тож повторна спроба не допоможе. Поповніть баланс у постачальника або перемкніться на іншу модель чи сервіс.", 'chat.runError.workspaceCreditsMessage': "У вашому робочому просторі закінчилися кредити. Додайте кредити (або попросіть власника простору поповнити) чи перемкніться на іншу модель або сервіс.", + 'chat.runError.timedOutMessage': "Цей запуск тривав надто довго й був зупинений. Спробуйте ще раз або звузьте завдання та повторіть.", + 'chat.runError.inactivityTimeoutMessage': "Агент задовго не видавав нового виводу й був зупинений через тайм-аут. Зазвичай повторна спроба відновлює роботу.", + 'chat.runError.emptyOutputMessage': "Агент завершився, не видавши жодного виводу. Зазвичай це тимчасово, спробуйте ще раз.", + 'chat.runError.sessionExpiredMessage': "Відновлювана сесія завершилася. Її скинуто, тож спробуйте ще раз, щоб почати новий запуск.", + 'chat.runError.gitBashMissingMessage': "Для запуску цього агента в Windows потрібен Git Bash, але його не знайдено. Установіть Git для Windows і спробуйте ще раз.", 'common.cancel': 'Скасувати', 'chat.selectFromLibrary': 'Імпортувати з бібліотеки', 'chat.importFigma': 'Імпортувати з Figma', diff --git a/apps/web/src/i18n/locales/zh-CN.ts b/apps/web/src/i18n/locales/zh-CN.ts index 9cf21c7d8b0..543ef5784ad 100644 --- a/apps/web/src/i18n/locales/zh-CN.ts +++ b/apps/web/src/i18n/locales/zh-CN.ts @@ -66,8 +66,17 @@ export const zhCN: Dict = { "chat.runError.outputInvalidMessage": "模型输出了异常内容,本轮已被中断。通常重试即可恢复。", "chat.runError.runtimeConfigMessage": "所选智能体的运行时配置有误,无法启动本轮任务。请更新到最新版本或联系支持。", "chat.runError.title.quotaExhausted": "额度已用尽", + "chat.runError.title.timedOut": "运行超时", + "chat.runError.title.emptyOutput": "没有任何输出", + "chat.runError.title.sessionExpired": "会话已过期", + "chat.runError.title.gitBashMissing": "缺少 Git Bash", "chat.runError.quotaExhaustedMessage": "所用模型服务的额度或账单上限已用尽,重试也无法恢复。请前往对应服务充值,或切换到其他模型/服务。", "chat.runError.workspaceCreditsMessage": "工作区额度已用尽。请充值(或联系工作区管理员补充),或切换到其他模型/服务。", + "chat.runError.timedOutMessage": "本次运行耗时过长已被中断。请重试,或缩小任务范围后再试。", + "chat.runError.inactivityTimeoutMessage": "智能体长时间没有新输出,已按超时中断。通常重试即可继续。", + "chat.runError.emptyOutputMessage": "智能体本次结束时没有产生任何输出。这通常是暂时的,重试即可再次运行。", + "chat.runError.sessionExpiredMessage": "要恢复的会话已过期,已为你重置。重试即可开始一次全新运行。", + "chat.runError.gitBashMissingMessage": "在 Windows 上运行该智能体需要 Git Bash,但未找到。请安装 Git for Windows 后重试。", "common.cancel": "取消", "chat.selectFromLibrary": "从资源库导入", "chat.importFigma": "从 Figma 导入", diff --git a/apps/web/src/i18n/locales/zh-TW.ts b/apps/web/src/i18n/locales/zh-TW.ts index 327e79daf51..f25d77d2bd8 100644 --- a/apps/web/src/i18n/locales/zh-TW.ts +++ b/apps/web/src/i18n/locales/zh-TW.ts @@ -66,8 +66,17 @@ export const zhTW: Dict = { "chat.runError.outputInvalidMessage": "模型輸出了異常內容,本輪已被中斷。通常重試即可恢復。", "chat.runError.runtimeConfigMessage": "所選智慧體的執行階段設定有誤,無法啟動本輪任務。請更新到最新版本或聯絡支援。", "chat.runError.title.quotaExhausted": "額度已用盡", + "chat.runError.title.timedOut": "執行逾時", + "chat.runError.title.emptyOutput": "沒有任何輸出", + "chat.runError.title.sessionExpired": "工作階段已過期", + "chat.runError.title.gitBashMissing": "缺少 Git Bash", "chat.runError.quotaExhaustedMessage": "所用模型服務的額度或帳單上限已用盡,重試也無法恢復。請前往對應服務儲值,或切換到其他模型/服務。", "chat.runError.workspaceCreditsMessage": "工作區額度已用盡。請儲值(或聯絡工作區管理員補充),或切換到其他模型/服務。", + "chat.runError.timedOutMessage": "本次執行耗時過長已被中斷。請重試,或縮小任務範圍後再試。", + "chat.runError.inactivityTimeoutMessage": "智能體長時間沒有新輸出,已依逾時中斷。通常重試即可繼續。", + "chat.runError.emptyOutputMessage": "智能體本次結束時沒有產生任何輸出。這通常是暫時的,重試即可再次執行。", + "chat.runError.sessionExpiredMessage": "要恢復的工作階段已過期,已為你重置。重試即可開始一次全新執行。", + "chat.runError.gitBashMissingMessage": "在 Windows 上執行此智能體需要 Git Bash,但找不到。請安裝 Git for Windows 後重試。", "common.cancel": "取消", "chat.selectFromLibrary": "從資源庫匯入", "chat.importFigma": "從 Figma 匯入", diff --git a/apps/web/src/i18n/types.ts b/apps/web/src/i18n/types.ts index 988a5271d8e..a420136293d 100644 --- a/apps/web/src/i18n/types.ts +++ b/apps/web/src/i18n/types.ts @@ -2458,6 +2458,10 @@ export interface Dict { 'chat.runError.title.outputInvalid': string; 'chat.runError.title.runtimeConfig': string; 'chat.runError.title.quotaExhausted': string; + 'chat.runError.title.timedOut': string; + 'chat.runError.title.emptyOutput': string; + 'chat.runError.title.sessionExpired': string; + 'chat.runError.title.gitBashMissing': string; 'chat.runError.title.generic': string; 'chat.runError.signInMessage.amr': string; 'chat.runError.signInMessage.other': string; @@ -2471,6 +2475,11 @@ export interface Dict { 'chat.runError.runtimeConfigMessage': string; 'chat.runError.quotaExhaustedMessage': string; 'chat.runError.workspaceCreditsMessage': string; + 'chat.runError.timedOutMessage': string; + 'chat.runError.inactivityTimeoutMessage': string; + 'chat.runError.emptyOutputMessage': string; + 'chat.runError.sessionExpiredMessage': string; + 'chat.runError.gitBashMissingMessage': string; 'chat.runError.agentFallback': string; 'chat.runError.sourceLabel': string; 'chat.runError.sourceExpandAria': string; diff --git a/apps/web/src/runtime/amr-guidance.ts b/apps/web/src/runtime/amr-guidance.ts index 79e7403ad9f..b11ad91f690 100644 --- a/apps/web/src/runtime/amr-guidance.ts +++ b/apps/web/src/runtime/amr-guidance.ts @@ -105,6 +105,11 @@ export type RunFailureMessageKey = | 'chat.runError.runtimeConfigMessage' | 'chat.runError.quotaExhaustedMessage' | 'chat.runError.workspaceCreditsMessage' + | 'chat.runError.timedOutMessage' + | 'chat.runError.inactivityTimeoutMessage' + | 'chat.runError.emptyOutputMessage' + | 'chat.runError.sessionExpiredMessage' + | 'chat.runError.gitBashMissingMessage' | null; // i18n keys for the unified error card's TITLE (the "error type" line above the @@ -126,6 +131,10 @@ export type RunFailureTitleKey = | 'chat.runError.title.outputInvalid' | 'chat.runError.title.runtimeConfig' | 'chat.runError.title.quotaExhausted' + | 'chat.runError.title.timedOut' + | 'chat.runError.title.emptyOutput' + | 'chat.runError.title.sessionExpired' + | 'chat.runError.title.gitBashMissing' | 'chat.runError.title.generic'; export interface RunFailureUi { @@ -242,9 +251,51 @@ const DETAIL_FAILURE_UI: Record = { ), }; +// Agent-agnostic failure causes keyed by the daemon's `failure_detail`, resolved +// BEFORE the AMR/Antigravity agent branches (unlike DETAIL_FAILURE_UI above). +// These are engine-neutral run outcomes — a timeout, an empty result, a stale +// resumed session, a missing Git Bash — that carry the same named type + fix for +// every agent, including AMR. They leak in under the opaque AGENT_EXECUTION_FAILED +// / process-exit codes, so without this the card would only show the raw stderr. +const AGENT_AGNOSTIC_DETAIL_FAILURE_UI: Record = { + // Hard wall-clock timeout for the run (daemon user_action: retry). A plain + // retry — optionally with a smaller task — usually gets through. + timeout: retryWithGuidance( + 'chat.runError.title.timedOut', + 'chat.runError.timedOutMessage', + ), + // The agent stalled (no new output for too long) and was cut off as a + // timeout. Distinct copy from a hard timeout, same retry recovery. + inactivity_timeout: retryWithGuidance( + 'chat.runError.title.timedOut', + 'chat.runError.inactivityTimeoutMessage', + ), + // Run terminated without producing any output (daemon user_action: retry); + // usually transient, so name it and offer a straight retry. + empty_output: retryWithGuidance( + 'chat.runError.title.emptyOutput', + 'chat.runError.emptyOutputMessage', + ), + // A resumed agent session id went stale; the daemon already cleared it so the + // next run starts fresh (#3408). Name it as recoverable and offer Retry. + session_resume_expired: retryWithGuidance( + 'chat.runError.title.sessionExpired', + 'chat.runError.sessionExpiredMessage', + ), + // Windows: the agent needs Git Bash to spawn and it isn't installed + // (daemon user_action: install_cli). Point at installing Git for Windows, + // then retry — same "install the dependency, then re-run" shape as cli_missing. + git_bash_missing: retryWithGuidance( + 'chat.runError.title.gitBashMissing', + 'chat.runError.gitBashMissingMessage', + ), +}; + // Resolve the failure UI for a failed run: // - agent-agnostic root cause (cli missing, prompt too large, model // unavailable, tool loop, bad output, bad runtime def) → named type + fix +// - agent-agnostic failure_detail (timeout, empty output, stale resumed +// session, missing Git Bash) → named type + retry, for every agent // - AMR agent, auth required → authorize-and-retry button, clearer copy // - AMR agent, insufficient funds → recharge button + manual retry, clearer copy // - AMR agent, tier entitlement → upgrade button + manual retry @@ -262,6 +313,12 @@ export function resolveRunFailureUi( // of them still gets the specific guidance instead of the generic fallback. const agnostic = typeof code === 'string' ? AGENT_AGNOSTIC_FAILURE_UI[code] : undefined; if (agnostic) return agnostic; + // Engine-neutral failure_detail (timeout, empty output, stale resumed session, + // missing Git Bash) resolves before the agent branches so it applies to every + // agent — including AMR, whose branch below otherwise returns a generic retry. + const agnosticDetail = + typeof detail === 'string' ? AGENT_AGNOSTIC_DETAIL_FAILURE_UI[detail] : undefined; + if (agnosticDetail) return agnosticDetail; if (agentId === 'amr') { if (code === 'AMR_AUTH_REQUIRED') { return { diff --git a/apps/web/tests/runtime/amr-guidance.test.ts b/apps/web/tests/runtime/amr-guidance.test.ts index a786bd719df..714dd202a93 100644 --- a/apps/web/tests/runtime/amr-guidance.test.ts +++ b/apps/web/tests/runtime/amr-guidance.test.ts @@ -97,6 +97,31 @@ describe('resolveRunFailureUi', () => { expect(ui.primaryAction).toBe('launch-terminal-switch-model'); }); + // #895 long tail: lower-frequency failure_detail values the daemon already + // classifies (timeout, empty output, stale resumed session, missing Git Bash) + // now map to a named type + actionable copy with a plain Retry, for any agent — + // the AGENT_EXECUTION_FAILED code alone would only show the raw stderr. + it('maps long-tail failure_detail values to a named type + retry guidance for any agent', () => { + const cases: Array<[string, string, string]> = [ + ['timeout', 'chat.runError.title.timedOut', 'chat.runError.timedOutMessage'], + ['inactivity_timeout', 'chat.runError.title.timedOut', 'chat.runError.inactivityTimeoutMessage'], + ['empty_output', 'chat.runError.title.emptyOutput', 'chat.runError.emptyOutputMessage'], + ['session_resume_expired', 'chat.runError.title.sessionExpired', 'chat.runError.sessionExpiredMessage'], + ['git_bash_missing', 'chat.runError.title.gitBashMissing', 'chat.runError.gitBashMissingMessage'], + ]; + for (const [detail, titleKey, messageKey] of cases) { + for (const agent of ['claude', 'codex', 'amr', null]) { + expect(resolveRunFailureUi('AGENT_EXECUTION_FAILED', detail, agent)).toMatchObject({ + primaryAction: 'retry', + titleKey, + messageKey, + secondaryRetry: false, + showSwitchCard: false, + }); + } + } + }); + // Agent-agnostic root-cause codes (#895): each carries a named failure type + // actionable fix, resolved the same way for any agent, with a plain Retry and // no AMR promotion (these aren't "switch to hosted model" cases).