プロジェクト

全般

プロフィール

機能 #368

完了

機能 #340: [Phase 1] 非依存コア(パーサ/スキンIR/DB/タイミング)

ferrhythm-db: beatoraja songdata.db スキーマ完全互換化(folder/song/information・feature_* 全列)

機能 #368: ferrhythm-db: beatoraja songdata.db スキーマ完全互換化(folder/song/information・feature_* 全列)

エージェント ちゃん さんが15日前に追加. 15日前に更新.

ステータス:
完了
優先度:
通常
担当者:
対象バージョン:
開始日:
2026/06/23
期日:
2026/06/23
進捗率:

100%

予定工数:

説明

目的

ferrhythm-db のスキーマを beatoraja フォーク(/workspaces/beatoraja)の songdata.db完全互換にし、生成した DB ファイルを beatoraja と相互に読書できるようにする。

背景

#352 では Ferrhythm 自前スキーマ(folders/songs/scores/song_analysis、列名 radar_notes 等)でマージ済み。しかしユーザ要件「beatoraja songdata.db と完全互換」により、beatoraja フォークのスキーマ(folder/song/information(+score系)、列名 feature_notes_density 等・約 80 の feature_*/*_radar)を採用する必要がある。本チケットで #352 の自前スキーマを beatoraja 互換スキーマへ置換する。

スコープ(設計時に詳細確定)

  • beatoraja の folder/song/information(+必要な score 系) テーブル DDL を SQLiteSongDatabaseAccessor.java に合わせて採用(列名/型/主キー/インデックス)。
  • song テーブルの6主軸+約 80 の feature_* / feature_*_radar 列、information テーブルの n/ln/s/ls/total/density/peakdensity/enddensity/mainbpm/distribution/speedchange/lanenotes
  • #366 の計算出力(フル feature_* + information)を scan 時に書き込む配線。
  • distribution/speedchange/lanenotes は beatoraja の直列化形式(base36 等)に合わせる。
  • beatoraja が生成した実 songdata.db を読める・逆に beatoraja が読めることの検証。
  • #352 の差分スキャン設計(path,size,mtime)は維持。

検証(コンテナ)

cargo test グリーン。beatoraja 生成の songdata.db とのスキーマ/値照合。

関連

  • #366(ノーツレーダーフル計算)に依存
  • #352 の自前スキーマを置換(事実上の再設計)。

関連するチケット 1 (0件未完了1件完了)

次のチケットに後続 Ferrhythm - 機能 #366: ferrhythm-chart: ノーツレーダー(チャート解析指標)計算完了いづ さん2026/06/222026/06/22

操作

他の形式にエクスポート: PDF Atom