From 01ea682928304bd91b8316becc75b6fb7346f4c7 Mon Sep 17 00:00:00 2001 From: stepan Date: Sun, 13 Sep 2026 21:27:52 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A3=D1=82=D0=BE=D1=87=D0=BD=D0=B8=D1=82?= =?UTF-8?q?=D1=8C=20=D0=BA=D0=BE=D0=BD=D1=82=D1=80=D0=B0=D0=BA=D1=82=20?= =?UTF-8?q?=D0=B4=D0=B5=D1=82=D0=B0=D0=BB=D0=B5=D0=B9=20=D0=B0=D1=83=D0=B4?= =?UTF-8?q?=D0=B8=D1=82=D0=B0:=20=D0=B1=D1=8B=D0=BB=D0=BE=20=E2=86=92=20?= =?UTF-8?q?=D1=81=D1=82=D0=B0=D0=BB=D0=BE=20=D0=BF=D0=BE=20=D0=BF=D0=BE?= =?UTF-8?q?=D0=BB=D1=8F=D0=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Архитектура-10-operator-analytics-contract.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Архитектура-10-operator-analytics-contract.md b/Архитектура-10-operator-analytics-contract.md index cb5cc55..f1ce3ba 100644 --- a/Архитектура-10-operator-analytics-contract.md +++ b/Архитектура-10-operator-analytics-contract.md @@ -180,8 +180,10 @@ Детали события хранятся как JSON вида `{ "changes": [ { "field": "<код>", "from": "<было>", "to": "<стало>" } ] }`, где `field` — стабильный код параметра, `from` — предыдущее значение (`null` — параметр задан впервые), `to` — новое. Сериализация деталей — `AuditService.ToDetailJson`, форма изменения — `AuditDetails.Set`/ -`AuditDetails.Change`. Ядро отдаёт `changes` как есть; человекочитаемые названия событий, акторов, параметров -и значений — в ресурсах интерфейса (`ru.js`: `operator.event`/`operator.actor`/`operator.field`/`operator.value`). +`AuditDetails.Change`. Изменяющие события (`settings_updated`, `card_moved`, `container_updated`, +`tenant_limit_changed`) пишут «было → стало» по каждому затронутому полю; для сложных значений +(`Dict`/`MyPrompts`/`AiConfigs`) фиксируется факт изменения без значений. Ядро отдаёт `changes` как есть; +человекочитаемые названия событий, акторов, параметров и значений — в ресурсах интерфейса (`ru.js`: `operator.event`/`operator.actor`/`operator.field`/`operator.value`). Прежние записи плоского формата (`{ "login": "..." }`, пары `old*`/`new*`) читаются обратно совместимо. **Коды**: `200`, `401`.