liminal-server 0.24.2

Standalone server for the liminal messaging bus
Documentation
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
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
//! Production participant semantics (LP gap closure, Part B activation).
//!
//! ONE production semantic handler exists, here, in the server. It owns no
//! lifecycle rules: every classification flows through the protocol crate's
//! lookups and total selectors, every mutation through the crate's typed
//! commits, every shell event through the A3 aggregate durability barrier,
//! and every reply through the A5 request-bound response authorities.
//!
//! Durability model: per conversation, one append-only transition-input log
//! whose entries carry the exact operation inputs plus the canonical shell
//! event bytes minted for them. Cold restore replays the log through the
//! same transitions and cross-checks the re-minted canonical bytes — the
//! server never serializes protocol state and never grows a second
//! implementation of lifecycle rules.

mod barrier;
#[cfg(all(test, feature = "boot-replay-measurement"))]
mod bench_boot_replay;
#[cfg(all(test, feature = "boot-replay-measurement"))]
mod bench_live_store_boot;
mod binding_fate_completion;
mod boot_drain;
mod capacity;
mod capacity_snapshot;
pub(super) mod checkpoint_batches;
mod checkpoint_body_parts;
mod committed_operations;
mod connection_fate;
mod connection_fate_allocation;
mod connection_fate_dispatch;
mod connection_fate_replay;
mod connection_fate_rows;
mod dispatch_impact;
#[cfg(test)]
pub mod dispatch_work;
mod facts;
mod fate_occurrence;
mod fenced_attach_codec;
mod fenced_attach_terminal;
mod frontier;
mod handler;
mod handler_observer;
mod handler_observer_reconcile;
mod handler_semantic;
mod lazy_restore;
mod log;
mod log_error;
pub mod log_migration;
mod log_v2;
mod log_v3;
mod marker_progress;
pub mod marker_source;
mod non_presenting_finalizer;
mod observer;
mod observer_progress;
mod observer_progress_plan;
mod occupancy;
pub(super) mod operation_batch;
mod ops_acks;
mod ops_attach;
mod ops_attach_capacity;
mod ops_attach_finalizer;
mod ops_attach_lookup;
mod ops_attach_verify;
mod ops_enroll;
mod ops_enroll_capacity;
mod ops_frontier;
mod ops_leave;
mod ops_nonzero_ack;
mod ops_reissue;
mod ops_session;
mod ops_session_replay;
mod ops_terminal_drain;
mod outbox;
mod outbox_log;
mod outbox_projection;
mod outbox_replay;
mod pending_died_finalizer;
mod previous_stop;
pub mod prune;
#[cfg(test)]
mod tests_checkpoint_audit;
#[cfg(test)]
mod tests_checkpoint_batches;
#[cfg(test)]
mod tests_checkpoint_commit;
#[cfg(test)]
mod tests_prune;
mod warm;

mod presented_refusal;
mod registry;
mod registry_snapshot;
pub mod restore_checkpoint;
mod restore_checkpoint_boot_error;
mod restore_checkpoint_codec;
pub mod restore_checkpoint_locator;
mod restore_checkpoint_rebuild;
mod restore_from_checkpoint;
mod retirement;
mod route_key_migration;
mod route_keys;
mod routed_stream;
mod routed_stream_codec;
mod state;
mod stop_drain;
pub(super) mod store_census;
#[cfg(test)]
mod tests_boot_heartbeat;
#[cfg(test)]
mod tests_boot_history;
#[cfg(test)]
mod tests_checkpoint_locator;
#[cfg(test)]
mod tests_checkpoint_locator_load;
#[cfg(test)]
mod tests_checkpoint_route_keys;
#[cfg(test)]
mod tests_conversation_retirement;
#[cfg(test)]
mod tests_conversation_retirement_lifetime;
#[cfg(test)]
mod tests_conversation_retirement_registry;
#[cfg(test)]
mod tests_registry_snapshot;
#[cfg(test)]
mod tests_registry_snapshot_cut;
#[cfg(test)]
mod tests_registry_snapshot_fixture;
#[cfg(test)]
mod tests_registry_snapshot_restore;
#[cfg(test)]
mod tests_restore_checkpoint;
#[cfg(test)]
mod tests_restore_from_checkpoint_boot;
#[cfg(test)]
mod tests_route_key_migration;
#[cfg(test)]
mod tests_store_open;
#[cfg(test)]
mod tests_store_tally;
mod write_issuance;

