authorgravatar for saphid@gmail.comAlex Southwell <saphid@gmail.com> 2026-09-06 17:21:11+10:00
committergravatar for noreply@github.comGitHub <noreply@github.com> 2026-09-06 00:21:11-07:00
logaea9ecbc482a3d2c14d1828cb5eeaaa9294d1320
tree6b0167b6e0bc5a049b5b7dd14dde3b9b54044364
parentbc028738aabf20350ca3c2aa17ecfd41a1f74721
signature Signed by PGP key B5690EEEBB952194

fix(web): make task row states readable (#10128)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

1 files changed, 10 insertions(+), 1 deletions(-)

apps/web/src/components/chat/ComposerTasksBadge.tsx+10-1
...@@ -19,6 +19,12 @@ export interface ComposerTaskStep {...@@ -19,6 +19,12 @@ export interface ComposerTaskStep {
1919
20const MAX_TASK_SEGMENTS = 10;20const MAX_TASK_SEGMENTS = 10;
2121
22const taskStatusLabels = {
23 pending: "Pending",
24 inProgress: "Running",
25 completed: "Completed",
26} satisfies Record<ComposerTaskStep["status"], string>;
27
22function keyedTaskSteps(steps: readonly ComposerTaskStep[]) {28function keyedTaskSteps(steps: readonly ComposerTaskStep[]) {
23 const occurrences = new Map<string, number>();29 const occurrences = new Map<string, number>();
24 return steps.map((step) => {30 return steps.map((step) => {
...@@ -84,7 +90,7 @@ function TaskSummary({...@@ -84,7 +90,7 @@ function TaskSummary({
84 className={progress.completedSteps >= progress.totalSteps ? "text-success" : undefined}90 className={progress.completedSteps >= progress.totalSteps ? "text-success" : undefined}
85 data-composer-task-progress="true"91 data-composer-task-progress="true"
86 >92 >
87 {progress.completedSteps}/{progress.totalSteps}93 {progress.completedSteps}/{progress.totalSteps} complete
88 </ComposerBanner.Count>94 </ComposerBanner.Count>
89 <TaskSegments className="hidden w-20 sm:flex" steps={steps} />95 <TaskSegments className="hidden w-20 sm:flex" steps={steps} />
90 <ComposerBanner.ToggleIcon expanded={expanded} />96 <ComposerBanner.ToggleIcon expanded={expanded} />
...@@ -185,6 +191,9 @@ export const ComposerTasksContent = memo(function ComposerTasksContent({...@@ -185,6 +191,9 @@ export const ComposerTasksContent = memo(function ComposerTasksContent({
185 {step.step}191 {step.step}
186 </ComposerBanner.Content>192 </ComposerBanner.Content>
187 <ComposerBanner.Actions>193 <ComposerBanner.Actions>
194 <span className="text-[10px] text-muted-foreground">
195 {taskStatusLabels[step.status]}
196 </span>
188 <span197 <span
189 className="w-10 text-right text-[10px] text-muted-foreground/45 tabular-nums"198 className="w-10 text-right text-[10px] text-muted-foreground/45 tabular-nums"
190 data-composer-task-duration="true"199 data-composer-task-duration="true"