betting_combat.domain.config
Typed rows of the three configuration tables (configs.betting_combat.*).
Every row is validated on read: a malformed value fails closed with a named
error instead of trading on a bad number. The SQL CHECK constraints in
sql/betting_combat_configs.sql and these validators state the same limits.
Classes
DataJobConfig
Bases: _Row
Mode
Bases: StrEnum
PortfolioConfig
Bases: _Row
RoundsConfig
Bases: _Row
Strategy 4’s row of strategies (strategy = 'rounds'): the columns it reads.
A database without the rounds row leaves strategy 4 off (ConfigStore.rounds
returns None).
RoundsPromotion
Bases: _Row
When the weekly refit may promote its own candidate (the rounds row of
strategies): only with auto_promote, every refit guard passed, layer 2’s
out-of-sample log loss no worse than the market’s and the meta AUC at least
promote_min_meta_auc; otherwise the candidate stays unpromoted, with a finding. Seeded
on (the refit job itself is seeded disabled).