Перейти к содержанию

Кейсы (case-aware workflows)

🚧 Draft. Скелет по стандарту index.md §4 / _meta/_TEMPLATE.ru.md.

Case — project-scoped сущность-носитель бизнес-кейса (клиент, сделка, заявка), вокруг которого крутятся workflow-запуски. Хранит идентификаторы, свойства, теги, ссылки на файлы (сами файлы в Axon durably не хранятся — доступ через connector layer).

1. Что это и зачем

TODO — зачем нужны кейсы (привязка run'ов к бизнес-сущности, история, идентичность), case_id, case_type, display_name, identity_keys, properties, tags, status (active/archived). Archive — это status transition; canonical timestamp в audit.audit_log (event_type='case.archived').

2. Роли и доступ

TODO — create_case/edit_case/archive_case/attach_case_external_ref (manager+); delete_case_external_ref (admin/owner — manager НЕ имеет); operator — через workflow-запуски.

3. Где это в Console

TODO — раздел Cases (фича-флаг VITE_CONSOLE_STAGE3_UI_ENABLED → нужно прокинуть в console Dockerfile build args): список кейсов, детально кейс (identity keys, properties, tags, file sources, связанные runs, external refs), архивация.

4. Концепции (mental model)

TODO — identity_keys и properties мутируются только canonical case handlers; properties.file_sources (FileSourceRef JSON) — convention; case-level connector overrides (D17 средний слой).

5. Флоу: пошаговые сценарии

TODO — «создать кейс»; «запустить workflow для кейса» (Run Wizard); «привязать external ref» (Telegram chat, email thread); «архивировать кейс».

6. Справочник опций

TODO — поля кейса; FileSourceRef; external ref kinds.

7. Жизненный цикл и обслуживание

TODO — active → archived; GDPR-каскад при удалении проекта; что происходит с активными run'ами кейса.

8. Траблшутинг

TODO — «раздел Cases не виден» → фича-флаг не прокинут в build args; «не могу удалить external ref» → нужен admin/owner.

9. Ограничения и инварианты

TODO — project_id NOT NULL; content файлов durably не хранится; mutate только через canonical handlers.

10. Связанные мануалы и каноны