Add team tasks: several agents in one worktree sharing a board
This commit is contained in:
@@ -23,6 +23,7 @@ struct TabBadgeView: View {
|
||||
|
||||
let tabLabels: [TaskTab: String] = [
|
||||
.transcript: "Transcript",
|
||||
.board: "Board",
|
||||
.changes: "Changes",
|
||||
.files: "Files",
|
||||
.terminal: "Terminal",
|
||||
@@ -221,7 +222,9 @@ private struct TaskPane: View {
|
||||
switch store.focus.tab {
|
||||
case .transcript:
|
||||
ChatView(kind: .task(store.selectedTaskId))
|
||||
.id(store.selectedTaskId ?? "")
|
||||
.id("\(store.selectedTaskId ?? "")/\(store.selectedTaskId.flatMap { store.pickedMember($0) } ?? "")")
|
||||
case .board:
|
||||
BoardView()
|
||||
case .changes:
|
||||
ChangesView()
|
||||
case .files:
|
||||
@@ -388,11 +391,13 @@ private struct TabStrip: View {
|
||||
let findings = latest.map(findingCount) ?? 0
|
||||
let hasReviews = transcript.contains(where: isReviewEvent)
|
||||
let workflow = store.selectedTaskId.flatMap { store.findTask($0) }?.workflowRun != nil
|
||||
let team = store.selectedTaskId.map { !store.team($0).isEmpty } ?? false
|
||||
let order = (first + taskTabs.filter { !first.contains($0) }).filter { t in
|
||||
if t == tab {
|
||||
return true
|
||||
}
|
||||
switch t {
|
||||
case .board: return team
|
||||
case .inbox: return waiting > 0
|
||||
case .reviews: return hasReviews
|
||||
case .workflow: return workflow
|
||||
|
||||
Reference in New Issue
Block a user