テイクダウン全体像
subseek では「検索インデックスから字幕を削除する」理由として複数の経路があり、それぞれ法的性格 ・受付窓口・対応期限・事後対応が異なる。admin はまず本ページで自分が対応すべきケースがどれかを判断し、該当する手順書に進むこと。
技術的には全ケース共通で /admin/dmca の動画/チャンネルテイクダウン機能を使い、Meilisearch から該当字幕を削除して DB ステータスを deleted に遷移させる。違いは受付以前の「判断と記録」にある。
1. テイクダウン種別の比較
| 観点 | DMCA | YouTube 側削除の通報 | オプトアウト申請 |
|---|---|---|---|
| 発生理由 | 著作権者が侵害を主張 | YouTube 側で動画/チャンネルが既に削除された | チャンネルオーナーが subseek からの除外を希望 |
| 通報者 | 著作権者またはその代理人 | 誰でも(一般ユーザー・運営の検知) | チャンネルオーナー本人 |
| 法的性格 | 17 U.S.C. § 512(c)(3) の法定削除義務 | なし(UX メンテ) | なし(ポリシー対応) |
| 受付窓口 | dmca@subseek.app 専用メール(6 要素必須) | Contact フォーム deletion_request カテゴリ | Contact フォーム opt_out カテゴリ |
| 対応期限 | 迅速(expeditiously) | 任意 | 任意 |
| 必要情報 | 著作物特定・署名・宣誓など 6 要素 | URL のみ | チャンネル所有確認 |
| 事後対応 | 申告者への通知・カウンター通知受付 | なし | 申請者への通知 |
| DB ステータス | deleted | deleted | opted_out |
| 関連手順書 | DMCA テイクダウン | YouTube 側削除の追従 | TBD |
2. 判断フロー
3. なぜ分離するのか
法的監査のため
DMCA はセーフハーバー条項維持のため「いつ・何を・なぜ削除したか」の記録が必須。YouTube 側削除の追従は法的義務がないため記録要件が異なる。両者を同じカウンターに混ぜると監査時に分離できなくなる。
事故防止のため
DMCA には申告者への削除完了通知・カウンター通知受付の業務があるが、YouTube 側削除の通報にはそれがない。もし同じ手順で処理してしまうと、誤って一般ユーザーに DMCA 用のテンプレートを返信してしまう事故が起きる。
受付窓口の性格が違うため
DMCA 通知は法的フォーマット(6 要素)を満たす必要があるため専用メール窓口とした。YouTube 側削除の通報は URL だけで足りるため Contact フォームで十分。窓口を混ぜると「Contact フォームに DMCA 通知が来る → 6 要素足りず無効」の処理コストが発生する。
4. 技術的な共通点
全ケースで最終的に呼ばれる関数:
apps/api/src/features/dmca/model/dmca-takedown/dmca-takedown.tsのtakedownVideo/takedownChannel-
- Meilisearch から該当 videoId / channelId の字幕ドキュメントを削除
-
- DB の
subtitle_statusをdeletedに遷移(オプトアウトの場合のみopted_out)
- DB の
-
admin UI は /admin/dmca が本手順書範囲すべてをカバーする(ページ名は DMCA 由来の歴史的経緯)。将来的に「削除管理」等に汎用化する余地がある。