feat(ui): Erststart-Banner und Textkette Repo→Task→Queue→Review (UX-Struktur C)

HasNoLinkedRepo on ListsIslandViewModel drives a dismiss-less banner under the
Lists-Island header when no User list has a linked repo; recomputed on load
and after list CRUD / list-settings save. Sharpens the #192 empty-state texts
into one readable chain (banner → no-repo list → repo-linked list) and adds a
line to the WorkConsole review gate spelling out that Approve also merges the
whole unit.
This commit is contained in:
mika kuns
2026-08-21 15:25:04 +02:00
parent c47cdc1c7c
commit 111dd0fb0d
6 changed files with 244 additions and 13 deletions
+6 -3
View File
@@ -221,8 +221,8 @@
"rerun": "Re-run",
"refineTip": "Refine this task with Claude",
"refiningTip": "Claude is refining this task…",
"emptyHint": "No tasks yet. Add one above, or send it to the queue once you're ready.",
"emptyHintNoWorkingDir": "Link a repo in List Settings to enable the queue, Let Claude handle it, and Quick session."
"emptyHint": "No tasks yet. Add one, then right-click it and choose \"Send to queue\" — Claude works it in its own worktree.",
"emptyHintNoWorkingDir": "This list has no repo yet — link one in List Settings to enable the queue."
},
"lists": {
"heading": "Lists",
@@ -237,7 +237,9 @@
"contextOpenFindings": "Open findings folder",
"contextSettings": "Settings…",
"newList": "New list",
"addReposTip": "Add repos as lists"
"addReposTip": "Add repos as lists",
"noRepoBannerText": "No repo linked yet. ClaudeDo runs tasks in a git repo.",
"noRepoBannerButton": "Import repo"
},
"details": {
"deleteTaskTip": "Delete task",
@@ -310,6 +312,7 @@
"reviewResetTip": "Discard all changes and reset the task to Idle",
"reviewFeedbackPlaceholder": "Feedback for next run",
"mergeDrainHint": "Merge is draining subtasks — Cancel unlocks once it finishes",
"approveMergesUnitHint": "Approve also merges this into the target branch right away — there's no separate merge step after it.",
"continueNoSessionTip": "Resumes the last run — needs a previous session to continue",
"resetAndRetryInteractiveTip": "Interactive session is open — close it first"
},