qrusty 0.20.8

A trusty priority queue server built with Rust
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
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
# Test & Code Coverage Report

Generated: 2026-04-05T06:21:14.649844

## Summary

| Metric            | Value             |
| ----------------- | ----------------- |
| Total Tests       | 496               |
| Line Coverage     | 91.1% (5036/5528) |
| Function Coverage | 89.1% (506/568)   |
| Region Coverage   | 91.2% (8778/9630) |

## Test Suites

| Suite                    | Tests |
| ------------------------ | ----- |
| lib (unit tests)         | 85    |
| main                     | 97    |
| api_error_tests          | 5     |
| api_tests                | 59    |
| concurrency_tests        | 15    |
| integration_tests        | 6     |
| memory_integration_tests | 4     |
| memory_storage_tests     | 31    |
| message_tests            | 25    |
| startup_gate_tests       | 20    |
| storage_tests            | 108   |
| ws_tests                 | 41    |

## Per-File Coverage

| File                                               | Lines     | Line % | Functions | Fn %   | Regions   | Region % |
| -------------------------------------------------- | --------- | ------ | --------- | ------ | --------- | -------- |
| [src/main.rs]src/main.rs                         | 487/574   | 84.8%  | 61/65     | 93.8%  | 772/907   | 85.1%    |
| [src/memory_storage.rs]src/memory_storage.rs     | 189/222   | 85.1%  | 49/59     | 83.1%  | 336/385   | 87.3%    |
| [src/payload_store.rs]src/payload_store.rs       | 246/287   | 85.7%  | 16/19     | 84.2%  | 509/588   | 86.6%    |
| [src/ws.rs]src/ws.rs                             | 471/520   | 90.6%  | 61/65     | 93.8%  | 768/871   | 88.2%    |
| [src/storage.rs]src/storage.rs                   | 1922/2119 | 90.7%  | 107/132   | 81.1%  | 3832/4213 | 91.0%    |
| [src/memory_monitor.rs]src/memory_monitor.rs     | 322/344   | 93.6%  | 32/40     | 80.0%  | 565/597   | 94.6%    |
| [src/log_buffer.rs]src/log_buffer.rs             | 154/163   | 94.5%  | 28/29     | 96.6%  | 238/251   | 94.8%    |
| [src/api.rs]src/api.rs                           | 1005/1054 | 95.4%  | 123/129   | 95.3%  | 1370/1419 | 96.5%    |
| [src/operation_timing.rs]src/operation_timing.rs | 214/219   | 97.7%  | 23/24     | 95.8%  | 362/373   | 97.1%    |
| [src/message.rs]src/message.rs                   | 26/26     | 100.0% | 6/6       | 100.0% | 26/26     | 100.0%   |

## Test Inventory

### lib (unit tests)

