v1.0.76: modify shows actual instance param values (preview operation)

This commit is contained in:
2026-07-27 13:29:38 +04:00
parent 656ad4c893
commit 766b50cd7b
5 changed files with 76 additions and 8 deletions
+2 -1
View File
@@ -1,6 +1,6 @@
# Архитектура app-autotest — полный документ
v1.0.74, 27.07.2026
v1.0.76, 27.07.2026
---
@@ -15,6 +15,7 @@ Flask-приложение для автотестов операций серв
- CREATE использует фиксированный префикс `autotest-`, non-create работает по выбранному инстансу.
- Финальный статус показывает статус, операцию, длительность и имя инстанса.
- Список autotest-инстансов строится cloud-first; tracker нужен только как короткий fallback после CREATE.
- **Modify** (и другие операции с параметрами) показывает **текущие** значения параметров инстанса: создаётся pending-операция, читаются `cfsParams.paramValue`, форма заполняется реальными данными. При submit операция переиспользуется через `previewOpUid`.
---
+24
View File
@@ -1,5 +1,29 @@
# История разработки app-autotest
## v1.0.76 (27.07.2026) — modify показывает актуальные значения параметров инстанса
### Что изменилось
- В `site/routes/api_test.py` `GET /api/params/<op_id>` теперь принимает `?instanceUid=xxx&opName=xxx`:
- Создаёт pending-операцию через `POST /instanceOperations`, читает `GET /instanceOperations/{opUid}` и возвращает **текущие** `paramValue` из `cfsParams` вместо шаблонных `defaultValue`.
- В ответ добавлен `previewOpUid` — UID созданной preview-операции.
- В `site/routes/api_test.py` `POST /api/test` принимает опциональный `previewOpUid`:
- Если передан — переиспользует уже созданную операцию, пропускает `POST /instanceOperations`.
- В `site/templates/index.html` `showParams()` для не-create операций передаёт `?instanceUid=&opName=` в запрос параметров и сохраняет `previewOpUid`.
- В `site/templates/index.html` `executeOp()` передаёт `previewOpUid` в теле запроса.
- Версия поднята до `1.0.76`.
### Что это чинит
- Форма modify теперь показывает **реальные текущие значения** параметров инстанса (а не шаблонные `0`, `false`, `""`).
- Раньше: `GET /instanceOperations/default/{opId}``defaultValue` из шаблона.
- Теперь: `POST /instanceOperations``GET /instanceOperations/{opUid}``paramValue` из инстанса.
### Как это работает
1. Пользователь нажимает modify → `showParams(opId, 'modify')`
2. Фронт вызывает `GET /api/params/{opId}?instanceUid={iuid}&opName=modify`
3. Бэкенд создаёт pending-операцию и читает её `cfsParams` с актуальными `paramValue`
4. Форма заполняется реальными значениями, `previewOpUid` сохраняется
5. При submit → `POST /api/test` с `previewOpUid` → переиспользуется та же операция, выставляются новые params → run
# v1.0.74 (27.07.2026) — version bump for push
### Что изменилось