diff --git a/src/components/ChatBox/TaskCard.tsx b/src/components/ChatBox/TaskCard.tsx
index a6a2afcf8..642abae8a 100644
--- a/src/components/ChatBox/TaskCard.tsx
+++ b/src/components/ChatBox/TaskCard.tsx
@@ -179,14 +179,17 @@ export function TaskCard({
{taskType === 1 && (
task.content !== "").length || 0}
done={
- taskInfo.filter((task) => task.status === "completed")
- .length || 0
+ taskInfo.filter(
+ (task) =>
+ task.content !== "" && task.status === "completed"
+ ).length || 0
}
progress={
taskInfo.filter(
(task) =>
+ task.content !== "" &&
task.status !== "completed" &&
task.status !== "failed" &&
task.status !== "skipped" &&
@@ -197,14 +200,16 @@ export function TaskCard({
skipped={
taskInfo.filter(
(task) =>
- task.status === "skipped" ||
- task.status === "waiting" ||
- task.status === ""
+ task.content !== "" &&
+ (task.status === "skipped" ||
+ task.status === "waiting" ||
+ task.status === "")
).length || 0
}
failed={
- taskInfo.filter((task) => task.status === "failed")
- .length || 0
+ taskInfo.filter(
+ (task) => task.content !== "" && task.status === "failed"
+ ).length || 0
}
forceVisible={true}
clickable={clickable}
diff --git a/src/store/chatStore.ts b/src/store/chatStore.ts
index c0f035911..571a7abc3 100644
--- a/src/store/chatStore.ts
+++ b/src/store/chatStore.ts
@@ -1311,13 +1311,16 @@ const chatStore = create()(
}))
},
handleConfirmTask: async (taskId: string, type?: string) => {
- const { tasks, setMessages, setActiveWorkSpace, setStatus, setTaskTime, setTaskInfo } = get();
+ const { tasks, setMessages, setActiveWorkSpace, setStatus, setTaskTime, setTaskInfo, setTaskRunning } = get();
if (!taskId) return;
// record task start time
setTaskTime(taskId, Date.now());
const taskInfo = tasks[taskId].taskInfo.filter((task) => task.content !== '')
setTaskInfo(taskId, taskInfo)
+ // Also update taskRunning with the filtered tasks to keep counts consistent
+ const taskRunning = tasks[taskId].taskRunning.filter((task) => task.content !== '')
+ setTaskRunning(taskId, taskRunning)
if (!type) {
await fetchPut(`/task/${taskId}`, {
task: taskInfo,