- `api::tests::test_ack_endpoint`
- `api::tests::test_consume_endpoint`
- `api::tests::test_create_queue_endpoint`
- `api::tests::test_nack_endpoint`
- `api::tests::test_publish_endpoint`
- `api::tests::test_stats_endpoint`
- `log_buffer::tests::test_log_buffer_async_history_matches_sync`
- `log_buffer::tests::test_log_buffer_captures_debug_and_trace_levels`
- `log_buffer::tests::test_log_buffer_captures_entries`
- `log_buffer::tests::test_log_buffer_default`
- `log_buffer::tests::test_log_buffer_history`
- `log_buffer::tests::test_log_buffer_ring_capacity`
- `log_buffer::tests::test_log_capture_does_not_spawn_tasks_sync`
- `memory_monitor::tests::test_cgroup_v1_limit_detection`
- `memory_monitor::tests::test_cgroup_v1_unlimited_returns_zero`
- `memory_monitor::tests::test_cgroup_v1_usage_fallback`
- `memory_monitor::tests::test_cgroup_v2_limit_detection`
- `memory_monitor::tests::test_cgroup_v2_unlimited_returns_zero`
- `memory_monitor::tests::test_cgroup_v2_usage_reading`
- `memory_monitor::tests::test_default_thresholds`
- `memory_monitor::tests::test_env_override_takes_precedence`
- `memory_monitor::tests::test_hysteresis_exits_at_70_percent`
- `memory_monitor::tests::test_limit_bytes_accessor`
- `memory_monitor::tests::test_memory_monitor_new_does_not_panic`
- `memory_monitor::tests::test_no_files_returns_zero_usage`
- `memory_monitor::tests::test_no_pressure_at_79_percent`
- `memory_monitor::tests::test_no_pressure_below_threshold`
- `memory_monitor::tests::test_pressure_at_81_percent`
- `memory_monitor::tests::test_pressure_detected_at_threshold`
- `memory_monitor::tests::test_pressure_with_explicit_limit`
- `memory_monitor::tests::test_proc_statm_fallback`
- `operation_timing::tests::concurrent_recording_is_safe`
- `operation_timing::tests::different_operations_independent`
- `operation_timing::tests::min_tracked_correctly`
- `operation_timing::tests::multiple_samples_same_second_aggregate`
- `operation_timing::tests::query_clamps_to_max_history`
- `operation_timing::tests::query_empty_store_returns_no_operations`
- `operation_timing::tests::query_fills_gaps_with_empty_buckets`
- `operation_timing::tests::query_returns_empty_buckets_for_stale_data`
- `operation_timing::tests::ring_buffer_wraps_after_max_history`
- `operation_timing::tests::single_sample_creates_bucket`
- `payload_store::tests::test_append_after_reopen_is_readable`
- `payload_store::tests::test_append_and_read`
- `payload_store::tests::test_compact_rewrites_live_refs`
- `payload_store::tests::test_disk_usage`
- `payload_store::tests::test_many_appends_all_readable`
- `payload_store::tests::test_multiple_appends`
- `payload_store::tests::test_reopen_reads_existing_data`
- `storage::unit_tests::queue_counters_ack_decrements_locked`
- `storage::unit_tests::queue_counters_batch_ack`
- `storage::unit_tests::queue_counters_batch_nack_mixed`
- `storage::unit_tests::queue_counters_delete_queue_removes_entry`
- `storage::unit_tests::queue_counters_full_lifecycle`
- `storage::unit_tests::queue_counters_get_all_queue_stats_from_cache`
- `storage::unit_tests::queue_counters_list_queues_from_cache`
- `storage::unit_tests::queue_counters_nack_dlq_decrements_locked`
- `storage::unit_tests::queue_counters_nack_retry_moves_locked_to_available`
- `storage::unit_tests::queue_counters_pop_moves_available_to_locked`
- `storage::unit_tests::queue_counters_purge_queue_zeros_counts`
- `storage::unit_tests::queue_counters_push_increments_available`
- `storage::unit_tests::queue_counters_rename_queue_moves_entry`
- `storage::unit_tests::queue_counters_seeded_on_restart`
- `storage::unit_tests::test_default_block_cache_128mb`
- `storage::unit_tests::test_default_max_open_files_128`
- `storage::unit_tests::test_delete_and_purge_queue_emit_info_logs`
- `storage::unit_tests::test_empty_queue_dedup_set_reclaimed`
- `storage::unit_tests::test_empty_queue_hot_tier_removed`
- `storage::unit_tests::test_empty_queue_locked_index_cleaned`
- `storage::unit_tests::test_failed_pop_refills_hot_tier`
- `storage::unit_tests::test_has_duplicate_payload_mismatch_and_break_on_non_prefix_key`
- `storage::unit_tests::test_has_duplicate_payload_returns_true_for_unlocked_duplicate`
- `storage::unit_tests::test_hot_tier_starvation_recovery`
- `storage::unit_tests::test_locked_index_shrunk`
- `storage::unit_tests::test_memory_breakdown_reflects_state`
- `storage::unit_tests::test_memory_breakdown_returns_expected_fields`
- `storage::unit_tests::test_nonempty_dedup_set_shrunk`
- `storage::unit_tests::test_nonempty_queue_not_reclaimed`
- `storage::unit_tests::test_pop_treats_expired_lock_as_available`
- `storage::unit_tests::test_storage_new_loads_queue_config_from_db`
- `storage::unit_tests::test_storage_new_skips_invalid_queue_config_json`
- `storage::unit_tests::test_storage_new_warns_on_forced_queue_config_load_error`
- `storage::unit_tests::test_tracing_macros_execute_under_scoped_subscriber`
- `storage::unit_tests::test_unlock_expired_messages_handles_missing_and_corrupt_entries`
- `storage::unit_tests::test_unlock_expired_messages_unlocks_no_dup_queue_message`
- `storage::unit_tests::test_unlock_message_by_key_returns_false_for_unlocked_message`

### main

