$userId, 'created_at' => date('c'), 'projects' => [] ]; $storage->put("users/{$userId}.json", $userData); $project = $projectActions->createProject($userId); $projectId = $project['project_id']; // Mock some wizard data $project['wizard_data'] = [ 'business_category' => ['group' => 'gastro', 'subcategory' => 'cafe'], 'identity' => ['business_name' => 'Kaviareň u Robota', 'tagline' => 'Káva s dušou'], 'services' => ['items' => [['name' => 'Espresso', 'description' => 'Silná káva', 'price_from' => '2']]], 'smart_answers' => ['terrace' => true] ]; $storage->put("projects/{$projectId}.json", $project); // 2. Create a dummy task $taskId = 't_test_worker'; $taskData = [ 'task_id' => $taskId, 'project_id' => $projectId, 'status' => 'queued', 'attempt_count' => 0, 'max_attempts' => 3, 'created_at' => date('c'), 'wizard_data' => $project['wizard_data'] ]; $storage->put("llm/{$taskId}.json", $taskData); echo "[INFO] Task created: $taskId for project $projectId" . PHP_EOL; // 3. Run Worker $worker = new LLMpool(); echo "[PROCESS] Running worker for task $taskId.json..." . PHP_EOL; // Since we call real AI, it might take time $success = $worker->processTask($taskId . '.json'); if ($success) { echo "[SUCCESS] Worker finished successfully." . PHP_EOL; $updatedProject = $storage->get("projects/{$projectId}.json"); echo "[INFO] Project status: " . $updatedProject['status'] . PHP_EOL; echo "[INFO] Generated content keys: " . implode(', ', array_keys($updatedProject['content']['generated'])) . PHP_EOL; } else { echo "[FAIL] Worker failed to process task." . PHP_EOL; $task = $storage->get("llm/{$taskId}.json"); if ($task) { echo "[DEBUG] Task status: " . $task['status'] . PHP_EOL; echo "[DEBUG] Last error: " . ($task['last_error'] ?? 'N/A') . PHP_EOL; } }