feat(api): add Event<T, K>, Team<K>, Member<K> typed event description

Replaces the old nested Vec<Vec<Vec<_>>> event description on the
public API boundary. Member<K>::from(K) enables ergonomic literal
lists. Member::with_weight / with_prior are builder methods for the
optional per-event overrides.

Fully additive — no existing call sites updated. Consumed by
History::add_events(iter) in Task 15.

Part of T2 of docs/superpowers/specs/2026-04-23-trueskill-engine-redesign-design.md.
This commit is contained in:
2026-04-24 12:14:58 +02:00
parent 3df422db78
commit f5a486329e
2 changed files with 134 additions and 0 deletions

View File

@@ -12,6 +12,7 @@ pub use time_slice::TimeSlice;
mod competitor;
pub mod drift;
mod error;
mod event;
pub(crate) mod factor;
mod game;
pub mod gaussian;
@@ -26,6 +27,7 @@ pub mod storage;
pub use competitor::Competitor;
pub use drift::{ConstantDrift, Drift};
pub use error::InferenceError;
pub use event::{Event, Member, Team};
pub use game::Game;
pub use gaussian::Gaussian;
pub use history::History;