Fan-in gate: record one arrival against a barrier and answer the typed condition decision — `skip` until the expected set has arrived, then `allow` EXACTLY ONCE carrying every arrival's payload. Use as a binding condition so a coordinator wakes once when N producers finish instead of once per producer.
condition_configany of
any of (2)
variant 1
carrystring
JSON pointer into the event for the value to accumulate (default: the whole event).
expectall of*required
A count, or the exact set of arrival keys.
… expand 1 nestedcollapse
all of (1)
variant 1
any of (2)
variant 1
valueinteger· uint641…10000
idstring*required
Barrier identity. Two bindings sharing an id share the barrier — that is how several predecessors feed one downstream.
key_fromstring
JSON pointer into the event for the arrival key (default `/key`, the state event's own key). A missing pointer is an error, not a silent unnamed arrival: two arrivals that both resolve to nothing would collapse into one and the barrier would never complete.
one of (2)
variant 1
decisionstring*requiredenum: allow
variant 2
decisionstring*requiredenum: skip
state::claim-namespace
functionReserve a PRIVATE state namespace for the calling worker: its scopes become invisible to public state::* and to trigger fan-out, and internal accessors `<functions_prefix>::state::{get, list, compare-and-set}` are registered. A worker may only claim the namespace matching its own worker name (engine-stamped caller identity). Idempotent; claims survive a state restart.
functions_prefixstring*required
Must equal the calling worker's name.
scopesstring[]*required
Storage scopes to reserve for this namespace.
claimedboolean*required
False when the namespace already owned everything asked for.
functionsstring[]*required
The accessor ids now serving this namespace.
scopesstring[]*required
Every scope this namespace owns after the call.
state::compare-and-set
functionAtomically set a value only if it currently equals `expected` (omit `expected` to mean 'only if absent'). Returns { swapped, current } — on a miss, `current` is what is actually there, so a caller can recompute and retry. The primitive for counters, claims and any read-modify-write that two callers might race.
expectedunknown
The value the caller believes is there. Omit to mean "expect absent" — the set-if-absent form.
currentunknown
What is actually stored, when the swap did not happen.
Delete a value from state
keystring*required
Identifier for the value to delete within the scope.
scopestring*required
Namespace that groups related keys.
Get a value from state
keystring*required
Identifier for the value within the scope.
scopestring*required
Namespace that groups related keys.
Get a group from state
scopestring*required
Namespace whose keys should be listed as a group.
state::list_groups
functionList all state groups
List the keys stored in a scope
scopestring*required
Namespace whose keys should be listed as a group.
keysstring[]*required
Keys stored in the scope, in the adapter's natural order.
state::on-config-change
functionInternal: reload state configuration from the authoritative store on change.
Set a value in state
keystring*required
Identifier for the value within the scope.
scopestring*required
Namespace that groups related keys (e.g. `users`, `orders`).
valueunknown*required
Arbitrary JSON value to store. Replaces any existing value at `scope`/`key`.
new_valueunknown*required
The value after the update
old_valueunknown
Previous value (if it existed).
state::ui-content
functionServe the state worker's injected console UI assets (content function for its console:script / console:style triggers).
pathstring*required
The asset path from the trigger config (e.g. `state/page.js`).
contentstring*required
The asset source, verbatim.
content_typestring*required
MIME type the console should serve the asset with.
Update a value in state
keystring*required
Identifier for the value to update within the scope.
opsone of[]*required
Ordered list of update operations applied atomically to the existing value.
one of (6)
variant 1
typestring*requiredenum: set
variant 2
pathany of
… expand 2 nestedcollapse
typestring*requiredenum: merge
variant 3
byinteger· int64*required
typestring*requiredenum: increment
variant 4
byinteger· int64*required
typestring*requiredenum: decrement
variant 5
pathany of
… expand 2 nestedcollapse
typestring*requiredenum: append
variant 6
typestring*requiredenum: remove
scopestring*required
Namespace that groups related keys.
errorsobject[]
Errors encountered while applying ops. Successfully applied ops are still reflected in `new_value`. Field is omitted from JSON when empty for backward compatibility.
codestring*required
Stable error code, e.g. `"merge.path.too_deep"`.
doc_urlstring
Optional documentation URL for this error class.
messagestring*required
Human-readable description with concrete numbers when applicable.
op_indexinteger· uint*requiredmin 0
Index of the offending op within the original `ops` array.
new_valueunknown*required
The value after the update
old_valueunknown
Previous value (if it existed).