おっと、良いニュースです。アップロード記録の検索方法を調べている際に、base62 文字列を SHA1 ハッシュに変換する方法を示すこの投稿を見つけました。
そこには、単に transparent.png が表示されている画像が「tombstoned(墓碑化)」されたという記述がありました。その意味は完全にはわかりませんが、画像が破損している間に夜間プロセスが実行され、それらが未使用としてマークされたのだと思います。私は以下のコマンドを実行できました。
rake uploads:recover_from_tombstone
その結果、埋め込まれていた画像がすべて復元され、現在は私の S3 CDN を指しているようです。
参考までに、yTDVQSa4wbIeLGEZvE7muXe8sAJ という文字列からアップロード記録を特定した手順も共有します。
[14] pry(main)> Base62.decode("yTDVQSa4wbIeLGEZvE7muXe8sAJ").to_s(16)
=> "f49428d6af35d7e0414408ccb65e7316f5003215"
[15] pry(main)> Upload.where( "original_filename ilike '%f49428d6af35d7e0414408ccb65e7316f5003215%'" )
=> [#<Upload:0x000056313aa91fe8
id: 899,
user_id: 549,
original_filename: "f49428d6af35d7e0414408ccb65e7316f5003215.png",
filesize: 25514,
width: 1169,
height: 984,
url: "//ortus-discourse-uploads.s3.dualstack.us-west-2.amazonaws.com/original/1X/f49428d6af35d7e0414408ccb65e7316f5003215.png",
created_at: Tue, 12 Jan 2021 23:01:35 UTC +00:00,
updated_at: Tue, 12 Jan 2021 23:01:36 UTC +00:00,
sha1: "f49428d6af35d7e0414408ccb65e7316f5003215",
origin: nil,
retain_hours: nil,
extension: "png",
thumbnail_width: 594,
thumbnail_height: 500,
etag: "6977f35ddbf39a4399dc76f92a5079d4",
secure: false,
access_control_post_id: nil,
original_sha1: nil,
animated: nil,
verification_status: 1>]
@Falco さん、再びご協力いただきありがとうございます。Discourse は初心者ですが、とても忍耐強く親切に対応していただいております ![]()