public function handle(Query $query) { $id = TaskId::fromString($query->id()); foreach ($this->tasks as $task) { if ($task->id()->equals($id)) { return TaskViewModel::fromTask($task); } } throw new Exception('Task not found'); }