# Prompt for Opus — поиск багов в 3 файлах Проверь эти 3 конкретных файла на баги, аналогичные `skip_missing_on_delete` (провайдерский параметр с плохим дефолтом, которого нет в API YAML). ## Файл 1: Шаблон генератора `/home/naeel/tf_provider/TOOLS/resource-generator/internal/templates/templates.go` Смотри все хардкодженные атрибуты (НЕ из `.SchemaParams` / `.OutputParams`): - `resource_name` - `operation_timeout` - `log_level` - `suspend_on_destroy` - `adopt_existing_on_create` - `skip_missing_on_delete` - `git_revision` - `{service}_id` Вопросы: - У каждого: правильный ли дефолт? - Не создаёт ли проблем при параллельных/повторных apply? - `skip_missing_on_delete` с дефолтом `false` — уже известный баг. Есть ли другие? ## Файл 2: CRUD-логика `/home/naeel/tf_provider/provider/internal/resources_core/crud.go` Вопросы: - `FindSubresourceInStateOut` — не должна ли проверка молча пропускать удаление? - `IsSubresourceMissingError` — все ли ошибки ловит? - `adoptExistingInstanceOnCreate` — есть ли гонки при параллельном adopt? ## Файл 3: Сгенерированный subresource `/home/naeel/tf_provider/generated/test/go/90_postgres_database_resource.go` Вопросы: - Delete (строки 251-330): правильный ли handling "объект уже удалён"? - Create: что при duplicate? - `skipMissingOnDelete` — везде ли корректно? ## Что искать 1. Ошибки вместо идемпотентности (delete/create должны быть идемпотентны) 2. Плохие дефолты (как `skip_missing_on_delete=false`) 3. Гонки при параллельных операциях 4. Провайдерские параметры не из API — все ли оправданы? ## Контекст - API не поддерживает параллельные операции на одном инстансе - Subresource delete падает с ошибкой если объект уже удалён - `skip_missing_on_delete` — костыль для обхода, дефолт `false` (баг) - Уже добавлен instance-level mutex в v5.0.63 ## Формат ответа Для каждого бага: `файл:строка` → симптом → причина → исправление. Не читай другие файлы без необходимости.