aiService = $aiService; } public function suggest(Request $request) { $validated = $request->validate([ 'task_id' => 'nullable|string', 'custom_prompt' => 'nullable|string', 'budget' => 'nullable|numeric|min:0', ]); try { // ✅ Вызываем через DI $result = $this->aiService->suggest( $request->input('task_id'), $request->input('custom_prompt'), $request->input('budget') ); // ✅ Возвращаем ТОЛЬКО ID — быстро и безопасно return response()->json([ 'message' => 'Сборка успешно сгенерирована ИИ.', 'build_id' => $result['build']->id, ], 201); } catch (\Exception $e) { Log::error('Ошибка в AI-сервисе', [ 'user_id' => auth()->id(), 'message' => $e->getMessage(), 'trace' => $e->getTraceAsString() ]); return response()->json([ 'message' => 'Не удалось сгенерировать сборку.', 'error' => $e->getMessage() ], 500); } } }