You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[BUG] Task titles corrupt to "Work #1 (no message)" after rapid history navigation #1180
After rapidly expanding, collapsing, or reopening tasks in the history view, the stored title of a task is permanently replaced with the placeholder "Work # 1 (no message)" (or its localized form, e.g., "工作 # 1 (無訊息)" in Traditional Chinese). The real task prompt is lost.
Context
Any user who navigates between history items quickly. More likely to trigger on Windows, where reading a large ui_messages.json file takes longer (files can reach 17–20 MB when tasks include read_file output). First introduced in v3.74.0 with the subtask navigation buttons (Back to parent / Go to subtask).
Reproduction steps
Environment: Zoo Code v3.76.0, Windows, any API provider
Open the task history view.
Click a completed parent task to open it.
Before the chat messages appear, click the Back button or open a different history item.
Repeat steps 3–4 rapidly two or three times (parent and child tasks if available).
Open the history view again.
Observe that the task entry now shows "Work # 1 (no message)" instead of the original prompt.
Expected result
The original task title is preserved in the history list regardless of how quickly the user navigates away.
Actual result
The title permanently changes to "Work # 1 (no message)" / "工作 # 1 (無訊息)". The real prompt is gone from the history entry.
Root cause (confirmed)
Task#resumeTaskFromHistory() starts with an async disk read (getSavedClineMessages()). Until that read completes, this.clineMessages is []. ClineProvider#evictCurrentTask() — called by every navigation away, including the subtask buttons — unconditionally calls abortTask(), which calls saveClineMessages() → taskMetadata(). With an empty messages array, taskMetadata() writes the no_messages placeholder as the title, permanently overwriting the real one in the history store.
On Windows with large task files and Defender real-time scanning, the read window is wide enough to hit reliably with fast clicks.
Variations tried
Traditional Chinese UI (reported by sky.relifer on Discord, 2026-08-06)
Would be great to have a release with that fix in soon, as this just lost me 30 minutes of work. Multiplied by the number of users, that probably adds up to quite some time.
I found that you can reconstruct the task by letting the LLM read e.g. ~/.vscode-server/data/User/globalStorage/zoocodeorganization.zoo-code/tasks/${TASK}/api_conversation_history.json where ${TASK} is the relevant task folder (e.g. finding the latest by newest time with ls -t.
Activity
nh2 commentedon Aug 9, 2026
Would be great to have a release with that fix in soon, as this just lost me 30 minutes of work. Multiplied by the number of users, that probably adds up to quite some time.
nh2 commentedon Aug 9, 2026
I found that you can reconstruct the task by letting the LLM read e.g.
~/.vscode-server/data/User/globalStorage/zoocodeorganization.zoo-code/tasks/${TASK}/api_conversation_history.jsonwhere${TASK}is the relevant task folder (e.g. finding the latest by newest time withls -t.