1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
// Copyright (C) 2026 Javad Rajabzadeh
// SPDX-License-Identifier: MIT OR Apache-2.0
//
// This library is intentionally permissive, not GPL, even though the `hydra`
// binary that ships it is GPL-3.0-or-later: Rust links statically, so copyleft
// here would propagate to every downstream crate. See LICENSING.md.
//! HYDRA scheduler core: multi-source download scheduler state machine
//! with no I/O dependencies.
//!
//! Key principles:
//! * **Dynamic range partitioning**: HTTP byte ranges are tracked client-side,
//! allowing slow or stalled connections to be repartitioned and assigned to
//! faster connections dynamically.
//! * **Liveness**: every reachable state has an enabled transition that
//! decreases remaining work within a bounded window.
//! * **Safety**: byte coverage invariants are strictly verified without gaps
//! or duplicate allocations.
//!
//! Safety (`coverage_holds`) and liveness (`liveness_holds`) properties are
//! both verified through property-based testing.
pub use ;
pub use ;
pub use ;
pub use ;
pub use ;