Rulvar API reference / @rulvar/core / DeterminismEvents
Type Alias: DeterminismEvents
type DeterminismEvents = {
category: "bare-date-now" | "bare-math-random";
column?: number;
file?: string;
frame: string;
line?: number;
provenance: "workflow" | "allowlisted";
type: "determinism:warning";
};Defined in: packages/core/src/l0/events.ts:592
Bare-nondeterminism detection (RV-209). Emitted LIVE by the segment that observed the call, at most once per (category, provenance) per execution segment; never journaled and never re-emitted with the replayed flag. Because replay re-executes the workflow body, a violation that survives in the code fires again on every replay of the run, so the event appears organically in both live and replayed streams. Exempt provenances (installed dependencies under node_modules and Node runtime frames) never emit: they are classified and silenced, which is what keeps an SDK's internal Math.random() from branding the run nondeterministic.
Properties
category
category: "bare-date-now" | "bare-math-random";Defined in: packages/core/src/l0/events.ts:595
Which patched global fired.
column?
optional column?: number;Defined in: packages/core/src/l0/events.ts:609
file?
optional file?: string;Defined in: packages/core/src/l0/events.ts:607
Parsed location when the frame carries one, after redaction.
frame
frame: string;Defined in: packages/core/src/l0/events.ts:605
The calling stack frame, after the configured redaction hook.
line?
optional line?: number;Defined in: packages/core/src/l0/events.ts:608
provenance
provenance: "workflow" | "allowlisted";Defined in: packages/core/src/l0/events.ts:603
'workflow': the caller is workflow-origin code (the violation the guard exists for; rejects the run under determinism.mode: 'error'). 'allowlisted': the caller matched a configured determinism.allowlist pattern and is exempt by explicit host decision; emitted for visibility, never rejects.
type
type: "determinism:warning";Defined in: packages/core/src/l0/events.ts:593