- `api::tests::test_ack_endpoint`
- `api::tests::test_consume_endpoint`
- `api::tests::test_create_queue_endpoint`
- `api::tests::test_nack_endpoint`
- `api::tests::test_publish_endpoint`
- `api::tests::test_stats_endpoint`
- `log_buffer::tests::test_log_buffer_async_history_matches_sync`
- `log_buffer::tests::test_log_buffer_captures_debug_and_trace_levels`
- `log_buffer::tests::test_log_buffer_captures_entries`
- `log_buffer::tests::test_log_buffer_default`
- `log_buffer::tests::test_log_buffer_history`
- `log_buffer::tests::test_log_buffer_ring_capacity`
- `log_buffer::tests::test_log_capture_does_not_spawn_tasks_sync`
- `memory_monitor::tests::test_cgroup_v1_limit_detection`
- `memory_monitor::tests::test_cgroup_v1_unlimited_returns_zero`
- `memory_monitor::tests::test_cgroup_v1_usage_fallback`
- `memory_monitor::tests::test_cgroup_v2_limit_detection`
- `memory_monitor::tests::test_cgroup_v2_unlimited_returns_zero`
- `memory_monitor::tests::test_cgroup_v2_usage_reading`
- `memory_monitor::tests::test_default_thresholds`
- `memory_monitor::tests::test_env_override_takes_precedence`
- `memory_monitor::tests::test_hysteresis_exits_at_70_percent`
- `memory_monitor::tests::test_limit_bytes_accessor`
- `memory_monitor::tests::test_memory_monitor_new_does_not_panic`
- `memory_monitor::tests::test_no_files_returns_zero_usage`
- `memory_monitor::tests::test_no_pressure_at_79_percent`
- `memory_monitor::tests::test_no_pressure_below_threshold`
- `memory_monitor::tests::test_pressure_at_81_percent`
- `memory_monitor::tests::test_pressure_detected_at_threshold`
- `memory_monitor::tests::test_pressure_with_explicit_limit`
- `memory_monitor::tests::test_proc_statm_fallback`
- `operation_timing::tests::concurrent_recording_is_safe`
- `operation_timing::tests::different_operations_independent`
- `operation_timing::tests::min_tracked_correctly`
- `operation_timing::tests::multiple_samples_same_second_aggregate`
- `operation_timing::tests::query_clamps_to_max_history`
- `operation_timing::tests::query_empty_store_returns_no_operations`
- `operation_timing::tests::query_fills_gaps_with_empty_buckets`
- `operation_timing::tests::query_returns_empty_buckets_for_stale_data`
- `operation_timing::tests::ring_buffer_wraps_after_max_history`
- `operation_timing::tests::single_sample_creates_bucket`
- `payload_store::tests::test_append_after_reopen_is_readable`
- `payload_store::tests::test_append_and_read`
- `payload_store::tests::test_compact_rewrites_live_refs`
- `payload_store::tests::test_disk_usage`
- `payload_store::tests::test_many_appends_all_readable`
- `payload_store::tests::test_multiple_appends`
- `payload_store::tests::test_reopen_reads_existing_data`
- `storage::unit_tests::queue_counters_ack_decrements_locked`
- `storage::unit_tests::queue_counters_batch_ack`
- `storage::unit_tests::queue_counters_batch_nack_mixed`
- `storage::unit_tests::queue_counters_delete_queue_removes_entry`
- `storage::unit_tests::queue_counters_full_lifecycle`
- `storage::unit_tests::queue_counters_get_all_queue_stats_from_cache`
- `storage::unit_tests::queue_counters_list_queues_from_cache`
- `storage::unit_tests::queue_counters_nack_dlq_decrements_locked`
- `storage::unit_tests::queue_counters_nack_retry_moves_locked_to_available`
- `storage::unit_tests::queue_counters_pop_moves_available_to_locked`
- `storage::unit_tests::queue_counters_purge_queue_zeros_counts`
- `storage::unit_tests::queue_counters_push_increments_available`
- `storage::unit_tests::queue_counters_rename_queue_moves_entry`
- `storage::unit_tests::queue_counters_seeded_on_restart`
- `storage::unit_tests::test_default_block_cache_128mb`
- `storage::unit_tests::test_default_max_open_files_128`
- `storage::unit_tests::test_delete_and_purge_queue_emit_info_logs`
- `storage::unit_tests::test_empty_queue_dedup_set_reclaimed`
- `storage::unit_tests::test_empty_queue_hot_tier_removed`
- `storage::unit_tests::test_empty_queue_locked_index_cleaned`
- `storage::unit_tests::test_failed_pop_refills_hot_tier`
- `storage::unit_tests::test_has_duplicate_payload_mismatch_and_break_on_non_prefix_key`
- `storage::unit_tests::test_has_duplicate_payload_returns_true_for_unlocked_duplicate`
- `storage::unit_tests::test_hot_tier_starvation_recovery`
- `storage::unit_tests::test_locked_index_shrunk`
- `storage::unit_tests::test_memory_breakdown_reflects_state`
- `storage::unit_tests::test_memory_breakdown_returns_expected_fields`
- `storage::unit_tests::test_nonempty_dedup_set_shrunk`
- `storage::unit_tests::test_nonempty_queue_not_reclaimed`
- `storage::unit_tests::test_pop_treats_expired_lock_as_available`
- `storage::unit_tests::test_storage_new_loads_queue_config_from_db`
- `storage::unit_tests::test_storage_new_skips_invalid_queue_config_json`
- `storage::unit_tests::test_storage_new_warns_on_forced_queue_config_load_error`
- `storage::unit_tests::test_tracing_macros_execute_under_scoped_subscriber`
- `storage::unit_tests::test_unlock_expired_messages_handles_missing_and_corrupt_entries`
- `storage::unit_tests::test_unlock_expired_messages_unlocks_no_dup_queue_message`
- `storage::unit_tests::test_unlock_message_by_key_returns_false_for_unlocked_message`
- `tests::test_bind_listener_ephemeral_port`
- `tests::test_config_from_env_defaults`
- `tests::test_config_from_env_storage_mode_memory`
- `tests::test_main_exits_immediately_in_tests`
- `tests::test_server_memory_mode_serves_health`
- `tests::test_server_serves_health_and_shuts_down`
- `tests::test_shutdown_signal_returns_immediately_in_tests_when_not_forced`
- `tests::test_startup_gate_blocks_api_while_initializing`
- `tests::test_startup_gate_lifts_after_init`
- `tests::test_timeout_monitor_background_task`
- `tests::test_timeout_monitor_error_resilience`
- `tests::test_timeout_monitor_result_branches`

