error('No active ChatGPT/OpenAI API key is stored.'); return self::FAILURE; } $service = new OpenAiFileService((string) $setting->api_key); try { if ((bool) $this->option('dry-run')) { $files = $service->listFiles(); $this->info('Found ' . count($files) . ' OpenAI API file(s).'); foreach ($files as $file) { $this->line(sprintf( '- %s %s', (string) ($file['id'] ?? 'unknown'), (string) ($file['filename'] ?? 'unnamed') )); } return self::SUCCESS; } $result = $service->deleteAllFiles(); $this->info("Listed: {$result['listed']}"); $this->info("Deleted: {$result['deleted']}"); $this->info("Failed: {$result['failed']}"); foreach ($result['failures'] as $failure) { $this->error($failure['file_id'] . ': ' . $failure['error']); } return $result['failed'] === 0 ? self::SUCCESS : self::FAILURE; } catch (Throwable $exception) { $this->error($exception->getMessage()); return self::FAILURE; } } }