Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
the current turn has run, distinguishing actively working from waiting on a
tool, a sub-agent or the operator; the 0.9.12 shell had dropped the overall
working-time indicator from the place a glancing user checks (#5914).
- A background runtime turn whose own store record could not be read, parsed
or written (`Failed to read turn …`, `Failed to read item …`) was only a log
line. The runtime now publishes a `runtime.store_failure` event naming the
file, the root cause and the next action (move the file aside, or check free
space and permissions); the TUI shows it as a warning toast and a transcript
line, the task timeline records it, and the runtime API streams it. A turn
whose own record is unreadable or unwritable is reported as terminal, so its
task fails at once instead of idling out (#5931).
Comment on lines +85 to +92

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔍 Remove branch changelog edits

Repository rules reserve both changelogs for merge-time updates on main. These additions create the conflicts that policy explicitly avoids.

Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.


### Added

Expand Down
8 changes: 8 additions & 0 deletions crates/tui/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
the current turn has run, distinguishing actively working from waiting on a
tool, a sub-agent or the operator; the 0.9.12 shell had dropped the overall
working-time indicator from the place a glancing user checks (#5914).
- A background runtime turn whose own store record could not be read, parsed
or written (`Failed to read turn …`, `Failed to read item …`) was only a log
line. The runtime now publishes a `runtime.store_failure` event naming the
file, the root cause and the next action (move the file aside, or check free
space and permissions); the TUI shows it as a warning toast and a transcript
line, the task timeline records it, and the runtime API streams it. A turn
whose own record is unreadable or unwritable is reported as terminal, so its
task fails at once instead of idling out (#5931).

### Added

Expand Down
2 changes: 2 additions & 0 deletions crates/tui/locales/ca.json
Original file line number Diff line number Diff line change
Expand Up @@ -1433,6 +1433,8 @@
"ToolProjectionWarning": "Avís: {provider} ha omès eines incompatibles en aquesta sol·licitud: {tools}",
"SnapshotsDisabledNotice": "Les instantànies i /undo estan desactivats per a {workspace}: {reason} Augmenta `{config_key}` a config.toml (o posa-ho a 0 per treure el límit) per activar-los.",
"SessionIdDivergedNotice": "La identitat de la sessió ha canviat sota aquesta finestra: el motor ara desa els punts de control com a {next} (abans era {previous}). Els punts anteriors queden sota l'id antic; `codewhale sessions` els llista tots dos i `codewhale resume {previous}` reobre l'anterior.",
"RuntimeStoreUnreadableNotice": "Magatzem d'execució de la sessió: no s'ha pogut llegir {record} a {path} ({reason}). Aparta aquest fitxer (o suprimeix-lo) i torna-ho a provar; la resta de registres del fil es conserven.",
"RuntimeStoreUnwritableNotice": "Magatzem d'execució de la sessió: no s'ha pogut escriure {record} a {path} ({reason}). Comprova l'espai lliure i els permisos allà i torna-ho a provar; no s'ha sobreescrit res.",
"ProviderExternalSemanticsRevoke": "{semantics} | revoca: {revoke}",
"ProviderExternalRevoke": "revoca: {revoke}",
"ProviderExternalChoiceTitle": " Accés a credencials externes · {provider} ",
Expand Down
2 changes: 2 additions & 0 deletions crates/tui/locales/de.json
Original file line number Diff line number Diff line change
Expand Up @@ -1433,6 +1433,8 @@
"ToolProjectionWarning": "Warnung: {provider} hat für diese Anfrage inkompatible Werkzeuge ausgelassen: {tools}",
"SnapshotsDisabledNotice": "Snapshots und /undo sind für {workspace} aus: {reason} Erhöhe `{config_key}` in config.toml (oder setze es auf 0, um die Grenze aufzuheben), um sie einzuschalten.",
"SessionIdDivergedNotice": "Die Sitzungsidentität unter diesem Fenster hat sich geändert: Die Engine speichert Checkpoints jetzt als {next} (vorher {previous}). Frühere Checkpoints bleiben unter der alten ID; `codewhale sessions` listet beide und `codewhale resume {previous}` öffnet die frühere wieder.",
"RuntimeStoreUnreadableNotice": "Laufzeitspeicher der Sitzung: {record} unter {path} konnte nicht gelesen werden ({reason}). Verschiebe diese Datei beiseite (oder lösche sie) und versuche es erneut; die übrigen Datensätze des Threads bleiben erhalten.",
"RuntimeStoreUnwritableNotice": "Laufzeitspeicher der Sitzung: {record} unter {path} konnte nicht geschrieben werden ({reason}). Prüfe dort freien Speicherplatz und Berechtigungen und versuche es erneut; nichts wurde überschrieben.",
"ProviderExternalSemanticsRevoke": "{semantics} | Widerruf: {revoke}",
"ProviderExternalRevoke": "Widerruf: {revoke}",
"ProviderExternalChoiceTitle": " Externer Zugangsdaten-Zugriff · {provider} ",
Expand Down
2 changes: 2 additions & 0 deletions crates/tui/locales/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -1456,6 +1456,8 @@
"ToolProjectionWarning": "Warning: {provider} omitted incompatible tools for this request: {tools}",
"SnapshotsDisabledNotice": "Snapshots and /undo are off for {workspace}: {reason} Raise `{config_key}` in config.toml (or set it to 0 to remove the cap) to turn them on.",
"SessionIdDivergedNotice": "Session identity changed under this window: the engine now saves checkpoints as {next} (it was {previous}). Earlier checkpoints stay under the old id; `codewhale sessions` lists both and `codewhale resume {previous}` reopens the earlier one.",
"RuntimeStoreUnreadableNotice": "Session runtime store: {record} at {path} could not be read ({reason}). Move that file aside (or delete it) and retry; the thread's other records stay in place.",
"RuntimeStoreUnwritableNotice": "Session runtime store: {record} at {path} could not be written ({reason}). Check free space and permissions there, then retry; nothing was overwritten.",
"ProviderExternalSemanticsRevoke": "{semantics} | revoke: {revoke}",
"ProviderExternalRevoke": "revoke: {revoke}",
"ProviderExternalChoiceTitle": " External credential access · {provider} ",
Expand Down
2 changes: 2 additions & 0 deletions crates/tui/locales/es-419.json
Original file line number Diff line number Diff line change
Expand Up @@ -1456,6 +1456,8 @@
"ToolProjectionWarning": "Advertencia: {provider} omitió herramientas incompatibles en esta solicitud: {tools}",
"SnapshotsDisabledNotice": "Las instantáneas y /undo están desactivados para {workspace}: {reason} Sube `{config_key}` en config.toml (o ponlo en 0 para quitar el límite) para activarlos.",
"SessionIdDivergedNotice": "La identidad de la sesión cambió bajo esta ventana: el motor ahora guarda checkpoints como {next} (antes era {previous}). Los checkpoints anteriores quedan bajo el id anterior; `codewhale sessions` lista ambos y `codewhale resume {previous}` reabre el anterior.",
"RuntimeStoreUnreadableNotice": "Almacén de ejecución de la sesión: no se pudo leer {record} en {path} ({reason}). Aparta ese archivo (o elimínalo) y vuelve a intentar; los demás registros del hilo se conservan.",
"RuntimeStoreUnwritableNotice": "Almacén de ejecución de la sesión: no se pudo escribir {record} en {path} ({reason}). Revisa el espacio libre y los permisos allí y vuelve a intentar; no se sobrescribió nada.",
"ProviderExternalSemanticsRevoke": "{semantics} | revocar: {revoke}",
"ProviderExternalRevoke": "revocar: {revoke}",
"ProviderExternalChoiceTitle": " Acceso a credencial externa · {provider} ",
Expand Down
2 changes: 2 additions & 0 deletions crates/tui/locales/fr.json
Original file line number Diff line number Diff line change
Expand Up @@ -1433,6 +1433,8 @@
"ToolProjectionWarning": "Avertissement : {provider} a omis les outils incompatibles pour cette requête : {tools}",
"SnapshotsDisabledNotice": "Les instantanés et /undo sont désactivés pour {workspace} : {reason} Augmentez `{config_key}` dans config.toml (ou mettez 0 pour lever la limite) pour les activer.",
"SessionIdDivergedNotice": "L'identité de session a changé sous cette fenêtre : le moteur enregistre désormais les points de reprise sous {next} (c'était {previous}). Les points antérieurs restent sous l'ancien identifiant ; `codewhale sessions` liste les deux et `codewhale resume {previous}` rouvre l'ancien.",
"RuntimeStoreUnreadableNotice": "Magasin d'exécution de la session : impossible de lire {record} dans {path} ({reason}). Mettez ce fichier de côté (ou supprimez-le) et réessayez ; les autres enregistrements du fil restent en place.",
"RuntimeStoreUnwritableNotice": "Magasin d'exécution de la session : impossible d'écrire {record} dans {path} ({reason}). Vérifiez l'espace libre et les permissions à cet endroit, puis réessayez ; rien n'a été écrasé.",
"ProviderExternalSemanticsRevoke": "{semantics} | révocation : {revoke}",
"ProviderExternalRevoke": "révocation : {revoke}",
"ProviderExternalChoiceTitle": " Accès à des identifiants externes · {provider} ",
Expand Down
2 changes: 2 additions & 0 deletions crates/tui/locales/hi.json
Original file line number Diff line number Diff line change
Expand Up @@ -1433,6 +1433,8 @@
"ToolProjectionWarning": "चेतावनी: {provider} ने इस अनुरोध में असंगत टूल हटा दिए: {tools}",
"SnapshotsDisabledNotice": "{workspace} के लिए स्नैपशॉट और /undo बंद हैं: {reason} इन्हें चालू करने के लिए config.toml में `{config_key}` बढ़ाएँ (या सीमा हटाने के लिए 0 रखें)।",
"SessionIdDivergedNotice": "इस विंडो की सत्र पहचान बदल गई है: इंजन अब चेकपॉइंट {next} के रूप में सहेजता है (पहले {previous} था)। पुराने चेकपॉइंट पुराने id के तहत ही रहेंगे; `codewhale sessions` दोनों दिखाता है और `codewhale resume {previous}` पुराना सत्र फिर खोलता है।",
"RuntimeStoreUnreadableNotice": "सत्र रनटाइम स्टोर: {path} पर {record} पढ़ा नहीं जा सका ({reason})। उस फ़ाइल को अलग रख दें (या हटा दें) और फिर से कोशिश करें; थ्रेड के बाकी रिकॉर्ड यथावत रहते हैं।",
"RuntimeStoreUnwritableNotice": "सत्र रनटाइम स्टोर: {path} पर {record} लिखा नहीं जा सका ({reason})। वहाँ खाली जगह और अनुमतियाँ जाँचें, फिर दोबारा कोशिश करें; कुछ भी अधिलेखित नहीं हुआ।",
"ProviderExternalSemanticsRevoke": "{semantics} | रद्द: {revoke}",
"ProviderExternalRevoke": "रद्द: {revoke}",
"ProviderExternalChoiceTitle": " बाहरी क्रेडेंशल एक्सेस · {provider} ",
Expand Down
2 changes: 2 additions & 0 deletions crates/tui/locales/id.json
Original file line number Diff line number Diff line change
Expand Up @@ -1433,6 +1433,8 @@
"ToolProjectionWarning": "Peringatan: {provider} menghilangkan alat yang tidak kompatibel untuk permintaan ini: {tools}",
"SnapshotsDisabledNotice": "Snapshot dan /undo nonaktif untuk {workspace}: {reason} Naikkan `{config_key}` di config.toml (atau setel 0 untuk menghapus batas) untuk mengaktifkannya.",
"SessionIdDivergedNotice": "Identitas sesi di jendela ini berubah: engine kini menyimpan checkpoint sebagai {next} (sebelumnya {previous}). Checkpoint lama tetap di id lama; `codewhale sessions` menampilkan keduanya dan `codewhale resume {previous}` membuka kembali yang lama.",
"RuntimeStoreUnreadableNotice": "Penyimpanan runtime sesi: {record} di {path} tidak dapat dibaca ({reason}). Pindahkan berkas itu (atau hapus) lalu coba lagi; rekaman lain di thread ini tetap utuh.",
"RuntimeStoreUnwritableNotice": "Penyimpanan runtime sesi: {record} di {path} tidak dapat ditulis ({reason}). Periksa ruang kosong dan izin di sana, lalu coba lagi; tidak ada yang ditimpa.",
"ProviderExternalSemanticsRevoke": "{semantics} | cabut: {revoke}",
"ProviderExternalRevoke": "cabut: {revoke}",
"ProviderExternalChoiceTitle": " Akses kredensial eksternal · {provider} ",
Expand Down
2 changes: 2 additions & 0 deletions crates/tui/locales/ja.json
Original file line number Diff line number Diff line change
Expand Up @@ -1456,6 +1456,8 @@
"ToolProjectionWarning": "警告: {provider} はこのリクエストで互換性のないツールを除外しました: {tools}",
"SnapshotsDisabledNotice": "{workspace} ではスナップショットと /undo が無効です: {reason} config.toml の `{config_key}` を上げる(または 0 にして上限を外す)と有効になります。",
"SessionIdDivergedNotice": "このウィンドウのセッション ID が変わりました。エンジンは今後 {next} としてチェックポイントを保存します(以前は {previous})。以前のチェックポイントは旧 ID のまま残ります。`codewhale sessions` で両方を確認でき、`codewhale resume {previous}` で以前のセッションを再開できます。",
"RuntimeStoreUnreadableNotice": "セッションのランタイムストア: {path} の {record} を読み取れませんでした({reason})。そのファイルを退避(または削除)して再試行してください。スレッドの他のレコードはそのまま残ります。",
"RuntimeStoreUnwritableNotice": "セッションのランタイムストア: {path} の {record} を書き込めませんでした({reason})。その場所の空き容量と権限を確認して再試行してください。何も上書きされていません。",
"ProviderExternalSemanticsRevoke": "{semantics} | 取消: {revoke}",
"ProviderExternalRevoke": "取消: {revoke}",
"ProviderExternalChoiceTitle": " 外部認証情報へのアクセス · {provider} ",
Expand Down
2 changes: 2 additions & 0 deletions crates/tui/locales/ko.json
Original file line number Diff line number Diff line change
Expand Up @@ -1456,6 +1456,8 @@
"ToolProjectionWarning": "경고: {provider}가 이 요청에서 호환되지 않는 도구를 제외했습니다: {tools}",
"SnapshotsDisabledNotice": "{workspace}에서 스냅샷과 /undo가 꺼져 있습니다: {reason} config.toml의 `{config_key}` 값을 높이면(또는 0으로 설정해 상한을 없애면) 켜집니다.",
"SessionIdDivergedNotice": "이 창의 세션 ID가 바뀌었습니다. 엔진은 이제 {next}로 체크포인트를 저장합니다(이전: {previous}). 이전 체크포인트는 옛 ID 아래에 남습니다. `codewhale sessions`로 둘 다 확인하고 `codewhale resume {previous}`로 이전 세션을 다시 열 수 있습니다.",
"RuntimeStoreUnreadableNotice": "세션 런타임 저장소: {path}의 {record}을(를) 읽을 수 없습니다({reason}). 해당 파일을 옮기거나 삭제한 뒤 다시 시도하세요. 스레드의 다른 레코드는 그대로 유지됩니다.",
"RuntimeStoreUnwritableNotice": "세션 런타임 저장소: {path}의 {record}을(를) 쓸 수 없습니다({reason}). 해당 위치의 여유 공간과 권한을 확인한 뒤 다시 시도하세요. 아무것도 덮어쓰지 않았습니다.",
"ProviderExternalSemanticsRevoke": "{semantics} | 취소: {revoke}",
"ProviderExternalRevoke": "취소: {revoke}",
"ProviderExternalChoiceTitle": " 외부 자격 증명 접근 · {provider} ",
Expand Down
2 changes: 2 additions & 0 deletions crates/tui/locales/pt-BR.json
Original file line number Diff line number Diff line change
Expand Up @@ -1456,6 +1456,8 @@
"ToolProjectionWarning": "Aviso: {provider} omitiu ferramentas incompatíveis nesta solicitação: {tools}",
"SnapshotsDisabledNotice": "Snapshots e /undo estão desligados para {workspace}: {reason} Aumente `{config_key}` no config.toml (ou defina 0 para remover o limite) para ligá-los.",
"SessionIdDivergedNotice": "A identidade da sessão mudou nesta janela: o motor agora salva checkpoints como {next} (antes era {previous}). Os checkpoints anteriores ficam sob o id antigo; `codewhale sessions` lista os dois e `codewhale resume {previous}` reabre o anterior.",
"RuntimeStoreUnreadableNotice": "Armazenamento de execução da sessão: não foi possível ler {record} em {path} ({reason}). Afaste esse arquivo (ou exclua-o) e tente de novo; os demais registros da thread permanecem.",
"RuntimeStoreUnwritableNotice": "Armazenamento de execução da sessão: não foi possível gravar {record} em {path} ({reason}). Verifique o espaço livre e as permissões nesse local e tente de novo; nada foi sobrescrito.",
"ProviderExternalSemanticsRevoke": "{semantics} | revogar: {revoke}",
"ProviderExternalRevoke": "revogar: {revoke}",
"ProviderExternalChoiceTitle": " Acesso a credencial externa · {provider} ",
Expand Down
2 changes: 2 additions & 0 deletions crates/tui/locales/ru.json
Original file line number Diff line number Diff line change
Expand Up @@ -1433,6 +1433,8 @@
"ToolProjectionWarning": "Внимание: {provider} исключил несовместимые инструменты для этого запроса: {tools}",
"SnapshotsDisabledNotice": "Снимки и /undo отключены для {workspace}: {reason} Увеличьте `{config_key}` в config.toml (или задайте 0, чтобы снять ограничение), чтобы включить их.",
"SessionIdDivergedNotice": "Идентификатор сеанса в этом окне изменился: движок теперь сохраняет контрольные точки как {next} (было {previous}). Прежние точки остаются под старым id; `codewhale sessions` показывает оба, а `codewhale resume {previous}` открывает прежний сеанс.",
"RuntimeStoreUnreadableNotice": "Хранилище среды выполнения сессии: не удалось прочитать {record} в {path} ({reason}). Отложите этот файл (или удалите его) и повторите попытку; остальные записи потока сохраняются.",
"RuntimeStoreUnwritableNotice": "Хранилище среды выполнения сессии: не удалось записать {record} в {path} ({reason}). Проверьте свободное место и права доступа там и повторите попытку; ничего не было перезаписано.",
"ProviderExternalSemanticsRevoke": "{semantics} | отзыв: {revoke}",
"ProviderExternalRevoke": "отзыв: {revoke}",
"ProviderExternalChoiceTitle": " Доступ к внешним учётным данным · {provider} ",
Expand Down
2 changes: 2 additions & 0 deletions crates/tui/locales/uk.json
Original file line number Diff line number Diff line change
Expand Up @@ -1433,6 +1433,8 @@
"ToolProjectionWarning": "Попередження: {provider} вилучив несумісні інструменти для цього запиту: {tools}",
"SnapshotsDisabledNotice": "Знімки та /undo вимкнено для {workspace}: {reason} Збільште `{config_key}` у config.toml (або встановіть 0, щоб зняти обмеження), щоб увімкнути їх.",
"SessionIdDivergedNotice": "Ідентифікатор сеансу в цьому вікні змінився: рушій тепер зберігає контрольні точки як {next} (було {previous}). Попередні точки лишаються під старим id; `codewhale sessions` показує обидва, а `codewhale resume {previous}` відкриває попередній сеанс.",
"RuntimeStoreUnreadableNotice": "Сховище середовища виконання сесії: не вдалося прочитати {record} у {path} ({reason}). Відкладіть цей файл (або видаліть його) і повторіть спробу; інші записи потоку залишаються.",
"RuntimeStoreUnwritableNotice": "Сховище середовища виконання сесії: не вдалося записати {record} у {path} ({reason}). Перевірте вільне місце та права доступу там і повторіть спробу; нічого не було перезаписано.",
"ProviderExternalSemanticsRevoke": "{semantics} | відкликання: {revoke}",
"ProviderExternalRevoke": "відкликання: {revoke}",
"ProviderExternalChoiceTitle": " Доступ до зовнішніх облікових даних · {provider} ",
Expand Down
Loading
Loading