From 290646bea8890d872d4eeac74b2eeae8788d7dd3 Mon Sep 17 00:00:00 2001 From: iliya Date: Fri, 27 Feb 2026 13:25:07 +0200 Subject: [PATCH] fix: update MemberBadge and LaunchTeamDialog components for improved functionality - Modified MemberBadge to display 'lead' for team leads instead of the full name. - Refactored LaunchTeamDialog to simplify model selection logic and replace the Select component with a custom button-based interface for better user experience. - Enhanced KanbanTaskCard to include meta actions for task management, improving the layout and functionality for manual review tasks. --- src/renderer/components/team/MemberBadge.tsx | 2 +- .../team/dialogs/LaunchTeamDialog.tsx | 43 ++++++----- .../components/team/kanban/KanbanTaskCard.tsx | 73 +++++++++++-------- 3 files changed, 66 insertions(+), 52 deletions(-) diff --git a/src/renderer/components/team/MemberBadge.tsx b/src/renderer/components/team/MemberBadge.tsx index 08dd2ada..e3dfaaa2 100644 --- a/src/renderer/components/team/MemberBadge.tsx +++ b/src/renderer/components/team/MemberBadge.tsx @@ -45,7 +45,7 @@ export const MemberBadge = ({ className={`rounded px-1.5 py-0.5 ${textClass} font-medium tracking-wide`} style={badgeStyle} > - {name} + {name === 'team-lead' ? 'lead' : name} ); diff --git a/src/renderer/components/team/dialogs/LaunchTeamDialog.tsx b/src/renderer/components/team/dialogs/LaunchTeamDialog.tsx index dc28aaa8..034dc872 100644 --- a/src/renderer/components/team/dialogs/LaunchTeamDialog.tsx +++ b/src/renderer/components/team/dialogs/LaunchTeamDialog.tsx @@ -13,14 +13,8 @@ import { } from '@renderer/components/ui/dialog'; import { Label } from '@renderer/components/ui/label'; import { MentionableTextarea } from '@renderer/components/ui/MentionableTextarea'; -import { - Select, - SelectContent, - SelectItem, - SelectTrigger, - SelectValue, -} from '@renderer/components/ui/select'; import { useDraftPersistence } from '@renderer/hooks/useDraftPersistence'; +import { cn } from '@renderer/lib/utils'; import { useStore } from '@renderer/store'; import { formatAgentRole } from '@renderer/utils/formatAgentRole'; import { buildMemberColorMap } from '@renderer/utils/memberHelpers'; @@ -246,7 +240,7 @@ export const LaunchTeamDialog = ({ teamName, cwd: effectiveCwd, prompt: promptDraft.value.trim() || undefined, - model: selectedModel && selectedModel !== '__default__' ? selectedModel : undefined, + model: selectedModel || undefined, clearContext: clearContext || undefined, }); resetFormState(); @@ -361,17 +355,28 @@ export const LaunchTeamDialog = ({
- +
+ {[ + { value: '', label: 'Default' }, + { value: 'opus', label: 'Opus 4.6' }, + { value: 'sonnet', label: 'Sonnet 4.5' }, + { value: 'haiku', label: 'Haiku 4.5' }, + ].map((opt) => ( + + ))} +
diff --git a/src/renderer/components/team/kanban/KanbanTaskCard.tsx b/src/renderer/components/team/kanban/KanbanTaskCard.tsx index a778efc5..5b6ecc68 100644 --- a/src/renderer/components/team/kanban/KanbanTaskCard.tsx +++ b/src/renderer/components/team/kanban/KanbanTaskCard.tsx @@ -170,6 +170,40 @@ export const KanbanTaskCard = ({ } }, [showChangesColumn, task.status, task.id, teamName, taskHasChanges, checkTaskHasChanges]); + const isReviewManual = columnId === 'review' && !hasReviewers; + + const metaActions = ( + <> + {showChangesColumn && taskHasChanges === true ? ( + + ) : null} + + {onDeleteTask ? ( + + ) : null} + + ); + return (
- {!hasReviewers ? ( -

Manual review

+
+ {isReviewManual ? ( +
+

Manual review

+
{metaActions}
+
) : null}
- ) : null} - - {onDeleteTask ? ( - - ) : null} -
+ {!isReviewManual ?
{metaActions}
: null}
);