acceptInput method
Extension: take the responses to outstanding keys (others are ignored);
once none are outstanding the task is working again. Returns the
accepted responses.
Implementation
Map<String, dynamic> acceptInput(McpTaskRecord task, Map<String, dynamic> responses) {
final accepted = <String, dynamic>{};
for (final e in responses.entries) {
if (task.inputRequests.remove(e.key) != null) accepted[e.key] = e.value;
}
if (accepted.isNotEmpty && task.inputRequests.isEmpty && task.status == McpTaskStatus.inputRequired) {
transition(task, McpTaskStatus.working);
}
return accepted;
}