動画を確認画面つきで複数削除できるようにする(ステップ13) #17

Merged
kazu634 merged 1 commits from bulk-delete into main 2026-10-17 00:28:32 +09:00
Owner

概要

ライブラリの動画を、確認画面つきで複数まとめて削除できるようにする(ステップ13)。

変更内容

  • POST /library/delete/confirm: 選択(id・series_id)を完了済みジョブに展開し、番組別の一覧・合計サイズ・注意をサーバー描画の確認画面に表示する。この段階では何も削除しない
  • POST /library/delete: 確認画面に埋め込んだジョブ ID だけを削除する。series_id は受け付けないため、確認後に完了した回は消えない。1件ずつ独立に処理し、削除・失敗・対象外の件数を結果画面に表示する
  • 入口: /library で番組を選択、番組ページで回を選択または「この番組をすべて削除」、再生ページで1件削除。すべて確認画面を経由する
  • 再生ページの効いていなかった hx-confirm(フォームが htmx 経由で送信されない)と、旧 POST /library/{id}/delete を廃止
  • 上限: 入力数と展開後のジョブ数がそれぞれ 1000 を超えたら 400
  • 削除処理を共通化し、ファイル → 空の番組フォルダ → 記録の順序と os.Root によるパス境界の検査を維持
  • store に ListSucceededJobsByIDs・ListSucceededJobsBySeriesIDs を追加
  • PROJECT.md を更新

確認

  • go test -count=1 ./...: 8パッケージ成功・0失敗(Developer・QA・Leader がそれぞれ実行)
  • go vet ./...: 指摘0、git diff --check: 出力なし
  • 実ブラウザと NAS 実機での削除は未確認。マージ後に本番で確認する

🤖 Generated with Claude Code

https://claude.ai/code/session_01BcuBr9DyfcqZY8xFQsY5Di

## 概要 ライブラリの動画を、確認画面つきで複数まとめて削除できるようにする(ステップ13)。 ## 変更内容 - `POST /library/delete/confirm`: 選択(`id`・`series_id`)を完了済みジョブに展開し、番組別の一覧・合計サイズ・注意をサーバー描画の確認画面に表示する。この段階では何も削除しない - `POST /library/delete`: 確認画面に埋め込んだジョブ ID だけを削除する。`series_id` は受け付けないため、確認後に完了した回は消えない。1件ずつ独立に処理し、削除・失敗・対象外の件数を結果画面に表示する - 入口: `/library` で番組を選択、番組ページで回を選択または「この番組をすべて削除」、再生ページで1件削除。すべて確認画面を経由する - 再生ページの効いていなかった `hx-confirm`(フォームが htmx 経由で送信されない)と、旧 `POST /library/{id}/delete` を廃止 - 上限: 入力数と展開後のジョブ数がそれぞれ 1000 を超えたら 400 - 削除処理を共通化し、ファイル → 空の番組フォルダ → 記録の順序と `os.Root` によるパス境界の検査を維持 - store に `ListSucceededJobsByIDs`・`ListSucceededJobsBySeriesIDs` を追加 - PROJECT.md を更新 ## 確認 - `go test -count=1 ./...`: 8パッケージ成功・0失敗(Developer・QA・Leader がそれぞれ実行) - `go vet ./...`: 指摘0、`git diff --check`: 出力なし - 実ブラウザと NAS 実機での削除は未確認。マージ後に本番で確認する 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01BcuBr9DyfcqZY8xFQsY5Di
kazu634 added 1 commit 2026-10-17 00:28:06 +09:00
kazu634 merged commit 80bd0eedbb into main 2026-10-17 00:28:32 +09:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: kazu634/tver#17