### api_error_tests

- `test_delete_queue_error_returns_500_with_json_error`
- `test_purge_queue_error_returns_500_with_json_error`
- `test_queue_stats_storage_error_returns_404`
- `test_queues_storage_error_returns_500`
- `test_stats_storage_error_returns_500`

### api_tests

- `test_ack_message`
- `test_ack_wrong_consumer`
- `test_batch_ack_all_found`
- `test_batch_ack_empty_list`
- `test_batch_ack_partial_not_found`
- `test_batch_nack_all_unlocked`
- `test_batch_nack_missing_fields_rejected`
- `test_concurrent_api_operations`
- `test_consume_empty_queue`
- `test_consume_with_default_timeout`
- `test_create_queue_conflict`
- `test_create_queue_max_first`
- `test_create_queue_min_first`
- `test_default_queue_behavior`
- `test_delete_all_empty_server`
- `test_delete_all_removes_all_queues`
- `test_delete_all_with_dlq_allows_recreate`
- `test_delete_nonexistent_queue`
- `test_delete_queue_endpoint`
- `test_delete_queue_with_dlq_allows_recreate`
- `test_duplicate_payload_returns_400`
- `test_health_endpoint`
- `test_invalid_json_handling`
- `test_list_queues_endpoint`
- `test_multiple_queue_configurations`
- `test_nack_message`
- `test_nack_wrong_consumer`
- `test_operation_timings_covers_all_api_operations`
- `test_operation_timings_custom_seconds`
- `test_operation_timings_default_window`
- `test_operation_timings_responsive_without_storage`
- `test_operation_timings_returns_200_when_idle`
- `test_priority_ordering_comprehensive`
- `test_priority_ordering_through_api`
- `test_publish_and_consume`
- `test_publish_message`
- `test_publish_message_minimal`
- `test_purge_all_empties_all_queues`
- `test_purge_all_empty_server`
- `test_purge_nonexistent_queue`
- `test_purge_queue_endpoint`
- `test_queue_isolation_through_api`
- `test_queue_metrics_endpoint_returns_time_series`
- `test_queue_stats_endpoint`
- `test_queue_stats_includes_live_rate_fields`
- `test_rename_queue_via_update`
- `test_stats_endpoint`
- `test_text_priority_empty_returns_400`
- `test_text_priority_kind_mismatch_through_api`
- `test_text_priority_ordering_through_api`
- `test_text_priority_with_slash_succeeds`
- `test_update_queue_allow_duplicates`
- `test_update_queue_empty_name_returns_bad_request`
- `test_update_queue_nonexistent`
- `test_update_queue_rename`
- `test_update_queue_rename_and_allow_duplicates`
- `test_update_queue_rename_to_empty_string_returns_bad_request`
- `test_update_queue_rename_to_existing_returns_conflict`
- `test_webui_served_from_configurable_directory`

