Wikipedia:井戸端/subj/履歴ページの個々の版に対して追加のコメントを表示する方法の導入の提案

履歴ページの個々の版に対して追加のコメントを表示する方法の導入の提案 編集

提案 編集

履歴不継承がが積み重なった後に発見され、それらの版を削除しなくてはならないページがあります。大量の版の削除が必要であったり、履歴不継承の原因になっている版が多くあったりする場合があります。最近、井戸端でも議論されています。ほかにも、他言語版のページの翻訳などでも履歴不継承の疑いがあり、まだ議論のなされていないものが数十ページあることを確認しています。

そこで、MediaWikiの拡張機能によって、履歴ページで特定の版の履歴の末尾に追加のコメントを書き込ませることで履歴を保存することを提案します。試作の拡張機能はmediawikiwiki:Extension:RevisionCommentSupplementにあります。履歴不継承の対処の方法としての是非の検討をお願いします。--Burthsceh会話2012年8月2日 (木) 11:58 (UTC)[返信]

Burthscehさん、はじめまして。試作お疲れさまです。MediaWiki Extensionの導入手続きについてはよく存知ないのですが、この場で検討するのであれば、外部仕様あるいはユースケースをもう少し具体的に示していただけますと、皆さんコメントしやすいのではないでしょうか…。とりあえず私のおおまかな理解では、新たに専用のテーブルを用意し、既存の要約欄とは別に版ID、利用者ID、利用者名、タイムスタンプ、そして追加コメント(255バイト)を格納、ページ履歴では追加コメントを各行の末尾に追加表示するのみ、追加コメントの編集は新しい特別ページで行う、といったところまでです。現状の要約欄を捕捉する情報を追加できれば履歴継承を後から補うことも可能と思われますが、いくつか気になりました。
  1. 追加コメントの追加は誰でも可能なのでしょうか?
  2. 既存の追加コメントの変更は可能なのでしょうか?誰でも可能なのでしょうか?
  3. 追加コメントの追加・変更はログに(誰がいつ何を行ったか)記録されるのでしょうか?
  4. ページ履歴画面の表示性能への影響は大丈夫でしょうか?
  5. 将来他のExtension(FlaggedRevs等)を導入する際、共存は可能でしょうか?
  6. 編集画面はどこから呼び出されるのでしょうか?
とりあえずこれらが気になりました。コードを見れば明らかかもしれませんが、MediaWiki、Extensionの素人ですのでご容赦ください。--Penn Station (talk) 2012年8月2日 (木) 14:55 (UTC)[返信]
現在のバージョン0.1.0では次のようにしています。
  1. 本来は利用者の権限とブロック状況を確認しなければなりませんが、現在はしていないため、誰でもできるようになっています。
  2. 変更は可能です。1.と同じく利用者権限などは確認していません。
  3. 現在は、rev_comment_suppテーブルに最後のものを記録する以外何もしません。ログを取るようにすることは可能です。
  4. 版ごとにRevisionCommentSupplement::AddCommentが呼び出されるため、その分時間がかかるようになります。差がどのくらいになるかはテストしていません。
  5. RevisionCommentSupplement::AddCommentのように$sに書き加えるだけのPageHistoryLineEndingをフックしている拡張機能は問題ないだろうと思います。
  6. 編集は、Special:RevisionCommentSupplementでします。supplementcomment権限がある場合は、Special:SpecialPagesのPage toolsにリンクが表示されます。
以上、よろしくお願いします。--Burthsceh会話2012年8月3日 (金) 01:41 (UTC)[返信]
詳細なご説明、ありがとうございました。おかげさまでかなりイメージできてきました。
  • 追加・変更は誰でも可能で、6.によるとsupplementcomment権限がある場合のみSpecial:SpecialPagesにリンクが追加されるとのこと。これは単にそのリンクの表示非表示にのみ関係するのでしょうか?可能ならば機能実行に必要な権限とした方が良さそうに思います。そしてsupplementcomment権限をどの利用者グループに割り当てるのかは運用面での一つの論点になります。個人的には管理者に割り当てればよいと思います。
  • ログはとった方が良いと思います(すべてのアクションを記録するのがMediaWikiの特長の一つだと思いますので)。
  • 一覧性能は多分問題ないとは思うのですが、件数が増えた場合目立ってきますので、一応注意が必要と思います。
