OptionaladdressOptionalarchiveArchive full journals on disk after hot retention expires.
OptionalcheckpointOptionalcodecPayload encryption, e.g. aesGcm({ k1: key }).
OptionaldirOptionaldriver"native" (default on Node): a libuv handle runs the engine's turns back
to back in one event-loop callback, each entered so that Node drains
process.nextTick callbacks and microtasks when it returns, as a
macrotask would. "macrotask" (always on Bun): each turn is its own
event-loop callback.
OptionaldurabilityOptionalflushOverride the flush call. Default: F_FULLFSYNC on macOS, fdatasync on Linux.
OptionalhttpServe the HTTP API and UI here once open ("off": never). Under the dev
profile the default is FUSEE_HTTP, else 127.0.0.1:7601, else a free port.
OptionalinlineFlush on the JavaScript thread when nothing else is pending (default true). False sends every flush to the log thread, so the event loop never waits for the disk.
OptionalkeepKeep finished runs' whole journals (audit, inspect, export, reset).
OptionalmoduleWith workers: the ES module (a path or file URL) each worker imports.
Its default export (or register) is called with the worker's engine
and registers workflows on it with engine.workflow(name, fn).
OptionalonWhat a step does when its retries run out, for every step whose retry
policy does not say: "pause" pauses its run until run.resume().
Default "fail".
OptionalparkOptionalpeersOptionalprofile"dev" (or FUSEE_PROFILE=dev, which fusee dev sets; never inferred):
says so on stderr, keeps every run's history, flushes with fsync
rather than F_FULLFSYNC on macOS (a process crash loses nothing; power
loss may), and serves the UI.
OptionalrecordFailures record their stack trace (default true).
OptionalreplicaMember index in peers for replicated mode.
OptionalreplicaOptionalretentionOptionalsegmentOptionalserializerHow payloads become JSON and back: rich from @bitsinfra/fusee/rich keeps dates, maps, sets and bigints.
OptionalshardsOptionaltelemetryOpenTelemetry spans and metrics, e.g. openTelemetry(await import("@opentelemetry/api")).
OptionalworkersRun workflow code on this many worker threads (local or memory
durability). Each worker owns a set of shards (shard s belongs to
worker s % workers), loads module to register its own copy of the
workflows, and appends to the one shared log; this thread routes each
call to the worker that owns the workflow ID's shard. A new directory
gets one shard per worker unless shards says otherwise; there are at
most as many workers as shards. Values crossing to a worker (query
arguments and answers) are copied with the structured clone algorithm.
OptionalworkflowsWorkflow definitions this engine runs (workflow(name, fn)).
Server socket, e.g. 127.0.0.1:7600 or unix:/path/to/socket.