diff --git a/src/frontend/src/components/EdictBoard.tsx b/src/frontend/src/components/EdictBoard.tsx index e8eef5a..cb5af9b 100644 --- a/src/frontend/src/components/EdictBoard.tsx +++ b/src/frontend/src/components/EdictBoard.tsx @@ -280,10 +280,11 @@ export default function EdictBoard() { const counts: Record = { all: tasks.filter(t => !t.parent_task).length }; tasks.filter(t => !t.parent_task).forEach(t => { counts[t.status] = (counts[t.status] || 0) + 1; }); - const activeCount = tasks.filter(t => ['working', 'claimed', 'review'].includes(t.status)).length; - const doneCount = tasks.filter(t => t.status === 'done').length; - const failedCount = tasks.filter(t => ['failed', 'blocked'].includes(t.status)).length; - const reviewCount = tasks.filter(t => t.status === 'review').length; + const topLevelTasks = tasks.filter(t => !t.parent_task); + const activeCount = topLevelTasks.filter(t => ['working', 'claimed', 'review'].includes(t.status)).length; + const doneCount = topLevelTasks.filter(t => t.status === 'done').length; + const failedCount = topLevelTasks.filter(t => ['failed', 'blocked'].includes(t.status)).length; + const reviewCount = topLevelTasks.filter(t => t.status === 'review').length; if (!selectedProjectId) return ; if (v2tasksLoading && tasks.length === 0) return ;