開発ログ

新しい予想システムの最小Canonical Database範囲を選定する

30秒でわかる概要

今回なにをした?

新しいPrediction Lifecycleで使うDatabaseについて、9項目を「Canonicalとして保存するもの」「再計算できるもの」「条件付きで扱うもの」「除外するもの」「必要なメタデータ」に分類しました。

何をCanonical保存する?

今回 CANONICAL_PERSIST としたのは3件です。

  • race_identity
  • runner_identity
  • pre15_odds

レース・出走馬の識別と、判断時点のPRE15オッズを正本として残す構成です。

何が変わった?

新DBへ既存データを一括で持ち込むのではなく、予測・判断・結果検証を後から追えるために必要な正本範囲を先に固定しました。

現在の状態

9件すべてを判定し、未解決は0件です。

内訳は、CANONICAL_PERSIST 3件、DERIVED_RECOMPUTABLE 2件、CANONICAL_PERSIST_POST_EVENT 1件、CONDITIONAL_PROMOTION 1件、EXCLUDE_UNTIL_EXPLICITLY_AUTHORIZED 1件、REQUIRED_METADATA 1件です。

なぜ最小範囲を決めるのか

Prediction Lifecycleでは、正本データと再計算可能な派生値を同じ扱いにすると、どの情報を保存すべきかが曖昧になります。

そこで今回は、Databaseへ恒常的に残す対象と、それ以外を分離しました。

Canonical保存する3項目

race_identity

レース単位のLifecycle linkageと再現性に必要な識別情報として、CANONICAL_PERSIST と判定しました。

runner_identity

馬単位で予測と結果を結びつける識別情報として、CANONICAL_PERSIST と判定しました。

pre15_odds

判断時点の市場スナップショットを保持する対象として、CANONICAL_PERSIST と判定しました。

その他の項目の扱い

残りは一律保存にはしていません。

  • 再計算可能:2件
  • イベント後Canonical保存:1件
  • 条件付き昇格:1件
  • 明示的に許可されるまで除外:1件
  • 必須メタデータ:1件

これにより、Canonicalへ恒常保存するものと、それ以外の役割を分離しました。

Evidence

  • 判定対象:9件
  • 判定完了:9件
  • 未解決:0件
  • CANONICAL_PERSIST:3件
  • DERIVED_RECOMPUTABLE:2件
  • CANONICAL_PERSIST_POST_EVENT:1件
  • CONDITIONAL_PROMOTION:1件
  • EXCLUDE_UNTIL_EXPLICITLY_AUTHORIZED:1件
  • REQUIRED_METADATA:1件

Task Substance Evidenceのステータス、カバレッジ、未解決件数、Evidence参照はいずれもPASSです。

安全境界

この工程ではDatabaseへの書き込みやProduction Mutationは行っていません。

また、このEvidenceに存在しない性能・収益・精度の向上は主張しません。

次工程

次は、このDatabase境界を使って新しいPrediction Lifecycleの正本Architectureを確定します。

関連リンク

競馬AI計画 全体ロードマップ: https://keiba-ai-plan.pages.dev/roadmap/

Internal Management

Task ID: RF_DEV_113_MINIMAL_CANONICAL_DATABASE_SCOPE_SELECTION_V1

全体ロードマップを見る →

← 開発ログへ戻る

掲載内容は、その時点の開発・検証記録です。将来の利益や的中を保証するものではありません。