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
40
//! Turns one accepted controller command into a slot or runtime decision.
//!
//! This module tree owns the path from submission preflight through slot placement and runtime handoff.
//! It also applies registry replies and physical completion signals to the matching slot.
//!
//! ```text
//! Submit command
//! ▼
//! preflight and slot policy
//! ├── rejected ──► optional watched outcome and cleanup
//! ├── queued ────► slot queue
//! └── selected ──► registry handoff
//!
//! registry handoff
//! ├── registry queue full ──► capacity pump ──► registry decision
//! └── command sent ─────────► registry decision
//!
//! registry decision
//! ├── rejected ──► next queued item
//! └── accepted ──► physical completion ──► next queued item
//! ```
//!
//! `submission` and `placement` own preflight and policy decisions.
//! `capacity` and `handoff` form the registry boundary.
//! `results` and `advance` apply authoritative results and continue queued work.
//! `watcher` and `cleanup` protect outcome and user-value ownership.
//!
//! Slot changes run in the serialized controller loop. A registry reply confirms or rejects admission.
//! Physical completion releases an accepted owner. Events only report these decisions.
//!
//! Rejected user values leave slot locks before destructor cleanup starts.