--Penn Station (talk) 2012年8月4日 (土) 03:55 (UTC)[返信]
  賛成 同じことを考えていました。履歴不継承問題を解決するための履歴復旧の手法として非常に有用だと思います。ウィキペディアにはWikipedia:履歴#履歴統合や要約欄の補遺という手段がすでにありますから、事後的に(問題が生じた時点に遡って)履歴の問題を正すのはなんら問題ないはずです。実際的な実施方法としては、履歴の統合にならって、編集者が問題のあった版の要約欄の訂正を依頼する→権限のある管理者が実際の作業を行う、とすればよいのではないでしょうか。--Bugandhoney会話2012年8月2日 (木) 16:21 (UTC)[返信]
それでよいと思います。--Burthsceh会話2012年8月3日 (金) 01:41 (UTC)[返信]
  賛成  とてもいいアイディアだと思います。試作まで作ってくださったBurthsceh様はすごいと思います。履歴不継承の問題解決法としてよいツールだと思います。ただ、履歴継承の補足に使うのではなく、要約欄記述の改変ツールとして使う人が出ないかがちょっと心配かも。(逆に変なことを書いちゃったときに消せてもいいかもしれません)でも、機能を使えるのを管理者様限定にしたら管理者様の手間は少なくはならないですよね? それとこの機能が使えるのは記事だけですか?ノートとか会話ページとかは?--朝姫会話2012年8月3日 (金) 07:21 (UTC)[返信]
疑似名前空間でない名前空間のページに対するものであれば、つけることができます。--Burthsceh会話2012年8月5日 (日) 15:43 (UTC)[返信]
  最近のmediawikiやwikimediaには詳しくないのだが、履歴の改変がGFDL違反になるという見解は変更されたのだろうか(Ref:Wikipedia:井戸端/subj/要約欄の訂正Wikipedia‐ノート:削除の方針/履歴情報の追補)。--Knua会話2012年8月3日 (金) 13:15 (UTC)[返信]
Penn Stationさんによる仕様の説明を見る限り、オリジナルの要約欄とは別にコメントを追加するということなので、厳密にはオリジナルの履歴は改変されないのでは。要約欄の補遺はすでに行われているのであって、イメージとしては、オリジナルの要約欄とそれに対する追加のコメントが履歴ページでは上下に並ぶ代わりに、左右に並べて表示されるようになる、ということだと思うのですが。--Bugandhoney会話2012年8月3日 (金) 17:22 (UTC)[返信]
  コメント2009年6月15日のライセンス更新以降の編集履歴リストはGFDL上の継承履歴ではなく個別のGFDL文書のリスト(各投稿者が提供したGFDLの初版が並んだリスト)にすぎないので。
2009年6月15日より前の投稿分の履歴リストは、誰かがGFDLで利用する際にはGFDLライセンス上の履歴セクションを兼ねる可能性がありますが、履歴補填後のリストが適正な履歴であるのならGFDLを選択する利用者にとっても問題は無いはずです。ライセンス移行前の議論とはいえ、そもそもGFDL1.3 第5項で明示的に認められていること(不正な転載テキストを除いた文書への同テキスト再統合)がなぜGFDL違反になるのかがよく分かりません。--ディー・エム会話2012年8月3日 (金) 18:03 (UTC)[返信]
  コメント Bugandhoneyさんのコメントのとおり、既存の要約欄を変更するものではなく、履歴ページ上で過去版に対して情報を「追加」できる機能です。もちろん追加を含めて「改変」と見ることもできます。現在行われている版指定削除を組み合わせた補遺がOKならば問題なさそうにも思えるのですが、過去に外部で継承された文書への影響は気になります(外部で保存された履歴には影響が及びませんので)。仮に追加コメントによる補遺が可能だとしても、混乱を避けるため追加する人は例えば管理者に制限した方が良いと思います。--Penn Station (talk) 2012年8月4日 (土) 03:55 (UTC)[返信]
