@nathank のレポートは、バグが発生した際に偶然行っていた特定のニッチな作業に焦点を当てていました。しかし、このバグは Data Explorer に固有のものではありません。レポートの焦点が過度に狭く、不適切な data-explorer タグ(適切なタグは composer であるべきです)が使用されているため、Discourse チームが解釈するのが困難になったり、適切な注意が払われなかったりするのではないかと懸念しています。
以下の条件下で、普遍的に障害が発生します。
- URL にパーセントエンコーディングされたコンテンツが含まれている
- 「リンクを挿入」ダイアログを介してリンクが投稿に追加される
これらの条件下では、URL は常に破損します。
再現手順:
- 以下の URL をウェブブラウザで開きます。
https://en.wikipedia.org/wiki/Horncastle_boar%27s_head
(URL には'文字のパーセントエンコーディング%27が含まれていることに注意してください)
期待されるページが開きます。 - ポストコンポーザーの「リンク」アイコンをクリックします。
「リンクを挿入」ダイアログが開きます。 - ダイアログの「リンクまたはトピック」フィールドに上記の URL を入力します。
- 「挿入」ボタンをクリックします。
上記の手順で追加されたリンクのターゲットは正しくありません。
https://en.wikipedia.org/wiki/Horncastle_boar%2527s_head
正しい URL の代わりに:
https://en.wikipedia.org/wiki/Horncastle_boar%27s_head
リンクは意図したページにつながりません。
これは、パーセントエンコーディング %27 の % 文字が冗長にエンコードされ、% がそれ自体のパーセントエンコーディング %25 に置き換えられたため、正しい URL コンテンツ %27 が %2527 に破損したためです。
プラットフォーム:
オペレーティングシステム
- Windows 11
ブラウザ
- Google Chrome 139.0.7258.128
Discourse
12c80d43adeb87cc18604ace0430a75d277d7662
追加コンテキスト:
「セーフモード」の「try.discourse.org」で、この障害を再現できます。
どちらのコンポーザーモードでも障害が発生します。