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
39
//! Bucket Brigade env module.
//!
//! Thrust-native env trait implementation for the Bucket Brigade MARL
//! research env (see <https://github.com/rjwalters/bucket-brigade>).
//!
//! # Submodules
//!
//! - [`mod@env`]: the core [`env::BucketBrigadeMaEnv`] adapter, which wraps
//! [`bucket_brigade_core::BucketBrigade`] with a flat observation and
//! multi-discrete action interface. Implements [`crate::env::Environment`] so
//! the standard Thrust pool/snapshot plumbing works.
//! - [`registry`]: a Rust mirror of `bucket_brigade.envs.registry` (PR #379 on
//! the bucket-brigade side). Maps frozen versioned scenario IDs (e.g.
//! `"minimal_specialization-v1"`) to base scenarios in
//! [`bucket_brigade_core::SCENARIOS`]. The versioned registry is the
//! reproducibility surface shared between Python and Rust trainers.
//!
//! # Quick start
//!
//! ```no_run
//! use thrust_rl::env::games::bucket_brigade::BucketBrigadeMaEnv;
//!
//! let mut env = BucketBrigadeMaEnv::from_scenario_id(
//! "minimal_specialization-v1",
//! None, // use the frozen default (4 agents)
//! Some(42),
//! )
//! .expect("registered scenario ID");
//! let initial_obs = env.reset(Some(42));
//! ```
pub use ;
pub use ;