nomadcode/agent-ui/definition/components/workspace-task-list/index.md

1.9 KiB

ui_doc_type component_id status source_evidence
component workspace-task-list 구현됨
type path notes
code apps/client/lib/src/features/workspaces/presentation/workspace_home_page.dart _buildTaskSection, _buildMockTaskSection, _buildTaskRow, _buildEmptyTasks, _buildTaskError 구현.
type path notes
code apps/client/lib/src/features/workspaces/domain/workspace_task.dart WorkspaceTask row model.
type path notes
user null agent-ui 생성 요청.

Workspace Task List

Component ID: workspace-task-list

Status: 구현됨

Source Evidence

Type Path Notes
code apps/client/lib/src/features/workspaces/presentation/workspace_home_page.dart _buildTaskSection, _buildMockTaskSection, _buildTaskRow, _buildEmptyTasks, _buildTaskError 구현.
code apps/client/lib/src/features/workspaces/domain/workspace_task.dart WorkspaceTask row model.
user 없음 agent-ui 생성 요청.

Purpose

선택 workspace의 active task 목록을 표시한다. service boundary가 없으면 mock row를 보여주고, service boundary가 있으면 deterministic loading, empty, error state를 표시한다.

Used By

  • workspace-home: workspace-home.active-tasks

Anatomy

  • Section body
  • Task row icon
  • Task title
  • Status chip
  • Empty state row
  • Error state row with Retry
  • Loading progress

Variants

  • mock: loadTasks가 없을 때 project task count 기반 rows
  • service-backed: loadTasks가 있을 때 FutureBuilder 기반 rows

States

  • default
  • loading
  • empty
  • error
  • disabled: 없음

Rules

  • loader가 없으면 mock task section을 사용한다.
  • loader가 있으면 task future의 loading, error, empty, data state를 그대로 반영한다.
  • error state는 raw exception이나 secret transport detail을 노출하지 않는다.

Decision History

  • 2026-06-24: 구현된 workspace task list를 component로 등록했다.