From 82b674d05f4b3e8174e5cf5afa11f12e8d062491 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9CNaeel=E2=80=9D?= Date: Wed, 29 Jul 2026 12:57:41 +0400 Subject: [PATCH] =?UTF-8?q?docs:=20Sonnet=20found=20root=20cause=20?= =?UTF-8?q?=E2=80=94=20template=20vs=20real=20operation=20for=20step=206?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- DOCS/sonnet-response-serviceInstanceUid.md | 26 ++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 DOCS/sonnet-response-serviceInstanceUid.md diff --git a/DOCS/sonnet-response-serviceInstanceUid.md b/DOCS/sonnet-response-serviceInstanceUid.md new file mode 100644 index 0000000..a91e9de --- /dev/null +++ b/DOCS/sonnet-response-serviceInstanceUid.md @@ -0,0 +1,26 @@ +# Sonnet 4.6 — Root Cause: serviceInstanceUid + +Дата: 2026-07-29 + +## Найдена корневая причина + +**Разница в источнике данных для шага 6 (required+default params):** + +| | Terraform | Autotest | +|---|---|---| +| Источник | `GET /instanceOperations/{opUid}?fields=cfsParams` — **реальная операция** | `GET /instanceOperations/default/{svc_op_id}` — **шаблон** | +| Данные | `paramValue` (автоматически заполнен Nubes) + `defaultValue` | Только `defaultValue` | + +`serviceInstanceUid` — параметр, который Nubes **автоматически добавляет** в реальную операцию (шаг 3 Terraform). В шаблоне его НЕТ. Поэтому наш код его не видит → не отправляет → validate-cfs падает. + +## Исправление + +В `api_test.py` CREATE-ветка (строка ~210): заменить +```python +tmpl = client.get(f"/instanceOperations/default/{svc_op_id}") +``` +на +```python +op_details = client.get(f"/instanceOperations/{op_uid}?fields=cfsParams") +``` +И брать `paramValue` первым, `defaultValue` как fallback — как Terraform.