0.32.0
Added
- P2-O1: ToolAuditHook — hook, пишущий в
tool_audit_logпри каждом вызове инструмента черезCompositeHook. Маскирование чувствительных аргументов (password, api_key, token и др.) перед записью. Ограничения: args_summary ≤ 500, result_summary ≤ 500 символов. - P2-O2: Audit API —
AuditHandlerс методамиListAuditLogиListToolAudit. Роуты:GET /admin/audit(системный журнал),GET /admin/audit/tools(tool-аудит),GET /agents/{id}/audit/tools(per-agent). Все подRequireGlobalAdmin. Пагинация и фильтрация. - P2-O3: Автоматический audit middleware —
AuditMiddleware()перехватывает mutation-запросы (POST/PUT/PATCH/DELETE) к/api/v1/. Извлекает agentID из URL, userID из auth-контекста. Исключения: oauth, ws, health, setup, test-эндпоинты. - Store расширение —
ListAuditLogFilteredиListToolAuditPaginatedв SQLite/Postgres/DualStore с пагинацией и фильтрацией по resource_type, resource_id, agentID, tool. - WebUI: Settings > Audit — секция «Аудит» с вкладками «Системный журнал» и «Выполнение инструментов». Таблицы с пагинацией, фильтры.
- WebUI: Agent > Audit — вкладка «Аудит» в агентском sidebar (admin-only). Per-agent tool-аудит + системные события.
- 16 unit-тестов: ToolAuditHook (5), audit middleware (6), maskSensitiveArgs (9 кейсов), truncate.
Fixed
- P2-O4: Stream-deltas спам —
slog.Info→slog.DebugвforwardSystemNotification, убрано полеcontent_len. - P2-O5: PII в session debug logs — из логов
ask_userубраныoptions,content_len,messages_count,buttons. - P2-O6: Tool call args маскировка —
maskSensitiveArgsвrunner.goмаскирует password/token/api_key/key/secret и др. вslog.Info.