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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
//! The environment a gesture executes in (§8.5) — [`Deps`], its own file per
//! §12's budget. It is built fresh at each call site (cheap clones, no held
//! state), which is what keeps [`dispatch`](super::dispatch) pure over its
//! inputs and deterministic under test.
use crateSnapshot;
use crateCli;
use PathBuf;
use Arc;
/// What a gesture needs to execute (§8.5).
///
/// **The §3.3 mint seed is not here** (bl-1747). It was, and it was the one
/// field a *seat* filled: the window reached into `Deps` to hand over the seed
/// its greyed prediction had already been drawn off, so the preview and the
/// fired `--name` agreed. A window that posts its acts over the wire can reach
/// into nothing — the engine builds `Deps`, one per gesture — so the seed rides
/// [`Action::Prompt`](super::super::Action::Prompt) instead, which is where it
/// always belonged: it is a parameter of the gesture, not of the environment,
/// and a caller that predicted nothing carries `None` and takes the door's own
/// stamp-derived draw.
/// **The connection facts a gesture runs under** (REMOTE §4, §5; bl-4e08,
/// bl-024b) — what is true of the *caller* rather than of the world, which is
/// why these ride here together and not on the snapshot: a derivation is
/// republished on the worker's cadence, and every one of these changes on a
/// peer's. Who is asking, who else is connected, and what is queued for whom.
///
/// The default is the in-world posture (§3): the reserved `local` identity, a
/// presence map nobody has entered and a mailbox nobody has posted to — which
/// is exactly right for a box with no wire provisioned, the deposit inbox and
/// every test. The general path with no input, not a case of its own.
///
/// **Anything that builds its own `Deps` gets that default, and it is not the
/// engine's.** The §4.3 pilot constructs one per pass, and so does
/// `AppModel::boundary_deps` — the acceptance world's stand-in for the
/// transport, and since bl-ab32 that door's only caller — so a gesture fired
/// through either reaches a presence map and a mailbox no listener touches.
/// That is right for every gesture they *can* fire — none names a
/// client — and it is the trap to know about before wiring
/// [`Action::Route`](crate::boundary::Action::Route) — or
/// [`Action::Login`](crate::boundary::Action::Login), whose run a default
/// holder would strand — to a control: both are answered through
/// [`ConsumerCtx`](crate::boundary::consumer::ConsumerCtx), which holds the
/// engine's own handles, and nothing else may.