プロジェクト

全般

プロフィール

リファクタ #454

完了

skin property: id→property の二重経路(switch vs enum)を単一化する(Phase 1)

リファクタ #454: skin property: id→property の二重経路(switch vs enum)を単一化する(Phase 1)

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

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

100%

予定工数:

説明

#176 の整理方針に基づく Phase 1。Phase 0(先行テスト整備)完了後に着手する。

背景

id → property のマッピングが 2 形態 で重複していることが肥大化・不整合の主因:

  • enum 登録テーブル(ValueType / BooleanType など (id, name, lambda)
  • 手書き switch フォールバック(IntegerPropertyFactory#getIntegerProperty0 / BooleanPropertyFactory#getBooleanProperty0

新規エントリはどちらにも追加できるため、二重経路が肥大化を助長している。

対応内容

  • getIntegerProperty0 / getBooleanProperty0 の switch case を enum 登録(または単一の宣言テーブル)へ 小バッチで 移行し、id→property の真实の出所を 1 つにする。
  • name を持たない(LR2 数値専用の)エントリの扱いを明確化する(name 空文字許容 or 別テーブル)。

確認観点

  • 1 バッチごとに #(Phase 0 チケット) で追加した registry テスト・ゴールデンテストを green に保つ。
  • id 値・name 文字列は JSON / LR2 / Lua の公開契約なので一切変えない(typo 名も保持)。
  • 意図的な重複 id / エイリアスを壊さない。

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

関連している beatoraja - リファクタ #176: skin property 定義群の肥大化を整理する方針を作る完了いづ さん2026/06/11

操作
次のチケットに後続 beatoraja - リファクタ #455: skin property: 分割前の先行互換テストを整備する(Phase 0)完了いづ さん2026/06/28

操作
次のチケットに先行 beatoraja - リファクタ #456: skin property: Factory の id/name 解決を汎用 PropertyRegistry に共通化する(Phase 2)完了いづ さん2026/06/302026/06/30

操作

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