lgwks_bot 2.2.0

Capability-gated automation bots on a change-detecting ECS schedule: Observe, Evaluate, Execute, and Query, with an async runtime facade.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//! Async synchronization and channels.
//!
//! Channels are the composed-message boundary between agent tasks; the async
//! locks are what a shared handle is guarded by. `std::sync::Mutex` already
//! covers a lock never held across an `await`; use these only when the guard
//! must cross an await point.

pub use lgwks_deps::tokio::sync::{Barrier, Mutex, Notify, OnceCell, RwLock, Semaphore};
pub use lgwks_deps::tokio::sync::{OwnedSemaphorePermit, broadcast, mpsc, oneshot, watch};

// This crate's own, not the engine's. `tokio_util::sync::CancellationToken` is
// the crate this could have come from, but that would add a third-party edge to
// the storefront for a single type the engine's `watch` already expresses. It is
// defined in `rt::cancel` and named only here, so `rt::sync::CancellationToken`
// is the one path to it.
pub use super::cancel::{CancellationToken, DropGuard};