Multicommand webapi
Описание
Цель и задача
-
Задача: Разработать и согласовать схему WebAPI.
-
Цель: подготовить и согласовать схему WebAPI для выполнения сценариев из команд (заложить контракт и каркас API), чтобы последующая реализация исполгнения сценариев могла опираться на стабильные модели и эндпоинты
Реализовано
- Добавлены схемы для /scenario-runs API:
- ScenarioStep - шаг сценария (входная модель):
step_id: UUID | None, command: str, params: dict[str, Any] - RunCreateRequest - тело POST /scenario-runs:
session_id, steps, stop_on_error - RunCreateResponse - ответ создания run-а:
run_id: UUID, status: RunStatus - RunStepInfo - состояние шага:
step_id: UUID, command: str, status: StepStatus, error_msg: str | None - RunInfoResponse - ответ GET /scenario-runs/{run_id} (саммари):
run_id: UUID, session_id, status, steps: list[RunStepInfo]
- ScenarioStep - шаг сценария (входная модель):
- Добавлены views, endpoints - заглушки
Чеклист:
- Описание MR:
-
Из описания MR ясно кому и зачем нужны правки -
Указаны ссылки на связанные issues -
Указаны дополнительные материалы (если есть)
-
- Проверка:
-
Изменения протестированы -
Проверено поведение в dev (если применимо)
-
- Changelog:
-
Добавлен новый файл в changelogs/unreleased -
Добавлено описание всех изменений -
Указаны изменения в переменных окружения -
Указаны ссылки на GitLab Issues, связанные с MR
-
- Документация:
-
Обновлены инструкции в CONTRIBUTING.md (если применимо) -
Обновлен README (если применимо)
-
Edited by Арсений Саркисов