-- proj-v1 — ABSOLUTE MATCHUP PROJECTION CHALLENGER (MLB batting).
-- A THIRD challenger (after arch-v1 p_win_challenger, contact-v1 p_win_contact),
-- in its OWN columns so the full rung set + per-factor breakdown + our-P-vs-book
-- comparison stay independently measurable, per rung, per stat, after settle.
--
-- The champion projects P(stat > line); proj-v1 projects what the hitter will DO
-- as a full distribution (negative-binomial), park-RELATIVE to the player's own
-- exposure, matchup-aware (coarse repertoire-vs-profile). It never abstains —
-- thin sample → wide distribution. Additive + forward-only: pre-nomination rows
-- carry null proj_version. Champion and settled/locked grades untouched.
alter table ledger_entries
  add column if not exists proj_version       text    null,
  add column if not exists proj_point         numeric null,
  add column if not exists proj_line          numeric null,
  add column if not exists proj_p_over_line   numeric null,
  add column if not exists proj_book_implied  numeric null,
  add column if not exists proj_distribution  jsonb   null,
  add column if not exists proj_ladder        jsonb   null,
  add column if not exists proj_factors       jsonb   null;
