feat(mcp): add get_task_config, continue_task; fix status enum, branchDeleted, merge-from-review
- ConfigMcpTools: add get_task_config read-back (was write-only) - ExternalMcpService: add WaitingForChildren to ListTasks filter and GetTaskStatusValues - ExternalMcpService: add continue_task tool wrapping QueueService.ContinueTask - ExternalMcpService: add allowWaitingForReview param to merge_task (default false) - ExternalMcpService: fix CleanupTaskWorktree branchDeleted — now uses real branch-delete outcome - WorktreeMaintenanceService: TryRemoveAsync returns (Removed, BranchDeleted) tuple; ForceRemoveResult gains BranchDeleted field - Tests: 9 new cases covering all five changes Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
763732a9b3
commit
9f19a714f7
+10
@@ -61,4 +61,14 @@ public sealed class ConfigMcpTools
|
||||
await _tasks.UpdateAgentSettingsAsync(taskId, model.NullIfBlank(), systemPrompt.NullIfBlank(), agentPath.NullIfBlank(), maxTurns, cancellationToken);
|
||||
await _broadcaster.TaskUpdated(taskId);
|
||||
}
|
||||
|
||||
[McpServerTool, Description("Get per-task config overrides (model/system prompt/agent path/max turns). Returns null if no override is set on this task.")]
|
||||
public async Task<TaskConfigDto?> GetTaskConfig(string taskId, CancellationToken cancellationToken)
|
||||
{
|
||||
var task = await _tasks.GetByIdAsync(taskId, cancellationToken)
|
||||
?? throw new InvalidOperationException($"Task {taskId} not found.");
|
||||
if (task.Model is null && task.SystemPrompt is null && task.AgentPath is null && task.MaxTurns is null)
|
||||
return null;
|
||||
return new TaskConfigDto(task.Model, task.SystemPrompt, task.AgentPath, task.MaxTurns);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user