Bounded-time dispatch¶
Test cases verifying the bounded-time dispatch sub-feature (Bounded-time dispatch (FEAT_0017)): the zero-allocation steady-state dispatch guarantee (No heap allocation in dispatch (REQ_0060)) and the pre-allocated per-iteration error slot (Pre-allocated error slot (REQ_0062)).
Zero-allocation dispatch¶
Goal. Confirm that steady-state iterations of
Fixture. Five executor configurations covering the
dispatch paths (chain, single, graph) plus the event/fd
resolve path through
Each item / vertex returns Allocator instrumentation. A hand-rolled counting
Steps.
Expected outcome. All five assertions hold:
Negative case. Lives under
|
Bounded-time dispatch (pre-allocated error slot)¶
Additional verification under the bounded-time dispatch sub-feature (Bounded-time dispatch (FEAT_0017)) — the pre-allocated per-iteration error slot that Pre-allocated error slot (REQ_0062) mandates.
Goal. Confirm the dispatch loop does not construct a fresh
Fixture. Steps.
Negative case. A deliberate Expected outcome. |
Per-phase dispatch dedup (at-most-one borrowed-job submit)¶
Verification of the at-most-one-submit-per-barrier-phase contract (At-most-one borrowed-job su... (REQ_0854)) and the exactly-one-scan-period rejection that One execution per scan period (REQ_0002) mandates — the guard recorded in Per-phase dispatch dedup vi... (ADR_0105).
Goal. Pin two facets of the per-phase dedup contract: (1) a task
with two attachments fired in one wake-phase is submitted once — its
single run drains all pending input — so two pool workers never alias one
Fixture. In-crate unit tests in
Steps.
Expected outcome.
Existing |