Import
Props
| Prop | Type | Default | Description |
|---|---|---|---|
id | string | auto-generated | Optional stable id for the queue group. |
maxConcurrency | number | 1 | Maximum number of child tasks within the queue that may run simultaneously. |
skipIf | boolean | false | Skip the entire queue subtree when true. |
children | ReactNode | — | Child tasks/control-flow nodes. |
Examples
Default single-lane
Custom concurrency
Nesting with Parallel
- The inner
<MergeQueue>constrains its children to 1-at-a-time. - The outer
<Parallel>may still run other, unrelated siblings (outside the queue) concurrently up to its limit.
Rendering
Internally,<MergeQueue> renders as a <smithers:merge-queue> host element (or null when skipped). Each child task inside the queue receives parallelGroupId and parallelMaxConcurrency in its task descriptor. The engine enforces that no more than parallelMaxConcurrency tasks sharing the same parallelGroupId run at once.
Notes
- Defaults to a single-lane queue (
maxConcurrency = 1). - Designed as a convenient merge-queue primitive for sequentializing task application (e.g., applying patches one-at-a-time).
- Nesting with
<Parallel>is supported; the innermost group determines the effective cap for its descendants. - Tasks outside the queue are unaffected by the queue’s limit.