#[cfg(test)]
mod e2e_cold_all_shapes;
#[cfg(test)]
mod e2e_cold_all_shapes_fixture;
#[cfg(test)]
mod e2e_cold_tests;
#[cfg(test)]
mod e2e_leave_commit_boundary;
#[cfg(test)]
mod e2e_leave_regression;
#[cfg(test)]
mod e2e_terminal_drain;
#[cfg(test)]
mod e2e_terminal_drain_detached;
#[cfg(test)]
#[allow(clippy::expect_used, clippy::unwrap_used, clippy::panic)]
mod e2e_tests;
#[cfg(test)]
#[allow(clippy::expect_used, clippy::unwrap_used, clippy::panic)]
pub mod tests;

#[cfg(test)]
#[allow(clippy::expect_used, clippy::unwrap_used, clippy::panic)]
mod tests_12_attach_marker_census;

#[cfg(test)]
#[allow(clippy::expect_used, clippy::unwrap_used, clippy::panic)]
mod tests_14_attach_presentation;
#[cfg(test)]
#[allow(clippy::expect_used, clippy::unwrap_used, clippy::panic)]
mod tests_37_observed_provenance;
#[cfg(test)]
#[allow(clippy::expect_used, clippy::unwrap_used, clippy::panic)]
mod tests_a4_body_conflict;
#[cfg(test)]
mod tests_a5_settlement;
#[cfg(test)]
#[allow(clippy::expect_used, clippy::unwrap_used, clippy::panic)]
mod tests_a7_operator_reissue;
#[cfg(test)]
#[allow(clippy::expect_used, clippy::unwrap_used, clippy::panic)]
mod tests_binding;
#[cfg(test)]
#[allow(clippy::expect_used, clippy::unwrap_used, clippy::panic)]
mod tests_boot_containment;
#[cfg(test)]
#[allow(clippy::expect_used, clippy::unwrap_used, clippy::panic)]
mod tests_capacity;
#[cfg(test)]
#[allow(clippy::expect_used, clippy::unwrap_used, clippy::panic)]
mod tests_capacity_attach;
#[cfg(test)]
mod tests_config_d2;
#[cfg(test)]
mod tests_delivery_acceptance;
#[cfg(test)]
mod tests_detached_leave;

#[cfg(test)]
mod tests_digest_rows;
#[cfg(test)]
mod tests_f8_live_anchor_ledger;
#[cfg(test)]
mod tests_f8_marker_poison;
#[cfg(test)]
mod tests_f8b_boot_drain;
#[cfg(test)]
mod tests_f8b_seal;
#[cfg(test)]
mod tests_f8b_typed_refusal;
#[cfg(test)]
mod tests_fenced_replay_fixture;
#[cfg(test)]
mod tests_history;
#[cfg(test)]
mod tests_honest_outcomes;
#[cfg(test)]
mod tests_layer2;
#[cfg(test)]
mod tests_leave;
#[cfg(test)]
mod tests_leave_at_retention_cap;
#[cfg(test)]
mod tests_log_migration;
#[cfg(test)]
mod tests_log_v2;
#[cfg(test)]
mod tests_marker_ack;
#[cfg(test)]
mod tests_marker_ack_fixture;
#[cfg(test)]
mod tests_marker_fate_repro;

#[cfg(test)]
pub mod tests_memory_store;
#[cfg(test)]
#[allow(clippy::expect_used, clippy::unwrap_used, clippy::panic)]
mod tests_observer;

#[cfg(test)]
mod tests_observer_progress_lifetime;
#[cfg(test)]
mod tests_observer_retire;
#[cfg(test)]
mod tests_observer_snapshot;
#[cfg(test)]
mod tests_observer_wake;
#[cfg(test)]
mod tests_observer_wake_fixture;
#[cfg(test)]
mod tests_observer_witness_pruning;
#[cfg(test)]
mod tests_one_pass_replay;
#[cfg(test)]
mod tests_outbox_barrier;
#[cfg(test)]
mod tests_outbox_barrier_fixture;
#[cfg(test)]
mod tests_outbox_log;
#[cfg(test)]
mod tests_outbox_owner;
#[cfg(test)]
mod tests_outbox_reclaimed_history;
#[cfg(test)]
mod tests_outbox_replay;
#[cfg(test)]
mod tests_outcome_unknown;
#[cfg(test)]
mod tests_p0_39_capacity_hybrid;
#[cfg(test)]
mod tests_p0_39_visibility;
#[cfg(test)]
mod tests_p0_60_admission_cost;
#[cfg(test)]
mod tests_p0_64_live_extension;
#[cfg(test)]
mod tests_p0_76_marker_ownership;
#[cfg(test)]
mod tests_p65_live_owner_growth;
#[cfg(test)]
mod tests_pending_died_live_reachability;

