Меню


[I128-2840] Реализовать WorkflowDesigner как единую административную студию настройки workflow-проектов


НАЧАЛО >> Оглавление >> Общее описание >> История изменений >> Что нового в проекте I128 >> Версия 2026.3 >> [I128-2840] Реализовать WorkflowDesigner как единую административную студию настройки workflow-проектов📄 Скачать в DOCX


Тип Версия Статус Приоритет Исполнитель
⚙️ Новые возможности 2026.3 🔘 Завершено Средний Unassigned

Компоненты: Нет

Завершено: 08.09.2026 13:52

  1. Цель

Нужно реализовать модуль WorkflowDesigner как единую административную студию настройки workflow-проектов ИРБИС 128.

WorkflowDesigner должен позволить администратору настраивать промышленный процесс из одного интерфейса: проект, workflow, статусы, переходы, экраны, схемы экранов, фильтры, представления, доски, календари, согласования, автоматизацию, навигацию, публикацию, права и диагностику.

WorkflowDesigner не является новым workflow engine и не хранит source of truth для workflowсущностей. Он строит единую административную рабочую область, показывает связи между настройками и делегирует сохранение изменений модулямвладельцам.

  1. Контекст

Настройка workflow-проекта в промышленной системе затрагивает несколько модулей: WorkflowProject, Workflow, WorkflowStatus, WorkflowTransition, WorkflowScreen, WorkflowView, WorkflowFilter, WorkflowApproval, WorkflowCalendar, Menu, Automation, Security, FieldConfiguration, HealthCheck, TestA и Help.

Если администратор вынужден переходить между разрозненными редакторами записей, он легко теряет общую картину процесса: какие статусы есть, какие переходы доступны, какой экран откроется, какие права проверяются, какие согласования включены, какие фильтры и страницы публикуют записи и почему конфигурацию нельзя публиковать.

WorkflowDesigner должен дать единый интерфейс "от и до", но не должен переносить в себя ответственность модулей-владельцев.

  1. Что Нужно Сделать

Нужно создать отдельный модуль WorkflowDesigner.

Первый промышленный срез должен включать:

Страница Designer должна быть рабочим административным интерфейсом, а не информационной страницей.

Интерфейс должен иметь четыре зоны:

Режимы первого среза:

Схема должна показывать статусы как прямоугольники, переходы как направленные связи со стрелками.

Нужно поддержать:

В обычном режиме узел статуса должен показывать человекочитаемое название без технического кода. Технические коды можно показывать в диагностическом режиме.

Цвет статуса должен браться из WorkflowStatus или API-статуса. WorkflowDesigner не должен хранить собственную независимую палитру.

1. Inspector

Inspector выбранной сущности должен показывать:

Inline edit допускается только для безопасных часто используемых полей, если owner module предоставляет API изменения. Если такого API нет, WorkflowDesigner должен открывать штатный редактор записи.

WorkflowDesigner не должен напрямую менять физические поля чужих записей.

1. Делегирование Owner Modules

Все изменения конфигурации должны выполняться через owner modules:

WorkflowDesigner должен различать сохранение черновых изменений и публикацию.

Перед публикацией нужно показывать:

Публикация, rollback, import и export выполняются только через WorkflowProject и owner modules. Designer не должен самостоятельно переключать published flags или переписывать system JSON definitions.

1. Security

WorkflowDesigner не должен расширять права администратора.

Нужно проверять:

Designer должен показывать причину отказа, если Security предоставляет explain API, но не должен раскрывать скрытые данные.

1. Extensibility

Нужно предусмотреть extension contract для модулей семейства Workflow* и смежных системных модулей.

Extension должен уметь добавить:

Добавление нового extension-модуля не должно требовать изменения ядра WorkflowDesigner, если extension соблюдает контракт.

1. Help И TestA

Нужно подготовить Help:

Нужно подготовить TestA:

Входит:

Не входит:

-

Jira: https://jira.irbis128.ru/browse/I128-2840

Добавлен первый срез WorkflowDesigner как единой административной студии настройки workflow-проектов.

Входит в PR:

Границы:

Проверки:

1. Связанные задачи

1.1. 🔗 blocks: I128-2790

[I128-2790] Расширить Workflow* для промышленного контура задач Статус: Завершено | Автор: Ilya Mikhaylenko

1.2. 🔗 blocks: I128-2791

[I128-2791] Расширить WorkflowScreen/WorkflowView для публичных ws-форм и представлений Статус: Завершено | Автор: Ilya Mikhaylenko

1.3. 🔗 blocks: I128-2793

[I128-2793] Ввести TraceContext для сквозной трассировки операций Статус: Завершено | Автор: Ilya Mikhaylenko

1.4. 🔗 blocks: I128-2794

[I128-2794] Реализовать системную событийную шину EventBus Статус: Завершено | Автор: Ilya Mikhaylenko

1.5. 🔗 blocks: I128-2795

[I128-2795] Расширить Queue как runtime фоновых заданий, retry и расписаний Статус: Завершено | Автор: Ilya Mikhaylenko

1.6. 🔗 blocks: I128-2797

[I128-2797] Расширить Security для проектных прав, полей, действий и аудита доступа Статус: Завершено | Автор: Ilya Mikhaylenko

1.7. 🔗 blocks: I128-2798

[I128-2798] Реализовать HealthCheck для workflow-проектов и задач Статус: Завершено | Автор: Ilya Mikhaylenko

1.8. 🔗 blocks: I128-2799

[I128-2799] Подготовить TestA-контракты системных JSON и end-to-end сценариев Статус: Завершено | Автор: Ilya Mikhaylenko

1.9. 🔗 blocks: I128-2809

[I128-2809] Сохраненные и материализованные фильтры WorkflowFilter Статус: Завершено | Автор: Ilya Mikhaylenko

1.10. 🔗 blocks: I128-2816

[I128-2816] Расширить Menu для публикации TaskPortal в навигации и Cabinet Статус: Завершено | Автор: Ilya Mikhaylenko

1.11. 🔗 blocks: I128-2818

[I128-2818] Реализовать наблюдаемость Observability для промышленных модулей Статус: Завершено | Автор: Ilya Mikhaylenko

1.12. 🔗 blocks: I128-2820

[I128-2820] Реализовать общесистемную автоматизацию Automation Статус: Завершено | Автор: Ilya Mikhaylenko

1.13. 🔗 blocks: I128-2821

[I128-2821] Реализовать рабочие доски WorkflowBoard для workflow-записей Статус: Завершено | Автор: Ilya Mikhaylenko

1.14. 🔗 blocks: I128-2822

[I128-2822] Реализовать календарные представления WorkflowCalendar для workflow-записей Статус: Завершено | Автор: Ilya Mikhaylenko

1.15. 🔗 blocks: I128-2825

[I128-2825] Расширить FieldConfiguration как реестр полей workflow-проектов Статус: Завершено | Автор: Ilya Mikhaylenko

1.16. 🔗 blocks: I128-2826

[I128-2826] Расширить Help для документации задач, API и эксплуатационных runbook Статус: Завершено | Автор: Ilya Mikhaylenko

1.17. 🔗 blocks: I128-2828

[I128-2828] Расширить Flags для системных feature flags и rollout policy Статус: Завершено | Автор: Ilya Mikhaylenko

1.18. 🔗 blocks: I128-2839

[I128-2839] Реализовать WorkflowApproval для формальных согласований workflow-переходов Статус: Завершено | Автор: Ilya Mikhaylenko