The agent’s persistent progress-event stream. An append-only, count-bounded log ordered by an assigned monotonicprotectedreadonlyevents:EventLog
seq.
Events committed via emit are pushed live to
connected clients subscribed to the events stream — no broadcast call
needed. See EventLog for emitting, cursor reads, and retention.
emit()
emit(Append one event; returns its assigned seq. Atomic (counter + row + pruning). If the log is at its retention bound, the oldest row(s) are pruned in the same transaction. Parameterstype,payload):Promise<number>
Returns
Promise<number>
read()
read(Read retained events in seq order.afterSeq?,limit?):Promise<StoredEvent[]>
afterSeq is an exclusive cursor:
only events with seq > afterSeq are returned (default 0 = from the
start). limit caps the number of rows; omitted = all retained rows
(paginates internally past the per-list cap).
Parameters
Returns
Promise<StoredEvent[]>
count()
count():Total events ever emitted (the current seq high-water mark). ReturnsPromise<number>
Promise<number>
new EventLog()
new EventLog(Create a log over the actor’s persistent storage — typically once, as a class field, so the log shares the actor’s persistence and single-writer guarantees. One actor can hold several logs for unrelated streams; each instance keys its rows independently.storage,options?,onEmit?):EventLog
Returns
EventLog
StoredEvent
A progress event as persisted: assigned a monotonic seq + wall-clock stamp. Properties at
at: Date
Wall-clock stamp at emit time; informational only (ordering is by seq).
payload
payload: unknown
Arbitrary payload. MUST be codec-safe (JSON-native + Date/Map/Set/
ArrayBuffer/TypedArray/Buffer/BigInt/RegExp) — it is stored via
ctx.storage.put, which throws CodecError on functions, class instances,
or circular refs.
seq
seq: number
Monotonic sequence number, assigned on emit — never reused, only moves forward.
type
type: string
Caller-chosen event kind (e.g. “progress”).
EventLogOptions
Options for the event log. Properties retain?Maximum number of event rows kept (count-based retention). Once the log holds this many rows, each new emit prunes the oldest. Default 1000.optionalretain?:number