进程管理器:↔

:information_source: 摘要 一个用于 Discourse 的流程管理插件,通过可配置的步骤、操作、列表筛选器、图表、泳道视图和看板,推动工作流转。
:hammer_and_wrench: 仓库链接 https://github.com/merefield/discourse-process-manager
:open_book: 安装指南 如何在 Discourse 中安装插件

喜欢这个插件吗?请在 GitHub 上给它点个 :star: 吧!:pray:

摘要

Process Manager 为 Discourse 提供了一个安全的流程管理框架。每个流程由可配置的步骤和选项组成,主题(Topic)会通过这些步骤流转直至完成。

流程可以代表工作流、审批流、支持队列、审查管道或其他分阶段的工作。

它支持分支和循环、列表及看板发现视图、审计追踪、图表以及自动化友好的行为,同时保持与 Discourse 核心权限和 UI 模式的高度一致。

这使得设置和配置变得简单,并确保在任何时候只有合适的人才能对工作项进行操作。

使用主题作为工作项,为每个流程提供了灵活且原生的 Discourse 基础:每个项目开箱即用地拥有标题、详细描述、附件、讨论、通知、标签和完整的历史记录。

功能

  • 使用 Discourse 主题作为工作项的流程管理工作流

  • 管理员定义的工作流、步骤及步骤选项

  • 可视化工作流编辑器,用于排列步骤、泳道和转换连接器

  • 基于 Discourse 核心概念构建:分类、用户组、标签、通知以及基于分类的权限

  • 操作权限保持与 Discourse 行为一致:用户只能在拥有相应分类权限的地方执行操作

  • /processes 处提供流程发现功能,支持快速筛选:

    • 我的分类
    • 逾期
    • 步骤 = X
  • 发现视图选择器:

    • 列表

    • 看板,仅针对单个兼容看板的流程上下文显示

    • 图表,仅针对单个流程上下文且拥有图表权限的用户显示

    • 图表,仅针对单个工作流上下文且拥有图表权限的用户显示

  • 看板工作流面板:

    • 可点击的主题卡片
    • 合法的拖放转换
    • 在合法情况下支持使用 ArrowLeft / ArrowRight 进行键盘转换
  • 工作流主题横幅:

    • 当前工作流和步骤
    • 可用的转换操作
    • 可视化链接
  • 具有层级结构的逾期模型:

    • 全局设置:process_manager_overdue_days_default
    • 流程覆盖
    • 步骤覆盖
    • 0 可禁用该作用域内的逾期功能
    • 流程列表和看板卡片中的逾期指示器
  • 工作流燃尽图:

    • 图表端点及 UI 集成
    • 1 到 12 周的周范围选择器
    • 完整周窗口和按步骤着色的系列
  • 通过小型操作帖子记录转换审计追踪

  • 针对“关注首帖”的已关注分类提供到达通知

  • 可从主题和发现视图获取工作流可视化

    ![该图像描绘了一个采购工作流,包括起草采购申请、提交审批,然后购买已批准的物品。(AI 生成说明)|628x499](upload://789sygIjVxX1igU6CzVUC0v6q5r.png)
    
  • Data Explorer 集成,提供默认工作流查询:

    • 燃尽/燃起统计数据
    • 审计日志
  • 可选的 AI 辅助步骤处理

入门概念

泳道

每个工作流泳道都是一个分类(或者最好是子分类,见下文)。随着主题的推进,它会根据配置的转换在不同分类之间移动。

流程项

  • 单个流程项(例如工单)即一个主题(Topic)。
  • 可以添加标签以存储元数据,如优先级。
  • 分类移动由工作流操作控制(除非管理员覆盖)。

参与者

能够在步骤分类中创建主题的用户,可以对该步骤中的工作流项进行操作。拥有回复权限的用户仍可正常发表评论。

通过选项执行操作

步骤选项定义了每个步骤中可用的操作。每个选项都显示为主题操作按钮,并可将主题移动到目标步骤。

仪表盘

使用 /workflow 导航筛选器查看您有权访问的工作流主题,然后进行筛选或切换到看板以进行类似面板的流动管理。

审计追踪

转换会被记录为主题上的小型操作帖子。集成的 Data Explorer 查询支持审计和运营报告。

可视化

工作流可视化可从以下位置获取:

  • 主题横幅链接
  • 发现列表中的工作流字段

与标准 Discourse 的主要区别

  • 您无法直接在步骤 1 以外的工作流分类中创建新主题。
  • 除非您是管理员,否则无法手动更改工作流主题的分类。
  • 只有拥有分类创建权限的用户才能执行工作流转换。

开始使用:

  1. 通过 process_manager_enabled 启用插件。
  2. 前往 管理 -> 插件 -> Process Manager
  3. 创建一个流程,保存它,然后添加步骤和步骤选项。
  4. 配置分类权限,确保流程参与者拥有在相关步骤分类中创建主题的权限。
  5. 在第一个步骤分类中创建一个主题。
  6. 使用主题操作按钮或看板交互进行转换。
  7. 使用 /processes 进行运营队列管理。

AI 操作:

AI 可以通过 Process Manager 的直接 OpenAI 集成来执行步骤操作。这不需要依赖 Discourse AI。

要求:

  • 有效的 process_manager_openai_api_key
  • 步骤上已启用 AI
  • 提示词中必须包含 {{options}}{{topic}}

示例提示词:

您的选项是 {{options}}。如果以下文本表示它是美味的,请接受,否则拒绝。{{topic}} 请用这些选项中的一个词回答

已知问题

本插件仍在开发中。请在仓库或此 Meta 主题中报告问题和改进建议。

26 个赞

获得一些关注。

4 个赞

已部署几个修复程序:

2 个赞

在移动设备上提供更实用的视图:

  • 改进:工作流主题列表在桌面端运行效果很好,但在移动设备上太宽了,因此,与其在移动设备上添加所有这些列,不如在标题中添加一个工作流徽章,并将完整的列集限制在桌面端。
2 个赞

一些细微但重要的调整。

1 个赞

您好 Robert,

我正在使用工作流插件(不含 AI)。这是一个简单的流程,旨在为 Linux 咖啡馆提供支持链,帮助用户从 Windows 迁移。新主题通过带有子寻址的 RFC 6233 邮件创建,并进入第一个子类别(level1)。

两个问题:

  1. 工作流步骤的 ID 不唯一。我有三个步骤具有相同的 ID。??
  2. “incoming”主题上的“start”操作会创建“422 unprocessable content”。也许这是 1) 的结果。
