ablative docs
↑↓ move↵ openesc close
Stack Notebook ablative.com.au

Worker and stream settings

Every worker and stream settings field served by the server configuration types.

Open .md

Worker registration

worker.heartbeat_window
Milliseconds. Default 30000, advertised in registration acknowledgements. Set an activity heartbeat policy for loss detection and an activity timeout to bound its runtime.
worker.queue_service
Queue service policy and optional clocks, with ordered overrides. Absent uses strict policy.

Queue service

worker.queue_service.default_policy
strict (default) refuses an unserved queue; durable_pending persists a wait for a compatible worker. Override per queue when needed.
worker.queue_service.overrides
Ordered namespace and task-queue policy entries. The first matching entry wins; an omitted namespace matches every namespace.
worker.queue_service.service_availability_deadline
Optional positive milliseconds to wait for a compatible worker to exist under strict policy. Absent is unbounded. Structural unservability still refuses immediately.
worker.queue_service.schedule_to_start_timeout
Optional positive milliseconds for handing work to an existing compatible worker. Absent makes one attempt.

Queue overrides

worker.queue_service.overrides.namespace
Optional namespace filter. Omitted matches every namespace.
worker.queue_service.overrides.task_queue
Required queue name matched by this override.
worker.queue_service.overrides.policy
strict or durable_pending for this queue.

Supervision

worker_supervision.restart_backoff_initial_ms
Required positive first restart delay. No default.
worker_supervision.restart_backoff_max_ms
Required delay ceiling, at least the initial delay. No default.
worker_supervision.restart_backoff_multiplier
Required growth factor, at least one. No default.
worker_supervision.restart_window_ms
Required positive sliding window over which restarts are counted. No default.
worker_supervision.max_restarts_per_window
Required positive restart allowance per window. Exhaustion leaves the instance Failed. No default.
worker_supervision.stop_grace_ms
Required positive stop grace. A stop can spend it after SIGTERM and again draining output after SIGKILL. No default.

Outbox

outbox.enabled
Default false in typed config. Commissions durable dispatch. Requires a durable store; the starter file enables it.
outbox.poll_interval_ms
Positive claim-sweep cadence when enabled. Merged default 20 milliseconds.
outbox.batch_size
Positive rows claimed per sweep. Merged default 16.
outbox.max_attempts
Positive dispatch attempts before a row is dead-lettered. Merged default 5.
outbox.backoff_base_ms
Positive first retry delay. Merged default 50 milliseconds.
outbox.backoff_multiplier
Retry growth factor, at least one. Merged default 2.
outbox.backoff_max_ms
Retry delay ceiling, at least the base. Merged default 1000 milliseconds.
outbox.reconcile_interval_ms
Optional positive stale-claim sweep cadence. Requires reconcile_stale_after_ms. Omit both to leave live reconciliation disabled.
outbox.reconcile_stale_after_ms
Optional positive age of a stranded claim. Requires reconcile_interval_ms; re-arming preserves the attempt count.
outbox.transport
liminal in the default build; grpc without the liminal-transport feature. Selecting an unavailable transport refuses boot.
outbox.liminal_listen_address
Required inbound worker listener address when enabled with liminal transport. Ignored with gRPC transport.
outbox.liminal_max_connection_outbound_bytes
Optional positive per-connection dispatch buffer ceiling. Absent uses liminal's 4 MiB default. An unservable oversized dispatch fails by name without retry.

Transcript storage

observability.max_event_bytes
Positive retained transcript-event size ceiling. Default 262144 bytes; larger events are truncated before persistence.
observability.max_stream_events
Positive retained event count per workflow/activity/attempt stream. Default 20000. At the cap a marker is kept and later events are live-only.
observability.max_batch_events
Required positive maximum events per transcript commit. No typed default. Boot heals an omitted file value to 64 and preserves the previous file.
observability.max_batch_hold_ms
Required nonnegative milliseconds a transcript batch may remain uncommitted. Zero commits the available batch immediately. Boot heals an omitted file value to 200.

WebSocket

websocket.outbound_buffer_bound
Per-connection outbound queue capacity. Default 32.
websocket.event_broadcast_capacity
Positive global workflow live-event broadcast capacity. Merged default 256; size for all namespaces together.
websocket.cluster_broadcast_capacity
Positive cluster-topology broadcast capacity. Merged default 64.

MCP

mcp.enabled
Default false. Enables public /mcp on the existing HTTP listener. The assistant conversation route is separate.
mcp.allowed_origins
Exact browser origins allowed to call public MCP. Default empty refuses all Origin-bearing clients; clients without Origin are unaffected.
mcp.discover_ttl_ms
Discovery result freshness hint. Default 60000 milliseconds.
mcp.tools_list_ttl_ms
Tool-list freshness hint. Default 300000 milliseconds.
mcp.task_poll_interval_ms
Positive client task-poll hint. Default 1000 milliseconds. It does not create a task lifetime.

Read configuration discovery and the starter file.