Discourse ワークフロー

:information_source: 概要 設定可能なステップ、アクション、ワークフローリストフィルター、およびカンバンビューを備えたDiscourse用のトピックベースのワークフローシステム
:hammer_and_wrench: リポジトリリンク https://github.com/merefield/discourse-workflow
:open_book: インストールガイド Discourseにプラグインをインストールする方法

このプラグインを楽しんでいますか?GitHubで:star:をお願いします!:pray:

概要

discourse-workflowは、トピックのための安全なワークフローフレームワークを提供します。各ワークフローは、設定可能なステップとオプションで構成され、トピックは完了するまでそれらのステップを通過します。

分岐とループ、リストおよびカンバンでの発見ビュー、監査可能性、および自動化に適した動作をサポートしつつ、コアDiscourseの権限とUIパターンに近づいています。

特徴

  • 管理者が定義したワークフロー、ステップ、ステップオプションを持つトピックベースのワークフローインスタンス
  • コアDiscourseの概念(カテゴリ、グループ、カテゴリベースの権限)に基づいて構築されています。許可されている場合にのみアクションを実行できます。
  • /workflowでのワークフローの発見とクイックフィルター:
    • マイカテゴリ
    • 期日超過
    • ステップ = X
  • 発見ビューセレクター:
    • リスト
    • カンバン(単一のカンバン互換ワークフローコンテキストでのみ表示)
    • チャート(単一ワークフローコンテキストおよびチャート許可ユーザーにのみ表示)
  • カンバンワークフローボード:
    • クリック可能なトピックカード
    • 合法的なドラッグ&ドロップの遷移
    • 合法的な場合のキーボード遷移(ArrowLeft / ArrowRight)
  • ワークフローのトピックバナー:
    • 現在のワークフローとステップ
    • 利用可能な遷移アクション
    • 視覚化リンク
  • 期日超過モデルと階層:
    • グローバル設定:workflow_overdue_days_default
    • ワークフローの上書き
    • ステップの上書き
    • そのスコープでの期日超過を無効にする0
    • ワークフローリストおよびカンバンカードでの期日超過インジケーター
  • ワークフローのバーンダウンチャート:
    • チャートエンドポイント+UI統合
    • 週範囲セレクター(1〜12)
    • フルウィークウィンドウとステップカラーのシリーズ
  • 小さなアクション投稿による遷移監査証跡
  • ウォッチ対象カテゴリへの到着通知(最初の投稿をウォッチ)
  • トピックおよび発見ビューから利用可能なワークフロー視覚化
  • デフォルトのワークフロークエリを備えたData Explorer統合:
    • バーンダウン/バーンアップ統計
    • 監査ログ
  • オプションのAI支援ステップ処理

導入の概念

スイムレーン

各ワークフローレーンはカテゴリ(またはサブカテゴリ)です。トピックが進むにつれて、設定された遷移に従ってカテゴリ間を移動します。

ワークフローインスタンス

  • 単一のワークフローアイテム(例:チケット)はトピックです。
  • メタデータ(例:優先度)のためにタグを追加できます。
  • カテゴリの移動は、ワークフローアクションによって制御されます(スタッフによる上書きがない限り)。

アクター

ステップカテゴリでトピックを作成できるユーザーは、そのステップのワークフローアイテムに対してアクションを実行できます。返信アクセス権を持つユーザーは、通常どおりコメントできます。

オプションによるアクション

ステップオプションは、各ステップで利用可能なアクションを定義します。各オプションはトピックアクションボタンとして表示され、トピックを指定されたステップに移動させることができます。

ダッシュボード

/workflowナビゲーションフィルターを使用して、アクセスできるワークフローのトピックを確認し、ボードスタイルのフロー管理のためにフィルターを適用するか、カンバンに切り替えます。

監査証跡

遷移は、トピック上の小さなアクション投稿として記録されます。バンドルされたData Explorerクエリは、監査と運用レポートをサポートします。

視覚化

ワークフローの視覚化は、以下から利用可能です:

  • トピックバナーのリンク
  • 発見リストのワークフローフィールド

標準Discourseとの主な違い

  • ステップ1を超えるカテゴリに新しいトピックを直接作成することはできません。
  • スタッフでない限り、ワークフローのトピックのカテゴリを手動で変更することはできません。
  • カテゴリ作成権限を持つユーザーのみがワークフローの遷移を実行できます。