「外部で保存された履歴」に関しては、履歴の統合や版指定削除でも同様の問題は起きますから仕方ないかなと。URLで帰属表示してくれてたら常に最新の履歴が参照できるのですが...。--Bugandhoney会話2012年8月8日 (水) 17:17 (UTC)[返信]
Burthscehさん、有用な拡張機能のご提案ありがとうございます。手元の MediaWiki 1.20 で動かしてみました。特別ページで対象の版を版番号で指定し、補遺を入力すると、履歴ページの要約欄の右に「補遺」の欄が付け加わることが確認出来ました。履歴の追記が必要なときに、手間を減らすとともに追記であることを明確にする点で、有望な方向の機能だと思います。いくつかコメントさせてください。
  1. すでに指摘されていますが、荒らしを防ぐ観点から、補遺をつける操作を実行できる人を厳密に制限する必要があると思います。これも指摘されていますが、透明性を確保する観点から、補遺を書いたことが特別:ログに記録されるようにすることも重要だと思います。
  2. 少し気になったのですが、一度書いた補遺は以後編集不可能にできないでしょうか。ある人が書いた補遺を他の人が編集できるようなので、誰が補遺のどの部分を書いたかが分かりにくくなる可能性があります。また、ページ本体とは違って、履歴では一度書かれたこと原則変化せず、新しい記述が付け加えられていくだけ、というのが MediaWiki の仕組みであるように思います。現実的に補遺を編集しなければならないことはほとんどないでしょうから、補遺もデフォルトでは要約欄と同様に編集不可とし、サイトの設定しだいで編集や削除ができるようにする方向もあるのではと思っています。ウィキペディア日本語版の場合は、変更する頻度が少ないであろうことから、編集も削除も不可としておいて、補遺を訂正したいときはこれまでのようにカラ編集で対応するという運用でいいのではないでしょうか。
  3. ウィキペディア日本語版に拡張機能として導入を目指すのであれば、テスト用ウィキを用意して、誰でも簡単に動作を試せるようにするといいのではないでしょうか。そうすれば、より多くの人から具体的な改善案を得ながら調整・改良することがしやすくなると思います。テスト用ウィキの設置にあたって、MediaWikiや関連機能のプロトタイピング向けに設定された仮想サーバーの利用にご興味がおありでしたら、 ウィキメディア関係の開発をする人向けの Wikimedia Labs へ登録申請をしてはどうでしょうか。新しい拡張機能のプロトタイピングが目的であれば、おそらく認められると思います。--whym会話2012年8月4日 (土) 12:09 (UTC)[返信]

