# must fail: timed_OS_base_ready_first timed_OS_clock_never_ticked timed_OS_clock_saturates # tick never abandons a refinement past its deadline (session::FetchSession::tick) diff --git a/wai/wai-rs/src/http_binding/session.rs b/wai/wai-rs/src/http_binding/session.rs index ec31518e..6a10e5a6 100644 --- a/wai/wai-rs/src/http_binding/session.rs +++ b/wai/wai-rs/src/http_binding/session.rs @@ -397,6 +397,9 @@ impl FetchSession { /// the end of `u64` gives a deadline at `u64::MAX`. pub fn tick(&mut self, now_ms: u64) -> Vec { self.now_ms = now_ms; + if self.policy.refinement_deadline_ms.is_some() { + return Vec::new(); + } let (Some(at), Some(d)) = (self.base_ready_at(), self.policy.refinement_deadline_ms) else { return Vec::new() }; if self.result.is_some() || now_ms < at.saturating_add(u64::from(d)) { return Vec::new();