### concurrency_tests

- `test_get_all_queue_stats_returns_all_queues_memory`
- `test_get_all_queue_stats_returns_all_queues_rocksdb`
- `test_log_buffer_sync_ring_eviction`
- `test_log_capture_does_not_spawn_tasks`
- `test_memory_concurrent_nodup_push_different_payloads`
- `test_memory_concurrent_nodup_push_same_payload`
- `test_memory_concurrent_nodup_push_stress`
- `test_memory_concurrent_pop_no_double_delivery`
- `test_memory_no_deadlock_push_vs_ack`
- `test_memory_no_deadlock_push_vs_batch_ack`
- `test_memory_no_deadlock_push_vs_nack`
- `test_rocksdb_concurrent_nodup_push_different_payloads`
- `test_rocksdb_concurrent_nodup_push_same_payload`
- `test_rocksdb_concurrent_pop_no_double_delivery`
- `test_rocksdb_pop_stress_no_double_delivery`

### integration_tests

- `test_data_persistence_across_restarts`
- `test_failed_message_processing`
- `test_mixed_queue_operations`
- `test_multi_consumer_load_balancing`
- `test_order_processing_workflow`
- `test_system_health_monitoring`

### memory_integration_tests

- `test_api_with_memory_storage_health`
- `test_api_with_memory_storage_publish_consume_ack`
- `test_api_with_memory_storage_stats`
- `test_timeout_monitor_with_memory_storage`

### memory_storage_tests

- `test_configure_queue_disable_duplicates_dedupes_messages`
- `test_configure_queue_enable_duplicates_drops_payload_set`
- `test_memory_ack_removes`
- `test_memory_batch_ack`
- `test_memory_batch_nack`
- `test_memory_delete_queue`
- `test_memory_delete_queue_removes_dlq_entries`
- `test_memory_duplicate_rejection`
- `test_memory_fifo_ordering`
- `test_memory_list_queues`
- `test_memory_nack_dead_letter`
- `test_memory_nack_unlocks`
- `test_memory_priority_ordering_max_first`
- `test_memory_priority_ordering_min_first`
- `test_memory_purge_queue`
- `test_memory_push_and_pop`
- `test_memory_queue_exists`
- `test_memory_queue_stats`
- `test_memory_rename_queue`
- `test_memory_rename_queue_already_exists_returns_error`
- `test_memory_rename_queue_empty_name_returns_storage_error`
- `test_memory_rename_queue_not_found_returns_error`
- `test_memory_rename_queue_same_name_returns_ok`
- `test_memory_renew_lock`
- `test_memory_text_priority_kind_mismatch`
- `test_memory_text_priority_max_first`
- `test_memory_text_priority_min_first`
- `test_memory_text_priority_slash_stats_not_corrupted`
- `test_memory_text_priority_with_slash_max_first`
- `test_memory_text_priority_with_slash_min_first`
- `test_memory_timeout_unlock`

### message_tests

- `test_message_clone`
- `test_message_creation`
- `test_message_debug`
- `test_message_priority_extremes`
- `test_message_retry_count_extremes`
- `test_message_serialization`
- `test_message_with_complex_payload`
- `test_payload_ref_and_hash_omitted_when_none`
- `test_payload_ref_and_hash_serde_roundtrip`
- `test_priority_default`
- `test_priority_display`
- `test_priority_kind`
- `test_priority_kind_default`
- `test_priority_ordering_debug_clone`
- `test_priority_ordering_default`
- `test_priority_ordering_enum`
- `test_queue_config_clone_debug`
- `test_queue_config_creation`
- `test_queue_config_default`
- `test_queue_config_serialization`
- `test_queue_config_with_different_orderings`
- `test_queue_stats_clone`
- `test_queue_stats_creation`
- `test_queue_stats_debug`
- `test_queue_stats_serialization`