始めるにあたって

  1. workflow_enabled でプラグインを有効にします。
  2. 管理者 → プラグイン → Discourse Workflow に移動します。
  3. ワークフローを作成し、保存してから、ステップとステップオプションを追加します。
  4. ワークフローアクターが関連するステップカテゴリで作成権限を持つようにカテゴリの権限を設定します。
  5. 最初のステップカテゴリでトピックを作成します。
  6. トピックアクションボタンまたはカンバン操作を使用して遷移させます。
  7. 運用キュー管理のために /workflow を使用します。

AIアクション

AIは設定されている場合にステップをアクションできます。

要件:

  • 有効な workflow_openai_api_key
  • ステップでAIが有効になっていること
  • プロンプトに {{options}} と {{topic}} の両方が含まれていること

プロンプトの例:

あなたのオプションは{{options}}です。以下のテキストが美味しいと述べている場合は承認し、そうでない場合は拒否してください。{{topic}} これらのオプションのいずれか一つで回答してください

既知の問題

このプラグインはまだ進化中です。問題や機能強化のアイデアは、リポジトリまたはこのMetaトピックで報告してください。

「いいね!」 25

愛されてるよ。

「いいね!」 4

いくつかの修正をデプロイしました。

「いいね!」 2

モバイルでの表示がより実用的になります。

  • 改善: Workflowトピックリストはデスクトップではうまく機能しますが、モバイルでは幅が広すぎるため、モバイルではすべての列を追加する代わりに、タイトルにワークフローバッジを追加し、列の完全なセットをデスクトップに限定します。
「いいね!」 2

マイナーですが重要な変更をいくつか追加しました。

「いいね!」 1

ロバート様

AIを使用せずにワークフロープラグインを試しています。これは、LinuxカフェがWindowsからの移行を支援するために使用されるシンプルなワークフローです。新しいトピックは、サブアドレッシングを使用したRFC 6233メールを通じて作成され、最初のサブカテゴリ(レベル1)に入ります。

2つの問題があります。

  1. ワークフローステップのIDが一意ではありません。同じIDを持つステップが3つあります。??
  2. 着信トピックの「開始」アクションが「422 unprocessable content」を生成します。これは1)の結果でしょうか?
「いいね!」 3

ご辛抱とフィードバックをいただきありがとうございます。プラグインにご関心をお寄せいただき感謝いたします。

これは少し実験的なものであり、ご覧のとおり、まだ多くのフィードバックを得られていないため、初期の問題は避けられません。

ワークフローを再現し、問題を再現しようと試みます。

それまでの間、管理画面でのワークフローのスクリーンショットを共有していただけますでしょうか?

@Thomas_Rother これに関するバックトレースはありますか?

「いいね!」 3

ロバート様

ご心配なく。これは実験的なものであることを承知しております。そのため、セルフホストされたテストインスタンスにのみインストールされています。そちらで登録していただければ、管理者権限を付与できます。

https://forum2.netzwissen.de/login

「いいね!」 2

説明のために、どのように進めたかを以下に示します。

  • インターネットカフェチケットのカテゴリを設定しました。
  • すべてのステップをサブカテゴリとして設定した結果、以下のようになりました。

ここまでは順調です。

次に、ステップを作成しましょう。

OK、少なくとも2つの問題が見えます。(ただし、おそらく一方が他方の原因でしょう)

これは奇妙です。以前はこれが機能していたと確信していました。現在確認しており、時間があればすぐに修正をリリースします。

「いいね!」 3

@Thomas_Rother これを試してみてください:

(影響を受けるステップを削除して再作成する必要がある場合があります)

「いいね!」 2

このプラグインの最も一般的なユースケースは何ですか?また、Gemini flash 2.0で動作しますか?

複数のステップとアクターを伴うあらゆるビジネスプロセス(合理的な範囲内で)。特定の統合のために拡張が必要になる場合があります。

現在は OpenAI のみですが、PR を歓迎します(Chat Completions を使用しているため、それほど多くの作業ではありません)。

「いいね!」 1

ビッグニュース:バーンダウン/バーンアップチャートを作成するための統計情報を取得できるようになりました。

  • バーンダウン/バーンアップチャートで使用できる状態カウント統計を作成するための日次ジョブを追加します。
  • 2つの便利なデータエクスプローラークエリの存在を確認するか、それらを追加するジョブを追加します。
    • すべてのトランジションの監査ログ
    • ワークフローインスタンスの各ステップでの日次カウント(エクスポートするだけでバーンダウン/バーンアップチャートが容易になります)。
    • これらのレポートへのアクセスを特定のグループに付与できます。

