From 52482eea5f11a641ac9c59a30449e3613f54523f Mon Sep 17 00:00:00 2001 From: Anders Olsson Date: Fri, 8 May 2026 21:28:08 +0200 Subject: [PATCH] feat(event_builder): expose scores_with_sigma fluent method Adds EventBuilder::scores_with_sigma, the fluent-builder ergonomic mirror of Outcome::scores_with_sigma. Lets users write h.event(t).team(...).team(...).scores_with_sigma([..], sigma).commit() to set a per-event score_sigma override. --- src/event_builder.rs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/event_builder.rs b/src/event_builder.rs index 9fab6fc..15c077a 100644 --- a/src/event_builder.rs +++ b/src/event_builder.rs @@ -81,6 +81,15 @@ where self } + /// Set explicit per-team continuous scores with a per-event noise override. + /// + /// `sigma` overrides `HistoryBuilder::score_sigma` for this event only. + /// Must be `> 0.0`; debug-asserts otherwise via `Outcome::scores_with_sigma`. + pub fn scores_with_sigma>(mut self, scores: I, sigma: f64) -> Self { + self.event.outcome = crate::Outcome::scores_with_sigma(scores, sigma); + self + } + /// Mark team `winner_idx` as winner; others tied for last. pub fn winner(mut self, winner_idx: u32) -> Self { self.event.outcome = Outcome::winner(winner_idx, self.event.teams.len() as u32);