Extension:AssertEdit/ja

The AssertEdit extension adds edit assertions, to help bots ensure they stay logged in and are working with the right wiki.

Rationale
私がボットを取り扱い始めたとき、たくさんの悪い編集を行うシンプルなオペレーションエラーが発生する潜在的な可能性に気がつきました; 例えば オプションを入力することを忘れたため、テストのwikiで実行させるはずが、間違ってwikipediaで実行させてしまうことがあります. またボットがログアウトして、ボットフラグ無しで、ブロックされるまで、匿名で編集を続ける可能性もありえます.

サーバーサイドのサポート無しでは、ボットがログインしているか判定することは簡単ではありません. 不幸なことに、これまでそのようなサポートは利用できませんでした.

使用法
To use the extension, supply an additional parameter -- either assert or nassert -- when editing a page, whether through the UI (index.php) or API (api.php).

The value of the assert (or nassert) parameter should be the desired assertion. If it succeeds, the extension does nothing, and the edit proceeds as normal; if it fails, an error message is returned. assert ensures that assertion is positive, while nassert ensures it is negative. Unrecognized assertions will always fail, whether assert or nassert is used. Installations may add their own assertions; this can be used to ensure processes intended only for that site do not affect other sites. If both a positive and negative assertion are specified, then both must succeed.

例
Having a 'bot' submit edits to the following URL (plus additional required parameters)


 * ... /api.php?action=edit&assert=bot&nassert=exists

will cause it to fail if the account becomes logged out or loses its bot status, or when trying to edit a page that already exists.

Configuration
新しいアサーションは ,で追加できます. keyはアサーションの名前で、valueはその値です; trueはアサーションが成功、falseは失敗することを意味します.

valueは論理値(true または false)のどちらか、もしくは関数(PHP is_callable関数で定義されたもの)で、論理値を返すものです.

valueが間違った型である、もしくはkeyがオーバーライドできないアサーションに対応する場合AssertEdit::setAssertは失敗します.