# Parallelizing

- [PowerAdaptiveProposal: Bounded adaptation controller](../guides/powerAdaptiveProposal.md). Turn feedback into bounded, explainable proposals with hysteresis, cooldown, and rollback.
- [PowerBrownout: Optional-work shedding](../guides/powerBrownout.md). Shed caller-declared optional work when normalized resource pressure crosses a threshold.
- [createOperationContext: Explicit operation coordination](../guides/powerOperationContext.md). Pass deadlines, cancellation, retry budgets, correlation ids, and priority explicitly.
- [PowerPool: Worker pool](../guides/powerPool.md). A small, dependency-free worker pool that wraps underlying Worker instances. Autoscaling scales the worker count from a latency-threshold heuristic; `autoScale.policy` (`'aimd' | 'vegas' | 'gradient2'`) enforces an adaptive concurrency limit, queueing excess work when `taskQueue` is enabled. `maxQueueLength` bounds the task queue so a saturated pool refuses overflow instead of growing until OOM, and `drain({ signal, timeout })` bounds the wait without stopping the work.
- [Autoscaling](../guides/autoscale.md). Tune `PowerPool` worker growth, adaptive concurrency policies, cooldowns, and scale outcomes.
- [WorkerAgnostic: One worker abstraction for Node, browser and web worker](../guides/WorkerAgnostic.md). Resolves the environment and returns a worker-like object either way, from a factory function or a path/code string. Handles the pure-ESM `node:worker_threads` caveat. Used directly by `PowerPool` and `PowerChunker`.
- [PowerChunker: Chunk + pool helper](../guides/powerChunking.md). Convenience helper to chunk iterables and process items via a `PowerPool`.
- [PowerBulkhead: Partitioned executor](../guides/powerBulkhead.md). Isolate noisy workloads into separate lanes so one hot partition cannot starve the rest.
- [PowerCircuit: Circuit breaker](../guides/powerCircuit.md). Small circuit breaker to protect external services from cascading failures.
- [PowerRetry: Retry with backoff, budget, and hedging](../guides/powerRetry.md). Retry flaky async work with a configurable backoff curve — including AWS **decorrelated jitter**, which decorrelates a fleet instead of re-synchronising it — plus an optional **retry budget** so retries cannot amplify an outage, and optional **hedged attempts** that trade average load for a cut p99.
- [PowerDeadline: Timeout, retry budget, and cancellation](../guides/powerDeadline.md). Wrap async work with per-attempt timeouts, overall deadlines, and retry policy.
- [PowerHistogram: Lock-free percentile estimator](../guides/powerHistogram.md). Compact in-process histogram for latency telemetry and estimated percentiles.
- [PowerBackpressure: Producer-facing backpressure controller](../guides/powerBackpressure.md). Gate producers with bounded waiting and an adaptive refill that self-tunes to unknown downstream capacity (`{ adaptive: true }` enables AIMD; off by default).
- [PowerBatch: Microtask coalescing dispatcher](../guides/powerBatch.md). Coalesce synchronous calls into compact batches for bulk operations.
- [PowerLatch: Counting barrier](../guides/powerLatch.md). Simple barrier that resolves when a count reaches zero. Useful for coordinating out-of-band task completions.
- [PowerThrottle: A token-bucket limiter](../guides/powerThrottle.md). A tiny rate limiter useful for pacing external work or cooperating with `PowerPool`. Supports `reserve()`/`release()` for reservation-style workflows.
- [PowerRateLimit: Compose multiple limiters](../guides/powerRateLimit.md). Combine `PowerThrottle`, `PowerSlidingWindow`, `PowerGCRA` and others; supports an `atomic` option to attempt atomic consumes across composed limiters, and a **`keyFn`** for per-key limiting (Bottleneck `Group`-shaped) that hashes keys into a bounded slot array — bounded memory with **no eviction path**, so no key's budget can be silently reset.
- [PowerSlidingWindow: Sliding-window limiter](../guides/powerSlidingWindow.md). A simple rolling-window limiter for quota-style rate limiting.
- [PowerGCRA: Cell-based rate limiter](../guides/powerGCRA.md). GCRA — the ATM Forum algorithm behind `redis-cell` and Go's `x/time/rate`. O(1) with a single number of state, and an **exact** `retryAfter()` rather than an estimate. Composes in `PowerRateLimit` alongside the other limiters.
- [PowerQueue: O(1) ring-buffer queue](../guides/powerQueue.md). A resizable, high-performance queue intended for use in `PowerPool` and other high-throughput scenarios.
- [PowerPriorityQueue: Binary heap priority queue](../guides/powerPriorityQueue.md). Higher priority first, FIFO on ties, O(log n) push/shift.
- [PowerDeduplication: Time-windowed dedup](../guides/powerDeduplication.md). Prevent replays/duplicates within a TTL window with max key cap.
- [PowerHeartbeat: Jittered liveness detector](../guides/powerHeartbeat.md). Declare a peer dead when no `beat()` arrives within `timeout`; jitter decorrelates a fleet so checks do not fire in lockstep.
- [PowerSequencer: Gap detection and reassembly](../guides/powerSequencer.md). Buffer out-of-order datagrams and release them in sequence order; `missing()` is the NACK payload.
- [PowerFlowControl: Adaptive token bucket](../guides/powerFlowControl.md). Refill rate set by a closed-loop controller, so the limit retunes itself instead of being re-measured.
- [PowerFlowController: Latency-driven admission](../guides/powerFlowController.md). Admission, a bounded queue and tail-latency feedback in one loop — the p99 of each window sets the next window's rate. Use it when the SLO is a latency rather than a depth.
- [PowerServo: Closed-loop transfer function](../guides/powerServo.md). Holds a measured value at a setpoint — a queue depth, a byte ceiling, a pool size — with an optional feedforward path for a disturbance visible before it reaches the measurement. Unlike the helpers above it is a _stabiliser_ rather than a gate: they observe a signal and correct against a limit, it is given both terms of the error. The loop cannot diverge, because the output and the integral are clamped to the same window; on a delayed plant a badly tuned one limit-cycles loudly instead of settling quietly wrong.
- [PowerSemaphore: Async concurrency gate](../guides/powerSemaphore.md). Lightweight semaphore for limiting concurrent I/O and fan-out workloads.
- [PowerTaskGroup: Structured concurrency scope](../guides/powerTaskGroup.md). Run async tasks under a shared AbortSignal; cancel all siblings on error or dispose. Supports `using` / `await using`.
- [PowerCrossLock: Cross-worker mutex](../guides/powerCrossLock.md). A fair mutex shared by every worker in the process, over the platform's Web Locks implementation. Use it when the thing you must exclude is running in _another_ thread — `PowerSemaphore` cannot do that, because every instance is local to its thread.
- [PowerEventBus: Typed micro event bus](../guides/powerEventBus.md). Lightweight pub/sub for intra-process coordination between helpers.
- [Trace context: W3C `traceparent` through `PowerPool`](../guides/traceContext.md). How to propagate a trace across a pool boundary — a caller-supplied field the worker echoes, riding the `correlationId` path. The pool deliberately does not read your payloads, and the guide says why that is the cheaper direction.
