diff --git a/src/ClaudeDo.Worker/External/ExternalMcpService.cs b/src/ClaudeDo.Worker/External/ExternalMcpService.cs index 569ebede..0b036471 100644 --- a/src/ClaudeDo.Worker/External/ExternalMcpService.cs +++ b/src/ClaudeDo.Worker/External/ExternalMcpService.cs @@ -628,8 +628,10 @@ public sealed class ExternalMcpService [McpServerTool, Description( "Act on a task that is WaitingForReview — the only way to approve, reject or retire a reviewed run. " + "'approve' is review+merge, exactly like the UI's Approve: a childless task merges its worktree into " + - "targetBranch then goes Done; a task with children drives the unit merge (parent worktree if active + each " + - "Done child in order); a task without an active worktree approves straight to Done. Fails if the task is " + + "targetBranch then goes Done; a parent whose children were fast-forwarded into its own worktree (the unit " + + "branch) merges that worktree the same way; a child of such a unit is absorbed into the unit branch instead " + + "of the target; an older unit with unabsorbed Done children drives the unit merge (parent worktree if active " + + "+ each Done child in order); a task without an active worktree approves straight to Done. Fails if the task is " + "not WaitingForReview (except 'cancel', which also works while Running/Queued). mergeStatus 'conflict' " + "means the merge stopped on conflicts, with the files listed. emptyChildren (parent approve only) lists " + "the Done children about to be unit-merged whose own review range contributed nothing (e.g. a child that " +