注:現在、Discourse Workflowは、メジャープラグインバンドリングの一部としてgem依存関係の処理方法が変更されたため、一時的にtests-passedとのみ互換性があります。これは、次の安定版リリース時に変更されるはずです。

「いいね!」 4

サイトが遅くなった理由を調べています…

非推奨の警告

[PLUGIN discourse-workflow] 非推奨通知: サイト初期化フェーズ中に site.mobileView または site.desktopView にアクセスすることは非推奨です。将来のアップデートでは、モバイルモードはビューポートサイズによって決定されるため、初期化中にこれらの値を使用すると、ブラウザウィンドウのサイズが変更されたときにエラーや不整合が発生する可能性があります。これらのチェックを、ページレンダリング中に実行されるコンポーネント、トランスフォーマー、またはAPIコールバックに移動してください。[deprecated since Discourse 3.5.0.beta9-dev] [deprecation id: discourse.static-viewport-initialization] [info: Designing for Different Devices (Viewport Size, Touch/Hover, etc.)] deprecated.js:62:13

これがあなたのサイトが遅くなる原因であるとは全く疑っていません!! :laughing: - それは非推奨の警告です。

あなたのPRを楽しみにしています :slight_smile:

「いいね!」 1

さて、トピックリストやビジュアライゼーションでのN+1の問題をいくつか修正したので、Discourse Workflowが原因であるはずがありません。

など。

「いいね!」 3

いくつかの新機能を含む大きなアップデート。以下が含まれます。

  • ワークフロー固有のトピックリストフィルターが新しくなりました
  • 「期限超過」フラグ
  • よりリッチなトピックワークフローのメタ情報
「いいね!」 1

実に大規模なアップデートです。

新しいカンバンビュー:

  • /workflow に完全なカンバンモードを追加しました。単一のカンバン互換ワークフローがスコープ内にある場合にのみ表示される、リスト/カンバン切り替え機能です。
    • 明示的なカンバン互換性検証(決定論的な単一エッジマッピングを含む)を導入し、ワークフロー管理画面で互換性ステータスを表示するようにしました。
  • カンバンからワークフローアイテムを操作可能にしました: 合法的なステップ間でのドラッグ&ドロップ、矢印キーによるキーボードでのステップ移動、トピックを開くためのクリック操作。
  • 並行更新の信頼性を向上させました: 古い遷移は409を返し、明確な古い状態メッセージを表示し、UI状態を再同期するためにリフレッシュをトリガーします。
  • ボードのユーザビリティと明瞭性の向上: ワークフローレベルのカンバンタグ(オプション)、カード上の期限切れインジケータのサポート、カテゴリ別色分けされた列境界線を含むレーン様式設定。
「いいね!」 4

もう一つの大きなアップデートとして、オンラインのバーンアップ/バーンダウンチャート(既存のバンドルされたデータエクスプローラークエリの優れた代替手段)が追加されました。

  • ディスカバリーに新しいワークフローチャートビューを追加しました。共有ビューセレクター(リスト/カンバン/チャート)と期間コントロール(1〜12週間)を備えています。
    • /discourse-workflow/charts.jsonでのバーンダウンデータAPIと、/workflow/chartsルート統合を実装しました。
    • チャートへのアクセスは個別に権限が設定されます:管理者とworkflow_charts_allowed_groups。権限のないユーザーにはチャートは非表示になります。
    • チャートのペイロードは、未使用のワークフローカタログサーフェスを削除し、選択されたワークフローコンテキスト(selected_workflow_idselected_workflow_nameseries)のみに絞り込まれました。
    • リクエスト/システムカバレッジとUXの強化を追加しました:フルウィークウィンドウ、ローカル日付安全な軸ラベル、アクセシブルなビューセレクターのラベリング、およびチャートレンダリング/状態リグレッションチェック。

チャート機能はすべてのワークフローと互換性があるはずです:

  • チャートはカンバン互換性を必要としないため、カンバン互換性のないワークフローでも機能します。
    • 現在のワークフローリストがちょうど1つのワークフローにスコープされている場合にのみチャートが表示されます。
    • ユーザーはチャート権限(管理者またはworkflow_charts_allowed_groupsのメンバー)を持っている必要があります。
    • カンバンと互換性がある場合、ドロップダウンにはリスト/カンバン/チャートが表示されます。
    • カンバンと互換性がない場合でも、上記の2つの条件が満たされていれば、ドロップダウンにリスト/チャートが表示されることがあります。
「いいね!」 1