#[cfg(test)]
mod tests_rebind_generation;
#[cfg(test)]
#[allow(clippy::expect_used, clippy::unwrap_used, clippy::panic)]
mod tests_receipts;
#[cfg(test)]
#[allow(clippy::expect_used, clippy::unwrap_used, clippy::panic)]
mod tests_receipts_enrollment;
#[cfg(test)]
mod tests_record_admission;
#[cfg(test)]
mod tests_record_admission_dedup;
#[cfg(test)]
#[allow(clippy::expect_used, clippy::unwrap_used, clippy::panic)]
mod tests_residue;
#[cfg(test)]
mod tests_restore_window;
#[cfg(test)]
mod tests_restore_window_detached;
#[cfg(test)]
mod tests_row_size_bound;
#[cfg(test)]
mod tests_stop_path_anchors;
#[cfg(test)]
mod tests_terminal_in_place;
#[cfg(test)]
mod tests_unit2_layer1;

#[cfg(test)]
mod tests_seed;
#[cfg(test)]
mod tests_unloadable_surface;
#[cfg(test)]
mod tests_w1a;
#[cfg(test)]
mod tests_w1a_leave_barrier;
#[cfg(test)]
mod tests_w1b_census;
#[cfg(test)]
mod tests_w1b_connection_fate;
#[cfg(test)]
mod tests_w1b_fate_completion;
#[cfg(test)]
mod tests_w1b_fenced_codec;
#[cfg(test)]
mod tests_w1b_fenced_finalizer;
#[cfg(test)]
mod tests_w1b_fenced_presenting;
#[cfg(test)]
mod tests_w1b_intent_recovery;
#[cfg(test)]
mod tests_w1b_marker_source;
#[cfg(test)]
mod tests_w1b_occurrence;
#[cfg(test)]
mod tests_w1b_oracle26;
#[cfg(test)]
mod tests_w1b_pending_detached_leave;
#[cfg(test)]
mod tests_w1b_pending_died_restart;
#[cfg(test)]
mod tests_w1b_pending_finalizer;
#[cfg(test)]
mod tests_w1b_projection;
#[cfg(test)]
mod tests_w1b_source_flush;
#[cfg(test)]
mod tests_w1b_substrate;
#[cfg(test)]
mod tests_w1b_umbrella;
#[cfg(test)]
mod tests_w1b_validation_memory;
#[cfg(test)]
mod tests_w1b_while_dead_replay;
#[cfg(test)]
mod tests_w2_impacts;
#[cfg(test)]
mod tests_w2_leg1_census;
#[cfg(test)]
mod tests_w2_leg2_census;
#[cfg(test)]
mod tests_w2_leg3_crash_early;
#[cfg(test)]
mod tests_w2_leg3_crash_late;
#[cfg(test)]
mod tests_w3_restore;
#[cfg(test)]
mod tests_w3_restore_fixture;

#[cfg(test)]
mod e2e_connection_fate_liveness;

pub use committed_operations::{
    COMMITTED_OPERATION_PAGE_MAX, CommittedOperation, CommittedOperationReadError,
    read_committed_operations,
};
pub use facts::constant_time_eq;
pub use handler::ProductionParticipantHandler;
pub use routed_stream::RoutedStreamRefusal;
pub(in crate::server) use warm::ParticipantWarm;

#[cfg(test)]
mod tests_settlement_query;

mod ops_settlement;

mod restore_checkpoint_history;
mod restore_checkpoint_history_capture;
mod restore_checkpoint_history_key;
#[cfg(test)]
mod tests_checkpoint_history;

#[cfg(test)]
mod tests_checkpoint_history_index;

mod restore_checkpoint_history_index;

#[cfg(test)]
mod tests_checkpoint_history_value;

mod restore_checkpoint_history_value;

mod restore_checkpoint_history_retired;
#[cfg(test)]
mod tests_checkpoint_history_retired;

#[cfg(test)]
mod previous_stop_tests;