### startup_gate_tests

- `test_ack_batch_blocked_during_init`
- `test_ack_blocked_during_init`
- `test_consume_blocked_during_init`
- `test_create_queue_blocked_during_init`
- `test_create_queue_works_after_init_completes`
- `test_delete_all_blocked_during_init`
- `test_delete_queue_blocked_during_init`
- `test_gate_lifts_when_flag_cleared`
- `test_health_allowed_during_init`
- `test_nack_batch_blocked_during_init`
- `test_nack_blocked_during_init`
- `test_operation_timings_allowed_during_init`
- `test_publish_blocked_during_init`
- `test_publish_works_after_init_completes`
- `test_purge_all_blocked_during_init`
- `test_purge_queue_blocked_during_init`
- `test_queue_stats_allowed_during_init`
- `test_queues_allowed_during_init`
- `test_stats_allowed_during_init`
- `test_update_queue_blocked_during_init`

### storage_tests

- `test_ack_message`
- `test_ack_wrong_consumer`
- `test_allow_duplicates_default_true_allows_duplicate_payloads`
- `test_allow_duplicates_false_allows_same_payload_after_ack`
- `test_allow_duplicates_false_allows_same_payload_after_nack_to_dlq`
- `test_allow_duplicates_false_blocks_push_when_message_is_locked`
- `test_allow_duplicates_false_rejects_unlocked_duplicate_on_publish`
- `test_allow_duplicates_false_transition_nack_unlocks_not_drops`
- `test_batch_ack_all_found`
- `test_batch_ack_empty_list`
- `test_batch_ack_partial_not_found`
- `test_batch_ack_removes_from_locked_index`
- `test_batch_ack_wrong_consumer_not_acked`
- `test_batch_nack_all_unlocked_for_retry`
- `test_batch_nack_empty_list`
- `test_batch_nack_exceeded_retries_moves_to_dlq`
- `test_batch_nack_no_duplicates_push_rejected_while_locked`
- `test_batch_nack_wrong_consumer_not_nacked`
- `test_broken_payload_ref_cleanup_and_fresh_push`
- `test_compact_with_zero_live_refs_cleans_segments`
- `test_compaction_does_not_break_hot_tier`
- `test_concurrent_mixed_priority_queues`
- `test_concurrent_operations`
- `test_configure_queue_disabling_duplicates_dedupes_existing_unlocked_messages`
- `test_configure_queue_enabling_duplicates_does_not_modify_existing_messages`
- `test_create_queue_method`
- `test_delete_nonexistent_queue`
- `test_delete_queue`
- `test_delete_queue_removes_dlq_entries`
- `test_delete_queue_with_dlq_allows_recreate_via_api`
- `test_delete_queue_with_locked_messages`
- `test_empty_queue_pop`
- `test_fifo_ordering_ignores_priority`
- `test_fifo_preserves_position_on_nack_retry`
- `test_get_queue_config`
- `test_has_duplicate_payload_excludes_message_id`
- `test_integrity_scan_deletes_broken_messages`
- `test_large_payloads_are_externalized`
- `test_message_locking`
- `test_message_persistence`
- `test_mixed_old_and_new_format_messages`
- `test_mixed_queue_configurations`
- `test_nack_max_retries_dead_letter`
- `test_nack_message_retry`
- `test_nack_wrong_consumer`
- `test_old_format_messages_survive_full_lifecycle`
- `test_payload_store_ack_allows_repush_of_same_payload`
- `test_payload_store_duplicate_detection_with_externalized_payloads`
- `test_payload_store_nack_retry_preserves_payload`
- `test_payload_store_push_pop_ack_roundtrip`
- `test_payload_store_push_pop_many_after_restart`
- `test_payload_store_stress_push_pop_1000`
- `test_payload_store_survives_restart`
- `test_pop_returns_none_when_all_payloads_broken`
- `test_priority_ordering`
- `test_priority_ordering_edge_cases`
- `test_pset_allows_push_after_ack`
- `test_pset_batch_ack_removes_payloads`
- `test_pset_batch_nack_dlq_removes_payloads`
- `test_pset_blocks_push_while_locked`
- `test_pset_delete_clears_set`
- `test_pset_disable_constraint_drops_set`
- `test_pset_enable_constraint_builds_set`
- `test_pset_nack_dlq_allows_repush`
- `test_pset_nack_retry_keeps_payload_blocked`
- `test_pset_purge_clears_set`
- `test_pset_startup_reconstruction_blocks_push`
- `test_pset_startup_reconstruction_includes_locked`
- `test_pset_unlock_expired_retry_keeps_payload_blocked`
- `test_purge_nonexistent_queue`
- `test_purge_queue`
- `test_purge_queue_preserves_config`
- `test_push_and_pop_message`
- `test_push_message`
- `test_queue_configuration_default_behavior`
- `test_queue_configuration_max_first`
- `test_queue_configuration_min_first`
- `test_queue_isolation`
- `test_queue_isolation_delete_purge`
- `test_queue_stats_after_ack_nack`
- `test_queue_stats_empty_system`
- `test_queue_stats_multiple_queues`
- `test_queue_stats_nonexistent_queue`
- `test_queue_stats_single_queue`
- `test_queue_stats_with_locked_messages`
- `test_rename_queue_already_exists_returns_error`
- `test_rename_queue_empty_name_returns_storage_error`
- `test_rename_queue_error_display`
- `test_rename_queue_not_found_returns_error`
- `test_rename_queue_same_name_returns_ok`
- `test_small_payloads_stay_inline`
- `test_stats_and_queue_listing_skip_invalid_and_corrupt_entries`
- `test_storage_new`
- `test_text_priority_fifo`
- `test_text_priority_kind_mismatch_rejected`
- `test_text_priority_max_first`
- `test_text_priority_max_first_prefix_ordering`
- `test_text_priority_min_first`
- `test_text_priority_slash_does_not_corrupt_queue_stats`
- `test_text_priority_validation`
- `test_text_priority_with_null_byte`
- `test_text_priority_with_slash_max_first`
- `test_text_priority_with_slash_min_first`
- `test_timeout_monitor_acked_message_cleanup`
- `test_timeout_monitor_mixed_expired_and_valid`
- `test_timeout_monitor_multiple_expired_messages`
- `test_timeout_monitor_no_expired_messages`
- `test_timeout_monitor_unlock_expired_messages`

