diff --git a/apps/ui/src/components/views/board-view.tsx b/apps/ui/src/components/views/board-view.tsx
index 30df9657..8a53fc6f 100644
--- a/apps/ui/src/components/views/board-view.tsx
+++ b/apps/ui/src/components/views/board-view.tsx
@@ -463,6 +463,16 @@ export function BoardView() {
const selectedWorktreeBranch =
currentWorktreeBranch || worktrees.find((w) => w.isMain)?.branch || 'main';
+ // Aggregate running auto tasks across all worktrees for this project
+ const autoModeByWorktree = useAppStore((state) => state.autoModeByWorktree);
+ const runningAutoTasksAllWorktrees = useMemo(() => {
+ if (!currentProject?.id) return [];
+ const prefix = `${currentProject.id}::`;
+ return Object.entries(autoModeByWorktree)
+ .filter(([key]) => key.startsWith(prefix))
+ .flatMap(([, state]) => state.runningTasks ?? []);
+ }, [autoModeByWorktree, currentProject?.id]);
+
// Get in-progress features for keyboard shortcuts (needed before actions hook)
// Must be after runningAutoTasks is defined
const inProgressFeaturesForShortcuts = useMemo(() => {
@@ -1372,7 +1382,7 @@ export function BoardView() {
setWorktreeRefreshKey((k) => k + 1);
}}
onRemovedWorktrees={handleRemovedWorktrees}
- runningFeatureIds={runningAutoTasks}
+ runningFeatureIds={runningAutoTasksAllWorktrees}
branchCardCounts={branchCardCounts}
features={hookFeatures.map((f) => ({
id: f.id,
diff --git a/apps/ui/src/components/views/board-view/worktree-panel/components/worktree-tab.tsx b/apps/ui/src/components/views/board-view/worktree-panel/components/worktree-tab.tsx
index 25a79f96..a4722406 100644
--- a/apps/ui/src/components/views/board-view/worktree-panel/components/worktree-tab.tsx
+++ b/apps/ui/src/components/views/board-view/worktree-panel/components/worktree-tab.tsx
@@ -260,8 +260,10 @@ export function WorktreeTab({
aria-label={worktree.branch}
data-testid={`worktree-branch-${worktree.branch}`}
>
- {isRunning && }
- {isActivating && !isRunning && }
+ {isRunning && }
+ {isActivating && !isRunning && (
+
+ )}
{worktree.branch}
{cardCount !== undefined && cardCount > 0 && (
@@ -327,8 +329,10 @@ export function WorktreeTab({
: 'Click to switch to this branch'
}
>
- {isRunning && }
- {isActivating && !isRunning && }
+ {isRunning && }
+ {isActivating && !isRunning && (
+
+ )}
{worktree.branch}
{cardCount !== undefined && cardCount > 0 && (