3 个赞

感谢您的耐心和反馈。我感谢您对插件的兴趣。

它有点实验性,正如您所见,尚未收到大量反馈,因此难免会出现一些初期问题。

我将尝试重现您的工作流程并尝试重现该问题。

在此期间,您能否截取管理屏幕中工作流程的屏幕截图并分享?

@Thomas_Rother 您对此有堆栈跟踪吗?

3 个赞

罗伯特,您好:
没关系,我知道这是实验性的。因此,它只安装在一个自托管的测试实例上。您可以在那里注册,我可以授予您管理员权限:

https://forum2.netzwissen.de/login

2 个赞

好的,通过演练,这是我的操作过程:

  • 设置“网吧门票”类别
  • 将所有步骤设置为子类别,结果如下:

到目前为止一切顺利。

现在让我们创建步骤:

好的,我至少可以看到两个问题!(但其中一个可能由另一个引起)

这很奇怪,因为我确定以前这是可以正常工作的。我正在查看,如果我有时间,很快就会发布一个修复程序。

3 个赞

@Thomas_Rother 试试这个:

(您可能需要删除并重新创建受影响的步骤)

2 个赞

这个插件最常见的用例是什么?它是否与 Gemini flash 2.0 兼容?

任何具有多个步骤和参与者的业务流程(在合理的范围内)。可能需要扩展以进行特定集成。

目前仅支持 OpenAI,但欢迎提交 PR(它使用 Chat Completions,因此工作量不大)。

1 个赞

