This website requires JavaScript.
2dfd63bd7b
Docs: исправление ссылки на api-operation-stages.html в README
master
“Naeel”
2026-08-09 14:50:09 +04:00
43bd51e715
fix: нельзя сохранить сценарий — валидация + svcId для instance_ref (v1.2.47)
“Naeel”
2026-08-04 15:22:57 +04:00
4937c9ea8e
fix: параметры не грузились в редакторе сценариев (v1.2.46)
“Naeel”
2026-08-04 14:52:41 +04:00
2b5e39211b
fix: история LIMIT 50->25 — ответ не влазил в 20KB (v1.2.45)
“Naeel”
2026-08-04 14:50:07 +04:00
2f07ba507d
fix: история — столбцы шире, дата в 1 строку, text-overflow (v1.2.44)
“Naeel”
2026-08-04 13:28:48 +04:00
1218a84bc7
test: +PostgreSQL сценарий — create_user, create_database (тесты 9, 10)
“Naeel”
2026-08-04 13:25:42 +04:00
31cc75177c
test: полная симуляция пользователя — 38 проверок, 8 сценариев
“Naeel”
2026-08-04 09:10:19 +04:00
2954f5429b
test: дымовой тест АВТОТЕСТА (не полигона) — create + история
“Naeel”
2026-08-04 09:05:26 +04:00
1052cf3506
test: дымовой create->modify->delete для всех сервисов полигона
“Naeel”
2026-08-04 08:54:33 +04:00
b89c0138e4
test: +13 тестов — save_run UPSERT, auth режимы/URL, сценарии
“Naeel”
2026-08-04 08:48:36 +04:00
764592ba60
fix: код-ревью #5 #6 #8 #9 #10 — 5 исправлений (v1.2.43)
“Naeel”
2026-08-04 08:02:08 +04:00
126500a30b
fix: whitelist mode/polygon_stand — защита от мусора в cookie (v1.2.42)
“Naeel”
2026-08-04 07:32:06 +04:00
cc7805a429
perf: кеширование detect_endpoint в flask.g — минус 2 HTTP-запроса (v1.2.41)
“Naeel”
2026-08-04 07:26:26 +04:00
06137d6082
fix: XSS — _esc() для o.operation в instances.js (v1.2.40)
“Naeel”
2026-08-03 10:51:02 +04:00
3293330cec
fix: ручной UPSERT вместо ON CONFLICT — не требует индекса (v1.2.39)
“Naeel”
2026-08-03 10:18:10 +04:00
38148516e6
fix: сценарии — перерендер после поллинга + индекс отдельно (v1.2.38)
“Naeel”
2026-08-03 10:09:17 +04:00
539cfd7b1a
fix: дубликаты RUNNING/OK в истории — UPSERT по op_uid (v1.2.37)
“Naeel”
2026-08-03 10:00:29 +04:00
9fda5f042c
fix: tracker_remove в сценариях + прямая загрузка логов (v1.2.36)
“Naeel”
2026-08-03 09:48:03 +04:00
bfe26f07d8
fix: радиокнопки — по центру сайдбара (sidebar-nav flex:0, form margin:auto) (v1.2.35)
“Naeel”
2026-08-03 09:29:28 +04:00
171342f6d0
fix: радиокнопки — по центру по вертикали (v1.2.34)
“Naeel”
2026-08-03 09:26:58 +04:00
4915d17555
feat: радиокнопки вместо select для режима/стенда (v1.2.32)
“Naeel”
2026-08-03 09:13:57 +04:00
9a801e6bff
fix: URL полигона — стенд перед /api/v1/svc, а не после (v1.2.31)
“Naeel”
2026-08-03 08:56:29 +04:00
0a62eb3c58
feat: селектор режима и стенда (v1.2.30)
“Naeel”
2026-08-03 08:50:14 +04:00
78e1c4dc3b
fix: сервисы не показывались при POLYGON_ENDPOINT (v1.2.29)
“Naeel”
2026-08-03 08:29:46 +04:00
dcd978808d
fix: разделение клиентов — сервисы из real API, инстансы/операции из polygon (v1.2.28)
“Naeel”
2026-08-01 09:22:02 +04:00
ca2367724e
fix: create_client → get_client — POLYGON_ENDPOINT в main/api/runner (v1.2.27)
“Naeel”
2026-08-01 09:00:45 +04:00
4a0cfcaa61
feat: POLYGON_ENDPOINT — отдельная переменная, не трогает NUBES_API_TOKEN (v1.2.26)
“Naeel”
2026-07-31 23:42:41 +04:00
529d577b84
test: 15 интеграционных тестов polygon + bump v1.2.25
“Naeel”
2026-07-31 23:02:34 +04:00
a398892766
feat: интеграция с polygon — STANDS-check в get_client/get_stand (v1.2.24)
“Naeel”
2026-07-31 22:45:27 +04:00
4d3ce74c03
Добавлены тесты для критических фиксов (lock_check, UniqueViolation, escName, idx_one_running)
“Naeel”
2026-07-31 18:28:49 +04:00
c1e7c4f9aa
v1.2.23: lock_check three-state return (True/False/None), None→503 DB unavailable
“Naeel”
2026-07-31 18:22:58 +04:00
23688da90a
v1.2.22: 3rd audit fixes — UniqueViolation→409, lock_check no-db→False, escName add & escape
“Naeel”
2026-07-31 18:20:33 +04:00
06eb463088
v1.2.21: fix broken advisory lock (→ partial unique index), escName add " escape, lock_check fallback False
“Naeel”
2026-07-31 18:17:09 +04:00
5065019ffd
v1.2.20: remaining Codex fixes — _op_results lock, advisory lock for scenarios, _ensure_schema logging, stale async generation token, validate-cfs explicit JSONDecodeError
“Naeel”
2026-07-31 18:07:24 +04:00
58b823a260
v1.2.19: fixes from Codex audit — XSS in params, JS injection in onclick, scenario polling timeout, has_target validation, tracker atomic update
“Naeel”
2026-07-31 17:58:57 +04:00
e0e16b91a8
v1.2.18: fix onOpChange — сохранять выбранную операцию в step.operation, авто-показ облачных инстансов для не-create
pre-codex-audit
“Naeel”
2026-07-31 17:40:33 +04:00
b8e7292667
v1.2.17
“Naeel”
2026-07-31 17:26:32 +04:00
c50aaf59d8
Подробные комментарии ко всем JS-файлам фронтенда
“Naeel”
2026-07-31 17:25:44 +04:00
0783319fd1
Рефакторинг API-слоя, операций и БД
“Naeel”
2026-07-31 17:13:54 +04:00
82a3be2067
v1.2.16: save full instance metadata (instance_meta JSONB)
“Naeel”
2026-07-31 14:19:29 +04:00
0180f3cb3f
v1.2.15: aligned table columns everywhere
“Naeel”
2026-07-31 14:14:04 +04:00
bc09b69aa4
v1.2.14: expandable history rows with execution stages
“Naeel”
2026-07-31 14:07:35 +04:00
3c97fea4bc
v1.2.13: Organization card — same style as infra items + UUID
“Naeel”
2026-07-31 14:04:02 +04:00
beaff3f1cf
v1.2.12: scenario list — clean header row + action buttons in expanded view
“Naeel”
2026-07-31 14:02:50 +04:00
bfa21accf5
v1.2.11: scenario list — expandable steps + run confirmation
“Naeel”
2026-07-31 13:55:11 +04:00
e618d6d011
v1.2.10: rename Верстак→Консоль, fix logs view
“Naeel”
2026-07-31 13:33:05 +04:00
2133a1b2fe
v1.2.9: Phase 1 — sidebar + views layout
“Naeel”
2026-07-31 13:16:50 +04:00
10377e9cdb
v1.2.8: Phase 0 review fixes — snackbar.js include + sidebar 72px + collapsed view
“Naeel”
2026-07-31 13:14:49 +04:00
78b5063259
v1.2.7: Phase 0 — CSS foundation + icons + snackbar
“Naeel”
2026-07-31 12:52:02 +04:00
cc60f9401a
v1.2.6: instance dropdown: outputs only + cloud button + RUNNING highlight
“Naeel”
2026-07-31 12:29:43 +04:00
74c22d2612
v1.2.5: parameter editor with auto-load from API + params-render.js
“Naeel”
2026-07-31 11:59:16 +04:00
eb517594bc
v1.2.4: collapsible help section in scenario editor modal
“Naeel”
2026-07-31 11:49:04 +04:00
622a7c7023
v1.2.3: instance_ref shows cloud instances + bigger CRUD buttons
“Naeel”
2026-07-31 11:40:29 +04:00
15f5ebe647
v1.2.2: modal scenario editor with dropdowns + output/ref
“Naeel”
2026-07-31 10:19:26 +04:00
353e07bfa8
v1.2.1: fix tracker_add in executor + labelCls + descr context + script order
“Naeel”
2026-07-31 09:45:05 +04:00
91e97f6f75
v1.2.0: unified executor + flexible instance refs + params-render.js
“Naeel”
2026-07-31 08:55:06 +04:00
38f58ddbd7
v1.1.57: fix scenario editor body bug + relativeTime columns + infra UUIDs
“Naeel”
2026-07-30 22:22:19 +04:00
7ae172e863
v1.1.56: fix JS load order — selectService() moved to app.js (was calling stopPoll before operations.js loaded)
“Naeel”
2026-07-30 22:09:26 +04:00
a96658b9b5
v1.1.55: split large files + CRUD scenario editor
“Naeel”
2026-07-30 22:02:22 +04:00
189a2779d6
v1.1.54: remove delete from dummy_test scenario (cannot delete without suspend)
“Naeel”
2026-07-30 16:12:42 +04:00
e5e96593f1
v1.1.53: filter scenario history by app_version (fix stale results after redeploy)
“Naeel”
2026-07-30 16:10:53 +04:00
7354d9c125
v1.1.52: fix scenario create (drop svcOperationId) + http_client _status debug
“Naeel”
2026-07-30 15:51:22 +04:00
6f051aa348
v1.1.51: fix seed — list/get also match global defaults (client_id='' stand='')
“Naeel”
2026-07-30 15:25:16 +04:00
983b387708
v1.1.50: scenario_definitions DB+CRUD, seed, runner from DB, 409 lock, UI definitions, drop config.yaml scenarios
“Naeel”
2026-07-30 15:06:05 +04:00
67f6390509
v1.1.49: UUID extraction directly in http_client.post() — Location header → instanceUid/instanceOperationUid
“Naeel”
2026-07-30 14:37:35 +04:00
7f69c916ec
v1.1.48: fix 4 scenario bugs — save_run: scenario_run_id+step_number, run_id before thread (202), TIMEOUT op_data init, RUNNING before API call, GET /run/<id>
“Naeel”
2026-07-30 14:08:29 +04:00
566a6da8d9
v1.1.47: fix scenario UUID extraction — _find_uid + _uid_from_location fallback
“Naeel”
2026-07-30 13:57:34 +04:00
7eeb1131b3
v1.1.46: phase2 — scenario runner MVP (YAML config, DB schema, API endpoints, UI section)
“Naeel”
2026-07-30 13:48:34 +04:00
0ab6b3a89e
v1.1.45: phase1 — escape fixes, refSvc top-level, redact secrets, validate inputs, no traceback, TIMEOUT save, remove legacy api_bp
“Naeel”
2026-07-30 13:43:48 +04:00
045ca438c6
cleanup: move all docs to root DOCS
“Naeel”
2026-07-30 13:38:33 +04:00
acc28351c5
docs: ARCHITECTURE-FULL.md + README link
“Naeel”
2026-07-30 13:36:35 +04:00
b6808423da
remove questions-to-sol.md — moved to root DOCS
“Naeel”
2026-07-30 13:24:46 +04:00
b26332fbe7
docs: 14 questions to Sol — discuss before implementing
“Naeel”
2026-07-30 13:20:19 +04:00
3f653a7205
docs: GPT-5.6 Sol — 10-step MVP plan
“Naeel”
2026-07-30 13:16:48 +04:00
0c6cd75028
docs: GPT-5.6 Sol prompt — architecture ideas + bug hunt
archive-v1.1.44
“Naeel”
2026-07-30 13:02:26 +04:00
b5d139a04a
v1.1.44: 5 fixes — null-guard + try/catch in toggleInstance/selectService/refreshInstances/CMDB
“Naeel”
2026-07-30 09:49:08 +04:00
b7f7bba22c
docs: Sonnet final audit — all bugs + user actions review
“Naeel”
2026-07-30 09:36:56 +04:00
de18ea7d43
v1.1.43: fix missing opsEl declaration in toggleInstance
“Naeel”
2026-07-30 09:33:27 +04:00
16848544fa
v1.1.42: busy check BEFORE stopPoll in toggleInstance
“Naeel”
2026-07-30 09:29:40 +04:00
272c5c2b3a
v1.1.41: block selectService when busy
“Naeel”
2026-07-30 09:10:10 +04:00
8bd68e1eed
v1.1.40: busy blocks instance expand completely
“Naeel”
2026-07-30 09:08:22 +04:00
4dcd61f25d
v1.1.39: populate empty valueList from state.out + normalize value_list
“Naeel”
2026-07-30 08:47:13 +04:00
363ac7e29c
docs: Sonnet response — state.out valueList + normalize fix
“Naeel”
2026-07-30 08:43:32 +04:00
59776bed9d
docs: Sonnet question — populate valueList from state.out
“Naeel”
2026-07-30 08:37:55 +04:00
a0a17e183f
v1.1.38: operations per instance svcId + operation name header
“Naeel”
2026-07-30 08:33:03 +04:00
f79301b245
v1.1.37: params for all ops + polling try/catch + refresh always + tracker CMDB + firstServiceId
“Naeel”
2026-07-30 07:47:43 +04:00
ac45796138
docs: Sonnet response — 6 bugs found, params for all operations
“Naeel”
2026-07-30 07:41:01 +04:00
2c35ed5307
docs: Sonnet question — parameterized operations + full audit
“Naeel”
2026-07-30 07:32:13 +04:00
9c062a225e
v1.1.36: CMDB raw_delete uses clean requests (no auth headers)
“Naeel”
2026-07-30 07:14:25 +04:00
b1ec156fc8
v1.1.35: close stale ops panels when busy resets
“Naeel”
2026-07-29 15:07:25 +04:00
81c27fb270
v1.1.34: busy=false in catch + CMDB OK no polling
“Naeel”
2026-07-29 14:54:59 +04:00
65d10d5c35
v1.1.33: CMDB delete logging — log HTTP status code
“Naeel”
2026-07-29 14:09:56 +04:00
b6a497400c
v1.1.32: not-created instances — only show delete operation
“Naeel”
2026-07-29 13:57:51 +04:00
d17c84548d
v1.1.31: CMDB hard delete + fix _resolve_ref_svc params update
“Naeel”
2026-07-29 13:48:49 +04:00
b4980aed76
v1.1.30: fix json.loads('') in _resolve_ref_svc
“Naeel”
2026-07-29 13:43:30 +04:00
0092a4a0e3
v1.1.29: busy=false on early FAIL return — prevent permanent lock
“Naeel”
2026-07-29 13:41:57 +04:00
5af8c5218f
v1.1.28: HttpClient.get() resilient to empty body — return {} instead of JSONDecodeError
“Naeel”
2026-07-29 13:32:17 +04:00
edb2d0d526
v1.1.27: busy lock — block operations while another is running
“Naeel”
2026-07-29 13:30:53 +04:00
8cc7f54b23
v1.1.26: handle empty validate-cfs response (JSONDecodeError)
“Naeel”
2026-07-29 13:24:00 +04:00
ed6612fb3c
v1.1.25: full Terraform parity — normalize, resolveRefSvc, send ALL params, 30min timeout, svc in fields
“Naeel”
2026-07-29 13:17:45 +04:00