機能
かなりニッチな用途ですが:多くのクラブ、協会、ロジ(同好会)では、黒と白のボールを用いた秘密投票によって新メンバーを承認しています。このプラグインは、その手続きをDiscourseに導入します:
/ballotageにある投票ページで、設定されたグループのメンバーが、指定された期間中(デフォルトは開始日の00:01から終了日の23:59まで、カスタム時間指定も可能)、最終的な1票(黒または白)を投じます。/ballotage/manageにある管理ページで、監視グループと管理者が、投票実施中の投票済みメンバー、および投票終了後の黒/白の結果を確認できます。- 投票はキャンセルでき、その後確定(結果と参加者リストが不可逆的に削除される)し、最終的にリストから削除できます。
- 同時に1つの投票のみ、投票ページへの任意の通知テキスト、英語とドイツ語に対応。
投票の秘密性の維持方法
- データベースには、誰が投票したか(選択肢やタイムスタンプは含まない)と、2つの匿名カウンターのみが保存されます。メンバーと選択を紐付ける情報は一切ありません。カウンターは
updated_atを更新せずに増分されます。 - カウントは投票終了まで非公開です:参加者リストの横にリアルタイムのカウントを表示すると、観察者が新しい名前と、ちょうど動いたカウンターを照合できてしまうためです。
- 確定処理では、結果と参加者リストが完全に削除されます。
限界:投票中に直接データベースにアクセスしてカウンターを監視できる者は、依然として投票を相関付けできます。これはプラグインの範囲外であり、組織的な対策が必要です。
設定
| 設定項目 | 説明 |
|---|---|
ballotage_enabled |
プラグインを有効にする |
ballotage_voting_group |
投票権を持つメンバーのグループ |
ballotage_oversight_group |
参加状況と結果を確認できるグループ(管理者は常に確認可能) |
ballotage_oversight_can_manage |
監視グループが投票の作成、キャンセル、確定、削除を行えるようにする |
ballotage_info_text |
投票ページに表示される任意の通知テキスト |
ballotage_timezone |
開始/終了時間のタイムゾーン(デフォルトは Europe/Berlin) |
メンバーが投票ページを見つけられるよう、サイドバーやメニューに /ballotage へのリンクを追加してください。
互換性
Discourse 2026.7 以降。2026年9月から小規模なフォーラムで本番環境として稼働中です。
フィードバック、バグ報告、翻訳は歓迎です – こちらまたはGitHubにて。