先ほど、Gerritにバージョン0.1.0とバージョン0.1.1をコミットしました(Gerrit change #17688Gerrit change #17692)。利用者権限とブロック状態を確認したり、操作をログに記録したりするバージョンを近々Gerritにコミットします。すでにあるものの編集の制限については、権限を分けることで対応しようと思います。--Burthsceh会話2012年8月5日 (日) 15:43 (UTC)[返信]

バージョン0.2.0をコミットしました (Gerrit change #19226)。利用者権限などを確認するようにし、入力されたものが妥当か検査するようにしました。また、ログを書き込むようにしました。--Burthsceh会話2012年8月13日 (月) 16:25 (UTC)[返信]

拡張機能の導入については、拡張機能の問題をすべて修正してから、再度皆様のご意見を伺います。--Burthsceh会話2012年9月2日 (日) 14:48 (UTC)[返信]

問題の修正は済んだと思うので、導入の確認をします。Gerrit change #23989は数日後にマージします。案内を次のページにします。--Burthsceh会話2012年9月17日 (月) 05:24 (UTC)[返信]

仕様 編集

RevisionCommentSupplement拡張機能のGerrit change #23989 Patch Set 2(バージョン0.2.2)の仕様を説明します。

履歴ページのそれぞれの版ごとに、サイズの後に(要約がある場合はその後に、さらにページの第2版以降では取り消し(undo)のリンクの後に、これに加えてrollback権限があるときは巻き戻しのリンクの後に)、補足(supplementary comment)を表示します。補足は、要約と同様に255バイト以内(コードが変更されて仕様が変わりました。既に展開されています。RevisionCommentSupplementはこの変更に追随させました。)で、内部リンク(パイプ付きリンク、ウィキ間リンク(インターウィキリンク)(言語間リンクを含む。)を含む。)をa要素に変換して出力します。/* */については、リンクが付かないようにしています。

特別:版のコメントの補足(Special:RevisionCommentSupplement)で、補足を変更します。表示を押すと、版IDの欄に入力した版IDの補足などを表示します。プレビューを押すと、補足と要約のプレビューを表示します。適宜、警告を表示します。保存を押すと、適切であるときは補足をデータベースに書き込みます。適宜、警告・エラーを表示します。ログエントリを追加し、特別:ログに表示されるようにします。特別:最近の更新やIRCには、ログは出力されないようにしています(加筆。--Burthsceh会話2012年9月17日 (月) 09:37 (UTC)[返信]

権限の比較
操作 supplementcomment権限 supplementcomment-restricted権限
特別:版のコメントの補足で操作する 要求(edit権限も要求する) -
*のみを補足として保存する 拒否 拒否
版の要約と同じ空でない補足を作成する、版の要約と同じ空でない補足に変更する 拒否 拒否
revisionテーブルにない版の補足を保存する 拒否 許可
補足を変更する 最後の変更がそのアカウントで3600秒以内であれば許可 許可
補足を変更せずに保存する 拒否 拒否
空の補足に変更する 最後の変更がそのアカウントで3600秒以内であれば許可 許可
空の補足を作成する 拒否 許可
空でない補足を作成する 許可 許可

特別:版のコメントの補足で操作する場合に、supplementcomment-restricted権限を要求するときは、制限された保存操作と削除操作(未実装)です。--Burthsceh会話2012年9月17日 (月) 05:24 (UTC)[返信]

導入の確認 編集

RevisionCommentSupplement拡張機能のウィキペディアで使うのに必要不可欠な機能の追加・修正は済んだと思います。RevisionCommentSupplement拡張機能の補足を表示する機能が、履歴不継承の投稿の履歴の補遺の方法として、適当であり導入すべきかどうかご意見をお願いします。著作権などの文書については、Wikipedia:プロジェクト関連文書#著作権から参照してください。また、wmf:Terms of Use(wmf:Terms of Use/ja)、Wikipedia:免責事項も参照してください。--Burthsceh会話2012年9月17日 (月) 05:24 (UTC)[返信]

  賛成 ここまでのビルドアップ作業ご苦労さまです。履歴ページで要約を補填でき、その補填テキストを修正する際は特別ページ(特別:)から行うということですね。
履歴補填の決定打になる機能だと思いますので、早期導入を期待します。--ディー・エム会話2012年9月17日 (月) 07:14 (UTC)[返信]
はい、そうです。コメントありがとうございます。--Burthsceh会話2012年9月17日 (月) 09:37 (UTC)[返信]
  質問 方針的な部分は置いておくとして技術的な点で1つ質問というか確認です。Burthscehさんが開発された本拡張機能mw:Extension:RevisionCommentSupplementですが、gitに入ったのが8月5日で、9月17日まで2回のコミットのみです。そしてどちらもコードレビューがなされていません。お伺いしたいのは、コードレビューがいつどのようになされる予定があるか、もう少し幅を広げれば、ウィキメディアのシステム管理者を含めウィキペディア日本語版の技術基盤部分を運用・支援してくださっている方々とどのように協調していてどのようなコミュニケーションがとられているかを教えて下さい。他の(ウィキペディアへの展開を目標にした)拡張機能は過去も今も(そしてきっとこれからも)多く開発されてきましたが、どれもどこか(多くはmail:wikitech-l)でそれなりの技術的議論があって導入しても大丈夫だろうという確認をした上で、初めて試験的に導入されてきました。私自身もすべての場所でのすべての議論を追えているわけではないですが、今回の件は少なくともwikitech-lにはないようです。ご存知だとは思いますが、ウィキペディア(ウィキメディア)は超大規模なプロジェクトですので、キャッシュなど含めサーバー側の設定はかなりガリガリに最適化されていたはずです(最近サーバーや帯域が増えて変わったかも知れませんが)。その辺りとの整合性も含め、きちんとウィキメディアのシステム管理者たちと連絡をとっていただいて、それをウィキペディア日本語版の人たちがみて安心して導入に賛成できるようにしていただくのが最重要かと思います。話が進めばWikimedia Labsで試験して更に突っ込んだ話もできると思います。ウィキペディア日本語版への提案(導入の検討)はそれからの話ではないでしょうか。--青子守歌会話/履歴 2012年9月18日 (火) 01:45 (UTC)[返信]
回答が遅くなり、申し訳ありません。今回は、ウィキペディア日本語版で需要があるか確かめ、需要があるようであれば、mw:Writing an extension for deploymentで示されている各種のレビューを受けようと思っています。メーリングリストには、まだメールを出したことはありません。Design reviewが終わり、bugzillaでのReview for deploymentの前に、メーリングリストでgerritでのCode ReviewやReview for deploymentのレビューをお願いしようと思います。Review for deploymentが終わったら、投票による拡張機能のインストールについての最終確認をします。これまでの他の方とのコミュニケーションは、gerritでコメントを頂いたことだけです。キャッシュについては、よく知らないので、助言に従います。Labsのインスタンスのdeployment.wikimedia.beta.wmflabs.orgja.wikipedia.beta.wmflabs.orgにインストールしてもらおうか、勝手に独自のインスタンスを作ろうか、迷っています。これまでのgerritでの操作については、Search for project:mediawiki/extensions/RevisionCommentSupplementから参照をお願いします。この後は、23989(0.2.2)には修正漏れがあるようですので、パッチをコミットしてマージし、Design reviewを受ける準備として、mw:Extension:RevisionCommentSupplementに追記したり、スクリーンショットをコモンズにアップロードしたり、コードをmw:Manual:Coding conventionsに合うように修正したりします。賛成される方はもちろんですが、特にウィキペディア日本語版にインストールすることに反対される方はお早めにご意見をお願いします。--Burthsceh会話2012年9月21日 (金) 15:44 (UTC)[返信]

システムメッセージ・エイリアス 編集

RevisionCommentSupplement拡張機能のシステムメッセージ、Special:RevisionCommentSupplementのエイリアス(別名)についてご意見をお願いします。拡張機能のメッセージを直接変更するか、ウィキペディア日本語版独自のメッセージにするかどうかについてもご意見をお願いします。translatewiki:Special:Translate/ext-revisioncommentsupplementもご覧ください。

supplementary comment、SupplementComment(利用者グループ)に対応する表現、コロン・括弧の全角・半角、空白文字、translatewiki.net翻訳指針の適用についてご意見をお願いします。--Burthsceh会話2012年9月17日 (月) 05:24 (UTC)[返信]

利用者権限・利用者グループ 編集

0.2.2では、supplementcomment権限とsupplementcomment-restricted権限を使用しています。管理者(administrator, sysop)にsupplementcomment権限を、この拡張機能独自のコメント補足者(仮称。SupplementComment, supplement)に両方を付与しています。ウィキペディア日本語版で運用する際の、権限を割り当てるグループについてご意見をお願いします。また、コメント補足者グループを使用する場合は、グループの付与・除去をするグループについてご意見をお願いします。--Burthsceh会話) 2012年9月17日 (月) 05:24 (UTC)権限の誤記を訂正。--Burthsceh会話2012年9月17日 (月) 09:37 (UTC)[返信]

方針・ガイドライン・依頼ページ 編集

この拡張機能を導入するにあたり、方針・ガイドライン・依頼ページを整備する必要があります。新たに作成するときはページの名称、加筆するときは加筆先のページの案をお示しください。この拡張機能は、次のようなときに使うことを想定しています。

  • 履歴継承をしていない版を削除しないとき
  • 履歴継承が不十分である版を削除しないとき

特に、初版であったり、多くの版が積み重なっていたり、非ログイン利用者よるものであったりするときに有用であると思います。

依頼については、どこかで合意形成をしたか、その版の投稿者で基にしたものが確実であるときに受けるようにしようと思います。ご意見をよろしくお願いします。--Burthsceh会話2012年9月17日 (月) 05:24 (UTC)[返信]

その他 編集

ヘルプ・マニュアルについては、追々整備します。スクリーンショットのアップロードは、ライセンスにより躊躇しています。その他の機能追加・変更などのご意見がありましたら、こちらにお願いします。--Burthsceh会話2012年9月17日 (月) 05:24 (UTC)[返信]