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
Repinoid
78f9dfbcfb
refactor(build): эфемерные generated-копии — dev-materialize по стенду вместо постоянного дубля
2026-09-22 13:48:36 +03:00
Repinoid
c14f7de7bc
docs: раздел «Реестр исключений» + диалог код-ревью opus/astra
2026-09-22 08:31:22 +03:00
Repinoid
dc321b5e3a
refactor(generator): реестры исключений (данные) вместо хардкодов svc.ID==N / ServiceID==N
2026-09-22 08:31:22 +03:00
Repinoid
05f56c5e00
fix(build): гейт дрейфа сгенерированного кода + запрет прямой сборки из provider/
2026-09-22 08:31:22 +03:00
Repinoid
7eab45ed71
docs(opus): промпт на код-ревью roadmap (vcOrg modify IP, vcNsxt SNAT, k8sShturval)
2026-09-22 07:21:16 +03:00
Repinoid
a424e4e319
docs: резюме для старта новой сессии (состояние 2.0.8, правила, файлы, открытые вопросы)
2026-09-22 07:09:23 +03:00
Repinoid
13beb9c142
release(dev): 2.0.8
2026-09-21 21:56:42 +03:00
Repinoid
4b34cc7e63
fix(core): гарантия known для read-back полей (unknown -> null), чтобы Computed без Default не ломал apply
2026-09-21 21:48:54 +03:00
Repinoid
3c0157a1af
fix(generator): read-back параметры без Default -> Optional+Computed (универсальное правило ShouldBeOptionalComputed)
2026-09-21 21:48:54 +03:00
Repinoid
25080b7379
release(dev): 2.0.7
2026-09-21 21:18:03 +03:00
Repinoid
724f5f7efb
fix(generator): убрать create-time проверку существования из ModifyPlan (ломал tainted-replace и terraform destroy)
2026-09-21 20:54:57 +03:00
Repinoid
14ada09335
docs(flash): ТЗ на фикс tainted-replace - убрать create-time проверку из ModifyPlan
2026-09-21 20:52:51 +03:00
Repinoid
e8da976a7b
docs(instructions): copilot-instructions.md1 -> copilot-instructions.md
2026-09-21 20:41:58 +03:00