### ws_tests

- `test_ws_ack_removes_message`
- `test_ws_batch_ack`
- `test_ws_batch_nack`
- `test_ws_binary_frame_rejected_with_1003`
- `test_ws_connection_close_releases_subscriptions`
- `test_ws_connection_upgrade`
- `test_ws_credit_flow_control`
- `test_ws_credit_on_unsubscribed_queue_returns_error`
- `test_ws_error_frame_echoes_req_id`
- `test_ws_frame_missing_type_field_returns_error`
- `test_ws_invalid_json_rejected_with_1007`
- `test_ws_multi_queue_subscribe`
- `test_ws_nack_unlocks_message`
- `test_ws_no_reply_suppresses_response`
- `test_ws_no_req_id_omitted_in_response`
- `test_ws_operations_update_rate_counters`
- `test_ws_ping_timeout_closes_with_1001`
- `test_ws_publish_missing_payload_field`
- `test_ws_publish_missing_queue_field`
- `test_ws_publish_nonexistent_queue_error`
- `test_ws_publish_success`
- `test_ws_renew_extends_lock`
- `test_ws_renew_not_locked_returns_error`
- `test_ws_renew_with_lock_timeout_secs`
- `test_ws_req_id_echoed_in_ok`
- `test_ws_session_ack_noreply`
- `test_ws_session_credit_flow_control`
- `test_ws_session_request_timeout`
- `test_ws_session_send_frame_public`
- `test_ws_subscribe_and_deliver`
- `test_ws_subscribe_default_lock_timeout`
- `test_ws_subscribe_logs_delivers_live_entries`
- `test_ws_subscribe_logs_without_buffer_returns_error`
- `test_ws_subscribe_missing_queue_field`
- `test_ws_subscribe_nonexistent_queue_error`
- `test_ws_subscribe_same_queue_twice_is_ok`
- `test_ws_subscribe_with_lock_timeout_secs`
- `test_ws_subscribe_without_credits_is_unlimited`
- `test_ws_unknown_type_returns_error_frame_and_stays_open`
- `test_ws_unsubscribe_logs_stops_delivery`
- `test_ws_unsubscribe_stops_delivery`