feat(tools): страж имён атрибутов схемы + вызов в 03 (fail-fast до заливки)

Инцидент 2026-09-30 показал: невалидное имя атрибута (s3-inst) проходило генерацию,
сборку и заливку, а ломалось только у пользователя (Terraform отвергает схему целиком).

- TOOLS/scripts/check_schema_names.sh: проверяет все tfsdk:"..." в сгенерированном Go
  на [a-z0-9_]; exit 1 при нарушении, с подсказкой про helpers.ToSnake.
- 03_build_and_upload_provider.sh: вызов стража после 02 (до сборки и заливки).
- ARCHITECTURE.md: страж добавлен в список enforced-скриптов.
- HISTORY: пункт 'не закрыто' заменён на 'закрыто' с проверками.

Проверено: dev/test/prod -> OK; искусственный пример (tfsdk:"s3-inst") -> exit 1.
This commit is contained in:
Repinoid
2026-09-30 21:55:07 +03:00
parent fbc20eea61
commit 56ebab38f7
4 changed files with 60 additions and 3 deletions
+4 -3
View File
@@ -68,7 +68,8 @@ linux-артефакта: `d25a71a31dbc9ab16e494b3d1f68b38b2214bd530045c5a3003f5
**Верификация.** `DEV_STAND/FPipeGmail`: провайдер `2.0.1` (после сброса lock) →
`terraform validate` — **Success**.
**Не закрыто (предложение).** В пайплайне нет проверки схемы: `02`/сборка/заливка проходят при
невалидных именах атрибутов, дефект обнаруживается только при обращении Terraform к провайдеру.
Стоит добавить шаг валидации схемы в `03` (или fail-fast в генераторе по `[a-z0-9_]`).
**Закрыто.** Добавлен страж `TOOLS/scripts/check_schema_names.sh`: проверяет все
`tfsdk:"..."` в сгенерированном Go на `[a-z0-9_]` и включён в `03` (перед сборкой и заливкой).
Проверено: `dev`/`test`/`prod` — OK; на искусственном примере (`tfsdk:"s3-inst"`) страж
падает с exit 1. Теперь невалидная схема не может уехать в реестр.