みてるぞ
|
6a57dc53bf
|
#34
|
2026-07-04 19:03:50 +09:00 |
|
みてるぞ
|
fdf652951a
|
【再掲】タグの局所記載 (#351) (#380)
#353 を再開できなかったので.
Reviewed-on: #380
Co-authored-by: miteruzo <miteruzo@naver.com>
Co-committed-by: miteruzo <miteruzo@naver.com>
|
2026-07-03 03:23:36 +09:00 |
|
みてるぞ
|
776dea87d9
|
素材管理 (#306) (#381)
開発環境では、**DB を壊さない前提で、migration → API → 画面 → 同期 → ZIP → 履歴**の順に見るのがよいです。今回の差分は素材管理全体に触っているので、単体でチョンチョン見るより、素材の一生を通すのが早いです。
## 0. 先に方針
**やらないこと:**
```sh id="snb3i6"
rails db:drop
rails db:reset
rails db:setup
DISABLE_DATABASE_ENVIRONMENT_CHECK=1 ...
```
これは禁止。
開発 DB に本番データを入れているなら、床板を剥がして耐震確認するようなものです。
---
## 1. migration 確認
まず現在の状態を見る。
```sh id="qsdfpt"
cd backend
RAILS_ENV=development bundle exec rails db:migrate:status
```
その後、通常 migration。
```sh id="a89fir"
RAILS_ENV=development bundle exec rails db:migrate
```
見るポイント:
```txt id="c1u57a"
materials に source_* / normalized_source_key / version_no がある
material_versions に event_type / file snapshot / source snapshot がある
material_export_items がある
material_sync_suppressions がある
material_sync_sources がある
既存 materials に material_versions version_no=1 create が backfill されている
```
確認用:
```sh id="g4vd4m"
RAILS_ENV=development bundle exec rails runner '
puts "materials=#{Material.count}"
puts "versions=#{MaterialVersion.count}"
puts "materials without versions=#{Material.left_joins(:material_versions).where(material_versions: { id: nil }).count}"
puts "sync suppressions table=#{ActiveRecord::Base.connection.table_exists?(:material_sync_suppressions)}"
'
```
ここで `materials without versions=0` になれば、backfill は通っています。
---
## 2. 既存素材一覧の画面確認
フロントを起動して `/materials` を見る。
```sh id="vl28jd"
cd frontend
npm run dev
```
見る観点:
```txt id="i2ovxw"
初期表示で素材が出る
初期表示ではグルーピングがオフ
タグなし素材も出る
カード表示でサムネまたは代替テキストが出る
一覧表示に切り替えられる
q / tag_state / media_kind / sort / direction が効く
```
ここでまず、普通の素材一覧が壊れていないことを確認します。
---
## 3. 左タグバーの確認
`/materials` を開いて左タグバーからタグを選ぶ。
見る観点:
```txt id="n6udul"
URL が tag_id=...&include_descendants=1&group_by=parent_tag になる
選択中タグが左バーで強調される
一覧上部に「選択中」の表示が出る
「タグ選択を解除」で通常表示に戻れる
解除後、tag_id / include_descendants / group_by / page が消える
子タグ・孫タグの素材も一覧に出る
親タググルーピングされる
```
特に重要なのはこれ。
```txt id="d33os0"
親タグ A を選択
A に直接紐づく素材
A > B に紐づく素材
A > B > C に紐づく素材
が同じ一覧に出ること
```
---
## 4. 選択タグから素材追加
左タグからタグを選択した状態で、一覧上部の **このタグに素材を追加** を押す。
見る観点:
```txt id="qdd5uw"
素材追加画面の tag 欄に選択中タグ名が初期入力されている
file または url を指定して保存できる
保存後 return_to で元のタグ選択済み一覧に戻る
戻った一覧に追加した素材が出る
material_versions に create が 1 件できる
```
Rails console でも確認できます。
```sh id="i07rrb"
RAILS_ENV=development bundle exec rails runner '
m = Material.order(id: :desc).first
puts({ id: m.id, tag: m.tag&.name, versions: m.material_versions.count, version_no: m.version_no }.inspect)
'
```
---
## 5. グループ見出しから素材追加
親タググルーピング表示中に、各グループ見出しの **このタグに素材を追加** を押す。
見る観点:
```txt id="fpx8w4"
グループタグ名が tag 欄に初期入力される
保存後、元の一覧に戻る
追加素材がそのグループ内に出る
```
ここは今回の導線の肝です。棚の見出しから直接その棚へ素材を置けるかを見る。
---
## 6. 素材更新と履歴
既存素材の詳細または編集導線から、タグ・URL・ファイル・export path を更新する。
見る観点:
```txt id="w36i61"
更新前 snapshot が無ければ create が補われる
更新後 update version ができる
file_blob_id / file_filename / file_sha256 が material_versions に入る
export_paths_json が履歴に残る
/materials/changes または /materials/versions で履歴が見える
```
console:
```sh id="a3okhv"
RAILS_ENV=development bundle exec rails runner '
m = Material.order(updated_at: :desc).first
puts m.material_versions.order(:version_no).map { |v|
[v.version_no, v.event_type, v.tag_name, v.file_filename, v.file_sha256, v.export_paths_hash]
}.inspect
'
```
---
## 7. サムネイル
画像素材を追加して、一覧にサムネイルが出るか確認。
動画素材があるなら、`ffmpeg` が入っている環境で backfill。
```sh id="qxm8fj"
cd backend
RAILS_ENV=development bundle exec rails materials:thumbnails:backfill
```
見る観点:
```txt id="s9a1vf"
画像は 180x180 のサムネが付く
動画はフレームからサムネが作られる
非対応ファイルは代替テキスト表示になる
ログに result が出る
```
---
## 8. ZIP export
export path がある素材を用意して、ブラウザで確認。
```txt id="aq7f7o"
/materials/download.zip?profile=legacy_drive
```
見る観点:
```txt id="h4rve5"
ZIP が落ちる
entry path が material_export_items.export_path になる
disabled な export item は入らない
ファイル実体が欠けている場合は 422 と missing_files が返る
```
---
## 9. 抑止
`/materials/suppressions` で path prefix 抑止を追加する。
見る観点:
```txt id="w80jbu"
member で作成できる
guest は forbidden / unauthorized
google_drive_path_prefix で既存素材が discard される
discard 履歴が material_versions に残る
同期時に同じ source_path 配下が再作成されない
```
---
## 10. Google Drive 同期
開発環境では、まず小さいフォルダでやるのがよいです。
いきなり本番素材集フォルダを食わせると、ログが藪になります 🌿
必要な ENV:
```sh id="kzbb7f"
GOOGLE_DRIVE_SERVICE_ACCOUNT_EMAIL=...
GOOGLE_DRIVE_PRIVATE_KEY_PATH=...
MATERIAL_SYNC_SOURCE_KIND=google_drive_path
MATERIAL_SYNC_SOURCE_FILE_ID=<folder_id>
MATERIAL_SYNC_SOURCE_NAME=dev-small-folder
MATERIAL_SYNC_SOURCE_PROFILE=legacy_drive
```
seed で source 作成、または console で作成。
```sh id="sec40c"
RAILS_ENV=development bundle exec rails db:seed
RAILS_ENV=development bundle exec rails materials:sync
```
見る観点:
```txt id="a5ltqu"
imported / updated / unchanged / suppressed / failed がログに出る
2 回目実行で unchanged が増える
tag は nil のままでも保存できる
人手で tag / url を付けた既存同期素材が、再同期で消えない
Google native file は skip される
download 後 sha256 block が効く
```
---
## 11. schema.rb は別途確認
これはテストというより merge gate です。
今回まだ怪しいので、差分に以下が混ざっていないことを確認します。
```txt id="s3k6da"
wiki_assets 削除
wiki_pages.next_asset_no 削除
素材管理と無関係な CHECK constraint 削除
素材管理と無関係な index order 消失
```
ここが残るなら、機能テストが通っても merge は止めた方がいいです。
---
## 最小テスト順
時間がないなら、この順で十分です。
```txt id="c1k2pw"
1. db:migrate
2. materials without versions = 0 を確認
3. /materials 初期表示
4. 左タグ選択 → 子孫込み表示 → グルーピング
5. タグ選択解除
6. 選択タグから素材追加 → return_to で戻る
7. グループ見出しから素材追加
8. 更新して material_versions を確認
9. ZIP export
10. 小さい Drive folder で materials:sync を 2 回
```
これで、今回の差分の主要な導線はほぼ踏めます。
Reviewed-on: #381
Co-authored-by: miteruzo <miteruzo@naver.com>
Co-committed-by: miteruzo <miteruzo@naver.com>
|
2026-06-28 06:35:53 +09:00 |
|
みてるぞ
|
ec2b3d2254
|
タグ “廃止” 追加 (#378) (#379)
Reviewed-on: #379
Co-authored-by: miteruzo <miteruzo@naver.com>
Co-committed-by: miteruzo <miteruzo@naver.com>
|
2026-06-22 08:40:06 +09:00 |
|
みてるぞ
|
def6870f06
|
グカネータ / 質問パターン見直し (#41) (#365)
Reviewed-on: #365
Co-authored-by: miteruzo <miteruzo@naver.com>
Co-committed-by: miteruzo <miteruzo@naver.com>
|
2026-06-12 01:35:31 +09:00 |
|
みてるぞ
|
37ade2a988
|
グカネータ作成 (#041) (#362)
Reviewed-on: #362
Co-authored-by: miteruzo <miteruzo@naver.com>
Co-committed-by: miteruzo <miteruzo@naver.com>
|
2026-06-10 23:33:56 +09:00 |
|
みてるぞ
|
3980e9651e
|
上映会改修 (#302) (#357)
Reviewed-on: #357
Co-authored-by: miteruzo <miteruzo@naver.com>
Co-committed-by: miteruzo <miteruzo@naver.com>
|
2026-06-07 02:51:25 +09:00 |
|
みてるぞ
|
e03cc01109
|
投稿排他 (#171) (#345)
#171
#171
#171
#171
#171
#171
#171
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #345
|
2026-05-10 11:16:49 +09:00 |
|
みてるぞ
|
b47cdc7ad7
|
BAN の実装 (#327) (#342)
#327
#327
#327
#327
Merge remote-tracking branch 'origin/main' into feature/327
#327
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #342
|
2026-05-04 16:22:13 +09:00 |
|
みてるぞ
|
dceed1caa1
|
親投稿機能 (#46) (#339)
Merge remote-tracking branch 'origin/main' into feature/046
#46
#46
#46
#46
#46
#46
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #339
|
2026-05-03 03:21:35 +09:00 |
|
みてるぞ
|
0ff7fdf78a
|
Wiki のバージョン管理 (#317) (#333)
#317
#317
#317
#317
#317
#317
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #333
|
2026-04-26 22:17:25 +09:00 |
|
みてるぞ
|
bde7d33949
|
タグ履歴 (#309) (#319)
#309
#309
#309
#309
#309
Merge remote-tracking branch 'origin/main' into feature/309
#309
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #319
|
2026-04-19 20:21:51 +09:00 |
|
みてるぞ
|
c36b2c8a1b
|
投稿に対する履歴(#264) (#307)
Merge branch 'main' into feature/264
#264
#264
#264
#264
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #307
|
2026-04-11 17:05:57 +09:00 |
|
みてるぞ
|
7b15cb2c5a
|
素材管理(#99) (#303)
#99
#99
#99
#99
#99
#99
#99
#99
#99
#99
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #303
|
2026-04-07 07:44:50 +09:00 |
|
みてるぞ
|
8cf7107445
|
上映会のし組み作り(#295) (#296)
#295
#295
#295
#295
#295
#295
#295
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #296
|
2026-03-18 23:01:04 +09:00 |
|
みてるぞ
|
d772cceb5e
|
TagName サニタイズ(#281) (#289)
#281
#281
Merge remote-tracking branch 'origin/main' into feature/281
#281
#281 テストまだ通ってないので要確認
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #289
|
2026-03-12 21:58:16 +09:00 |
|
みてるぞ
|
176519b929
|
tags の論理削除対応(#287) (#288)
#287
#287
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #288
|
2026-03-11 22:55:57 +09:00 |
|
みてるぞ
|
e0e7a22c38
|
ニジラー管理(#247) (#275)
#247
#247
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #275
|
2026-03-05 20:35:11 +09:00 |
|
みてるぞ
|
9b7fc9059d
|
バグ対応(#253) (#255)
#253
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #255
|
2026-02-08 13:48:41 +09:00 |
|
みてるぞ
|
19c622c5bf
|
feat: user_post_views から id を削除(#230) (#239)
#230
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #239
|
2026-01-27 01:04:16 +09:00 |
|
みてるぞ
|
9d68367a5a
|
feat: user_ips の id を削除(#231) (#238)
#231
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #238
|
2026-01-27 00:43:52 +09:00 |
|
みてるぞ
|
7acdc16c75
|
feat: ip_addersses.ip_address をユニークに(#229) (#237)
#229
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #237
|
2026-01-26 23:59:14 +09:00 |
|
みてるぞ
|
f6de272f55
|
feat: 類似度算出バッチ修正,ほか(#228) (#232)
#228
#228
#228
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #232
|
2026-01-22 23:30:08 +09:00 |
|
みてるぞ
|
86209dcc84
|
feat: URL 正規化(#208) (#226)
#208
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #226
|
2026-01-20 12:39:33 +09:00 |
|
みてるぞ
|
fa2030f9a5
|
feat: タグ名を別管理に変更(#215) (#219)
Merge branch 'main' into feature/215
#215 ニコニコ同期テスト
#215 テスト・ケース追加
#215 テスト・ケース追加
#215 テスト・ケース追加
#215 テスト・ケース追加
Merge remote-tracking branch 'origin/main' into feature/215
Merge branch 'main' into feature/215
#215
#215
Merge remote-tracking branch 'origin/main' into feature/215
#215
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #219
|
2026-01-15 12:40:41 +09:00 |
|
みてるぞ
|
f2b774ab1d
|
feat: posts.title を Nullable に(#209) (#212)
Merge branch 'feature/209' of https://git.miteruzo.com/miteruzo/btrc-hub into feature/209
Merge branch 'main' into feature/209
Merge remote-tracking branch 'origin/main' into feature/209
#209
#209
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #212
|
2026-01-12 14:38:06 +09:00 |
|
みてるぞ
|
3f2c0a52b9
|
feat: posts.thumbnail_base を Nullable に(#75) (#198)
Merge remote-tracking branch 'origin/main' into feature/075
#75
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #198
|
2026-01-06 12:43:22 +09:00 |
|
みてるぞ
|
611455ec55
|
feat: Wiki の管理方法変更(#188) (#195)
Merge branch 'feature/188' of https://git.miteruzo.com/miteruzo/btrc-hub into feature/188
#188
Merge branch 'main' into feature/188
#188
#188
#188
#188
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #195
|
2026-01-04 18:52:17 +09:00 |
|
みてるぞ
|
9a656a9e6e
|
feat: 投稿とタグのリレーション・テーブルについて論理削除と履歴を追加(#84) (#148)
#84 マイグレ修正
Merge remote-tracking branch 'origin/main' into feature/084
#84 構文エラー修正
#84
#84
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #148
|
2025-12-13 16:34:45 +09:00 |
|
みてるぞ
|
3b32d4d8ac
|
feat: 上位タグのバグ修正(#174) (#175)
#174 エラー回避と誤記修正
#174 完了
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #175
|
2025-12-10 20:18:48 +09:00 |
|
みてるぞ
|
d50a302d26
|
feat: 上位タグ(#64) (#173)
#64 おそらく完成
Merge remote-tracking branch 'origin/main' into feature/064
#64 バックエンドぼちぼち
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #173
|
2025-12-09 12:34:26 +09:00 |
|
みてるぞ
|
8a126e2e92
|
feat: ユーザに IP アドレスを紐づけ(#29) (#165)
#29 対応完了
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #165
|
2025-11-26 23:48:45 +09:00 |
|
みてるぞ
|
6bca0215d8
|
feat: オリジナルの作成日時追加( #101 ) (#117)
#101 オリジナルの作成日時(より前)の自動設定
#101 余白追加
#101 余白追加
#101 オリジナルの作成日時,フォームにフィールド追加
#101 マイグレとコントローラ
Co-authored-by: miteruzo <miteruzo@naver.com>
Reviewed-on: #117
|
2025-09-22 05:05:30 +09:00 |
|
みてるぞ
|
0f902f0d27
|
#59
|
2025-07-30 00:20:03 +09:00 |
|
みてるぞ
|
9c1efbf047
|
#12
|
2025-07-07 08:28:51 +09:00 |
|
みてるぞ
|
e20f7fcc17
|
#70 #72
|
2025-06-30 23:31:39 +09:00 |
|
みてるぞ
|
0afba7f345
|
#14 ぼちぼち
|
2025-06-03 01:56:49 +09:00 |
|
みてるぞ
|
f93cea4e51
|
#22 完了
|
2025-05-30 01:21:30 +09:00 |
|
みてるぞ
|
59678cf8b9
|
#7
|
2025-05-21 01:16:40 +09:00 |
|
みてるぞ
|
137c86bba7
|
#2 ぼちぼち
|
2025-02-27 23:38:45 +09:00 |
|
みてるぞ
|
c6deba7c26
|
#1 順番修正
|
2025-02-27 22:09:51 +09:00 |
|
みてるぞ
|
c6854b7a54
|
#1
|
2025-02-27 21:45:54 +09:00 |
|
みてるぞ
|
5d64041c70
|
はじまりの大地
|
2025-02-25 22:43:13 +09:00 |
|