Files
tf_provider/HISTORY/20_releases/2026-09-03_reversion_cleanup.md
T
Repinoid 2c196e8cc8 docs(history): раскладка HISTORY по тематическим папкам (75 файлов)
Было: 41 файл в корне HISTORY/ + авторские папки OPUS/ и SONNET/ (34 файла).
Стало — тематическая нумерация в стиле NOTES/ (10_, 20_, …):

  10_reviews/    ревью кода и разборы от LLM (2)
  20_releases/   заливки версий в реестр, чистки реестра, нумерация версий (8)
  30_provider/   ядро провайдера: архитектура, модификаторы, UUID, nested (6)
  40_generator/  генератор YAML/спеки, формат MAN (3)
  50_docs/       пайплайн документации, навигация, публикация, хостинг S3 (9)
  60_stands/     стенды и примеры: CRUD, FullPipe, Штурвал, TEST_STAND (7)
  70_infra/      реестр, API Gateway, DDoS-Guard, VPN/213, зеркала (4)
  90_llm/        диалоги и промпты с LLM вне тематики: OPUS/, SONNET/, gemini/ (34)

OPUS/ и SONNET/ перенесены как есть в 90_llm/ — чтобы не рвать пары
«бриф → ответ» внутри диалогов. Все переносы — через git mv (история сохранена).
Перед правкой: TMP/backup_2026-10-02/HISTORY_before_restructure.tar.gz.
Перекрёстные ссылки обновляются следующим коммитом.
2026-10-02 07:35:32 +03:00

3.6 KiB
Raw Blame History

2026-09-03 — Чистка реестра + новая нумерация версий + баг dev

Новая схема нумерации версий (с 2026-09-03)

Стенд Namespace Диапазон Первая
prod nubes 1.*.* 1.0.0
dev nubes-dev 2.*.* 2.0.0
test nubes-test 3.*.* 3.0.0

⛔ Старые схемы (prod=2.*, dev=3.*, test=5.*, 0.0.x) — ЛЕГАСИ, не использовать. Обновлено: VERSIONS.md, TOOLS/config/*/profile.env, DOCS_PIPELINE/README.md, docs/30_registry/guides/getting-started.md.

Чистка реестра

Из S3 (nubes-terraform-registry, креды super 1112_terraform) удалены ВСЕ старые версии:

  • nubes-dev: 3.0.2–3.0.6
  • nubes: 2.0.2, 2.0.3, 2.0.5, 2.0.6
  • nubes-test: 0.0.1, 5.0.1–5.0.5, 5.1.17

После чистки в каждом namespace — 0 объектов. Легаси (5.1.17 и т.д.) нигде не осталось.

Статус перегенерации (2026-09-03)

  • ✅ test 3.0.0 — сгенерирован и загружен (Done. Version 3.0.0 uploaded).
  • ❌ dev 2.0.0 — НЕ собирается (пропущен по решению пользователя), см. баг ниже.
  • ⏳ prod 1.0.0 — в работе.

Баг dev: nodejs jsonEnv (create vs modify)

Симптом: 03 dev падает на компиляции сгенерированного кода:

internal/resources_gen/95_nodejs_resource.go:350-353:
plan.JsonEnv.IsNull / IsUnknown / ValueString undefined
(type *NodejsJsonEnvModel has no field or method ...)

Причина: API dev для nodejs jsonEnv:

  • в create (op id=58) — map с sub_params (типизированные ключи, напр. DB_PASS) → генератор создаёт вложенную модель NodejsJsonEnvModel;
  • в modify (op id=59) — map без sub_params → генератор для diff генерирует строковое сравнение (IsNull/ValueString).

У test/prod jsonEnv без sub_params в обоих операциях → строка → собирается.

Корень: TOOLS/resource-generator/internal/params/params.go, AlignParamTypes — подмешивает SubParams из schema в modify только если HasSubParams уже true:

if !p.HasSubParams { continue }  // modify-jsonEnv (без sub) пропускается

Возможный фикс: наследовать HasSubParams/SubParams из schema для параметров с тем же code. ⚠️ Нюанс: diff-шаблон исключает nested-поля из hasServiceParamChanges — изменение nested jsonEnv не будет триггерить modify (нужно продумать отдельно).

Вывод: сервисы/структуры API стендов отличаются (dev jsonEnv — nested в create). Каждый стенд рассматривать независимо. dev отложен до решения по генератору/API.

Прочее (инфраструктура, этот же день)

  • Токены API secrets/*.token были отозваны на стороне IAM (401 IAM error при валидном exp) — обновлены 2026-09-03.
  • S3-креды .s3cfg_registry (docs) не имеют прав на бакет бинарников nubes-terraform-registry; заливка бинарников — subuser super аккаунта 1112_terraform (см. tf_registry/HISTORY/HOWTO-UPLOAD.md).