HITL — согласование человеком¶
HITL (Human-in-the-Loop) — очередь ручных решений по рискованным действиям агентов и шагам workflow.
Раздел: /hitl. Роль: Security Analyst+.
Когда появляется запрос¶
- Политика вернула
required_approval. - Высокий risk score / критичные операции (
delete_data,export_phiи т.п.). - В шаге workflow включено Require approval.
Статус run workflow при этом: awaiting_approval.
Работа с очередью¶
- Toast
hitl.requestedили KPI Pending HITL на Dashboard. - Откройте HITL.
- Изучите: Agent, Action, Resource, Reason, контекст.
- Решение:
- Approve — действие/шаг разрешён, агент продолжает (поллинг статуса);
- Reject — отклонено; обязательно укажите причину (reason).
| Поле UI | Смысл |
|---|---|
| Requested | Время запроса |
| Status | pending / approved / rejected |
| Approver | Кто принял решение (имя можно задать в Settings) |
Правила хорошей практики¶
- Не копите pending: определите SLA (например, 15–60 минут в рабочее время).
- Reject без комментария недопустим для расследований.
- Критичные ресурсы (PII, PHI, массовое удаление) — эскалация Admin / владельцу данных.
- В демо-режиме согласования могут быть отключены (read-only).
API (справка)¶
# Очередь
curl http://localhost:8001/api/v1/hitl/pending -H "Authorization: Bearer $JWT"
# Одобрить
curl -X POST http://localhost:8001/api/v1/hitl/approve/$ID \
-H "Authorization: Bearer $JWT" \
-H "Content-Type: application/json" \
-d '{"approver": "ivan.petrov"}'
# Отклонить
curl -X POST http://localhost:8001/api/v1/hitl/reject/$ID \
-H "Authorization: Bearer $JWT" \
-H "Content-Type: application/json" \
-d '{"approver": "ivan.petrov", "reason": "Недостаточно оснований для экспорта"}'
Подробнее (EN): HITL.