Repinoid
721c3fcfab
feat(stand/FullPipe): орг organ (org_uid) + ресурсы-модификаторы — аллокация IP после эджа, затем SNAT
2026-09-24 13:48:53 +03:00
Repinoid
e6675be906
docs: DEV 2.0.19 залит (nubes-dev) — правки по ревью ресурсов-модификаторов
2026-09-24 10:57:10 +03:00
Repinoid
ed4493c0ee
docs: правки по ревью (канонизация, destroy-семантика) + статус выполнения
2026-09-24 10:52:51 +03:00
Repinoid
1236c59e18
test(provider): тесты канонизации vIPConfigure (jsonencode-форма, пробелы, [{}], невалидный JSON)
2026-09-24 10:52:36 +03:00
Repinoid
4b497e61db
fix(provider): nsxt_snat — не писать null в Required-атрибут, ошибки API в Delete → error, валидация пустого ip_space_name
2026-09-24 10:52:36 +03:00
Repinoid
ba6c4f5122
fix(provider): канонизирующий plan-modifier для vip_configure (jsonencode сортирует ключи → вечный diff); не писать null в Required; Delete: ошибки API → error
2026-09-24 10:52:36 +03:00
Repinoid
3374bf4e08
docs(prompts): ответ Opus на ревью кода ресурсов-модификаторов (блокеры: порядок ключей, Required+null) + список правок
2026-09-24 10:51:10 +03:00
Repinoid
648db99628
docs(prompts): промпт на ревью Opus — полный код двух ресурсов-модификаторов, известный баг и вопросы
2026-09-24 10:49:15 +03:00
Repinoid
9412106e3f
docs: DEV 2.0.18 залит (nubes-dev) — ресурсы-модификаторы vc_org_ip_allocation и vc_nsxt_snat
2026-09-24 10:34:02 +03:00
Repinoid
6e6d223c22
docs(plans): §13 — статус работ (сделано/ждёт команды)
2026-09-24 10:26:36 +03:00
Repinoid
62abcd64f5
docs(providers): страница ресурсов-модификаторов (nubes_vc_org_ip_allocation, nubes_vc_nsxt_snat) + nav
2026-09-24 10:26:21 +03:00
Repinoid
3973f912fc
chore(docs): удалить docs/TODO/what_not_in_terraform.md + убрать ссылки на него из комментариев
2026-09-24 10:24:13 +03:00
Repinoid
73a7459a38
feat(provider): регистрация ресурсов-модификаторов vc_org_ip_allocation и vc_nsxt_snat
2026-09-24 10:22:17 +03:00
Repinoid
80d82a145a
feat(provider): ресурс nubes_vc_nsxt_snat (modify ipSpaceName, inverse no-needed)
2026-09-24 10:22:17 +03:00
Repinoid
22cf2595ee
feat(provider): ресурс nubes_vc_org_ip_allocation (modify vIPConfigure, uid орги) + тесты нормализации
2026-09-24 10:22:17 +03:00
Repinoid
574e300476
docs(plans): §12 — орга делается руками в ЛК, в tf только uid; правка генератора не блокер, нужны только 2 ресурса
2026-09-24 10:10:55 +03:00
Repinoid
cb8389c17f
docs(plans): §11 — ответы Opus раунд 3 (критерий отбора = явный список в конфиге генератора, релиз A только (б), Deprecated вместо падения)
2026-09-24 10:04:25 +03:00
Repinoid
664f04eb49
docs(plans): §10 — вопрос Опусу про безопасность универсальной правки графа генератора (5 сервисов с modify-only)
2026-09-24 10:00:57 +03:00
Repinoid
602b27ee1a
docs(plans): ревью Opus по плану — §9 (ответы на 5 вопросов, count строкой, обязательный follow-up по генератору)
2026-09-24 09:55:02 +03:00
Repinoid
97d5ca818e
docs(plans): план двух ресурсов-модификаторов (nubes_vc_org_ip_allocation, nubes_vc_nsxt_snat) + вопросы на ревью
2026-09-24 09:32:55 +03:00
Repinoid
bccf8f7320
docs(notes): раунд 2 Q&A с Opus (владелец параметра, массив vs элемент, keep_on_destroy, deprecated-переход, тип атрибута)
2026-09-24 09:31:10 +03:00
Repinoid
129dab97a0
docs(notes): Q&A с Opus по дизайну ресурсов-модификаторов + замечания к ответам
2026-09-24 09:29:22 +03:00
Repinoid
75700a92da
docs(notes): исправлен ложный факт «схема только из create» в CHAT_RESUME_IAC (loader.go:96 мержит create+modify)
2026-09-24 08:48:54 +03:00
Repinoid
51ff9b3751
docs(notes): разбор fresh-create HAR — state после create (vIPConfigure=[{}], ipSpaceName только в modify)
2026-09-24 08:48:54 +03:00
Repinoid
f7fffb9ed7
refactor: разложить рабочие материалы по NOTES/ и HOW_TO/, корневой README — карта проекта
...
- NOTES/: 10_plans, 20_prompts, 30_analysis, 40_chat_summaries, 60_reference + README в каждой папке
- HOW_TO/: все общие инструкции (сборка/заливка, DevOps-ранбук, добавление сервиса, миграция, генерация доков) + индекс «что нужно -> какой файл»
- новый README.md: карта проекта, пайплайн, стенды, реестр, запреты/грабли
- HOWTO-UPLOAD.md: исправлена легаси-схема версий (prod=1.*, dev=2.*, test=3.*)
- DEVOPS_BUILD_PIPELINE.md: пути скриптов -> TOOLS/scripts, universal_rebuild/main.go -> provider/main.go
- howitwasdone.md / MIGRATION_PLAN_FOR_AGENT.md: пометки о соответствии старых путей
- внутри перенесённых файлов обновлены ссылки на новые пути
2026-09-24 07:51:38 +03:00
Repinoid
2d8e435dd4
docs: пометить отменённый заход модификаторов как LEGACY + исправить ложные факты
...
- баннеры «ЛОЖНЫЙ ПУТЬ — ОТМЕНЕНО» на 4 файла HISTORY/OPUS/2026-09-22_modifier_* и docs/60_strategy/modifier_resources_ideology_and_specification.md
- vIPConfigure: replace-семантика, НЕ накопительная (по тесту docs/ORG_IP_MODIFIER_TEST_2026-09-22.md)
- обновлены ссылки на перенесённые материалы (docs/... -> NOTES/..., HOW_TO/...)
2026-09-24 07:51:25 +03:00
Repinoid
d93ff66482
chore: save current changes
2026-09-24 07:25:27 +03:00
Repinoid
a96e38fb1e
chore: save current changes
2026-09-23 19:23:31 +03:00
Repinoid
d78573de45
refactor(fullpipe): убрать зависимость от модификаторов (org_ips.tf, edge_network.tf) — чистые ресурсы vdc+nsxt
2026-09-23 08:55:26 +03:00
Repinoid
eaa4593622
chore(fullpipe): bump провайдера 2.0.16 -> 2.0.17 (чистая генерация без модификаторов)
2026-09-23 08:51:01 +03:00
Repinoid
a5a5f83730
chore(dev): bump провайдера 2.0.16 -> 2.0.17 (чистая генерация без модификаторов)
2026-09-23 08:46:32 +03:00
Repinoid
20ea79a489
docs(modifier): анализ inverse-архитектуры + промпты Опусу (глобальная архитектура оверлея)
2026-09-23 08:43:56 +03:00
Repinoid
d5dc1212ba
refactor(yaml-gen): убрать вплетение модификаторов — YAML = чистая полная выгрузка из API
2026-09-23 08:42:01 +03:00
Repinoid
016b7d246a
chore(fullpipe): bump провайдера 2.0.15 -> 2.0.16
2026-09-23 07:11:12 +03:00
Repinoid
200bf457ce
fix(gen): Update без modify перечитывает read-back поля через RefreshResourceState (устраняет устаревший state_params/ложный дрейф)
2026-09-23 07:04:02 +03:00
Repinoid
60bf218532
chore(fullpipe): bump провайдера 2.0.14 -> 2.0.15
2026-09-22 22:40:16 +03:00
Repinoid
b9fa18164c
fix(core,gen): UseStateForUnknown для Optional+Computed + live-dосылка без тихого fallback (R1+R3+A/B)
2026-09-22 22:35:45 +03:00
Repinoid
0473f80f69
chore(fullpipe): bump провайдера 2.0.13 -> 2.0.14
2026-09-22 22:10:28 +03:00
Repinoid
f62a094043
fix(fullpipe): ALB/VS/qos задаются в модификаторе vc_nsxt_network (resource vc_nsxt Update — no-op)
2026-09-22 22:07:14 +03:00
Repinoid
a011358660
fix(core): досылать незаданные modify-params из live state.params (а не paramValue формы) — устраняет сброс needEnableAVI/ALB
2026-09-22 22:04:09 +03:00
Repinoid
d33673a567
chore(fullpipe): bump провайдера 2.0.12 -> 2.0.13
2026-09-22 21:53:36 +03:00
Repinoid
e0ad8bb472
chore(dev): bump провайдера 2.0.12 -> 2.0.13
2026-09-22 21:44:59 +03:00
Repinoid
94c4c44ba4
fix(core): ShouldRemoveFromState читает deleted/404 через GetInstanceStateRaw без падения
2026-09-22 21:44:16 +03:00
Repinoid
4220f4f483
chore(fullpipe): bump провайдера 2.0.11 -> 2.0.12
2026-09-22 21:32:36 +03:00
Repinoid
c634a1c51b
docs: move root prompts
2026-09-22 21:26:26 +03:00
Repinoid
73357d0e0f
fix(gen): bt как функция в шаблоне modifier + обновить описание 2.0.12
2026-09-22 21:22:56 +03:00
Repinoid
bd46d11155
test(core,gen): unit-тесты modifierDesiredEqualsCurrent и ValidateSpec modifier
2026-09-22 21:20:43 +03:00
Repinoid
6a722e49cf
feat(yaml): реестр исключений модификаторов (delete_strategy/idempotency/delete_params)
2026-09-22 21:17:09 +03:00
Repinoid
6b0378cc0d
refactor(gen): шаблон modifier — reconcile(override), Delete стратегия, idempotency-вызов
2026-09-22 21:17:09 +03:00
Repinoid
25e988886d
feat(core): modifierDesiredEqualsCurrent + RunInstanceOperationUniversalByIdempotent + RunOperationByCodeIdempotent
2026-09-22 21:13:56 +03:00
Repinoid
17a803836a
refactor(core): вынести JSON-эквивалентность в core/jsonutil (+реэкспорт в resources_core)
2026-09-22 21:10:13 +03:00
Repinoid
8e24f8107e
feat(gen): GenModifier расширение (DeleteStrategy/Idempotency/DeleteParams) + LoadSpecs + ValidateSpec
2026-09-22 21:07:15 +03:00
Repinoid
6e297cc649
feat(lib): delete_strategy/idempotency/delete_params в OperationSpec (+DeleteParam)
2026-09-22 21:03:11 +03:00
Repinoid
2933c57a4b
docs(plan): внести правки ревью Опуса в план (порядок, ID-миграция, override, array-map-fixed)
2026-09-22 20:57:54 +03:00
Repinoid
e06a2c0b11
docs(plan): финализировать план + запрос на ревью Опуса
2026-09-22 20:52:15 +03:00
Repinoid
fba4cbda37
docs(plan): детальный план редизайна модификаторов (10 шагов + коммиты)
2026-09-22 20:50:37 +03:00
Repinoid
c9c69a3d11
docs(opus): ответы №3 (граница lib/GenModifier, pre-check в core, частичный inverse)
2026-09-22 20:44:39 +03:00
Repinoid
e55ca14d5e
docs(opus): вопросы по расхождениям архитектуры модификаторов с кодом
2026-09-22 20:26:54 +03:00
Repinoid
c3683cbe65
docs(opus): дописать ответы №2 (inverse/schema/current/idempotency/skip)
2026-09-22 20:19:04 +03:00
Repinoid
3b3cfc85c0
docs(opus): задокументировать архитектуру модификаторов + открытые вопросы
2026-09-22 20:15:59 +03:00
Repinoid
bea39508f5
docs(opus): исчерпывающий запрос — спроектировать архитектуру модификаторов с нуля (все кейсы)
2026-09-22 20:11:14 +03:00
Repinoid
3d722fb7ee
refactor(core): разбить client.go (1678 строк) на 15 мелких модулей по зонам ответственности
2026-09-22 20:06:49 +03:00
Repinoid
c2deff1a58
chore(dev): bump провайдера 2.0.11 -> 2.0.12; закрепить 2.0.11 в FullPipe
2026-09-22 19:49:41 +03:00
Repinoid
3236203366
fix(core): не досылать modify-params без live-значения/дефолта — избежать синтетического 0 (integer > 0)
2026-09-22 19:49:04 +03:00
Repinoid
3a2a93b32e
chore(dev): bump версии провайдера 2.0.10 -> 2.0.11
2026-09-22 19:26:17 +03:00
Repinoid
261809ba99
fix(generator): is_modifiable=true → параметр НЕ create-only (канон: меняется в UI → меняется в Terraform)
2026-09-22 19:21:42 +03:00
Repinoid
d6520138f6
docs(opus): prompt — спроектировать простую модель изменяемости параметров (CreateOnly vs modifier)
2026-09-22 19:14:59 +03:00
Repinoid
3d0fc2be93
fix(fullpipe): убрать дубликат переменной nsxt_qos_profile
2026-09-22 19:10:36 +03:00
Repinoid
6cd9a3184b
fix(fullpipe): убрать костыль — ALB/VS на create (true/3), модификатор только SNAT (ядро 2.0.10 досылает live)
2026-09-22 19:07:28 +03:00
Repinoid
8b0228cfd1
fix(fullpipe): Edge create ALB=false (неизменяемо), ALB/VS включаются только модификатором
2026-09-22 19:05:55 +03:00
Repinoid
307ef13a4e
chore(fullpipe): закрепить провайдер nubes-dev 2.0.10
2026-09-22 19:03:02 +03:00
Repinoid
7e2ad415b4
chore(dev): bump версии провайдера 2.0.9 -> 2.0.10
2026-09-22 18:56:45 +03:00
Repinoid
57bf79d85b
docs(todo): план разбиения client.go (1678 строк) на модули
2026-09-22 18:56:11 +03:00
Repinoid
aca15e8f69
docs(opus): задокументировать разбор бага сброса create-полей modify
2026-09-22 18:55:27 +03:00
Repinoid
c420ea0e70
fix(core): дозаполнять ВСЕ незаданные params modify их live-значением (по коду), иначе модификатор сбрасывает create-поля в дефолт
2026-09-22 18:54:51 +03:00
Repinoid
4f7edc1200
docs(opus): prompt по багу — modify-модификатор сбрасывает create-поля в дефолт
2026-09-22 18:51:00 +03:00
Repinoid
815ace7d2c
fix(fullpipe): модификатор edge_net шлёт ALB/VS/qos целиком — иначе modify с null сбрасывает needEnableAVI в false
2026-09-22 18:48:46 +03:00
Repinoid
5129d2726d
fix(fullpipe): ALB=true и VS=3 при создании Edge, модификатор только SNAT, раскомментировать всё
2026-09-22 18:37:21 +03:00
Repinoid
34c8e72e46
test(fullpipe): закомментировать Edge/edge_net/org_ips — оставить только VDC для destroy-проверки
2026-09-22 18:30:28 +03:00
Repinoid
7a6e3bd1e5
fix(fullpipe): ALB/VS меняются только через модификатор (edge create неизменяем)
2026-09-22 18:23:07 +03:00
Repinoid
ca928b1e4b
fix(fullpipe): параметры под Штурвал — ALB=true, VS=3, внешних IP=3
2026-09-22 18:20:54 +03:00
Repinoid
779f74b68c
fix(fullpipe): org_ip_count default 1 (нужен свободный IP для SNAT)
2026-09-22 18:11:00 +03:00
Repinoid
e0604fd9f9
feat(fullpipe): добавить модификатор vc_nsxt network (SNAT с внешним IP из vc_org)
2026-09-22 18:10:12 +03:00
Repinoid
099494eb63
test(fullpipe): org_ip_count default 0 после проверки modify 1→0
2026-09-22 17:46:23 +03:00
Repinoid
5ec3936235
chore(fullpipe): закрепить провайдер nubes-dev 2.0.9
2026-09-22 17:46:23 +03:00
Repinoid
788073f1ea
docs(fullpipe): задокументировать проверку модификатора vc_org ip_space (modify 1↔2↔0, идемпотентность)
2026-09-22 17:46:23 +03:00
Repinoid
9107ba00fa
chore(dev): bump версии провайдера 2.0.8 -> 2.0.9
2026-09-22 16:49:55 +03:00
Repinoid
b1cea8a930
fix(core): fallback на /instanceOperations/default/{opId} при 500 getResourceRealmConfig в modify
2026-09-22 16:49:36 +03:00
Repinoid
947887a6ea
docs(opus): задокументировать код-ревью модификаторов
2026-09-22 16:42:58 +03:00
Repinoid
423de314dd
docs(opus): prompt код-ревью модификаторов
2026-09-22 16:40:20 +03:00
Repinoid
4bfbce4f44
feat(fullpipe): добавить модификатор vc_org ip_space (выделение внешних IP)
2026-09-22 16:40:20 +03:00
Repinoid
eb85a3dc72
docs(har): пометить ошибки сломанного Edge как неподтверждённые наблюдения, не правила
2026-09-22 15:01:23 +03:00
Repinoid
bcbc49dc52
docs(har): Insufficient rule blocks = нельзя снять ALB при живых VS (needEnableAVI forward-only)
2026-09-22 14:59:57 +03:00
Repinoid
19ad60b485
docs(har): ошибки операций EDGE — ipSpace '' невалиден, Insufficient rule blocks, delete FORBIDDEN при VS
2026-09-22 14:52:57 +03:00
Repinoid
c7c80fd1bd
fix(yaml-generator): сортировать subParams по ID — детерминированный порядок вложенных параметров
2026-09-22 14:36:04 +03:00
Repinoid
21b4da12a1
docs(har): имя ipSpace — выбор из списка (динамический); де-аллокация пока заблокирована
2026-09-22 14:27:58 +03:00
Repinoid
ca4a246c8c
docs(har): org2.har — де-аллокация = меньший count в vIPConfigure; операция pending (блок детей)
2026-09-22 14:04:31 +03:00
Repinoid
d218bffad7
docs(har): ограничение де-аллокации IP в vcOrg (нельзя при дочерних инстансах) + порядок destroy
2026-09-22 14:01:00 +03:00
Repinoid
08108ba62b
docs(har): no-needed — каноническое значение выключенного SNAT (подтверждено UI)
2026-09-22 14:00:08 +03:00
Repinoid
a1b6ac8f23
docs(har): разбор SNAT/ipSpace модификаций — payload-и, no-needed, reverse SNAT
2026-09-22 13:54:00 +03:00