重大新闻:您现在可以获取创建燃尽图/燃起图的统计数据:

  • 添加了一个每日作业来创建状态计数统计信息,您可以在燃尽图/燃起图中使用这些信息。
  • 添加了一个作业,用于检查或添加两个有用的数据探索器查询
    • 所有转换的审计日志
    • 工作流实例在其工作流的每个步骤的每日计数,便于燃尽图/燃起图(只需导出结果)。
    • 您可以授予特定组访问这些报告的权限。

注意:由于在主要插件捆绑中处理 gem 依赖项的方式发生了变化,Discourse Workflow 目前仅与通过测试兼容。一旦下一个稳定版本发布,这种情况应该会有所改变。

4 个赞

我正在尝试找出我的网站为什么会变慢……

弃用警告

[PLUGIN discourse-workflow] 弃用通知:在站点初始化阶段访问 site.mobileViewsite.desktopView 已弃用。在将来的更新中,移动模式将由视口大小确定,因此在初始化期间使用这些值可能会在浏览器窗口大小调整时导致错误和不一致。请将这些检查移至在页面渲染期间执行的组件、转换器或 API 回调。 [弃用于 Discourse 3.5.0.beta9-dev] [弃用 ID:discourse.static-viewport-initialization] [信息:Designing for Different Devices (Viewport Size, Touch/Hover, etc.)] deprecated.js:62:13

我非常怀疑这会导致您的网站变得迟缓!!:laughing: - 这是一个弃用警告。

期待您的 PR :slight_smile:

1 个赞

嗯,这不应该是因为 Discourse Workflow,因为我已经关闭了几个 N+1 问题,包括主题列表和可视化中的问题:

等等。

3 个赞

包含多项新功能的重大更新,包括

  • 面向特定工作流的新主题列表过滤器
  • “逾期”标记
  • 更丰富的主题工作流元信息
1 个赞

绝对_巨大_的更新:

新的看板视图:

  • /workflow 中添加了完整的看板模式,带有列表/看板切换,仅在单个兼容看板的工作流范围内显示。
    • 引入了明确的看板兼容性验证(包括确定性的单边映射),并在工作流管理界面中显示了兼容性状态。
  • 使工作流项在看板上可操作:在合法步骤之间拖放、使用箭头键进行键盘步骤移动以及单击以打开主题。
  • 提高了并发更新的可靠性:陈旧的转换现在返回 409,显示清晰的陈旧状态消息,并触发刷新以重新同步 UI 状态。
  • 看板可用性和清晰度:可选的工作流级别看板标签、卡片上的逾期指示器支持,以及包括类别颜色列边框的车道样式。
5 个赞

另一个重大更新——在线燃尽/燃起图表(作为现有捆绑的数据资源管理器查询的一个很好的替代方案)

  • 在发现(discovery)中添加了一个新的工作流图表视图,具有共享视图选择器(列表/看板/图表)和周期控制(1-12 周)。
    • /discourse-workflow/charts.json 处实现了燃尽数据 API,并集成了 /workflow/charts 路由。
    • 图表访问权限是单独设置的:管理员和 workflow_charts_allowed_groups;未经授权的用户将隐藏图表。
    • 图表有效载荷已收紧至仅包含选定的工作流上下文(selected_workflow_idselected_workflow_nameseries),移除了未使用的工作流目录界面。
    • 添加了请求/系统覆盖和用户体验加固:整周窗口、本地日期安全的轴标签、可访问的视图选择器标签以及图表渲染/状态回归检查。

图表功能应与所有工作流兼容:

  • 图表不需要看板兼容性,因此适用于不兼容看板的工作流。
    • 仅当当前工作流列表范围恰好限定为一个工作流时,图表才会出现。
    • 用户必须具有图表权限(管理员或在 workflow_charts_allowed_groups 中)。
    • 如果兼容看板,下拉菜单显示列表/看板/图表。
    • 如果不兼容看板,下拉菜单仍然可以显示列表/图表(当满足上述两个条件时)。
3 个赞

我进行了一次主要的性能优化:

4 个赞