プロジェクト‐ノート:カテゴリ関連/キュー
話題を追加複数人でのキュー運用について
[編集]mirror-ktさんお一人に頼ってしまっているキューの実行を複数人体制へ移行する提案です。現在QueueBotは複数の不具合を抱えています。しかし、運用者であるmirror-ktさんと連絡が取れていない状況です。そのため、先行議論で挙がった以下のいずれかへ変更する必要があると考えます。
- QueueBotをToolforgeにて複数人で管理
- 運用者それぞれ管理による複数Botでの実行
- キュー廃止
以下が皆様が挙げてくださった考えに私の考えを追加したものです。
- 1:QueueBotをToolforgeにて複数人で管理
- QueueBotの実行環境であるToolforgeでは管理者を複数人設定することが可能であり、現在使用中または新しく作成したツールを複数人で運用・デバック等を行うことが出来ます。日本語版WikipediaにおけるBotの複数人で運用は禁止されておらず、運営が認められているボットは例外的に複数人管理が認められているそうです(WP:B,WP:ROLE)。ただし、誰がどのように管理するか、複数人で運用するにあたりどの言語で作成するか等考え直す必要があるかと思います。
- 2:運用者それぞれ管理による複数Botでの実行
- 複数Botの実行開始時間をずらし、競合を回避しつつスムーズなキューの実行が可能。不具合が発生した際はそのBotを停止することで抑制しつつ、他Botによるキュー実行の継続が可能。ただし、各種仕様を統一する必要あり。責任の帰属も明確化できるはず。例:QueueBotが7:00,15:00(JST)での実行に対し、hogeBotでは11:00,23:00で実行等。
- 3:キュー廃止
- commons:Commons:File_renaming/Global_replace/jaのようなものへの置き換えやWikipedia:Bot作業依頼で対応等。Botでの編集を廃止するかBot作業依頼にて種別C(移動を含む際は+種別F)として対応。後者だと複雑な編集の対応も可能。ただし、カテゴリ関連は簡単な作業を多量の依頼が見込まれる。
以上のような対応となると思います。どの案にせよ不具合により停止となっている現状を変える必要があると考えます。他の案・ご意見等お願いいたします。 --なノな15どバと(会話) 2025年3月10日 (月) 13:51 (UTC)
コメント - 択一的に今後の方針を考えるのではなく、より良いと考えられる選択肢を順次追求していくことになるだろうと思います。複数人で単一のbotを管理することも、複数人による複数botでキューを回すことも、先の議論で問題ないと確認されているはずですので、現状人手不足とは思いますが、この後mirror-ktさんがお戻りになるかならないかにかかわらず、一応まずはToolforgeにてQueueBotの管理を担ってくださる人か、新たにキューの実行を担うbotを作成して運用して下さるような人の募集を広くかけるべきかと考えます。Botを作成するコストを踏まえると前者が望ましいようにも感じますが、この場合恐らくmirror-ktさんのご協力が必要になるかと思いますので、その時にmirror-ktさんとある程度の連絡が取れる状態であることが求められます。募集をかけている間は現状の暫定的なキュー停止状態とBOTREQでの肩代わり運用とを継続していかざるを得ません。加えて必要ならば、先の議論で挙がった個人で使用できるような便利ツールの開発、整備も進めていくことも当然考えられます。キュー廃止と言うと、キューが再開される可能性を完全に消滅させることのようにも聞こえます。これまでキューが「プロジェクト:カテゴリ関連/議論」の根幹を成してきた有用なシステムであることを踏まえると、敢えてそれを選択する理由は生じ得るのでしょうか。キューが利用不可能な状態であることを適宜利用者に対して案内し続けなければなりませんが、個人的にはキューを将来的に存続させることを最善として今後の方向性を検討していくべきかと思います。--Yushukasai (talk) 2025年3月15日 (土) 15:30 (UTC)
Category:Toolforge botsを運用されている方々にお願いしてまいりました。私自身もToolforge権を所有しておりますので運用可能です。Bot作成のコストについて、mirror-ktさんと連絡が取れなかった場合は、新たなツールの作成に加えてGNU General Public License 3.0 or laterに基づいてコピーレフトすることも考えられます。が、Rustについては先行議論にてあった通り使用ユーザー数が少ないのが現状ですので、Rustユーザーが複数人いない場合はやはり作成が必要でしょう。 --なノな15どバと(会話) 2025年3月16日 (日) 10:38 (UTC)
コメント 利用者:SeitenBot(会話 / 投稿記録 / 記録)と利用者:SeitenBot2(会話 / 投稿記録 / 記録)を所有している本日晴天です。もしQueueBotの代わりとなるボットが必要でしたら、私の方でQueueBotの動作を模倣するPythonスクリプトを作成し、SeitenBot2を使って運用を行おうと思いますがいかがでしょうか。SeitenBot2は削除者でもあるので、移行の結果空になったカテゴリをWP:CSD#カテゴリ6で即時削除することも(申請を出して承認されれば)可能です。プロジェクト:カテゴリ関連/議論の審議ページの作成も必要でしたら、既にSeitenBot2で実施しているWikipedia:削除依頼のログページの作成と同じ要領で容易に実現できます。別の選択肢としてキューは廃止するが、代替として{{リンク修正依頼/改名}}のようなテンプレートを用意した上で、Wikipedia:Bot作業依頼を利用するというのもありなのではないかと考えています。なお私はRustでプログラミングした経験がないため、QueueBotのコードをメンテナンスすることはできそうにありません。--本日晴天(会話) 2025年3月16日 (日) 10:36 (UTC)
返信 (本日晴天さん宛) コメントありがとうございます。SeitenBot2での運用、とてもありがたいです。となりますと本日晴天さんは案2としてお考えでしょうか。または、SeitenBot2を共同管理とするのでしょうか。即時削除については、前者ですと削除者BotがSeitenBot2のみである現状では本日晴天さん一人で運用していただくことになってしまいます。 --なノな15どバと(会話) 2025年3月16日 (日) 11:16 (UTC)
返信 なノな15どバとさんがおっしゃるSeitenBot2の共同管理がどの範囲を指すのか私にとって明確ではないのですが、基本的には一人で運用するつもりでいます。ただしスクリプトコードのメンテナンスやスケジュールされたタスクの有効化/無効化の切り替え程度であれば、私以外の誰かを含めた複数人で管理するというのもありだとは考えています。使っているスクリプトのコードについては先日よりGitHubで公開していますので、コラボレーターとしてコードのメンテナンスに寄与したいという方がいらっしゃれば検討します。またSeitenBot2を近日中にToolforgeにホストする予定(Toolforgeのメンバーシップを申請し、承認待ち)なので、Toolforge上でタスクの管理を複数人で行うこともやろうと思えば可能ではないかと予想しています。一方でSeitenBot2のアカウント自体(もしくはボット用パスワードやOAuthのトークン)の共有は、削除者権限を有している以上はセキュリティの観点から避けるべきと考えます。
- 今後の運用については、私一人で引き受けてもいいですし、なノな15どバとさんが提示なさった3つの案のうち2番か3番のどちらかを採用するのでもいいと思います(1番はQueueBotのバグが修正されるという前提が必要)。--本日晴天(会話) 2025年3月16日 (日) 18:27 (UTC)
- @Nanona15dobato ②が一番ベターだと思います。ただ、カテゴリ張り替えの件数依頼はそこまで多くないので基本的には一つのボットに任せてしまって、それが停止しているなら他のボットを動かすのがよいかもしれません。
- ③のグローバル置き換えのようなものへのの置き換えに関してはカテゴリ張り替えは対象ページが結構な数になるのでRCが溢れたり厳しいと思います。--Chqaz(会話) 2025年3月16日 (日) 14:09 (UTC)
コメント 皆様、日々の管理業務お疲れ様です。私は基本キュー廃止賛成派ですので議論を静観していましたが、参加依頼が来たのでコメントします。Toolforgeの共同管理について調べましたが、1つのToolforgeツールアカウントを複数人が管理することはPassword Security ウイキメディアのパスワードセキュリティでもBot除外に言及されていないことから回避した方が良く、1つのSource codeで複数のToolforgeツールアカウントが管理する形が問題ないように感じます。したがって、管理に参加される方はToolforgeアカウントを作成しnew toolで参考例:Queuebotをライセンス・ソースコード・イシューを同じに作成し、ジョブを時間違いに設定すれば可能と思います。--AnakaSata(会話) 2025年3月17日 (月) 01:50 (UTC)
コメント - 本日晴天さんのご参入を大いに歓迎いたします。自動運転の実績も豊富であり、安心してお任せできると思います。ただ、今度の教訓でもある持続可能性の問題もありますので、個人的には単一botの共同管理の形をとるにしても、複数botの各自運行の形をとるにしても、将来的には複数人のbot運用者がキューを管理するという体制が望ましいのではないかと考えます(上記の2)。本日晴天さんがPythonで模倣スクリプトを書いて公開して下されば、GitHubを通じてソースコードの共同管理もできますし、AnakaSataさんご提示の手順でソースコードを共有しながら各自で別のbotの運用もできるとのことですので、複数人によるキュー運用の道も開けると思います。
- 「プロジェクト:カテゴリ関連/議論」の審議ページの作成に関しても、現状運用者とコンタクトが十分に取れていない状態で行うという体制では万一不具合が生じた際などにおいて都合が悪いと思いますので、予防としてSeitenBot2による運用へ置き換えるというのであれば賛成いたします。--Yushukasai (talk) 2025年3月17日 (月) 07:00 (UTC)
コメント キューにて試案を作成しました。ソースコードは定期ページ作成も作りました。出力例はこちら。問題点としては長期間に及ぶ作業があると2つのbotが短い間隔だとかち合う可能性があるので1台のみ稼働もう一台はプログラムを走らせずに待機。若しくは曜日を変えて交互に1日2回作業するとか考える必要があると思います。--
Anakabot(会話) 2025年3月21日 (金) 09:23 (UTC)-AnakaSata(会話) 2025年3月21日 (金) 22:43 (UTC)コメント - ありがとうございます。カテゴリ作業開始前にそのキューについて着手宣言を行い、他のbotは着手宣言がなされているキューについてはスキップという手順でも競合を防止できそうですが、こちらは実現可能でしょうか。--Yushukasai (talk) 2025年3月21日 (金) 10:42 (UTC)
コメント キュープログラムの最初に{{BOTREQ|着手}} がある節は着手済みということで後発Botはスキップでいいかと思います。しかし、書込が競合したときはエラーになるのでベストではないと思います。月曜日はAbot、火曜日はBbotとするほうがいいですね。--
Anakabot(会話) 2025年3月21日 (金) 11:26 (UTC)-署名変更-AnakaSata(会話) 2025年3月21日 (金) 22:43 (UTC)コメント 競合について、時間の管理さえすれば問題ないと考えます。Abotは9:00-11:45とし、12:00以降はBbotになるように貼付・着手しないで良いと思います。また、Anaka Satamiyaさんが現在公開されている議論ページ作成のコードについてですが、私が現在QueueBotのカバーとして動かしているコードではプロジェクト:カテゴリ関連/議論/日別ページ雛形から生成しております。今後複数Botで管理するとなった際にそちらの方が統一・管理がしやすいかと。--なノな15どバと(会話) 2025年3月21日 (金) 12:01 (UTC)
コメント ひな形があったんですね。こちらの方が簡単そうです。こちらで統一でいいと思います。間隔については、依頼によっては何時間もかかるモノがあるかもしれないので安全側で見てました。--
Anakabot(会話) 2025年3月21日 (金) 13:13 (UTC)署名変更-AnakaSata(会話) 2025年3月21日 (金) 22:43 (UTC)
コメント - 曜日ごとに担当を分ける、時間管理をする、どちらも反対しませんが、前者の場合であっても、大型・大量の依頼だと翌日のbotの作業開始時刻まで作業が続くという可能性は無きにしも非ずです。時間管理をして、後発botの作業開始時刻以降においては先発botは新たに作業を開始しないという手順を採ったとしても、先発botの作業が継続中の場合、着手宣言の仕組みがないと先発botの作業中のキューを後発botが実行しようとして、競合してしまう可能性があります。キュー実行スクリプトを作成される方には、「キュー実行前に着手宣言」「着手宣言のあるキューはスキップ」というプログラムを用意して欲しいというのがやはり個人的な考えです。キュー実行開始の有無をキュー申請ページを見て確認できるというのも利点の一つです。--Yushukasai (talk) 2025年3月21日 (金) 14:11 (UTC)
コメント 私の方でもQueueBotの動作を模倣するPythonスクリプトを途中まで書いてみました。しかしながら作業の依頼者が依頼内容を間違えたり、合意不十分な状態でキュー申請ページに依頼が出される可能性を考慮すると、定期実行されるスクリプトで自動化するよりは、Wikipedia:Bot作業依頼のようにbot運用者が作業内容を確認してから手動でスクリプトを起動・実行する運用にした方がいい気がしてきました。こちらの方式であればWikipedia:Bot作業依頼#依頼を受ける場合の手順と注意にも書かれている通り、作業着手の宣言を徹底すれば作業が競合する問題は容易に防げます。先に述べたように{{リンク修正依頼/改名}}のような感じでカテゴリ作業専用テンプレートを作成し、専用スクリプトも用意すれば、一般的なbot作業依頼よりは依頼を受ける側の手間が多少は軽減されるのではないかと思います。--本日晴天(会話) 2025年3月23日 (日) 15:58 (UTC)
コメント - 不適切な依頼に関しては、異議がある場合依頼の節の先頭の「Bot: 」の接頭辞を外し、botに構文を認識させないことによりキューの実行をスキップさせるという仕様が元々ありました。元の仕様のままなら、逆に依頼申請段階では接頭辞を付けず、第三者が責任を持って依頼の適正性を確認した上で接頭辞を付与してキューの実行を許可するという運用にすれば、自動化定期運行でも不適切なカテゴリ作業が行われるのをある程度防止することが可能かと思います。--Yushukasai (talk) 2025年3月24日 (月) 00:46 (UTC)
コメント 提案から2週間が経過しました。皆様、ご意見ありがとうございます。案2についての意見が多く、反対意見もないため案2(複数人でのキュー運用)の方向性ですすめていこうと思います。なお、運用についてはその時その時で順次考えることとします。現在、キュー運用に参加する表明を頂いているのは(アルファベット順)
- 利用者:Anakabot(会話 / 投稿記録 / 記録)
- 利用者:nanonaBot(会話 / 投稿記録 / 記録)
- 利用者:SeitenBot2(会話 / 投稿記録 / 記録)
でよろしいでしょうか。実行日時についてですが、曜日ごとですとBotが不具合を起こした(ブロックされた)際にその曜日は実行されないという事となってしまうのではないでしょうか。 合意についてですが、第三者による確認で良いと思います。ただ、確認者を全利用者にするのか一定条件以上にするのかは、荒らし対策の面でも必要だと考えます。 {{リンク修正依頼/改名}}について、人間が引き受ける際のわかりやすさや、パース時のエラーを減らすことができることを考えると導入すべきだと思います。ここに確認者の署名や{{Bots}}のようなものも含めても良いかもしれません。--なノな15どバと(会話) 2025年3月25日 (火) 07:17 (UTC)
コメント - 「案2」として複数の自動運転botにカテゴリ置換作業を担わせるのであれば、カテゴリ作業の依頼はほぼ全面的に「プロジェクト:カテゴリ関連/キュー」で担う体制になるため、{{リンク修正依頼/改名}}のような「Wikipedia:Bot作業依頼」等においてbotに読み取らせることを想定したカテゴリ作業依頼用テンプレートは基本的に不要であるように感じます(むしろこれは「案3」)。具体的にどのような状況下・形式でこの種のテンプレートを使用することを想定していますか?--Yushukasai (talk) 2025年3月25日 (火) 08:32 (UTC)
コメント 私は自動運転に責任が持てないので除外でお願いします。2名なら時間変更で対応できそうです。私からの意見は以下の通りです。
- キューBotの仕様
- 依頼者からのキュー見出しをBot作業依頼(種別C)の承認済みBot運用者らが確認、{{BOTREQ|可能}}を貼り付ける。キューでは処理できない問題があるときは確認者がその場で作業することも、却下することも可(Bot作業依頼には持ち込まない)。
- {{BOTREQ|可能}}があるものをキューが作業。終了後{{BOTREQ|完了}}を貼り付ける。エラー・不完全がある場合はメッセージ表記して依頼者に対処を依頼。
- {{リンク修正依頼/改名}}は不採用
- わざわざテンプレートにあてはめるのも誤字を誘発するので簡単な既存の様式「Bot:○を×へ」を採用。
- --AnakaSata(会話) 2025年3月25日 (火) 11:36 (UTC)
コメント(案3寄り) 安全性の観点から、キューを廃止してWikipedia:Bot作業依頼に一本化する案3でいいような気がしますが、もしキューを存続して(案2)自動実行するのであれば、排他制御の仕組みを導入するのはもちろんですが、依頼が出されてから一定時間経つまでは着手しない仕組みもあった方が良さそうです。なおAnaka Satamiyaさんの案のようにキュー申請ページで承認済みBot運用者が毎回確認するのであれば、問題のない依頼は内容に関係なくすべてその場でスクリプトを実行していいのではないでしょうか(つまりbotを全自動にする必要がない)。
- テンプレートを使うことに関しては、名前付き引数を使うことによって、例えば特定のページを作業の対象から除外するとか、特定の名前空間に属するページのみを対象とするといった、現行のキュー方式よりも柔軟な指定が可能となり、なおかつ機械可読性を損なわない(mwparserfromhellのようなものを使わないと厳しくはなりますが)というメリットがあると私は考えています。ただし依頼する側にとっては現行のキューのようにセクション名で指定する方式よりはやや複雑になるでしょうから、テンプレートはキュー申請ページではなくWikipedia:Bot作業依頼の方で使うことを想定しています。--本日晴天(会話) 2025年3月25日 (火) 17:09 (UTC)
コメント - 「Wikipedia:Bot作業依頼」でテンプレートと専用スクリプトとを用いてカテゴリ作業依頼を請けるという案を採用するならば、作業毎のbot運用者の手間も単純にBOTREQで肩代わりさせるよりはある程度省けるかと思いますので、私はキューの存続にはこだわらないことにします。安全な運転を徹底したい場合は、やはり依頼毎の手動実行が最も確実な方法だと思いますが、自動運転であっても先述のように着手許可済みの依頼と未許可の依頼とを区別できるようにする構文を用意するか、あるいはAnaka Satamiyaさんご提示の手順などのようにして、第三者が責任を持って依頼の妥当性を確認するという仕組みなら、そこまで安全性に対する懸念をする必要はないのかなと感じます。後は、自動運転と作業毎にスクリプトを起動しての手動運転とで、どちらのほうが手間や必要な人員のコストが全体的に見て大きいかの話だと思います。
- テンプレートによって依頼内容を指定する方式により様々なかたちの依頼を受け付けることができるというメリットは大いに考慮する価値があると思いました。ただしテンプレートが複雑化すると普及もしづらくなり、せっかくの柔軟な対応が可能というメリットも損なわれてしまいますので、そこは工夫が必要だと思います。--Yushukasai (talk) 2025年3月26日 (水) 06:09 (UTC)
コメント キューを存続しBot作業依頼との共存の2かキューを廃止しBot作業依頼のみとする3かを決めないと議論が前に進まないですね。3ならコメント依頼とかいろいろ段取りが必要です。私は3です。--AnakaSata(会話) 2025年3月28日 (金) 00:46 (UTC)
コメント テンプレートの使用法について、本日晴天さんと同じ考えです。もちろん複雑なテンプレート使用をするとなると強力なパーサーは必要となりますが、文章よりは幅が広がると思います。テンプレートの複雑化についてはオプションさえ指定しなければ現状の依頼文程度には容易なものとなるのではないでしょうか。案2,3について、コードに問題がなく確認作業さえ挟めばどちらでも問題はないと思います。案3としてもCewBot(不定期実行)のようにテンプレートを読み込み実行するというのができていますし、それを単数・複数問わずBotで定期的に実行するというのはいかがでしょうか。不具合が起こった際はそのBotをブロックしたとしてもそのまま他の方が手動で対応することが出来ますし、依頼確認・着手宣言さえすれば不具合や競合も防げます。案3について、テンプレート・定期Botを導入した上でBOTREQへ吸収合併させるのであれば賛成します。また、導入しないにしても安全面を考慮した上の廃止でしたら反対しません。 --なノな15どバと(会話) 2025年3月28日 (金) 15:11 (UTC)
コメント 皆様の意見やキュー停止から今日までBOTREQにて対応できていたことを考え、プロジェクト:カテゴリ関連/キューは廃止し、BOTREQへ一本化する形(案3)としたいと思います。なお、自動Botによる複数人体制についてはBOTREQ対応者が複数いることを踏まえ、現在のままとします。また、この決定は今後のキュー運用再開を妨げるものではないものと考えます。 --なノな15どバと(会話) 2025年5月18日 (日) 09:26 (UTC)
キュー廃止について
[編集]#複数人でのキュー運用についてでの議論を踏まえ、キューを廃止しWikipedia:Bot作業依頼へ一本化することを提案します。合意された場合はキューページを「/導入文」以外除去し、「/導入文」では申請についてBOTREQへの誘導のみにしようと思います。 --なノな15どバと(会話) 2025年5月18日 (日) 10:07 (UTC)
反対意見なしかつ#複数人でのキュー運用についてでの議論を踏まえ廃止とし、導入文を編集しました。今後は WP:BOTREQ への依頼によって対応する形となります。これまでQueueBotを運用してくださったmirror-ktさん、ありがとうございました。 --なノな15どバと(会話) 2025年6月1日 (日) 14:53 (UTC)