debug: bump 5.0.67, log PlanExistingResourceDiagnostics entry
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
# 2026-07-08 — FindInstanceByDisplayName: анализ Opus
|
||||
|
||||
## Проблема
|
||||
|
||||
`FindInstanceByDisplayName("NaeelOrg", 19)` возвращает nil → adopt не работает → план показывает `+ create`.
|
||||
|
||||
## Три кандидата (Opus)
|
||||
|
||||
### 🔴 #1: silent error swallow в GetInstanceStateRaw
|
||||
`client.go:~605` — `GetInstanceStateRaw` может возвращать ошибку, которая проглатывается `continue`. Ни search-путь, ни fallback не логируют ошибку.
|
||||
|
||||
### 🟡 #2: fields с URL-encoded запятыми
|
||||
`url.Values.Encode()` кодирует `,` → `%2C`. Если API не понимает `%2C`, search возвращает пустой массив → fallback → провал.
|
||||
|
||||
### 🟡 #3: API возвращает другое имя поля
|
||||
Если API возвращает `display_name` вместо `displayName` — `item.DisplayName` = "", `EqualFold("", "NaeelOrg")` = false.
|
||||
|
||||
## Что делать (по приоритету)
|
||||
|
||||
1. **Добавить stderr-лог** на каждый `continue` в `FindInstanceByDisplayName` — покажет точную причину.
|
||||
2. **Убрать `fields`** из search-запроса (строка ~574) — проверить кандидата #2.
|
||||
3. **Включить `NUBES_DEBUG_HTTP=1`** — лог doRequest.
|
||||
|
||||
## Доп. баг
|
||||
|
||||
Fallback использует `size=100`, search-путь — `pageSize=100`. Разные параметры пагинации.
|
||||
Reference in New Issue
Block a user